@talxis/base-controls 1.2411.6 → 1.2411.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/components/Grid/core/components/AgGrid/AgGrid.js +4 -0
- package/dist/components/Grid/core/components/AgGrid/AgGrid.js.map +1 -1
- package/dist/components/Grid/core/components/AgGrid/model/AgGrid.js +1 -1
- package/dist/components/Grid/core/components/AgGrid/model/AgGrid.js.map +1 -1
- package/package.json +1 -1
|
@@ -39,6 +39,7 @@ const AgGrid = () => {
|
|
|
39
39
|
rowNodes: gridApiRef.current?.getRenderedNodes(),
|
|
40
40
|
force: true
|
|
41
41
|
});
|
|
42
|
+
sizeColumnsIfSpaceAvailable();
|
|
42
43
|
gridApiRef.current?.refreshHeader();
|
|
43
44
|
agGrid.selectRows();
|
|
44
45
|
}, 0);
|
|
@@ -62,6 +63,9 @@ const AgGrid = () => {
|
|
|
62
63
|
return rootWrapper?.clientWidth ?? 0;
|
|
63
64
|
};
|
|
64
65
|
const sizeColumnsIfSpaceAvailable = () => {
|
|
66
|
+
if (!gridApiRef.current) {
|
|
67
|
+
return;
|
|
68
|
+
}
|
|
65
69
|
const availableWidth = getAvailableWidth();
|
|
66
70
|
if (availableWidth > agGrid.getTotalColumnsWidth()) {
|
|
67
71
|
gridApiRef.current.sizeColumnsToFit();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AgGrid.js","sources":["../../../../../../src/components/Grid/core/components/AgGrid/AgGrid.tsx"],"sourcesContent":["import { AgGridReact } from '@ag-grid-community/react';\nimport { MessageBar, MessageBarType, useTheme } from \"@fluentui/react\";\nimport { ColDef, ColumnMovedEvent, ColumnResizedEvent, GridApi, GridState, ModuleRegistry } from \"@ag-grid-community/core\";\nimport { useCallback, useEffect, useMemo, useRef, useState } from \"react\";\nimport { useSelectionController } from \"../../../selection/controllers/useSelectionController\";\nimport { useGridInstance } from \"../../hooks/useGridInstance\";\nimport { getGridStyles } from \"./styles\";\nimport { Paging } from \"../../../paging/components/Paging/Paging\";\nimport { EmptyRecords } from \"./components/EmptyRecordsOverlay/EmptyRecords\";\nimport { Save } from \"../Save/Save\";\nimport { LoadingOverlay } from \"./components/LoadingOverlay/LoadingOverlay\";\nimport { IRecord } from '@talxis/client-libraries';\nimport { CHECKBOX_COLUMN_KEY } from '../../../constants';\nimport { useDebounce, useDebouncedCallback } from 'use-debounce';\nimport { useGridController } from '../../controllers/useGridController';\nimport { useStateValues } from '@talxis/react-components';\nimport { AgGrid as AgGridModel } from './model/AgGrid';\nimport { ClientSideRowModelModule } from '@ag-grid-community/client-side-row-model';\nimport \"@ag-grid-community/styles/ag-grid.css\";\nimport \"@ag-grid-community/styles/ag-theme-balham.css\";\nModuleRegistry.registerModules([ClientSideRowModelModule]);\n\nexport const AgGrid = () => {\n const grid = useGridInstance();\n const selection = useSelectionController();\n const gridApiRef = useRef<GridApi<ComponentFramework.PropertyHelper.DataSetApi.EntityRecord>>();\n const containerRef = useRef<HTMLDivElement>(null);\n const theme = useTheme();\n const styles = getGridStyles(theme, grid.height);\n const agGridReadyRef = useRef<boolean>(false);\n const agGrid = useMemo(() => new AgGridModel(grid, gridApiRef), [])\n const { columns } = useGridController();\n const [agColumns, setAgColumns] = useState<ColDef[]>([]);\n const [stateValuesRef, getNewStateValues, setDefaultStateValues] = useStateValues<GridState>(grid.state as GridState);\n //this is to prevent AgGrid from throwing errors in some rerender edge cases - https://github.com/ag-grid/ag-grid/issues/6013\n const [records] = useDebounce(grid.records, 0);\n\n const debouncedRefresh = useDebouncedCallback(() => {\n gridApiRef.current?.refreshCells({\n rowNodes: gridApiRef.current?.getRenderedNodes(),\n force: true\n });\n gridApiRef.current?.refreshHeader();\n agGrid.selectRows();\n }, 0);\n\n debouncedRefresh();\n\n useEffect(() => {\n agGrid.selectRows();\n }, [records]);\n\n\n const onGridReady = () => {\n agGridReadyRef.current = true;\n setDefaultStateValues({\n scroll: {\n top: 0,\n left: 0\n },\n ...gridApiRef.current!.getState(),\n });\n agGrid.selectRows();\n }\n\n const getAvailableWidth = () => {\n const rootWrapper = containerRef.current?.querySelector('.ag-root-wrapper');\n return rootWrapper?.clientWidth ?? 0;\n }\n\n const sizeColumnsIfSpaceAvailable = () => {\n const availableWidth = getAvailableWidth();\n if (availableWidth > agGrid.getTotalColumnsWidth()) {\n gridApiRef.current!.sizeColumnsToFit();\n }\n }\n\n const updateColumnOrder = async (e: ColumnMovedEvent<IRecord, any>) => {\n if (e.type === 'gridOptionsChanged') {\n return;\n }\n const sortedIds = e.api.getState().columnOrder?.orderedColIds;\n if (!sortedIds) {\n return;\n }\n const idIndexMap = new Map<string, number>();\n sortedIds.forEach((id, index) => {\n idIndexMap.set(id, index);\n });\n\n const orderedColumns = [...grid.dataset.columns].sort((a, b) => {\n const aIndex = idIndexMap.has(a.name) ? idIndexMap.get(a.name)! : sortedIds.length;\n const bIndex = idIndexMap.has(b.name) ? idIndexMap.get(b.name)! : sortedIds.length;\n return aIndex - bIndex;\n });\n grid.dataset.setColumns?.(orderedColumns);\n grid.pcfContext.factory.requestRender()\n }\n\n const globalClickHandler = useCallback((e: MouseEvent) => {\n const hasAncestorWithClass = (element: HTMLElement, className: string): boolean => {\n let parent = element;\n while (!parent.classList.contains('ag-theme-balham')) {\n if (parent.classList.contains(className)) {\n return true;\n }\n if (parent.tagName === 'HTML') {\n return false;\n }\n parent = parent.parentElement!;\n if (!parent) {\n return true;\n }\n }\n return false;\n };\n try {\n if (!hasAncestorWithClass(e.target as HTMLElement, 'ag-cell')) {\n gridApiRef.current?.stopEditing();\n }\n }\n catch (err) {\n }\n }, []);\n\n const copyCellValue = useCallback((event: KeyboardEvent) => {\n if ((event.ctrlKey || event.metaKey) && event.key.toLowerCase() === 'c') {\n const cell = gridApiRef.current?.getFocusedCell();\n if (!cell) {\n return;\n }\n const row = gridApiRef.current?.getDisplayedRowAtIndex(cell.rowIndex);\n const formattedValue = gridApiRef.current?.getCellValue({\n rowNode: row!,\n colKey: cell.column.getColId(),\n useFormatter: true\n })\n navigator.clipboard.writeText(formattedValue ?? \"\");\n }\n }, []);\n\n const toggleOverlay = () => {\n if (!gridApiRef.current) {\n return;\n }\n if (grid.loading) {\n gridApiRef.current.showLoadingOverlay();\n return;\n }\n gridApiRef.current.hideOverlay();\n setTimeout(() => {\n if (grid.records.length === 0) {\n gridApiRef.current?.showNoRowsOverlay();\n }\n }, 0);\n }\n\n const updateColumnVisualSizeFactor = useDebouncedCallback((e: ColumnResizedEvent<IRecord, any>) => {\n if (e.source !== 'uiColumnResized') {\n return;\n }\n const resizedColumnKey = grid.dataset.columns.find(x => x.name === e.column?.getId())?.name;\n if (!resizedColumnKey) {\n return;\n }\n const columns = grid.dataset.columns;\n for (let i = 0; i < columns.length; i++) {\n if (columns[i].name === resizedColumnKey) {\n columns[i].visualSizeFactor = e.column?.getActualWidth()!\n }\n }\n grid.dataset.setColumns?.(columns);\n gridApiRef.current?.resetRowHeights();\n grid.pcfContext.factory.requestRender()\n }, 200);\n\n //TODO: find a better way to achieve this\n useEffect(() => {\n document.addEventListener('click', globalClickHandler)\n return () => {\n document.removeEventListener('click', globalClickHandler);\n }\n }, []);\n\n useEffect(() => {\n setAgColumns(agGrid.columns);\n }, [columns]);\n\n useEffect(() => {\n toggleOverlay();\n gridApiRef.current?.ensureIndexVisible(0)\n }, [grid.loading]);\n\n\n useEffect(() => {\n //this can be replaced with native functionality if we decide to use ag grid enterprise\n grid.keyHoldListener.addOnKeyDownHandler((event) => copyCellValue(event));\n return () => {\n grid.pcfContext.mode.setControlState(getNewStateValues());\n }\n }, []);\n\n\n return (\n <div\n ref={containerRef}\n className={`${styles.root} ag-theme-balham`}\n >\n {agColumns.length > 0 &&\n <>\n {grid.isEditable && grid.dataset.isDirty?.() &&\n <Save />\n }\n {grid.error &&\n <MessageBar messageBarType={MessageBarType.error}>\n <span dangerouslySetInnerHTML={{\n __html: grid.errorMessage!\n }} />\n </MessageBar>\n }\n <AgGridReact\n animateRows\n rowSelection={grid.selection.type}\n noRowsOverlayComponent={Object.keys(grid.dataset.sortedRecordIds.length === 0) && !grid.loading ? EmptyRecords : undefined}\n loadingOverlayComponent={grid.loading ? LoadingOverlay : undefined}\n suppressDragLeaveHidesColumns\n onColumnResized={(e) => updateColumnVisualSizeFactor(e)}\n onColumnMoved={(e) => {\n if (e.finished) {\n updateColumnOrder(e);\n }\n }}\n reactiveCustomComponents\n onRowSelected={(e) => {\n //prevent infinite loop since we are also setting the rows\n //when the selection comes from above\n if (e.source.includes('api') || e.source === 'gridInitializing') {\n return;\n }\n selection.toggle(e.data!, e.node.isSelected()!)\n }}\n onCellDoubleClicked={(e) => {\n if (grid.isNavigationEnabled && !grid.isEditable) {\n grid.openDatasetItem(e.data!.getNamedReference())\n }\n }}\n onCellMouseOver={(e) => {\n if (e.colDef.colId === CHECKBOX_COLUMN_KEY) {\n gridApiRef.current?.setGridOption('suppressRowClickSelection', true)\n }\n }}\n onCellMouseOut={(e) => {\n gridApiRef.current?.setGridOption('suppressRowClickSelection', false)\n }}\n getRowId={(params) => params.data.getRecordId()}\n onGridReady={(e) => {\n gridApiRef.current = e.api as any;\n if (grid.loading) {\n gridApiRef.current?.showLoadingOverlay();\n }\n sizeColumnsIfSpaceAvailable();\n onGridReady();\n }}\n initialState={stateValuesRef.current}\n onStateUpdated={(e) => stateValuesRef.current = {\n ...stateValuesRef.current,\n ...e.state\n }}\n suppressAnimationFrame\n columnDefs={agColumns as any}\n rowData={records}\n getRowHeight={(params) => {\n const columnWidths: { [name: string]: number } = {};\n params.api.getAllGridColumns().map(col => {\n columnWidths[col.getColId()] = col.getActualWidth()\n })\n return params?.data?.ui?.getHeight(columnWidths, grid.rowHeight)\n }}\n\n >\n </AgGridReact>\n {grid.paging.isEnabled &&\n <Paging />\n }\n </>\n }\n </div>\n );\n}"],"names":["AgGridModel","_jsx","_jsxs","_Fragment"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"AgGrid.js","sources":["../../../../../../src/components/Grid/core/components/AgGrid/AgGrid.tsx"],"sourcesContent":["import { AgGridReact } from '@ag-grid-community/react';\nimport { MessageBar, MessageBarType, useTheme } from \"@fluentui/react\";\nimport { ColDef, ColumnMovedEvent, ColumnResizedEvent, GridApi, GridState, ModuleRegistry } from \"@ag-grid-community/core\";\nimport { useCallback, useEffect, useMemo, useRef, useState } from \"react\";\nimport { useSelectionController } from \"../../../selection/controllers/useSelectionController\";\nimport { useGridInstance } from \"../../hooks/useGridInstance\";\nimport { getGridStyles } from \"./styles\";\nimport { Paging } from \"../../../paging/components/Paging/Paging\";\nimport { EmptyRecords } from \"./components/EmptyRecordsOverlay/EmptyRecords\";\nimport { Save } from \"../Save/Save\";\nimport { LoadingOverlay } from \"./components/LoadingOverlay/LoadingOverlay\";\nimport { IRecord } from '@talxis/client-libraries';\nimport { CHECKBOX_COLUMN_KEY } from '../../../constants';\nimport { useDebounce, useDebouncedCallback } from 'use-debounce';\nimport { useGridController } from '../../controllers/useGridController';\nimport { useStateValues } from '@talxis/react-components';\nimport { AgGrid as AgGridModel } from './model/AgGrid';\nimport { ClientSideRowModelModule } from '@ag-grid-community/client-side-row-model';\nimport \"@ag-grid-community/styles/ag-grid.css\";\nimport \"@ag-grid-community/styles/ag-theme-balham.css\";\nModuleRegistry.registerModules([ClientSideRowModelModule]);\n\nexport const AgGrid = () => {\n const grid = useGridInstance();\n const selection = useSelectionController();\n const gridApiRef = useRef<GridApi<ComponentFramework.PropertyHelper.DataSetApi.EntityRecord>>();\n const containerRef = useRef<HTMLDivElement>(null);\n const theme = useTheme();\n const styles = getGridStyles(theme, grid.height);\n const agGridReadyRef = useRef<boolean>(false);\n const agGrid = useMemo(() => new AgGridModel(grid, gridApiRef), [])\n const { columns } = useGridController();\n const [agColumns, setAgColumns] = useState<ColDef[]>([]);\n const [stateValuesRef, getNewStateValues, setDefaultStateValues] = useStateValues<GridState>(grid.state as GridState);\n //this is to prevent AgGrid from throwing errors in some rerender edge cases - https://github.com/ag-grid/ag-grid/issues/6013\n const [records] = useDebounce(grid.records, 0);\n\n const debouncedRefresh = useDebouncedCallback(() => {\n gridApiRef.current?.refreshCells({\n rowNodes: gridApiRef.current?.getRenderedNodes(),\n force: true\n });\n sizeColumnsIfSpaceAvailable();\n gridApiRef.current?.refreshHeader();\n agGrid.selectRows();\n }, 0);\n\n debouncedRefresh();\n\n useEffect(() => {\n agGrid.selectRows();\n }, [records]);\n\n\n const onGridReady = () => {\n agGridReadyRef.current = true;\n setDefaultStateValues({\n scroll: {\n top: 0,\n left: 0\n },\n ...gridApiRef.current!.getState(),\n });\n agGrid.selectRows();\n }\n\n const getAvailableWidth = () => {\n const rootWrapper = containerRef.current?.querySelector('.ag-root-wrapper');\n return rootWrapper?.clientWidth ?? 0;\n }\n\n const sizeColumnsIfSpaceAvailable = () => {\n if(!gridApiRef.current) {\n return;\n }\n const availableWidth = getAvailableWidth();\n if (availableWidth > agGrid.getTotalColumnsWidth()) {\n gridApiRef.current!.sizeColumnsToFit();\n }\n }\n\n const updateColumnOrder = async (e: ColumnMovedEvent<IRecord, any>) => {\n if (e.type === 'gridOptionsChanged') {\n return;\n }\n const sortedIds = e.api.getState().columnOrder?.orderedColIds;\n if (!sortedIds) {\n return;\n }\n const idIndexMap = new Map<string, number>();\n sortedIds.forEach((id, index) => {\n idIndexMap.set(id, index);\n });\n\n const orderedColumns = [...grid.dataset.columns].sort((a, b) => {\n const aIndex = idIndexMap.has(a.name) ? idIndexMap.get(a.name)! : sortedIds.length;\n const bIndex = idIndexMap.has(b.name) ? idIndexMap.get(b.name)! : sortedIds.length;\n return aIndex - bIndex;\n });\n grid.dataset.setColumns?.(orderedColumns);\n grid.pcfContext.factory.requestRender()\n }\n\n const globalClickHandler = useCallback((e: MouseEvent) => {\n const hasAncestorWithClass = (element: HTMLElement, className: string): boolean => {\n let parent = element;\n while (!parent.classList.contains('ag-theme-balham')) {\n if (parent.classList.contains(className)) {\n return true;\n }\n if (parent.tagName === 'HTML') {\n return false;\n }\n parent = parent.parentElement!;\n if (!parent) {\n return true;\n }\n }\n return false;\n };\n try {\n if (!hasAncestorWithClass(e.target as HTMLElement, 'ag-cell')) {\n gridApiRef.current?.stopEditing();\n }\n }\n catch (err) {\n }\n }, []);\n\n const copyCellValue = useCallback((event: KeyboardEvent) => {\n if ((event.ctrlKey || event.metaKey) && event.key.toLowerCase() === 'c') {\n const cell = gridApiRef.current?.getFocusedCell();\n if (!cell) {\n return;\n }\n const row = gridApiRef.current?.getDisplayedRowAtIndex(cell.rowIndex);\n const formattedValue = gridApiRef.current?.getCellValue({\n rowNode: row!,\n colKey: cell.column.getColId(),\n useFormatter: true\n })\n navigator.clipboard.writeText(formattedValue ?? \"\");\n }\n }, []);\n\n const toggleOverlay = () => {\n if (!gridApiRef.current) {\n return;\n }\n if (grid.loading) {\n gridApiRef.current.showLoadingOverlay();\n return;\n }\n gridApiRef.current.hideOverlay();\n setTimeout(() => {\n if (grid.records.length === 0) {\n gridApiRef.current?.showNoRowsOverlay();\n }\n }, 0);\n }\n\n const updateColumnVisualSizeFactor = useDebouncedCallback((e: ColumnResizedEvent<IRecord, any>) => {\n if (e.source !== 'uiColumnResized') {\n return;\n }\n const resizedColumnKey = grid.dataset.columns.find(x => x.name === e.column?.getId())?.name;\n if (!resizedColumnKey) {\n return;\n }\n const columns = grid.dataset.columns;\n for (let i = 0; i < columns.length; i++) {\n if (columns[i].name === resizedColumnKey) {\n columns[i].visualSizeFactor = e.column?.getActualWidth()!\n }\n }\n grid.dataset.setColumns?.(columns);\n gridApiRef.current?.resetRowHeights();\n grid.pcfContext.factory.requestRender()\n }, 200);\n\n //TODO: find a better way to achieve this\n useEffect(() => {\n document.addEventListener('click', globalClickHandler)\n return () => {\n document.removeEventListener('click', globalClickHandler);\n }\n }, []);\n\n useEffect(() => {\n setAgColumns(agGrid.columns);\n }, [columns]);\n\n useEffect(() => {\n toggleOverlay();\n gridApiRef.current?.ensureIndexVisible(0)\n }, [grid.loading]);\n\n\n useEffect(() => {\n //this can be replaced with native functionality if we decide to use ag grid enterprise\n grid.keyHoldListener.addOnKeyDownHandler((event) => copyCellValue(event));\n return () => {\n grid.pcfContext.mode.setControlState(getNewStateValues());\n }\n }, []);\n\n\n return (\n <div\n ref={containerRef}\n className={`${styles.root} ag-theme-balham`}\n >\n {agColumns.length > 0 &&\n <>\n {grid.isEditable && grid.dataset.isDirty?.() &&\n <Save />\n }\n {grid.error &&\n <MessageBar messageBarType={MessageBarType.error}>\n <span dangerouslySetInnerHTML={{\n __html: grid.errorMessage!\n }} />\n </MessageBar>\n }\n <AgGridReact\n animateRows\n rowSelection={grid.selection.type}\n noRowsOverlayComponent={Object.keys(grid.dataset.sortedRecordIds.length === 0) && !grid.loading ? EmptyRecords : undefined}\n loadingOverlayComponent={grid.loading ? LoadingOverlay : undefined}\n suppressDragLeaveHidesColumns\n onColumnResized={(e) => updateColumnVisualSizeFactor(e)}\n onColumnMoved={(e) => {\n if (e.finished) {\n updateColumnOrder(e);\n }\n }}\n reactiveCustomComponents\n onRowSelected={(e) => {\n //prevent infinite loop since we are also setting the rows\n //when the selection comes from above\n if (e.source.includes('api') || e.source === 'gridInitializing') {\n return;\n }\n selection.toggle(e.data!, e.node.isSelected()!)\n }}\n onCellDoubleClicked={(e) => {\n if (grid.isNavigationEnabled && !grid.isEditable) {\n grid.openDatasetItem(e.data!.getNamedReference())\n }\n }}\n onCellMouseOver={(e) => {\n if (e.colDef.colId === CHECKBOX_COLUMN_KEY) {\n gridApiRef.current?.setGridOption('suppressRowClickSelection', true)\n }\n }}\n onCellMouseOut={(e) => {\n gridApiRef.current?.setGridOption('suppressRowClickSelection', false)\n }}\n getRowId={(params) => params.data.getRecordId()}\n onGridReady={(e) => {\n gridApiRef.current = e.api as any;\n if (grid.loading) {\n gridApiRef.current?.showLoadingOverlay();\n }\n sizeColumnsIfSpaceAvailable()\n onGridReady();\n }}\n initialState={stateValuesRef.current}\n onStateUpdated={(e) => stateValuesRef.current = {\n ...stateValuesRef.current,\n ...e.state\n }}\n suppressAnimationFrame\n columnDefs={agColumns as any}\n rowData={records}\n getRowHeight={(params) => {\n const columnWidths: { [name: string]: number } = {};\n params.api.getAllGridColumns().map(col => {\n columnWidths[col.getColId()] = col.getActualWidth()\n })\n return params?.data?.ui?.getHeight(columnWidths, grid.rowHeight)\n }}\n\n >\n </AgGridReact>\n {grid.paging.isEnabled &&\n <Paging />\n }\n </>\n }\n </div>\n );\n}"],"names":["AgGridModel","_jsx","_jsxs","_Fragment"],"mappings":"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"}
|
|
@@ -83,7 +83,7 @@ class AgGrid extends GridDependency {
|
|
|
83
83
|
return 0;
|
|
84
84
|
}
|
|
85
85
|
let width = 0;
|
|
86
|
-
for (const column of this._gridApi.
|
|
86
|
+
for (const column of this._gridApi.getAllDisplayedColumns()) {
|
|
87
87
|
width = width + column.getActualWidth();
|
|
88
88
|
}
|
|
89
89
|
return width;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AgGrid.js","sources":["../../../../../../../src/components/Grid/core/components/AgGrid/model/AgGrid.ts"],"sourcesContent":["import { ColDef, EditableCallbackParams, GridApi, IRowNode } from \"@ag-grid-community/core\";\nimport { Grid } from \"../../../model/Grid\";\nimport { GridDependency } from \"../../../model/GridDependency\";\nimport { DataType } from \"../../../enums/DataType\";\nimport { IGridColumn } from \"../../../interfaces/IGridColumn\";\nimport { CHECKBOX_COLUMN_KEY } from \"../../../../constants\";\nimport { IRecord } from \"@talxis/client-libraries\";\nimport { ReadOnlyCell } from \"../../Cell/ReadOnlyCell/ReadOnlyCell\";\nimport { EditableCell } from \"../../Cell/EditableCell/EditableCell\";\nimport { GlobalCheckBox } from \"../../ColumnHeader/components/GlobalCheckbox/GlobalCheckbox\";\nimport { ColumnHeader } from \"../../ColumnHeader/ColumnHeader\";\n\nexport class AgGrid extends GridDependency {\n private _gridApiRef: React.MutableRefObject<GridApi<ComponentFramework.PropertyHelper.DataSetApi.EntityRecord> | undefined>;\n\n constructor(grid: Grid, gridApiRef: React.MutableRefObject<GridApi<ComponentFramework.PropertyHelper.DataSetApi.EntityRecord> | undefined>) {\n super(grid);\n this._gridApiRef = gridApiRef;\n }\n public get columns() {\n const agColumns: ColDef[] = [];\n for (const column of this._grid.columns) {\n const agColumn: ColDef = {\n colId: column.name,\n field: column.name,\n headerName: column.displayName,\n hide: column.isHidden,\n initialWidth: column.visualSizeFactor,\n sortable: !column.disableSorting,\n editable: (p) => this._isColumnEditable(column, p), \n resizable: column.isResizable,\n autoHeaderHeight: true,\n suppressSizeToFit: column.name === CHECKBOX_COLUMN_KEY,\n cellClass: this._getCellClassName(column),\n cellRenderer: ReadOnlyCell,\n cellEditor: EditableCell,\n headerComponent: ColumnHeader,\n valueFormatter: (p) => {\n if(column.name === CHECKBOX_COLUMN_KEY) {\n return null;\n }\n return p.data.getFormattedValue(column.name)\n },\n valueGetter: (p) => {\n if(column.name === CHECKBOX_COLUMN_KEY) {\n return null;\n }\n return p.data.getValue(column.name)\n },\n cellRendererParams: {\n baseColumn: column\n },\n cellEditorParams: {\n baseColumn: column,\n },\n headerComponentParams: {\n baseColumn: column\n },\n suppressKeyboardEvent: (params) => {\n if (params.event.key !== 'Enter' || params.api.getEditingCells().length === 0) {\n return false;\n }\n switch (column.dataType) {\n case DataType.DATE_AND_TIME_DATE_AND_TIME:\n case DataType.DATE_AND_TIME_DATE_ONLY:\n case DataType.LOOKUP_OWNER:\n case DataType.LOOKUP_SIMPLE:\n case DataType.LOOKUP_CUSTOMER:\n case DataType.MULTI_SELECT_OPTIONSET:\n case DataType.OPTIONSET:\n case DataType.TWO_OPTIONS:\n case DataType.WHOLE_DURATION: {\n return true;\n }\n }\n return false;\n },\n }\n if(agColumn.field === CHECKBOX_COLUMN_KEY) {\n agColumn.lockPosition = 'left';\n agColumn.headerComponent = GlobalCheckBox\n }\n agColumns.push(agColumn)\n }\n return agColumns;\n }\n public getTotalColumnsWidth() {\n if (!this._gridApi) {\n return 0;\n }\n let width = 0;\n for (const column of this._gridApi.
|
|
1
|
+
{"version":3,"file":"AgGrid.js","sources":["../../../../../../../src/components/Grid/core/components/AgGrid/model/AgGrid.ts"],"sourcesContent":["import { ColDef, EditableCallbackParams, GridApi, IRowNode } from \"@ag-grid-community/core\";\nimport { Grid } from \"../../../model/Grid\";\nimport { GridDependency } from \"../../../model/GridDependency\";\nimport { DataType } from \"../../../enums/DataType\";\nimport { IGridColumn } from \"../../../interfaces/IGridColumn\";\nimport { CHECKBOX_COLUMN_KEY } from \"../../../../constants\";\nimport { IRecord } from \"@talxis/client-libraries\";\nimport { ReadOnlyCell } from \"../../Cell/ReadOnlyCell/ReadOnlyCell\";\nimport { EditableCell } from \"../../Cell/EditableCell/EditableCell\";\nimport { GlobalCheckBox } from \"../../ColumnHeader/components/GlobalCheckbox/GlobalCheckbox\";\nimport { ColumnHeader } from \"../../ColumnHeader/ColumnHeader\";\n\nexport class AgGrid extends GridDependency {\n private _gridApiRef: React.MutableRefObject<GridApi<ComponentFramework.PropertyHelper.DataSetApi.EntityRecord> | undefined>;\n\n constructor(grid: Grid, gridApiRef: React.MutableRefObject<GridApi<ComponentFramework.PropertyHelper.DataSetApi.EntityRecord> | undefined>) {\n super(grid);\n this._gridApiRef = gridApiRef;\n }\n public get columns() {\n const agColumns: ColDef[] = [];\n for (const column of this._grid.columns) {\n const agColumn: ColDef = {\n colId: column.name,\n field: column.name,\n headerName: column.displayName,\n hide: column.isHidden,\n initialWidth: column.visualSizeFactor,\n sortable: !column.disableSorting,\n editable: (p) => this._isColumnEditable(column, p), \n resizable: column.isResizable,\n autoHeaderHeight: true,\n suppressSizeToFit: column.name === CHECKBOX_COLUMN_KEY,\n cellClass: this._getCellClassName(column),\n cellRenderer: ReadOnlyCell,\n cellEditor: EditableCell,\n headerComponent: ColumnHeader,\n valueFormatter: (p) => {\n if(column.name === CHECKBOX_COLUMN_KEY) {\n return null;\n }\n return p.data.getFormattedValue(column.name)\n },\n valueGetter: (p) => {\n if(column.name === CHECKBOX_COLUMN_KEY) {\n return null;\n }\n return p.data.getValue(column.name)\n },\n cellRendererParams: {\n baseColumn: column\n },\n cellEditorParams: {\n baseColumn: column,\n },\n headerComponentParams: {\n baseColumn: column\n },\n suppressKeyboardEvent: (params) => {\n if (params.event.key !== 'Enter' || params.api.getEditingCells().length === 0) {\n return false;\n }\n switch (column.dataType) {\n case DataType.DATE_AND_TIME_DATE_AND_TIME:\n case DataType.DATE_AND_TIME_DATE_ONLY:\n case DataType.LOOKUP_OWNER:\n case DataType.LOOKUP_SIMPLE:\n case DataType.LOOKUP_CUSTOMER:\n case DataType.MULTI_SELECT_OPTIONSET:\n case DataType.OPTIONSET:\n case DataType.TWO_OPTIONS:\n case DataType.WHOLE_DURATION: {\n return true;\n }\n }\n return false;\n },\n }\n if(agColumn.field === CHECKBOX_COLUMN_KEY) {\n agColumn.lockPosition = 'left';\n agColumn.headerComponent = GlobalCheckBox\n }\n agColumns.push(agColumn)\n }\n return agColumns;\n }\n public getTotalColumnsWidth() {\n if (!this._gridApi) {\n return 0;\n }\n let width = 0;\n for (const column of this._gridApi.getAllDisplayedColumns()) {\n width = width + column.getActualWidth();\n }\n return width;\n }\n public selectRows() {\n if (!this._gridApi) {\n return;\n }\n const nodesToSelect: IRowNode[] = [];\n this._gridApi.deselectAll();\n this._gridApi.forEachNode((node: IRowNode) => {\n if (this._grid.dataset.getSelectedRecordIds().includes(node.data.getRecordId())) {\n nodesToSelect.push(node);\n }\n });\n this._gridApi.setNodesSelected({\n nodes: nodesToSelect,\n newValue: true\n });\n this._gridApi.refreshCells({\n columns: [CHECKBOX_COLUMN_KEY],\n force: true\n })\n }\n private get _gridApi() {\n return this._gridApiRef.current;\n }\n private _getCellClassName(column: IGridColumn) {\n switch (column.dataType) {\n case DataType.CURRENCY:\n case DataType.DECIMAL:\n case DataType.WHOLE_NONE: {\n return 'talxis-cell-align-right';\n }\n }\n return 'talxis-cell-align-left';\n }\n\n private _isColumnEditable(column: IGridColumn, params: EditableCallbackParams<IRecord, any>): boolean {\n if (!this._grid.parameters.EnableEditing?.raw || params.data?.ui.isLoading?.(column.name) === true) {\n return false;\n }\n return params.data?.getColumnInfo(column.name).security.editable ?? true;\n }\n}"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED