@adaptabletools/adaptable
Version:
Powerful AG Grid extension which provides advanced, cutting-edge functionality to meet all DataGrid requirements
369 lines (368 loc) • 17.7 kB
TypeScript
import { AdaptableReadyInfo, AdaptableStateChangedInfo, AdaptableStateReloadedInfo, BeforeAdaptableStateChangeInfo, AlertFiredInfo, CalculatedColumnChangedInfo, CellChangedInfo, CellSelectionChangedInfo, ChartChangedInfo, ColumnFilterAppliedInfo, CommentChangedInfo, CustomToolbarConfiguredInfo, DashboardChangedInfo, DataImportedInfo, DataSetSelectedInfo, Fdc3MessageInfo, FlashingCellDisplayedInfo, GridFilterAppliedInfo, GridSortedInfo, LayoutChangedInfo, LiveDataChangedInfo, RowChangedInfo, RowFormSubmittedInfo, RowSelectionChangedInfo, ReportScheduleRanInfo, SystemStatusMessageDisplayedInfo, TeamSharingEntityChangedInfo, ThemeChangedInfo, ThemeSelectedInfo } 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;
/**
* Event fired whenever a Grid Filter is applied in AdapTable
* @param eventName GridFilterApplied
* @param callback GridFilterAppliedInfo which provides details of the Grid Filter that was applied
* @returns the unsubscribe function
*/
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 ReportScheduleRan
* @param callback provides the report schedule and `RanAt` (when this run started)
*/
on(eventName: 'ReportScheduleRan', callback: (reportScheduleRanInfo: ReportScheduleRanInfo) => void): VoidFunction;
/**
* Unsubscribe from ReportScheduleRan
* @param eventName ReportScheduleRan
* @param callback
*/
off(eventName: 'ReportScheduleRan', callback: (reportScheduleRanInfo: ReportScheduleRanInfo) => 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 a shipped theme (`light`, `dark`, or `os`) is selected or re-applied
* @param eventName ThemeSelected
* @param callback ThemeSelectedInfo containing the active system theme name
* @returns the unsubscribe function
*/
on(eventName: 'ThemeSelected', callback: (themeSelectedInfo: ThemeSelectedInfo) => void): VoidFunction;
/**
* Unsubscribe from ThemeSelected
*/
off(eventName: 'ThemeSelected', callback: (themeSelectedInfo: ThemeSelectedInfo) => 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
* @deprecated Use `ThemeSelected` instead. Will be removed in the next major version.
*/
on(eventName: 'ThemeChanged', callback: (themeChangedInfo: ThemeChangedInfo) => void): VoidFunction;
/**
* Unsubscribe from ThemeChanged
* @deprecated Use `ThemeSelected` instead.
*/
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 **before** Adaptable State changes (before the action is processed)
* @param eventName BeforeAdaptableStateChange
* @param callback BeforeAdaptableStateChangeInfo
* @returns the unsubscribe function
*/
on(eventName: 'BeforeAdaptableStateChange', callback: (beforeAdaptableStateChangeInfo: BeforeAdaptableStateChangeInfo) => void): () => void;
/**
* Unsubscribe from BeforeAdaptableStateChange
*/
off(eventName: 'BeforeAdaptableStateChange', callback: (beforeAdaptableStateChangeInfo: BeforeAdaptableStateChangeInfo) => 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;
}