UNPKG

@adaptabletools/adaptable

Version:

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

345 lines (344 loc) 17 kB
import { AdaptableReadyInfo, AdaptableStateChangedInfo, AdaptableStateReloadedInfo, AlertFiredInfo, CalculatedColumnChangedInfo, CellChangedInfo, CellSelectionChangedInfo, ChartChangedInfo, ColumnFilterAppliedInfo, CommentChangedInfo, CustomToolbarConfiguredInfo, DashboardChangedInfo, DataImportedInfo, DataSetSelectedInfo, Fdc3MessageInfo, FlashingCellDisplayedInfo, RowChangedInfo, GridFilterAppliedInfo, GridSortedInfo, LayoutChangedInfo, LiveDataChangedInfo, RowFormSubmittedInfo, RowSelectionChangedInfo, ScheduleTriggeredInfo, SystemStatusMessageDisplayedInfo, TeamSharingEntityChangedInfo, ThemeChangedInfo } from '../types'; /** * Responsible for publishing the many Events that AdapTable fires */ export interface EventApi { /** * Event fired whenever AdapTable is Sorted * @param eventName GridSorted * @param callback GridSortedInfo which contains current Column Sorts * @returns the unsubscribe function */ on(eventName: 'GridSorted', callback: (gridSortedInfo: GridSortedInfo) => void): VoidFunction; /** * Unsubscribe from GridSorted * @param eventName GridSorted * @param callback */ off(eventName: 'GridSorted', callback: (gridSortedInfo: GridSortedInfo) => void): void; on(eventName: 'GridFilterApplied', callback: (gridFilterAppliedInfo: GridFilterAppliedInfo) => void): VoidFunction; /** * Unsubscribe from GridFilterApplied * @param eventName GridFilterApplied * @param callback */ off(eventName: 'GridFilterApplied', callback: (gridFilterAppliedInfo: GridFilterAppliedInfo) => void): void; /** * Event fired whenever a Schedule is triggered in AdapTable * @param eventName ScheduleTriggered * @param callback ScheduleTriggered which provides details of the Schedule that was triggered * @returns the unsubscribe function */ on(eventName: 'ScheduleTriggered', callback: (scheduleTriggeredInfo: ScheduleTriggeredInfo) => void): VoidFunction; /** * Unsubscribe from ScheduleTriggered * @param eventName ScheduleTriggered * @param callback */ off(eventName: 'ScheduleTriggered', callback: (scheduleTriggeredInfo: ScheduleTriggeredInfo) => void): void; /** * Event fired whenever a Column Filter is Applied in AdapTable * @param eventName ColumnFilterApplied * @param callback ColumnFilterApplied which provides details of the Column Filter that was applied * @returns the unsubscribe function */ on(eventName: 'ColumnFilterApplied', callback: (columnFilterAppliedInfo: ColumnFilterAppliedInfo) => void): VoidFunction; /** * Unsubscribe from ColumnFilterApplied * @param eventName ColumnFilterApplied * @param callback */ off(eventName: 'ColumnFilterApplied', callback: (columnFilterAppliedInfo: ColumnFilterAppliedInfo) => void): void; /** * Event fired whenever a cell changes in the Grid * @param eventName CellChanged * @param callback CellChangedInfo which includes full details of what changed * @returns the unsubscribe function */ on(eventName: 'CellChanged', callback: (cellChangedInfo: CellChangedInfo) => void): VoidFunction; /** * Unsubscribe from CellChanged * @param eventName CellChanged * @param callback */ off(eventName: 'CellChanged', callback: (cellChangedInfo: CellChangedInfo) => void): void; /** * Event fired when a row is added, deleted or updated in the Grid * @param eventName RowChanged * @param callback RowChangedInfo which includes full details of changed Rows * @returns the unsubscribe function */ on(eventName: 'RowChanged', callback: (rowChangedInfo: RowChangedInfo) => void): VoidFunction; /** * Unsubscribe from RowChanged * @param eventName RowChanged * @param callback */ off(eventName: 'RowChanged', callback: (rowChangedInfo: RowChangedInfo) => void): void; /** * Event fired whenever a Shared Entity in Team Sharing changes * @param eventName TeamSharingEntityChanged * @param callback TeamSharingEntityChangedInfo which includes full details of what changed * @returns the unsubscribe function */ on(eventName: 'TeamSharingEntityChanged', callback: (TeamSharingEntityChangedInfo: TeamSharingEntityChangedInfo) => void): VoidFunction; /** * Unsubscribe from TeamSharingEntityChanged * @param eventName TeamSharingEntityChanged * @param callback */ off(eventName: 'TeamSharingEntityChanged', callback: (TeamSharingEntityChangedInfo: TeamSharingEntityChangedInfo) => void): void; /** * Event fired whenever the Cell **Selection in AdapTable changes**. * @param eventName CellSelectionChanged * @param callback CellSelectionChangedInfo which contains information of any cells that are selected. * @returns the unsubscribe function */ on(eventName: 'CellSelectionChanged', callback: (cellSelectionChangedInfo: CellSelectionChangedInfo) => void): VoidFunction; /** * Unsubscribe from CellSelectionChanged */ off(eventName: 'CellSelectionChanged', callback: (cellSelectionChangedInfo: CellSelectionChangedInfo) => void): void; /** * Event fired whenever the Row **Selection in AdapTable changes**. * @param eventName RowSelectionChanged * @param callback RowSelectionChangedInfo which contains information of any rows that are selected. * @returns the unsubscribe function */ on(eventName: 'RowSelectionChanged', callback: (rowSelectionChangedInfo: RowSelectionChangedInfo) => void): VoidFunction; /** * Unsubscribe from RowSelectionChanged */ off(eventName: 'RowSelectionChanged', callback: (rowSelectionChangedInfo: RowSelectionChangedInfo) => void): void; /** * Event fired whenever the selected theme of AdapTable is changed * @param eventName ThemeChanged * @param callback ThemeChangedInfo which just contains the name of the current Theme * @returns the unsubscribe function */ on(eventName: 'ThemeChanged', callback: (themeChangedInfo: ThemeChangedInfo) => void): VoidFunction; /** * Unsubscribe from ThemeChanged */ off(eventName: 'ThemeChanged', callback: (themeChangedInfo: ThemeChangedInfo) => void): void; /** * Event fired whenever a **System Status Message is displayed** in AdapTable * @param eventName SystemStatusMessageDisplayed * @param callback SystemStatusMessageDisplayed which provides `SystemStatusMessageInfo` * @returns the unsubscribe function */ on(eventName: 'SystemStatusMessageDisplayed', callback: (systemStatusMessageDisplayedInfo: SystemStatusMessageDisplayedInfo) => void): VoidFunction; /** * Unsubscribe from SystemStatusMessageDisplayed */ off(eventName: 'SystemStatusMessageDisplayed', callback: (SystemStatusMessageDisplayedInfo: SystemStatusMessageDisplayedInfo) => void): void; /** * Event fired whenever an **Alert is triggered** in AdapTable. * @param eventName AlertFired * @param callback AlertFiredInfo which wrap the Alert that was fired * @returns the unsubscribe function */ on(eventName: 'AlertFired', callback: (alertFiredInfo: AlertFiredInfo) => void): VoidFunction; /** * Unsubscribe from AlertFired */ off(eventName: 'AlertFired', callback: (alertFiredInfo: AlertFiredInfo) => void): void; /** * Event fired when **Data has been imported** * @param eventName DataImported * @param callback DataImportedInfo which contains the imported data * @returns the unsubscribe function */ on(eventName: 'DataImported', callback: (dataImportedInfo: DataImportedInfo) => void): VoidFunction; /** * Unsubscribe from DataImported */ off(eventName: 'DataImported', callback: (dataImportedInfo: DataImportedInfo) => void): void; /** * Event fired whenever **Cell Flashing** is triggered in AdapTable. * @param eventName FlashingCellDisplayed * @param callback FlashingCellDisplayedInfo which wrap the `AdaptableFlashingCell` that was displayed * @returns the unsubscribe function */ on(eventName: 'FlashingCellDisplayed', callback: (flashingCellDisplayedInfo: FlashingCellDisplayedInfo) => void): VoidFunction; /** * Unsubscribe from FlashingCellDisplayed */ off(eventName: 'FlashingCellDisplayed', callback: (flashingCellDisplayedInfo: FlashingCellDisplayedInfo) => void): void; /** * Event fired whenever the current Layout updates in AdapTable * @param eventName LayoutChanged * @param callback LayoutChanged which includes just the name of the currently selected Layout. * @returns the unsubscribe function */ on(eventName: 'LayoutChanged', callback: (layoutChangedInfo: LayoutChangedInfo) => void): VoidFunction; /** * Unsubscribe from LayoutChanged */ off(eventName: 'LayoutChanged', callback: (layoutChangedInfo: LayoutChangedInfo) => void): void; /** * Event fired whenever a Calculated Columns is created / updated / deleted in AdapTable * @param eventName CalculatedColumnChanged * @param callback CalculatedColumnChanged which includes the action and details of the Calculated Column * @returns the unsubscribe function */ on(eventName: 'CalculatedColumnChanged', callback: (calculatedColumnChangedInfo: CalculatedColumnChangedInfo) => void): VoidFunction; /** * Unsubscribe from CalculatedColumnChanged */ off(eventName: 'CalculatedColumnChanged', callback: (calculatedColumnChangedInfo: CalculatedColumnChangedInfo) => void): void; /** * Event fired whenever **Configure Button is clicked in a Custom Toolbar** * @param eventName CustomToolbarConfigured * @param callback CustomToolbarConfiguredInfo which contains the Custom Toolbar * @returns the unsubscribe function */ on(eventName: 'CustomToolbarConfigured', callback: (customToolbarConfiguredInfo: CustomToolbarConfiguredInfo) => void): VoidFunction; /** * Unsubscribe from CustomToolbarConfigured */ off(eventName: 'CustomToolbarConfigured', callback: (customToolbarConfiguredInfo: CustomToolbarConfiguredInfo) => void): void; /** * Event fired whenever **Dashboard State changes** * Primarily used for rendering Custom toolbars. * @param eventName DashboardChanged * @param callback DashboardChangedInfo which includes the full Dashboard State * @returns the unsubscribe function */ on(eventName: 'DashboardChanged', callback: (dashboardChangedInfo: DashboardChangedInfo) => void): VoidFunction; /** * Unsubscribe from DashboardChanged */ off(eventName: 'DashboardChanged', callback: (dashboardChangedInfo: DashboardChangedInfo) => void): void; /** * Event fired whenever **Adaptable State changes** * @param eventName AdaptableStateChanged * @param callback AdaptableStateChangedInfo * @returns the unsubscribe function */ on(eventName: 'AdaptableStateChanged', callback: (adaptableStateChangedInfo: AdaptableStateChangedInfo) => void): () => void; /** * Unsubscribe from AdaptableStateChanged */ off(eventName: 'AdaptableStateChanged', callback: (adaptableStateChangedInfo: AdaptableStateChangedInfo) => void): void; /** * Event fired whenever **Adaptable State is reloaded** * @param eventName AdaptableStateReloaded * @param callback AdaptableStateReloadedInfo * @returns the unsubscribe function */ on(eventName: 'AdaptableStateReloaded', callback: (adaptableStateReloadedInfo: AdaptableStateReloadedInfo) => void): () => void; /** * Unsubscribe from AdaptableStateReloaded */ off(eventName: 'AdaptableStateReloaded', callback: (adaptableStateReloadedInfo: AdaptableStateReloadedInfo) => void): void; /** * Event fired whenever **a change occurs relating to live reports / data** * Used in conjunction with AdapTable's partners OpenFin or ipushpull * @param eventName LiveDataChanged * @param callback LiveDataChangedInfo which includes details of what triggered the event and the live report which is affected. * @returns the unsubscribe function */ on(eventName: 'LiveDataChanged', callback: (liveDataChangedInfo: LiveDataChangedInfo) => void): () => void; /** * Unsubscribe from LiveDataChanged */ off(eventName: 'LiveDataChanged', callback: (liveDataChangedInfo: LiveDataChangedInfo) => void): void; /** * Event fired when a Row Form is submitted * * @param eventName RowFormSubmitted * @param callback RowFormSubmitted */ on(eventName: 'RowFormSubmitted', callback: (rowFormSubmittedInfo: RowFormSubmittedInfo) => void): () => void; /** * Unsubscribe from RowFormSubmitted * @param eventName RowFormSubmitted * @param callback */ off(eventName: 'RowFormSubmittedInfo', callback: (rowFormSubmittedInfo: RowFormSubmittedInfo) => void): void; /** * Event fired when a DataSet is Selected * * @param eventName DataSetSelected * @param callback DataSetSelectedInfo */ on(eventName: 'DataSetSelected', callback: (dataSetSelectedInfo: DataSetSelectedInfo) => void): () => void; /** * Unsubscribe from DataSetSelected * @param eventName DataSetSelected * @param callback */ off(eventName: 'DataSetSelected', callback: (dataSetSelectedInfo: DataSetSelectedInfo) => void): void; /** * Event fired when a Chart is Changed * * @param eventName ChartChanged * @param callback ChartChangedInfo */ on(eventName: 'ChartChanged', callback: (chartChangedInfo: ChartChangedInfo) => void): () => void; /** * Unsubscribe from ChartChanged * @param eventName ChartChanged * @param callbackChartChangedInfo */ off(eventName: 'ChartChanged', callback: (chartChangedInfo: ChartChangedInfo) => void): void; /** * Event fired when a Comment is Changed * @param eventName CommentChanged * @param callback */ on(eventName: 'CommentChanged', callback: (commentChangedInfo: CommentChangedInfo) => void): () => void; /** * Unsubscribe from CommentChanged * @param eventName * @param callback */ off(eventName: 'CommentChanged', callback: (commentChangedInfo: CommentChangedInfo) => void): void; /** * Fired when Adaptable is up and running - has no arguments. * @param eventName - AdaptableReady * @param callback - An `AdaptableReadyInfo` object which contains the adaptableApi and GridOptions * @returns the unsubscribe function * * @example Use as * ``` * adaptableApi.eventApi.on('AdaptableReady', (adaptableReadyInfo: AdaptableReadyInfo) => { .....[do stuff]...}) * ``` */ on(eventName: 'AdaptableReady', callback: (adaptableReadyInfo: AdaptableReadyInfo) => void): VoidFunction; /** * Fired when Adaptable is destroyed * @param eventName - AdaptableDestroy * @param callback - A callback for listening to `AdaptableDestroy` * @returns the unsubscribe function * * @example Use as * ``` * adaptableApi.eventApi.on('AdaptableDestroy', () => { .....[do stuff]...}) * ``` */ on(eventName: 'AdaptableDestroy', callback: () => void): VoidFunction; /** * Unsubscribe from AdaptableReady */ off(eventName: 'AdaptableReady', callback: (adaptableReadyInfo: AdaptableReadyInfo) => void): void; /** * Event fired when an FDC3 message is sent(Raise Intent or Broadcast Context) or received (Intent or Context) * * @param eventName Fdc3Message * @param callback Fdc3MessageInfo */ on(eventName: 'Fdc3Message', callback: (fdc3MessageInfo: Fdc3MessageInfo) => void): () => void; /** * Unsubscribe from Fdc3Message * @param eventName Fdc3Message * @param callbackFdc3MessageInfo */ off(eventName: 'Fdc3Message', callback: (fdc3MessageInfo: Fdc3MessageInfo) => void): void; emitSync(eventName: 'DashboardChanged', data?: any): any[]; emitSync(eventName: 'FlashingCellDisplayed', data?: any): any[]; emitSync(eventName: 'AdaptableDestroy'): any[]; emit(eventName: 'RowFormSubmitted' | 'AdaptableReady' | 'AlertFired' | 'AdaptableStateChanged' | 'AdaptableStateReloaded' | 'CellChanged' | 'ChartChanged' | 'CheckboxColumnClicked' | 'CustomToolbarConfigured' | 'DashboardChanged' | 'DataImported' | 'DataSetSelected' | 'ColumnFilterApplied' | 'Fdc3Message' | 'RowChanged' | 'GridSorted' | 'LayoutChanged' | 'CalculatedColumnChanged' | 'LiveDataChanged' | 'ScheduleTriggered' | 'SearchChanged' | 'CellSelectionChanged' | 'RowSelectionChanged' | 'SystemStatusMessageDisplayed' | 'TeamSharingEntityChanged' | 'ThemeChanged' | 'GridFilterApplied' | 'CommentChanged', data?: any): Promise<any>; destroy(): void; }