sisense.com

WidgetMetadata Object

Properties

NameTypeDescription
panelsWidgetMetadataPanel[]An array of the widget's panels
ignoreobjectAn object defining which dashboard filters are ignored by the widget

Ignored Widgets

The widget's ignore declaration states which dashboard filters should be ignored by the widget.

Add dimension IDs to the dimensions array to explicitly state which dimensions should be ignored, or set the all property to true to ignore all dashboard filters.

{
    dimensions: [ "sales.product", "sales.city" ],
    all: false
}

Methods

panel

Gets a widget's metadata panel by index, name or predicate

Get panel by index

metadata.panel(index)

Arguments

NameTypeRequiredDescription
indexintegerYesIndex of panel to fetch

Returns

WidgetMetadataPanel

Example

widget.metadata.panel(0);

Get panel by name

metadata.panel(name)

Arguments

NameTypeRequiredDescription
namestringYesName of panel to fetch

Returns

WidgetMetadataPanel

Example

widget.metadata.panel('Categories');

Get panel by predicate

metadata.panel(predicate)

Arguments

NameTypeRequiredDescription
predicatefunctionYesA function invoked for each panel, returning true for the desired panel to retrieve.

Returns

WidgetMetadataPanel

Example

// Get the first panel with more than 1 item
widget.metadata.panel((p) => {
    return p.items.length > 1; 
});

items

metadata.items([predicate])

Gets all of the widget's metadata items, optionally filtered by the predicate function.

Arguments

NameTypeRequiredDescription
predicatefunctionNoA function invoked for each metadata item, returning true for the desired items to retrieve.

Returns

MetadataItem[]

Example

widget.metadata.items();

filters

metadata.filters()

Gets an array of widget filters.

Arguments

N/A

Returns

MetadataItem[]

Example

widget.metadata.filters();

WidgetMetadataPanel Object

Properties

NameTypeDescription
itemsMetadataItem[]The Metadata items contained in the panel

Methods

item

Get a metadata item from the panel by index, GUID or predicate

Get an item by index

panel.item(index)

Arguments

NameTypeRequiredDescription
indexintegerYesIndex of item to get

Returns

MetadataItem[]

Example

widget.metadata.panel(0).item(0);

Get an item by GUID

panel.item(guid)

Arguments

NameTypeRequiredDescription
guidstringYesGUID of item to get

Returns

MetadataItem[]

Example

widget.metadata.panel(0).item('DA0A8-A06F-B07C-15E9');

Get an item by predicate

panel.item(predicate)

Arguments

NameTypeRequiredDescription
predicatefunctionYesA function invoked for each item, returning true for the desired item to retrieve.

Returns

MetadataItem[]

Example

widget.metadata.panel(0).item((i) => {
    return i.jaql.dim === '[Commerce.Brand ID]';
});

push

panel.push(items)

Add one or more metadata items to the panel

Arguments

NameTypeRequiredDescription
itemsMetadataItem or MetadataItem[]YesA metadata item or an array of metadata items to add

Returns

N/A

Example

// add one item
widget.metadata.panel(0).push(item1);
// add multiple items
widget.metadata.panel(0).push([item1, item2]);

isEmpty

panel.isEmpty()

Returns a response stating whether the panel is empty or not.

Arguments

N/A

Returns

boolean

Example

console.log(widget.metadata.panel(0).isEmpty());
Last Updated: