Class: TabContainer

January 18, 2022 · View on GitHub

Kui API Documentation - v11.0.0 / @kui-shell/plugin-client-common / TabContainer

Class: TabContainer

@kui-shell/plugin-client-common.TabContainer

Hierarchy

  • PureComponent<Props, State>

    TabContainer

Table of contents

Constructors

Properties

Accessors

Methods

Constructors

constructor

new TabContainer(props)

Parameters

NameType
propsProps

Overrides

React.PureComponent<Props, State&gt;.constructor

Defined in

plugins/plugin-client-common/src/components/Client/TabContainer.tsx:68

Properties

_onCloseTab

Private Readonly _onCloseTab: any

Defined in

plugins/plugin-client-common/src/components/Client/TabContainer.tsx:163


_onSwitchTab

Private Readonly _onSwitchTab: any

Defined in

plugins/plugin-client-common/src/components/Client/TabContainer.tsx:143


_onTabReady

Private Readonly _onTabReady: any

Defined in

plugins/plugin-client-common/src/components/Client/TabContainer.tsx:285


context

context: any

If using the new style context, re-declare this in your class to be the React.ContextType of your static contextType. Should be used with type annotation or static contextType.

static contextType = MyContext
// For TS pre-3.7:
context!: React.ContextType<typeof MyContext>
// For TS 3.7 and above:
declare context: React.ContextType<typeof MyContext>

see https://reactjs.org/docs/context.html

Inherited from

React.PureComponent.context

Defined in

node_modules/@types/react/index.d.ts:479


isFirstTabReady

Private isFirstTabReady: boolean = false

Has the first tab activated itself?

Defined in

plugins/plugin-client-common/src/components/Client/TabContainer.tsx:66


props

Readonly props: Readonly<Props> & Readonly<{ children?: ReactNode }>

Inherited from

React.PureComponent.props

Defined in

node_modules/@types/react/index.d.ts:504


refs

refs: Object

deprecated https://reactjs.org/docs/refs-and-the-dom.html#legacy-api-string-refs

Index signature

▪ [key: string]: ReactInstance

Inherited from

React.PureComponent.refs

Defined in

node_modules/@types/react/index.d.ts:510


state

state: Readonly<State>

Inherited from

React.PureComponent.state

Defined in

node_modules/@types/react/index.d.ts:505


contextType

Static Optional contextType: Context<any>

If set, this.context will be set at runtime to the current value of the given Context.

Usage:

type MyContext = number
const Ctx = React.createContext<MyContext>(0)

class Foo extends React.Component {
  static contextType = Ctx
  context!: React.ContextType<typeof Ctx>
  render() {
    return <>My context's value: {this.context}</>
  }
}

see https://reactjs.org/docs/context.html#classcontexttype

Inherited from

React.PureComponent.contextType

Defined in

node_modules/@types/react/index.d.ts:461

Accessors

needsSidebar

Private get needsSidebar(): boolean

Returns

boolean

Defined in

plugins/plugin-client-common/src/components/Client/TabContainer.tsx:344

Methods

UNSAFE_componentWillMount

Optional UNSAFE_componentWillMount(): void

Called immediately before mounting occurs, and before Component#render. Avoid introducing any side-effects or subscriptions in this method.

This method will not stop working in React 17.

Note: the presence of getSnapshotBeforeUpdate or getDerivedStateFromProps prevents this from being invoked.

deprecated 16.3, use componentDidMount or the constructor instead

see https://reactjs.org/blog/2018/03/27/update-on-async-rendering.html#initializing-state

see https://reactjs.org/blog/2018/03/27/update-on-async-rendering.html#gradual-migration-path

Returns

void

Inherited from

React.PureComponent.UNSAFE_componentWillMount

Defined in

node_modules/@types/react/index.d.ts:717


UNSAFE_componentWillReceiveProps

Optional UNSAFE_componentWillReceiveProps(nextProps, nextContext): void

Called when the component may be receiving new props. React may call this even if props have not changed, so be sure to compare new and existing props if you only want to handle changes.

