Options
All
  • Public
  • Public/Protected
  • All
Menu

Class BaseTerminalTabComponent<P>

A class to base your custom terminal tabs on

Type Parameters

Hierarchy

Implements

  • OnInit
  • OnDestroy

Index

Constructors

Properties

Accessors

Methods

Constructors

Properties

activity: BehaviorSubject<boolean>
alternateScreenActive: boolean = false
app: AppService
bellPlayer: HTMLAudioElement
binaryOutput: Subject<Buffer> = ...
config: ConfigService
contextMenuProviders: TabContextMenuItemProvider[]
customTitle: string

User-defined title override

decorators: TerminalDecorator[] = []
disableDynamicTitle: boolean = false

Disables display of dynamic window/tab title provided by the shell

element: ElementRef<any>
enablePassthrough: boolean = true

Enables normal passthrough from session output to terminal input

frontend?: Frontend
frontendReady: Subject<void> = ...
frontendWriteLock: Promise<void> = ...
hasActivity: boolean

Last tab activity state

hasFocus: boolean
hostApp: HostAppService
hostView: ViewRef

ViewRef to the tab DOM element

hostWindow: HostWindowService
hotkeys: HotkeysService
injector: Injector
log: LogService
logger: Logger
multifocus: MultifocusService
notifications: NotificationsService
output: Subject<string> = ...
parent: null | BaseTabComponent

Parent tab (usually a SplitTabComponent)

platform: PlatformService
profile: P
progress: BehaviorSubject<null | number>
recentInputs: string = ''
recoveryStateChangedHint: Subject<void>

Ping this if your recovery state has been changed and you want your tab state to be saved sooner

rightMouseDownTime: number = 0
savedState?: any
savedStateIsLive: boolean = false
searchPanel?: SearchPanelComponent
session: null | BaseSession = null
sessionChanged: Subject<null | BaseSession> = ...
sessionHandlers: SubscriptionContainer = ...
showSearchPanel: boolean = false
spinner: any = ...
spinnerActive: boolean = false
spinnerPaused: boolean = false
termContainerSubscriptions: SubscriptionContainer = ...
themes: ThemesService
title: string

Current tab title

toolbarRevealTimeout: ResettableTimeout = ...
translate: TranslateService
viewContainer?: ViewContainerRef
viewContainerEmbeddedRef?: EmbeddedViewRef<any>
visibility: BehaviorSubject<boolean>
zone: NgZone
zoom: number = 0
animations: AnimationTriggerMetadata[] = ...
styles: string[] = ...
template: string = ...

Accessors

  • get activity$(): Observable<boolean>
  • Returns Observable<boolean>

  • get alternateScreenActive$(): Observable<boolean>
  • get binaryOutput$(): Observable<Buffer>
  • get blurred$(): Observable<void>
  • Returns Observable<void>

  • get color(): null | string
  • set color(value: null | string): void
  • CSS color override for the tab's header

    Returns null | string

  • CSS color override for the tab's header

    Parameters

    • value: null | string

    Returns void

  • get destroyed$(): Observable<void>
  • Returns Observable<void>

  • get focused$(): Observable<void>
  • Returns Observable<void>

  • get frontendReady$(): Observable<void>
  • get hasTitleInset(): boolean
  • get icon(): null | string
  • set icon(value: null | string): void
  • icon override for the tab's header

    Returns null | string

  • icon override for the tab's header

    Parameters

    • value: null | string

    Returns void

  • get input$(): Observable<Buffer>
  • get output$(): Observable<string>
  • get progress$(): Observable<null | number>
  • Returns Observable<null | number>

  • get recoveryStateChangedHint$(): Observable<void>
  • Returns Observable<void>

  • get titleChange$(): Observable<string>
  • Returns Observable<string>

  • get topmostParent(): null | BaseTabComponent
  • Returns null | BaseTabComponent

  • get visibility$(): Observable<boolean>
  • Returns Observable<boolean>

Methods

  • addEventListenerUntilDestroyed(element: HTMLElement, event: string, handler: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void
  • Parameters

    • element: HTMLElement
    • event: string
    • handler: EventListenerOrEventListenerObject
    • Optional options: boolean | AddEventListenerOptions

    Returns void

  • attachSessionHandler<T>(observable: Observable<T>, handler: ((v: T) => void)): void
  • attachSessionHandlers(destroyOnSessionClose?: boolean): void
  • attachTermContainerHandlers(): void
  • buildContextMenu(): Promise<MenuItemOptions[]>
  • canClose(): Promise<boolean>
  • Return false to prevent the tab from being closed

    Returns Promise<boolean>

  • clearActivity(): void
  • Removes the activity marker from the tab header

    Returns void

  • configure(): void
  • copyCurrentPath(): Promise<void>
  • destroy(): Promise<void>
  • detachSessionHandlers(): void
  • detachTermContainerHandlers(): void
  • displayActivity(): void
  • Shows the activity marker on the tab header

    Returns void

  • emitBlurred(): void
  • Returns void

  • emitFocused(): void
  • Returns void

  • emitVisibility(visibility: boolean): void
  • Parameters

    • visibility: boolean

    Returns void

  • getCurrentProcess(): Promise<null | BaseTabProcess>
  • Override this to enable task completion notifications for the tab

    Returns Promise<null | BaseTabProcess>

  • getRecoveryToken(options?: GetRecoveryTokenOptions): Promise<null | RecoveryToken>
  • Override this and implement a [[TabRecoveryProvider]] to enable recovery for your custom tab

    Parameters

    • Optional options: GetRecoveryTokenOptions

    Returns Promise<null | RecoveryToken>

    JSON serializable tab state representation for your [[TabRecoveryProvider]] to parse

  • handleRightMouseDown(event: MouseEvent): Promise<void>
  • handleRightMouseUp(event: MouseEvent): Promise<void>
  • hideToolbar(): void
  • insertIntoContainer(container: ViewContainerRef): EmbeddedViewRef<any>
  • Parameters

    • container: ViewContainerRef

    Returns EmbeddedViewRef<any>

  • isSessionExplicitlyTerminated(): boolean
  • onFrontendReady(): void
  • onSessionClosed(destroyOnSessionClose?: boolean): void
  • onSessionDestroyed(): void
  • paste(): Promise<void>
  • removeFromContainer(): void
  • Returns void

  • resetZoom(): void
  • sendInput(data: string | Buffer): void
  • setProgress(progress: null | number): void
  • Sets visual progressbar on the tab

    Parameters

    • progress: null | number

    Returns void

  • setSession(session: null | BaseSession, destroyOnSessionClose?: boolean): void
  • setTitle(title: string): void
  • Parameters

    • title: string

    Returns void

  • shouldTabBeDestroyedOnSessionClose(): boolean
  • showToolbar(): void
  • startSpinner(text?: string): void
  • stopSpinner(): void
  • subscribeUntilDestroyed<T>(observable: Observable<T>, handler: ((v: T) => void)): void
  • Type Parameters

    • T

    Parameters

    • observable: Observable<T>
    • handler: ((v: T) => void)
        • (v: T): void
        • Parameters

          • v: T

          Returns void

    Returns void

  • togglePinToolbar(): void
  • withSpinnerPaused(work: (() => any)): Promise<void>
  • write(data: string): Promise<void>
  • writeRaw(data: string): Promise<void>
  • zoomIn(): void
  • zoomOut(): void

Generated using TypeDoc