The DataConnectorController is responsible for all communication regarding Data connectors. Methods inside this controller can be called by window.SDK.dataConnector.{method-name}

The way GraFx Studio handles different sources of Data is called 'DataConnector'. A DataConnector is an implementation of a set of capabilities we need to interact with a certain Data Management system. In essence, a connector is the combination of a JavaScript snippet and some metadata. The JavaScript snippet is loaded in the studio engine using a sandboxed JavaScript execution engine (QuickJs). This allows us to execute the Data connector both on web using webassembly and on the server side during e.g., animation output generation. This controller is an interface to the running connector instance inside the studio engine.

Methods

  • All connectors have a certain set of mappings they allow to be passed into the connector methods their context. This method allows you to discover which mappings are available for a given connector. If you want to use any of these mappings, they will be available in the context parameter of any connector method.

    Parameters

    • connectorId: string

      unique id of the data connector

    Returns Promise<EditorResponse<ConnectorConfigOptions>>

    connector mappings

  • Query a specific DataConnector for data using both specific PageConfig and the dynamic context as parameters.

    Parameters

    • connectorId: string

      unique id of the Data connector

    • config: BidirectionalPageConfig

      bidirectional page configuration — provides previousPageToken / continuationToken navigation

    • Optionalcontext: Dictionary

      context that will be available in the connector script.

    Returns Promise<EditorResponse<BidirectionalDataPage>>

    a BidirectionalDataPage with an array of data objects and bidirectional navigation tokens

  • Query a specific DataConnector for data using both specific PageConfig and the dynamic context as parameters.

    Parameters

    • connectorId: string

      unique id of the Data connector

    • config: PageConfig

      one-directional page configuration — provides a continuationToken for forward navigation

    • Optionalcontext: Dictionary

      context that will be available in the connector script.

    Returns Promise<EditorResponse<DataPage>>

    a DataPage with an array of data objects and a continuation token

  • Experimental

    This method is still experimental and might change in future releases.

    Retrieve a single data item by its identifier from a specific DataConnector. Only available for connectors that set DataConnectorCapabilities.dataSourceVariable = true, which implies support for both bidirectional page navigation and item-level lookup. pageOptions (sorting, limit) are used by the connector to build navigation tokens.

    Parameters

    • connectorId: string

      unique id of the Data connector

    • id: string

      identifier of the item to retrieve

    • pageOptions: PageItemOptions

      sorting and limit used to build previousPageToken/continuationToken

    • context: Dictionary = {}

      context that will be available in the connector script.

    Returns Promise<EditorResponse<BidirectionalDataPageItem>>

    a BidirectionalDataPageItem containing the data item and bidirectional navigation tokens