@adaptabletools/adaptable
Version:
Powerful data-agnostic HTML5 AG Grid extension which provides advanced, cutting-edge functionality to meet all DataGrid requirements
122 lines (121 loc) • 4.4 kB
TypeScript
import { PreviewInfo } from '../Utilities/Interface/Preview';
import { BulkUpdateValidationResult } from '../Strategy/Interface/IBulkUpdateModule';
import { CellAddress, CellDataChangedInfo, ExportDestinationType, ReportFormatType, ReportNameType, SmartEditOperation } from '../types';
import type { IPushPullState, IPushPullReport, IPushPullDomain } from './IPushPullState';
import { OpenFinState, OpenFinReport } from './OpenFinState';
import { AdaptableAlert } from './Common/AdaptableAlert';
import { CellSummmaryInfo } from './Common/CellSummary';
import { SystemStatusMessageInfo } from './Common/SystemStatusMessageInfo';
import { SummaryOperation } from './Common/Enums';
import { ChartModel } from 'ag-grid-enterprise';
import { ExternalChartDefinition } from './ChartingState';
import { CachedQuery } from './NamedQueryState';
import { AdaptableColumn } from './Common/AdaptableColumn';
import { SelectedCellInfo } from './Selection/SelectedCellInfo';
import { SelectedRowInfo } from './Selection/SelectedRowInfo';
import { AdaptableMenuItem } from './Common/Menu';
import { CellHighlightInfo } from './Common/CellHighlightInfo';
import { RowHighlightInfo } from './Common/RowHighlightInfo';
export type { IPushPullReport, IPushPullDomain };
export type { OpenFinReport };
export type DataChangeHistoryMode = 'ACTIVE' | 'INACTIVE' | 'SUSPENDED';
export type SystemRowSummary = {
Position: 'Top' | 'Bottom';
RowData: Record<string, any>;
};
/**
* Internal state, used by Adaptable during a session; none of it is provided through Initial Adaptable State, nor is it persisted
*/
export interface InternalState extends IPushPullState, OpenFinState {
Columns: AdaptableColumn[];
SelectedCellInfo: SelectedCellInfo;
SelectedRowInfo: SelectedRowInfo;
CellHighlightInfo: CellHighlightInfo[];
RowHighlightInfo: RowHighlightInfo[];
SettingsPanelModuleEntries: AdaptableMenuItem[];
AdaptableAlerts: AdaptableAlert[];
SystemStatusMessages: SystemStatusMessageInfo[];
Dashboard: {
DashboardModuleButtons: AdaptableMenuItem[];
DashboardRevision: number;
};
SmartEdit: {
IsValidSmartEditSelection: boolean;
SmartEditPreviewInfo: PreviewInfo;
SmartEditValue?: number;
SmartEditOperation?: SmartEditOperation;
};
BulkUpdate: {
BulkUpdateValidationResult: BulkUpdateValidationResult;
BulkUpdatePreviewInfo: PreviewInfo;
BulkUpdateValue?: string;
};
CachedQueries: CachedQuery[];
CellSummary: {
CellSummaryOperation?: SummaryOperation | string;
CellSummaryInfo: CellSummmaryInfo;
};
License: {
watermark: {
show: boolean;
text: string;
};
disablePersistence: boolean;
};
DataChangeHistory: {
logs: Record<string, CellDataChangedInfo>;
currentMode: DataChangeHistoryMode;
enableTime: Date;
suspendTime: Date;
};
SettingsPanel: {
[key: string]: {
position: {
x: number;
y: number;
};
size: {
width: number;
height: number;
};
};
};
IsQuickFilterVisible: boolean;
CurrentDataSet: string;
/**
* Chart Models are saved here for every chart event, so we can listen to chart-model changes without directly listening to AG Grid events
*/
Charting: {
currentChartModels: ChartModel[];
externalChartingDefinitions: ExternalChartDefinition<unknown>[];
};
/**
* Keeps session-relevant information for Layout
*/
Layout: {
showLayoutNonExtendedObjects: boolean;
};
/**
* Equivalent of `UserInterfaceOptions.disableDeleteConfirmation`
* It will suppress the deletion confirmation dialog in the current session.
*/
DisableDeleteConfirmation: boolean;
Export: {
inProgress?: {
reportName: ReportNameType;
reportFormat: ReportFormatType;
exportDestination: ExportDestinationType;
};
};
QuickSearch?: {
floatingVisible?: boolean;
};
NotesAndComments?: {
editMode?: boolean;
focusedEntity?: 'Note' | 'Comment';
popupPosition?: CellAddress | null;
};
RowSummary?: {
rowSummaries?: SystemRowSummary[];
};
}