Skip to main content

MultiView

Defined in: js-api/src/views/multi_view.ts:20

Subclass ViewBase to implement a Datagrok view in JavaScript.

Extends

Constructors

Constructor

new MultiView(options?): MultiView

Defined in: js-api/src/views/multi_view.ts:27

Parameters

ParameterType
options?MultiViewOptions

Returns

MultiView

Overrides

ViewBase.constructor

Properties

PropertyModifierTypeDefault valueDescriptionInherited fromDefined in
_currentViewpublicViewBaseundefined--js-api/src/views/multi_view.ts:23
_functionsprotectedFunc[][]-ViewBase._functionsjs-api/src/widgets/base.ts:214
_nameprotectedstring'New View'-ViewBase._namejs-api/src/views/view.ts:106
_options?publicMultiViewOptionsundefined--js-api/src/views/multi_view.ts:22
_propertiesprotectedProperty[][]-ViewBase._propertiesjs-api/src/widgets/base.ts:213
_rootprotectedHTMLElementundefined-ViewBase._rootjs-api/src/u2core/component.ts:423
_u2readonlyComponentStateundefined-ViewBase._u2js-api/src/u2core/component.ts:76
_viewspublicMap<String, ViewBase>undefined--js-api/src/views/multi_view.ts:21
componentMeta?publicComponentMetaBaseundefinedThe registry metadata of the tag that built this component, stamped by the spec renderer — the single source the introspection surface below is generated from.ViewBase.componentMetajs-api/src/u2core/component.ts:71
dartpublicanyundefined-ViewBase.dartjs-api/src/views/view.ts:46
factorypublicFunc | nullnullConstructor function. No parameters, returns [Widget].ViewBase.factoryjs-api/src/widgets/base.ts:211
isDetachedpublicbooleanfalse-ViewBase.isDetachedjs-api/src/widgets/base.ts:218
propspublicanyundefined-ViewBase.propsjs-api/src/widgets/base.ts:215
specProps?publicRecord<string, unknown>undefinedThe props the registry's create was handed, stamped alongside componentMeta: the last resort of the property read below, for a component that keeps a prop under another name or not at all (a create wrapping a bare element). Construction-time values — a live one always wins.ViewBase.specPropsjs-api/src/u2core/component.ts:75
subspublicSubscription[]undefined-ViewBase.subsjs-api/src/views/view.ts:47
tabspublicTabControlundefined--js-api/src/views/multi_view.ts:24
temppublicanyundefinedContains auxiliary informationViewBase.tempjs-api/src/widgets/base.ts:208

Accessors

aiDescription

Get Signature

get aiDescription(): string | null

Defined in: js-api/src/u2core/component.ts:146

A short AI-facing briefing, seeded from the registry's usage or description.

Returns

string | null

Set Signature

set aiDescription(x): void

Defined in: js-api/src/u2core/component.ts:150

Parameters
ParameterType
xstring | null
Returns

void

Inherited from

ViewBase.aiDescription


ambientAdoption

Get Signature

get protected ambientAdoption(): boolean

Defined in: js-api/src/widgets/base.ts:272

A widget wrapper minted inside somebody's effect scope must not be auto-disposed with it.

Returns

boolean

Inherited from

ViewBase.ambientAdoption


basePath

Get Signature

get basePath(): string

Defined in: js-api/src/views/view.ts:131

Deprecated

use path instead

Returns

string

Set Signature

set basePath(s): void

Defined in: js-api/src/views/view.ts:132

Parameters
ParameterType
sstring
Returns

void

Inherited from

ViewBase.basePath


box

Get Signature

get box(): boolean

Defined in: js-api/src/views/view.ts:73

Returns

boolean

Set Signature

set box(b): void

Defined in: js-api/src/views/view.ts:74

Parameters
ParameterType
bboolean
Returns

void

Inherited from

ViewBase.box


children

Get Signature

get children(): Widget<any>[]

Defined in: js-api/src/widgets/base.ts:304

Parent widget up the DOM tree, or null.

Returns

Widget<any>[]

Inherited from

ViewBase.children


closing

Get Signature

get closing(): boolean

Defined in: js-api/src/views/view.ts:149

Whether the view is currently closing.

Returns

boolean

Set Signature

set closing(c): void

Defined in: js-api/src/views/view.ts:150

Parameters
ParameterType
cboolean
Returns

void

Inherited from

ViewBase.closing


currentView

Get Signature

get currentView(): ViewBase

Defined in: js-api/src/views/multi_view.ts:85

Returns

ViewBase

Set Signature

set currentView(x): void

Defined in: js-api/src/views/multi_view.ts:86

Parameters
ParameterType
xViewBase
Returns

void


description

Get Signature

get description(): string

Defined in: js-api/src/views/view.ts:124

Returns

string

Set Signature

set description(s): void

Defined in: js-api/src/views/view.ts:125

Parameters
ParameterType
sstring
Returns

void

Inherited from

ViewBase.description


entity

Get Signature

get entity(): object | null

Defined in: js-api/src/views/view.ts:127

Returns

object | null

Set Signature

set entity(_e): void

Defined in: js-api/src/views/view.ts:128

Parameters
ParameterType
_eobject | null
Returns

void

Inherited from

ViewBase.entity


helpUrl

Get Signature

get helpUrl(): string | null

Defined in: js-api/src/views/view.ts:88

Returns

string | null

View help URL.

Set Signature

set helpUrl(url): void

Defined in: js-api/src/views/view.ts:92

Parameters
ParameterType
urlstring | null
Returns

void

Inherited from

ViewBase.helpUrl


name

Get Signature

get name(): string

Defined in: js-api/src/views/multi_view.ts:76

Returns

string

Set Signature

set name(s): void

Defined in: js-api/src/views/multi_view.ts:80

Parameters
ParameterType
sstring
Returns

void

Overrides

ViewBase.name


parent

Get Signature

get parent(): Widget<any> | null

Defined in: js-api/src/widgets/base.ts:301

Parent widget up the DOM tree, or null.

Returns

Widget<any> | null

Inherited from

ViewBase.parent


parentCall

Get Signature

get parentCall(): FuncCall | undefined

Defined in: js-api/src/views/view.ts:118

Returns

FuncCall | undefined

Set Signature

set parentCall(s): void

Defined in: js-api/src/views/view.ts:119

Parameters
ParameterType
sFuncCall | undefined
Returns

void

Inherited from

ViewBase.parentCall


parentView

Get Signature

get parentView(): ViewBase

Defined in: js-api/src/views/view.ts:121

Returns

ViewBase

Set Signature

set parentView(s): void

Defined in: js-api/src/views/view.ts:122

Parameters
ParameterType
sViewBase
Returns

void

Inherited from

ViewBase.parentView


path

Get Signature

get path(): string

Defined in: js-api/src/views/view.ts:176

View URI, relative to the view root

Returns

string

Set Signature

set path(s): void

Defined in: js-api/src/views/view.ts:177

Parameters
ParameterType
sstring
Returns

void

Inherited from

ViewBase.path


propertyTarget

Get Signature

get propertyTarget(): unknown

Defined in: js-api/src/u2core/component.ts:228

What this component's properties are read from and written to — prop.get(target) / prop.set(target, v): the component itself, unless an adoption says otherwise.

Returns

unknown

Inherited from

ViewBase.propertyTarget


propertyTier

Get Signature

get propertyTier(): boolean

Defined in: js-api/src/widgets/base.ts:276

Every property getProperties declares is a bind step, read and written on propertyTarget.

Returns

boolean

Inherited from

ViewBase.propertyTier


ribbonMenu

Get Signature

get ribbonMenu(): Menu

Defined in: js-api/src/views/view.ts:141

View menu. Sample: https://public.datagrok.ai/js/samples/ui/views/ribbon

Returns

Menu

Set Signature

set ribbonMenu(menu): void

Defined in: js-api/src/views/view.ts:142

Parameters
ParameterType
menuMenu
Returns

void

Inherited from

ViewBase.ribbonMenu


root

Get Signature

get root(): HTMLElement

Defined in: js-api/src/views/view.ts:70

Returns

HTMLElement

Set Signature

set root(newRoot): void

Defined in: js-api/src/views/view.ts:71

Parameters
ParameterType
newRootHTMLElement
Returns

void

Inherited from

ViewBase.root


scope

Get Signature

get scope(): Scope

Defined in: js-api/src/u2core/component.ts:53

Minted on first use; assigned before _scopeMinted fires, so the hook's own this.scope.own(...) reads the stored scope instead of re-entering the mint.

Returns

Scope

Inherited from

ViewBase.scope


statusBarPanels

Get Signature

get statusBarPanels(): HTMLDivElement[]

Defined in: js-api/src/views/view.ts:145

Status bar panels to be shown on the bottom

Returns

HTMLDivElement[]

Set Signature

set statusBarPanels(panels): void

Defined in: js-api/src/views/view.ts:146

Parameters
ParameterType
panelsHTMLDivElement[]
Returns

void

Inherited from

ViewBase.statusBarPanels


toolbox

Get Signature

get toolbox(): HTMLElement

Defined in: js-api/src/views/view.ts:136

View toolbox. Sample: https://public.datagrok.ai/js/samples/ui/views/toolbox

Returns

HTMLElement

Set Signature

set toolbox(x): void

Defined in: js-api/src/views/view.ts:137

Parameters
ParameterType
xHTMLElement
Returns

void

Inherited from

ViewBase.toolbox


type

Get Signature

get type(): string

Defined in: js-api/src/views/view.ts:83

View type

Returns

string

Inherited from

ViewBase.type

Methods

_getFactory()

_getFactory(factory): ViewDescription | ViewFactory

Defined in: js-api/src/views/multi_view.ts:61

Parameters

ParameterType
factoryViewDescription | ViewFactory

Returns

ViewDescription | ViewFactory


_notifyPropertyChange()

protected _notifyPropertyChange(p): void

Defined in: js-api/src/widgets/base.ts:351

Notifies the property tier. Called from both the addProperty setter (overrides that skip super would otherwise lose props.x = writes) and onPropertyChanged (direct calls); the double notify collapses into one microtask refresh.

Parameters

ParameterType
pProperty | null

Returns

void

Inherited from

ViewBase._notifyPropertyChange


_ownPropertyChanges()

protected _ownPropertyChanges(): ObservableLike<PropertyChange>

Defined in: js-api/src/widgets/base.ts:356

Returns

ObservableLike<PropertyChange>

Inherited from

ViewBase._ownPropertyChanges


_scopeMinted()

protected _scopeMinted(_scope): void

Defined in: js-api/src/widgets/base.ts:320

First-mint hook: a platform descendant wires its lifecycle here. Never fired for a scope provided to init — that path runs inside the constructor chain.

Parameters

ParameterType
_scopeScope

Returns

void

Inherited from

ViewBase._scopeMinted


_wireDartLifecycle()

protected _wireDartLifecycle(): void

Defined in: js-api/src/widgets/base.ts:336

Dart-owned lifecycle: the platform kill disposes the scope, and disposing the scope kills the widget through the kill-walk.

Returns

void

Inherited from

ViewBase._wireDartLifecycle


_wireJsLifecycle()

protected _wireJsLifecycle(): void

Defined in: js-api/src/widgets/base.ts:327

JS-owned lifecycle: disposing the scope detaches the widget, and vice versa.

Returns

void

Inherited from

ViewBase._wireJsLifecycle


_wireLifecycle()

protected _wireLifecycle(): void

Defined in: js-api/src/widgets/base.ts:322

Returns

void

Inherited from

ViewBase._wireLifecycle


acceptsPath()

acceptsPath(_urlPath): boolean

Defined in: js-api/src/views/view.ts:201

