Skip to main content

Filter

Defined in: js-api/src/widgets/filter.ts:15

Base class for DataFrame-bound filtering controls. Supports collaborative filtering by efficiently working together with other filters.

Extends

Constructors

Constructor

new Filter(): Filter

Defined in: js-api/src/widgets/filter.ts:36

Returns

Filter

Overrides

Widget.constructor

Properties

PropertyModifierTypeDefault valueDescriptionInherited fromDefined in
_functionsprotectedFunc[][]-Widget._functionsjs-api/src/widgets/base.ts:214
_propertiesprotectedProperty[][]-Widget._propertiesjs-api/src/widgets/base.ts:213
_rootprotectedHTMLElementundefined-Widget._rootjs-api/src/u2core/component.ts:423
_u2readonlyComponentStateundefined-Widget._u2js-api/src/u2core/component.ts:76
columnpublicColumn<any, any> | nullnullA column this filter is associated with.-js-api/src/widgets/filter.ts:29
columnName?publicstringundefined--js-api/src/widgets/filter.ts:31
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.Widget.componentMetajs-api/src/u2core/component.ts:71
controlspublicHTMLDivElementundefinedGroup of control icons on the right of the filter header, after the name. FilterGroup takes care of its visibility.-js-api/src/widgets/filter.ts:23
dartpublicanyundefined-Widget.dartjs-api/src/widgets/base.ts:217
dataFramepublicDataFrame | nullundefinedA DataFrame this filter is associated with.-js-api/src/widgets/filter.ts:26
factorypublicFunc | nullnullConstructor function. No parameters, returns [Widget].Widget.factoryjs-api/src/widgets/base.ts:211
indicatorpublicHTMLDivElementundefinedAn indicator icon on the left of the filter header, before the name. A filter is responsible for hiding or showing it, depending on its state.-js-api/src/widgets/filter.ts:19
isDetachedpublicbooleanfalse-Widget.isDetachedjs-api/src/widgets/base.ts:218
propspublicanyundefined-Widget.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.Widget.specPropsjs-api/src/u2core/component.ts:75
subspublicSubscription[]undefined-Widget.subsjs-api/src/widgets/base.ts:216
temppublicanyundefinedContains auxiliary informationWidget.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

Widget.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

Widget.ambientAdoption


caption

Get Signature

get caption(): string

Defined in: js-api/src/widgets/filter.ts:34

Caption to be shown in the filter group.

Returns

string


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

Widget.children


filterSummary

Get Signature

get abstract filterSummary(): string

Defined in: js-api/src/widgets/filter.ts:69

Override to provide short filter summary that might be shown on viewers or in the context panel.

Returns

string


isFiltering

Get Signature

get isFiltering(): boolean

Defined in: js-api/src/widgets/filter.ts:60

Override to indicate whether the filter actually filters something (most don't in the initial state). This is used to minimize the number of unnecessary computations. Make sure to call super.isFiltering to check whether the filter has been disabled by the user

Returns

boolean


isReadyToApplyFilter

Get Signature

get isReadyToApplyFilter(): boolean

Defined in: js-api/src/widgets/filter.ts:66

Whether a filter is ready to apply the filtering mask synchronously.

Returns

boolean


name

Get Signature

get name(): string | undefined

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

Unique within a spec: the anchor for selection, patches and automation. An accessor pair (not a field), so a platform descendant's own name accessors override it legally (TS2611).

Returns

string | undefined

Set Signature

set name(x): void

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

Parameters
ParameterType
xstring | undefined
Returns

void

Inherited from

Widget.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

Widget.parent


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

Widget.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

Widget.propertyTier


root

Get Signature

get root(): HTMLElement

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

Returns

HTMLElement

Set Signature

set root(x): void

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

Parameters
ParameterType
xHTMLElement
Returns

void

Inherited from

Widget.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

Widget.scope


type

Get Signature

get type(): string

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

Returns

string

Inherited from

Widget.type

Methods

_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

Widget._notifyPropertyChange


_ownPropertyChanges()

protected _ownPropertyChanges(): ObservableLike<PropertyChange>

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

Returns

ObservableLike<PropertyChange>

Inherited from

Widget._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

Widget._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

Widget._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

Widget._wireJsLifecycle


_wireLifecycle()

protected _wireLifecycle(): void

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

Returns

void

Inherited from

Widget._wireLifecycle


apply()

apply(properties): Widget

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

Parameters

ParameterTypeDescription
propertiesobject-

Returns

Widget

Inherited from

Widget.apply


applyFilter()

abstract applyFilter(): void

Defined in: js-api/src/widgets/filter.ts:75

Override to filter the dataframe. The method should work with this.dataFrame.filter, should disregard false values (these are filtered out already by other filters), and should filter out corresponding indexes.

Returns

void


applyState()

applyState(state): void

Defined in: js-api/src/widgets/filter.ts:86

Override to load filter state.

Parameters

ParameterType
stateany

Returns

void


attach()

attach(dataFrame): void

Defined in: js-api/src/widgets/filter.ts:94

Gets called when a data frame is attached. Make sure to call super.attach(dataFrame) when overriding.

Parameters

ParameterTypeDescription
dataFrameDataFrame-

Returns

void


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

Widget.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

Widget.bindStep


detach()

detach(): void

Defined in: js-api/src/widgets/filter.ts:114

Gets called when a widget is detached and will no longer be used. Typically used for unsubscribing from events. Be sure to call super.detach() if this method is overridden.

Returns

void

Overrides

Widget.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

Widget.dispose


effect()

effect(fn): this

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

Parameters

ParameterType
fn() => void

Returns

this

Inherited from

Widget.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

Widget.fireEvent


getDartProperties()

getDartProperties(): any[]

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

Returns

any[]

Inherited from

Widget.getDartProperties


getFunctions()

getFunctions(): Func[]

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

Functions that are applicable to this particular widget. Used in the UI to display context actions, and for the AI integrations.

Returns

Func[]

Inherited from

Widget.getFunctions


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

Widget.getProperties


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

Widget.getWidgetStatus


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

Widget.link


onActiveChanged()

onActiveChanged(active): void

Defined in: js-api/src/widgets/filter.ts:107

Called when the filter's enabled state changes (checkbox toggled on the filter panel). Override to react to enable/disable.

Parameters

ParameterType
activeboolean

Returns

void


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

Widget.onEvent


onFrameAttached()

onFrameAttached(dataFrame): void

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

Parameters

ParameterType
dataFrameDataFrame

Returns

void

Inherited from

Widget.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

Widget.onPropertyChanged


own()

own(dispose): this

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

Parameters

ParameterType
dispose() => void

Returns

this

Inherited from

Widget.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

Widget.propertyChanges


refresh()

refresh(): void

Defined in: js-api/src/widgets/filter.ts:112

Gets called when a previously used filter gets moved in the DOM tree. Normally, you don't need to do anything, but this might be handy for the iframe-based filters.

Returns

void


registerFunction()

protected registerFunction(f): void

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

Parameters

ParameterType
fFuncLike

Returns

void

Inherited from

Widget.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

Widget.run


saveState()

saveState(): any

Defined in: js-api/src/widgets/filter.ts:78

Override to save filter state.

Returns

any


sourceRowsChanged()

sourceRowsChanged(): void

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

Returns

void

Inherited from

Widget.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

Widget.sub


toDart()

toDart(): any

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

Returns

any

Inherited from

Widget.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

Widget.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

Widget.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

Widget.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

Widget.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

Widget.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

Widget.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

Widget.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

Widget.sameValue