UNPKG

@adaptabletools/adaptable

Version:

Powerful data-agnostic HTML5 AG Grid extension which provides advanced, cutting-edge functionality to meet all DataGrid requirements

81 lines (80 loc) 4.08 kB
import { IRowNode } from 'ag-grid-enterprise'; import { AppIdentifier, Channel, Context, ContextType, DesktopAgent, Intent, IntentResolution } from '@finos/fdc3'; /** * Provides run-time access to AdapTable's FDC3 functionality */ export interface Fdc3Api { /** * Returns the FDC3 Desktop Agent */ getDesktopAgent(): DesktopAgent; /** * Returns the human-friendly label for the given Context Type * @param contextType - The FDC3 Context Type */ getContextLabel(contextType: ContextType): string; /** * Builds FDC3 Context Data based on the given Context Type and Row Node * @param contextType - The FDC3 Context Type * @param rowNode - The Row Node */ buildContextDataFromRow(contextType: ContextType, rowNode: IRowNode): Context; /** * Builds FDC3 Context Data based on the given Context Type and the Row Node with the given Primary Key Value * @param contextType - The FDC3 Context Type * @param primaryKeyValue - The Primary Key Value */ buildContextDataForPrimaryKey(contextType: ContextType, primaryKeyValue: string | number): Context | undefined; /** * Raises an Intent with the given Context from the given Row Node * @param rowNode - The Row Node * @param intent - The FDC3 Intent * @param contextType - The FDC3 Context Type * @param appIdentifier - The App Identifier */ raiseIntentFromRow(rowNode: IRowNode, intent: Intent, contextType: ContextType, appIdentifier?: AppIdentifier): Promise<IntentResolution>; /** * Raises an Intent with the given Context from the given Row Node with the given Primary Key Value * @param primaryKeyValue - The Primary Key Value * @param intent - The FDC3 Intent * @param contextType - The FDC3 Context Type * @param appIdentifier - The App Identifier */ raiseIntentFromPrimaryKey(primaryKeyValue: string | number, intent: Intent, contextType: ContextType, appIdentifier?: AppIdentifier): Promise<IntentResolution> | undefined; /** * Finds and raises an Intent based on the given Context from the given Row Node * @param rowNode - The Row Node * @param contextType - The FDC3 Context Type * @param appIdentifier - The App Identifier */ raiseIntentForContextFromRow(rowNode: IRowNode, contextType: ContextType, appIdentifier?: AppIdentifier): Promise<IntentResolution>; /** * Finds and raises an Intent based on the given Context from the given Row Node with the given Primary Key Value * @param primaryKeyValue - The Primary Key Value * @param contextType - The FDC3 Context Type * @param appIdentifier - The App Identifier */ raiseIntentForContextFromPrimaryKey(primaryKeyValue: string | number, contextType: ContextType, appIdentifier?: AppIdentifier): Promise<IntentResolution> | undefined; /** * Broadcasts the given Context from the given Row Node * @param rowNode - The Row Node * @param contextType - The FDC3 Context Type * @param channel - (optional) Channel to broadcast to; if not provided, the Context will be broadcast to whatever User Channel the app is joined to */ broadcastFromRow(rowNode: IRowNode, contextType: ContextType, channel?: Channel): Promise<void>; /** * Broadcasts the given Context from the given Row Node with the given Primary Key Value * @param primaryKeyValue - The Primary Key Value * @param contextType - The FDC3 Context Type * @param channel - (optional) Channel to broadcast to; if not provided, the Context will be broadcast to whatever User Channel the app is joined to */ broadcastFromPrimaryKey(primaryKeyValue: string | number, contextType: ContextType, channel?: Channel): Promise<void> | undefined; /** * Checks if the given Context Type is a FDC3 standard Context Type */ isStandardContextType(contextType: string): boolean; /** * Checks if the given Intent is a FDC3 standard Intent Type */ isStandardIntentType(intentType: string): boolean; }