Checks if URL path is acceptable. Override in subclasses.

[_urlPath] is the path WITHOUT the query string: a view claims a URL by its path, and decides what the parameters mean in handlePath.

Parameters

ParameterType
_urlPathstring

Returns

boolean

"true" if path is acceptable, "false" otherwise.

Inherited from

ViewBase.acceptsPath


addView()

addView(name, desc, activate): void

Defined in: js-api/src/views/multi_view.ts:56

Parameters

ParameterType
namestring
descViewDescription | ViewFactory
activateboolean

Returns

void


afterPersist()

protected afterPersist(): void

Defined in: js-api/src/views/view.ts:99

Gets called automatically when this view gets pinned

Returns

void

Inherited from

ViewBase.afterPersist


append()

append(item): HTMLElement

Defined in: js-api/src/views/view.ts:206

Appends an item to this view. Use appendAll for appending multiple elements.

Parameters

ParameterTypeDescription
itemany-

Returns

HTMLElement

Inherited from

ViewBase.append


appendAll()

appendAll(items): HTMLElement

Defined in: js-api/src/views/view.ts:213

Appends multiple elements this view. Use append for appending a single element.

Parameters

ParameterTypeDescription
itemsHTMLElement[]-

Returns

HTMLElement

Inherited from

ViewBase.appendAll


apply()

apply(properties): Widget

Defined in: js-api/src/widgets/base.ts:261

Parameters

ParameterTypeDescription
propertiesobject-

Returns

Widget

Inherited from

ViewBase.apply


bindProps()

bindProps(): BindProp[]

Defined in: js-api/src/u2core/component.ts:285

The signal-backed subset of the meta props — what a binding picker offers on a named node — plus, under propertyTier, every declared property. Allocates no signal.

Returns

BindProp[]

Inherited from

ViewBase.bindProps


bindStep()

bindStep(name): BindSource | Signal<unknown> | null

Defined in: js-api/src/u2core/component.ts:274

One binding step (DD5): a meta-declared prop's same-named Signal member — a named node is a bind source, generated off componentMeta the way getProperties is — then, under propertyTier, a cached signal over the declared property. '' answers the default binding: the component's own value signal, where one exists.

Parameters

ParameterType
namestring

Returns

BindSource | Signal<unknown> | null

Inherited from

ViewBase.bindStep


close()

close(): void

Defined in: js-api/src/views/view.ts:223

Closes this view.

Returns

void

Inherited from

ViewBase.close


detach()

detach(): void

Defined in: js-api/src/views/view.ts:218

Detaches this view.

Returns

void

Inherited from

ViewBase.detach


dispose()

dispose(): void

Defined in: js-api/src/u2core/component.ts:141

On a never-engaged wrapper the getter mints here and _scopeMinted wires the lifecycle (own(kill) + the platform cleanup for Dart-owned), so dispose still kills it; re-entry from the kill cleanup is a no-op via the scope's disposed flag.

Returns

void

Inherited from

ViewBase.dispose


effect()

effect(fn): this

Defined in: js-api/src/u2core/component.ts:128

Parameters

ParameterType
fn() => void

Returns

this

Inherited from

ViewBase.effect


fireEvent()

protected fireEvent(eventId, args?): void

Defined in: js-api/src/u2core/component.ts:413

Parameters

ParameterType
eventIdstring
args?unknown

Returns

void

Inherited from

ViewBase.fireEvent


getDartProperties()

getDartProperties(): any[]

Defined in: js-api/src/widgets/base.ts:289

Returns

any[]

Inherited from

ViewBase.getDartProperties


getFunctions()

getFunctions(): Func[]

Defined in: js-api/src/views/view.ts:183

Functions applicable to this view. Override in subclasses to return the view's registered package functions — each typically takes the generic view argument and reaches this instance through view.jsView. The Dart JsViewHost forwards its own getFunctions() here, so callers holding grok.shell.v see these functions.

Returns

Func[]

Inherited from

ViewBase.getFunctions


getIcon()

getIcon(): HTMLElement | null

Defined in: js-api/src/views/view.ts:165

Returns

HTMLElement | null

View icon. Override in subclasses.

Inherited from

ViewBase.getIcon


getProperties()

getProperties(): Property[]

Defined in: js-api/src/widgets/base.ts:279

Returns all properties of this widget: the meta-generated ones plus addProperty's.

Returns

Property[]

Inherited from

ViewBase.getProperties


getRibbonPanels()

getRibbonPanels(): HTMLElement[][]

Defined in: js-api/src/views/view.ts:160

Returns

HTMLElement[][]

Inherited from

ViewBase.getRibbonPanels


getView()

getView(name): ViewBase

Defined in: js-api/src/views/multi_view.ts:68

Parameters

ParameterType
namestring

Returns

ViewBase


getWidgetStatus()

getWidgetStatus(): IWidgetStatus

Defined in: js-api/src/widgets/base.ts:422

Returns the widget's runtime structure for automated testing and introspection.

Returns

IWidgetStatus

Inherited from

ViewBase.getWidgetStatus


handlePath()

handlePath(_urlPath): void

Defined in: js-api/src/views/view.ts:194

Handles URL path. Override in subclasses.

[_urlPath] is the path WITHOUT the query string (see acceptsPath); the router has already updated the address bar, so read the parameters from window.location.search.

A handler may route elsewhere — set grok.shell.v to another view and the router leaves it alone (it only falls back to this view when the handler changed nothing).

Parameters

ParameterType
_urlPathstring

Returns

void

Inherited from

ViewBase.handlePath


link(name, source, twoWay): void

Defined in: js-api/src/u2core/component.ts:246

Keeps this component's name step and source equal, echo-suppressed by value; the reverse direction only where twoWay. A component that took source as its own signal needs no link and gets none; a read-only step cannot follow anything and gets none either.

Parameters

ParameterType
namestring
sourceSignal<unknown>
twoWayboolean

Returns

void

Inherited from

ViewBase.link


loadStateMap()

loadStateMap(_stateMap): void

Defined in: js-api/src/views/view.ts:173

Loads view state map. Override in subclasses.

Parameters

ParameterType
_stateMapobject

Returns

void

Inherited from

ViewBase.loadStateMap


onEvent()

onEvent(eventId?): Observable<any>

Defined in: js-api/src/widgets/base.ts:419

Observes events with the specified eventId. Override in subclasses to provide actual events.

Parameters

ParameterTypeDefault value
eventIdstring | nullnull

Returns

Observable<any>

Inherited from

ViewBase.onEvent


onFrameAttached()

onFrameAttached(dataFrame): void

Defined in: js-api/src/widgets/base.ts:295

Parameters

ParameterType
dataFrameDataFrame

Returns

void

Inherited from

ViewBase.onFrameAttached


onPropertyChanged()

onPropertyChanged(property): void

Defined in: js-api/src/widgets/base.ts:287

Gets called when viewer's property is changed.

Parameters

ParameterTypeDescription
propertyProperty | nullor null, if multiple properties were changed.

Returns

void

Inherited from

ViewBase.onPropertyChanged


own()

own(dispose): this

Defined in: js-api/src/u2core/component.ts:133

Parameters

ParameterType
dispose() => void

Returns

this

Inherited from

ViewBase.own


propertyChanges()

protected propertyChanges(): ObservableLike<PropertyChange>

Defined in: js-api/src/widgets/base.ts:366

What refreshes the property tier's cached signals from outside: null where nothing announces a change (one-way).

Returns

ObservableLike<PropertyChange>

Inherited from

ViewBase.propertyChanges


registerFunction()

protected registerFunction(f): void

Defined in: js-api/src/u2core/component.ts:409

Parameters

ParameterType
fFuncLike

Returns

void

Inherited from

ViewBase.registerFunction


run()

run<T>(fn): T

Defined in: js-api/src/u2core/component.ts:124

Type Parameters

Type Parameter
T

Parameters

ParameterType
fn() => T

Returns

T

Inherited from

ViewBase.run


saveStateMap()

saveStateMap(): object | null

Defined in: js-api/src/views/view.ts:170

Returns

object | null

Viewer state map. Override in subclasses.

Inherited from

ViewBase.saveStateMap


setIcon()

setIcon(icon): void

Defined in: js-api/src/views/view.ts:167

Parameters

ParameterType
iconHTMLElement

Returns

void

Inherited from

ViewBase.setIcon


setRibbonPanels()

setRibbonPanels(panels, clear?): void

Defined in: js-api/src/views/view.ts:156

Sets custom view panels on the ribbon.

Parameters

ParameterTypeDefault valueDescription
panelsHTMLElement[][]undefined-
clearbooleantrueClear all previous before setup Sample: https://public.datagrok.ai/js/samples/ui/views/ribbon

Returns

void

Inherited from

ViewBase.setRibbonPanels


sourceRowsChanged()

sourceRowsChanged(): void

Defined in: js-api/src/widgets/base.ts:293

Returns

void

Inherited from

ViewBase.sourceRowsChanged


sub()

sub(subscription): void

Defined in: js-api/src/widgets/base.ts:254

Registers a subscription to an external event.

Parameters

ParameterTypeDescription
subscriptionSubscription-

Returns

void

Inherited from

ViewBase.sub


toDart()

toDart(): any

Defined in: js-api/src/widgets/base.ts:246

Returns

any

Inherited from

ViewBase.toDart


build()

static build(builder): Control

Defined in: js-api/src/u2core/component.ts:470

Builds a control out of plain elements: builder runs with the new control's scope ambient, so signal bindings and nested components inside it are owned by the result. The ambient scope only spans the synchronous part of builder — components constructed after an await inside it are adopted by nobody and must be disposed by hand, or constructed before the first await.

Parameters

ParameterType
builder() => HTMLElement | (string | HTMLElement | Control)[]

Returns

Control

Inherited from

ViewBase.build


find()

static find(root): Widget<any> | null

Defined in: js-api/src/widgets/base.ts:236

Finds existing widget from its visual root.

Parameters

ParameterType
rootElement

Returns

Widget<any> | null

Inherited from

ViewBase.find


fromRoot()

static fromRoot(root): Widget

Defined in: js-api/src/widgets/base.ts:425

Creates a new widget from the root element.

Parameters

ParameterType
rootHTMLElement

Returns

Widget

Inherited from

ViewBase.fromRoot


getAll()

static getAll(): Widget<any>[]

Defined in: js-api/src/widgets/base.ts:231

Returns all currently active widgets.

Returns

Widget<any>[]

Inherited from

ViewBase.getAll


init()

static init(self, scope?): void

Defined in: js-api/src/u2core/component.ts:83

Per-instance state, for a constructed component and for an adopted platform object alike.

Parameters

ParameterType
selfComponent
scope?Scope

Returns

void

Inherited from

ViewBase.init


is()

static is(x): x is Control

Defined in: js-api/src/u2core/component.ts:439

Structural probe by methods only — never .scope: the accessor mints.

Parameters

ParameterType
xunknown

Returns

x is Control

Inherited from

ViewBase.is


registerCleanup()

static registerCleanup(element, cleanup): void

Defined in: js-api/src/widgets/base.ts:242

Registers a cleanup function to run when [element] is killed — i.e. when its host view or pane closes. Also marks the element so the kill-walk can find it.

Parameters

ParameterType
elementElement
cleanupFunction

Returns

void

Inherited from

ViewBase.registerCleanup


sameValue()

static sameValue(a, b): boolean

Defined in: js-api/src/u2core/component.ts:105

The equality the property tier and link suppress echoes by: Object.is, arrays element-wise, plain objects key-wise (recursive), everything else by identity.

Parameters

ParameterType
aunknown
bunknown

Returns

boolean

Inherited from

ViewBase.sameValue