@adaptabletools/adaptable
Version:
Powerful data-agnostic HTML5 AG Grid extension which provides advanced, cutting-edge functionality to meet all DataGrid requirements
83 lines (82 loc) • 4.19 kB
TypeScript
import { ColDef, ColGroupDef, Column, GridApi, GridOptions, IRowNode, ManagedGridOptionKey, ManagedGridOptions, Module, ModuleName } from 'ag-grid-enterprise';
import { AdaptableAgGrid } from './AdaptableAgGrid';
import { AdaptableColumn, AdaptableColumnGroup } from '../AdaptableState/Common/AdaptableColumn';
import { SelectedCellInfo } from '../AdaptableState/Selection/SelectedCellInfo';
import { SelectedRowInfo } from '../AdaptableState/Selection/SelectedRowInfo';
export type AgGridThemeMode = 'legacy' | 'themingApi';
export declare class AgGridAdapter {
private _adaptableInstance;
private DANGER_USE_GETTER_gridApi;
private DANGER_gridApi_from_args;
private DANGER_updateGridOptionsMonkeyPatcher;
initialGridOptions: GridOptions;
private _agGridId;
constructor(_adaptableInstance: AdaptableAgGrid, config?: {
getAgGridColumnApiModuleReference?: () => Module;
});
destroy(): void;
private get adaptableOptions();
private get adaptableApi();
private get logger();
private get agGridOptionsService();
setAgGridId(agGridId: string): void;
setAgGridApi(gridApi: GridApi): void;
getAgGridApi(skipLogging?: boolean): GridApi | undefined;
monkeyPatchingGridOptionsUpdates(agGridApi: GridApi<any>): void;
private DANGER_getPrivateAgGridBeans;
DANGER_getLiveGridOptions(): GridOptions<any>;
isAgGridModuleRegistered(moduleName: ModuleName): boolean;
getAgGridRegisteredModules(): Module[];
getAgGridRegisteredModuleNames(): ModuleName[];
getAgGridRootElement(): HTMLElement;
/**
* When AG Grid is rendered the first time, the AG GridApi is not yet set in the Adaptable context (as it's set only AFTER the grid is fully initialised)
* yet we need it when evaluating custom GridOptions properties on the first render.
* to handle this edge case, we try to extract the AG GridApi from the invocation arguments
*/
grabAgGridApiOnTheFly(args: unknown): void;
updateGridOptions(options: ManagedGridOptions): void;
getGridOption<Key extends keyof GridOptions>(key: Key): GridOptions[Key];
setGridOption<Key extends ManagedGridOptionKey>(key: Key, value: GridOptions[Key]): void;
getUserGridOptionsProperty<T extends keyof GridOptions>(propertyName: T): GridOptions[T];
updateColumnFilterActiveState(): void;
getColumnDefinitionsInclSpecialColumns(agGridColDefs?: GridOptions['columnDefs']): GridOptions['columnDefs'];
private enhanceColDefsWithSpecialColumns;
private getSpecialColDefs;
deriveSelectedCellInfoFromAgGrid(): SelectedCellInfo;
deriveSelectedRowInfoFromAgGrid(): SelectedRowInfo;
isPinnedRowNode(rowNode: IRowNode): boolean;
createAdaptableColumnFromAgGridColumn(agGridColumn: Column, colsToGroups: Record<string, AdaptableColumnGroup>): AdaptableColumn;
private deriveAdaptableColumnDataType;
private isColumnReadonly;
private isColumnFieldonly;
private isColumnSortable;
private isColumnRowGroupable;
private isColumnPivotable;
private isColumnAggregetable;
private getColumnAggregationFunctions;
private isTreeColumn;
private isColumnMoveable;
private isColumnQueryable;
private isColumnExportable;
private isColumnHideable;
private isCalculatedColumn;
private isFreeTextColumn;
private isActionColumn;
private isColumnFilterable;
private getColumnTypes;
private getColumnPinnedPosition;
private isColumnFixed;
private isColumnRowGrouped;
private isColumnSparkline;
isVisibleNode(rowNode: IRowNode): boolean;
getFlattenedColDefs(colDefs?: (ColDef | ColGroupDef)[]): ColDef[];
/**
* Mutates the colDefs to ensure that each column has a colId
*/
assignColumnIdsToColDefs(colDefs?: (ColDef | ColGroupDef)[]): void;
patchColDefs(colDefs: (ColDef | ColGroupDef)[], patchFn: (colDef: ColDef) => void): void;
traverseColDefs(colDefs: (ColDef | ColGroupDef)[], modifyFn: (colDef: ColDef) => ColDef | null): (ColDef | ColGroupDef)[];
getDefaultColumnDefinition(): GridOptions['defaultColDef'];
_agGridApi_getValue(colKey: string | Column, rowNode: IRowNode, gridApi?: GridApi): any;
}