Interface: ContentAPI

ContentAPI

API class that is used to control canvas content.

Examples

dashboard.getFeature('Canvas').getContent(<widgetId>)
dashboard.getFeature('Canvas').findContent()

Methods

addContent(options, transactionTokenopt) → {Promise.<ContentAPI>}

Adds content with the specified spec.
Parameters:
Name Type Attributes Description
options Object Contains the options for adding content to this contentApi.
Properties
Name Type Description
containerId String Container ID specifying where to add the content. By default, the system selects the position.
position Number Index specifying where to add the content. By default, the system selects the position.
properties Object An object of property names and values to apply to the content.
type String Content provider type to use. Must provide a spec or content, if not defined.
spec Object Layout, widget or fragment spec.
content ContentAPI ContentAPI object to be added to this contentApi.
transactionToken TransactionToken <optional>
Optional transaction token.
Returns:
Promise resolved with the new content instance.
Type
Promise.<ContentAPI>

findContent(selector) → {Array.<ContentAPI>}

Returns a list of content that matches the provided selector.
Parameters:
Name Type Description
selector Object Selector object; returns all widgets if undefined.
Properties
Name Type Description
type String Selector type
properties Object
Returns:
Array of content
Type
Array.<ContentAPI>
Example
content.findContent({
   properties: {
      title: 'My page'
   }
});
content.findContent({
   type: 'page'
});

getChildren() → {Array.<ContentAPI>}

Returns the children content.
Returns:
Array of contents
Type
Array.<ContentAPI>

getContainer() → {ContentAPI}

Returns the parent container.
Returns:
Content container
Type
ContentAPI

getContent(id) → {ContentAPI}

Returns the content that matches the given ID.
Parameters:
Name Type Description
id String ID of the content
Returns:
Type
ContentAPI

getFeature() → {Promise}

Returns a content-level feature. Features are extensions to the widget.
Parameters:
Name Type Description
featureId[.type String featureId is the ID of the feature to get, while .type is the type of the feature.
Returns:
Promise resolved with the feature or with undefined, if the feature does not exist.
Type
Promise
Example
content.getFeature('state') will return a public renderState API.
  content.getFeature('state.internal') will return a private renderState API.

getId() → {String}

Returns the internal ID of the widget.
Returns:
Internal ID of the widget
Type
String

getPropertiesNameList() → {Array.<String>}

Returns an array of property names.
Returns:
Array of property objects
Type
Array.<String>

getPropertyLayoutList() → {Array.<Object>}

Returns a list of layout and properties used to render the properties UI.
Returns:
Array of layout and properties used to render the properties UI.
Type
Array.<Object>

getPropertyList() → {Array.<Object>}

get the list of all properties
Returns:
Type
Array.<Object>

getPropertyValue(name) → {Object}

Returns the value of a property.
Parameters:
Name Type Description
name String Name of the property
Returns:
Value of the property
Type
Object

getType() → {String}

Returns the type of the canvas content.
Returns:
Type of the canvas content
Type
String

off(eventName, handler, context)

Unregisters an event handler that was registered with ContentAPI#on.
Parameters:
Name Type Description
eventName String Name of the dashboard event
handler function Event handler to be called when the event occurs.
context object Context of the event

on(name, handler) → {Object}

Register a content event handler.
Parameters:
Name Type Description
name String Event name
handler function Event handler
Returns:
Object that has a remove function to remove the event handler.
Type
Object
Example
content.on('all', (event) => { console.log(event); });
content.on('change:selections', (event) => { console.log(event.info.events); });
content.on('change:selections:clearAll', (event) => { console.log(event); });

removeContent(id, transactionTokenopt)

Removes the content with the specified ID.
Parameters:
Name Type Attributes Description
id String ID of the content
transactionToken TransactionToken <optional>
Optional transaction token

setFeatureEnabled(featureId, isEnabled)

Determines whether a content-level feature is enabled or disabled at runtime.
Parameters:
Name Type Description
featureId String ID of the feature to update
isEnabled Boolean Set to true to enable the feature. Default is true.

setPropertyValue(name, value, options)

Sets the value of a property.
Parameters:
Name Type Description
name String Name of the property to set
value Object Value to set
options SetOptions