Calling Component#setState generally does not trigger this method.

This method will not stop working in React 17.

Note: the presence of getSnapshotBeforeUpdate or getDerivedStateFromProps prevents this from being invoked.

deprecated 16.3, use static getDerivedStateFromProps instead

see https://reactjs.org/blog/2018/03/27/update-on-async-rendering.html#updating-state-based-on-props

see https://reactjs.org/blog/2018/03/27/update-on-async-rendering.html#gradual-migration-path

Parameters

NameType
nextPropsReadonly<Props>
nextContextany

Returns

void

Inherited from

React.PureComponent.UNSAFE_componentWillReceiveProps

Defined in

node_modules/@types/react/index.d.ts:749


UNSAFE_componentWillUpdate

Optional UNSAFE_componentWillUpdate(nextProps, nextState, nextContext): void

Called immediately before rendering when new props or state is received. Not called for the initial render.

Note: You cannot call Component#setState here.

This method will not stop working in React 17.

Note: the presence of getSnapshotBeforeUpdate or getDerivedStateFromProps prevents this from being invoked.

deprecated 16.3, use getSnapshotBeforeUpdate instead

see https://reactjs.org/blog/2018/03/27/update-on-async-rendering.html#reading-dom-properties-before-an-update

see https://reactjs.org/blog/2018/03/27/update-on-async-rendering.html#gradual-migration-path

Parameters

NameType
nextPropsReadonly<Props>
nextStateReadonly<State>
nextContextany

Returns

void

Inherited from

React.PureComponent.UNSAFE_componentWillUpdate

Defined in

node_modules/@types/react/index.d.ts:777


_onNewTab

Private Readonly _onNewTab(): void

Returns

void

Defined in

plugins/plugin-client-common/src/components/Client/TabContainer.tsx:222


_onSetTabTitle

Private Readonly _onSetTabTitle(uuid, title): void

Parameters

NameType
uuidstring
titlestring

Returns

void

Defined in

plugins/plugin-client-common/src/components/Client/TabContainer.tsx:306


captureState

Private captureState(): void

save tab state such as CWD prior to a tab switch

Returns

void

Defined in

plugins/plugin-client-common/src/components/Client/TabContainer.tsx:111


children

Private children(uuid): Object

Graft the tab uuid

Parameters

NameType
uuidstring

Returns

Object

Defined in

plugins/plugin-client-common/src/components/Client/TabContainer.tsx:237


componentDidCatch

Optional componentDidCatch(error, errorInfo): void

Catches exceptions generated in descendant components. Unhandled exceptions will cause the entire component tree to unmount.

Parameters

NameType
errorError
errorInfoErrorInfo

Returns

void

Inherited from

React.PureComponent.componentDidCatch

Defined in

node_modules/@types/react/index.d.ts:646


componentDidMount

Optional componentDidMount(): void

Called immediately after a component is mounted. Setting state here will trigger re-rendering.

Returns

void

Inherited from

React.PureComponent.componentDidMount

Defined in

node_modules/@types/react/index.d.ts:625


componentDidUpdate

Optional componentDidUpdate(prevProps, prevState, snapshot?): void

Called immediately after updating occurs. Not called for the initial render.

The snapshot is only present if getSnapshotBeforeUpdate is present and returns non-null.

Parameters

NameType
prevPropsReadonly<Props>
prevStateReadonly<State>
snapshot?any

Returns

void

Inherited from

React.PureComponent.componentDidUpdate

Defined in

node_modules/@types/react/index.d.ts:688


componentWillMount

Optional componentWillMount(): void

Called immediately before mounting occurs, and before Component#render. Avoid introducing any side-effects or subscriptions in this method.

Note: the presence of getSnapshotBeforeUpdate or getDerivedStateFromProps prevents this from being invoked.

deprecated 16.3, use componentDidMount or the constructor instead; will stop working in React 17

see https://reactjs.org/blog/2018/03/27/update-on-async-rendering.html#initializing-state

see https://reactjs.org/blog/2018/03/27/update-on-async-rendering.html#gradual-migration-path

Returns

void

Inherited from

React.PureComponent.componentWillMount

Defined in

node_modules/@types/react/index.d.ts:703


componentWillReceiveProps

Optional componentWillReceiveProps(nextProps, nextContext): void

Called when the component may be receiving new props. React may call this even if props have not changed, so be sure to compare new and existing props if you only want to handle changes.

Calling Component#setState generally does not trigger this method.

Note: the presence of getSnapshotBeforeUpdate or getDerivedStateFromProps prevents this from being invoked.

deprecated 16.3, use static getDerivedStateFromProps instead; will stop working in React 17

see https://reactjs.org/blog/2018/03/27/update-on-async-rendering.html#updating-state-based-on-props

see https://reactjs.org/blog/2018/03/27/update-on-async-rendering.html#gradual-migration-path

Parameters

NameType
nextPropsReadonly<Props>
nextContextany

Returns

void

Inherited from

React.PureComponent.componentWillReceiveProps

Defined in

node_modules/@types/react/index.d.ts:732


componentWillUnmount

Optional componentWillUnmount(): void

Called immediately before a component is destroyed. Perform any necessary cleanup in this method, such as cancelled network requests, or cleaning up any DOM elements created in componentDidMount.

Returns

void

Inherited from

React.PureComponent.componentWillUnmount

Defined in

node_modules/@types/react/index.d.ts:641


componentWillUpdate

Optional componentWillUpdate(nextProps, nextState, nextContext): void

Called immediately before rendering when new props or state is received. Not called for the initial render.

Note: You cannot call Component#setState here.

Note: the presence of getSnapshotBeforeUpdate or getDerivedStateFromProps prevents this from being invoked.

deprecated 16.3, use getSnapshotBeforeUpdate instead; will stop working in React 17

see https://reactjs.org/blog/2018/03/27/update-on-async-rendering.html#reading-dom-properties-before-an-update

see https://reactjs.org/blog/2018/03/27/update-on-async-rendering.html#gradual-migration-path

Parameters

NameType
nextPropsReadonly<Props>
nextStateReadonly<State>
nextContextany

Returns

void

Inherited from

React.PureComponent.componentWillUpdate

Defined in

node_modules/@types/react/index.d.ts:762


forceUpdate

forceUpdate(callback?): void

Parameters

NameType
callback?() => void

Returns

void

Inherited from

React.PureComponent.forceUpdate

Defined in

node_modules/@types/react/index.d.ts:496


getSnapshotBeforeUpdate

Optional getSnapshotBeforeUpdate(prevProps, prevState): any

Runs before React applies the result of render to the document, and returns an object to be given to componentDidUpdate. Useful for saving things such as scroll position before render causes changes to it.

Note: the presence of getSnapshotBeforeUpdate prevents any of the deprecated lifecycle events from running.

Parameters

NameType
prevPropsReadonly<Props>
prevStateReadonly<State>

Returns

any

Inherited from

React.PureComponent.getSnapshotBeforeUpdate

Defined in

node_modules/@types/react/index.d.ts:682


graft

Private graft(node, uuid, key?): Object

Parameters

NameType
nodeReactNode
uuidstring
key?number

Returns

Object

Defined in

plugins/plugin-client-common/src/components/Client/TabContainer.tsx:224


listenForTabClose

Private listenForTabClose(model): void

Parameters

NameType
modelTabModel

Returns

void

Defined in

plugins/plugin-client-common/src/components/Client/TabContainer.tsx:165


newTabModel

Private newTabModel(spec?, doNotChangeActiveTab?): TabModel

Parameters

NameTypeDefault valueDescription
specObject{}-
spec.cmdline?stringundefinedOptionally execute a command in the new tab
spec.exec?"pexec" | "qexec"undefinedExecute the command line with qexec or pexec? Default: pexec.
spec.onClose?stringundefinedOptionally execute a command when the tab is closed
spec.statusStripeDecoration?StatusStripeChangeEventundefinedOptionally specify color and message to display in the StatusStripe
spec.title?stringundefinedOptional tab title
doNotChangeActiveTabbooleanfalse-

Returns

TabModel

Defined in

plugins/plugin-client-common/src/components/Client/TabContainer.tsx:176


onCloseTab

Private onCloseTab(idx): Promise<void>

Close Tab event

Parameters

NameType
idxnumber

Returns

Promise<void>

Defined in

plugins/plugin-client-common/src/components/Client/TabContainer.tsx:149


onNewTab

Private onNewTab(spec?, doNotChangeActiveTab?): void

New Tab event

Parameters

NameTypeDefault valueDescription
specObject{}-
spec.cmdline?stringundefinedOptionally execute a command in the new tab
spec.exec?"pexec" | "qexec"undefinedExecute the command line with qexec or pexec? Default: pexec.
spec.onClose?stringundefinedOptionally execute a command when the tab is closed
spec.statusStripeDecoration?StatusStripeChangeEventundefinedOptionally specify color and message to display in the StatusStripe
spec.title?stringundefinedOptional tab title
doNotChangeActiveTabbooleanfalse-

Returns

void

Defined in

plugins/plugin-client-common/src/components/Client/TabContainer.tsx:199


onSwitchTab

Private onSwitchTab(idx): Promise<void>

Switch Tab event: update state so that activeIdx=idx

Parameters

NameType
idxnumber

Returns

Promise<void>

Defined in

plugins/plugin-client-common/src/components/Client/TabContainer.tsx:128


onTabReady

Private onTabReady(tab): void

Parameters

NameType
tabTab

Returns

void

Defined in

plugins/plugin-client-common/src/components/Client/TabContainer.tsx:259


render

render(): Element

Returns

Element

Overrides

React.PureComponent.render

Defined in

plugins/plugin-client-common/src/components/Client/TabContainer.tsx:361


restoreState

Private restoreState(tabIdx): void

restore tab state after a tab switch

Parameters

NameType
tabIdxnumber

Returns

void

Defined in

plugins/plugin-client-common/src/components/Client/TabContainer.tsx:120


setState

setState<K>(state, callback?): void

Type parameters

NameType
Kextends keyof State

Parameters

NameType
stateState | (prevState: Readonly<State>, props: Readonly<Props>) => State | Pick<State, K> | Pick<State, K>
callback?() => void

Returns

void

Inherited from

React.PureComponent.setState

Defined in

node_modules/@types/react/index.d.ts:491


shouldComponentUpdate

Optional shouldComponentUpdate(nextProps, nextState, nextContext): boolean

Called to determine whether the change in props and state should trigger a re-render.

Component always returns true. PureComponent implements a shallow comparison on props and state and returns true if any props or states have changed.

If false is returned, Component#render, componentWillUpdate and componentDidUpdate will not be called.

Parameters

NameType
nextPropsReadonly<Props>
nextStateReadonly<State>
nextContextany

Returns

boolean

Inherited from

React.PureComponent.shouldComponentUpdate

Defined in

node_modules/@types/react/index.d.ts:636


Private sidebar(): Element

Returns

Element

Defined in

plugins/plugin-client-common/src/components/Client/TabContainer.tsx:348


tabContent

Private tabContent(): Element

Render the content of the tabs

Returns

Element

Defined in

plugins/plugin-client-common/src/components/Client/TabContainer.tsx:320


toggleSidebar

Private Readonly toggleSidebar(): void

Returns

void

Defined in

plugins/plugin-client-common/src/components/Client/TabContainer.tsx:342


topTabStripe

Private topTabStripe(): Element

Render the row of Tabs along the top

Returns

Element

Defined in

plugins/plugin-client-common/src/components/Client/TabContainer.tsx:288


willUpdateTopTabButtons

Private willUpdateTopTabButtons(uuid, buttons): void

Parameters

NameType
uuidstring
buttonsTopTabButton<{ key: string }>[]

Returns

void

Defined in

plugins/plugin-client-common/src/components/Client/TabContainer.tsx:245