@gooddata/react-components
Version:
GoodData.UI - A powerful JavaScript library for building analytical applications
39 lines (34 loc) • 1.11 kB
text/typescript
// (C) 2020 GoodData Corporation
import { Column, ColumnApi } from "ag-grid-community";
export const getFakeColumnApi = (columnsMaps: { [id: string]: Column }): ColumnApi => {
const fakeColumnApi = {
getColumn: (columnId: string) => {
return columnsMaps[columnId];
},
setColumnWidth: (column: Column, width: number) => {
columnsMaps[column.getColId()].getColDef().width = width;
},
getAllColumns: () => {
return Object.keys(columnsMaps).map((colId: string) => columnsMaps[colId]);
},
};
return fakeColumnApi as ColumnApi;
};
export const getFakeColumn = (colDef: any): Column => {
const columnDefinition = {
...colDef,
};
const fakeColumn = {
getColDef: () => {
return columnDefinition;
},
getColId: () => {
return columnDefinition.colId;
},
getActualWidth: () => {
return columnDefinition.width;
},
drillItems: columnDefinition.drillItems,
};
return (fakeColumn as unknown) as Column;
};