@linzjs/step-ag-grid 27.2.2 → 27.3.0
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/src/components/Grid.d.ts +2 -0
- package/dist/step-ag-grid.cjs +8 -3
- package/dist/step-ag-grid.cjs.map +1 -1
- package/dist/step-ag-grid.esm.js +8 -3
- package/dist/step-ag-grid.esm.js.map +1 -1
- package/package.json +1 -1
- package/src/components/Grid.tsx +8 -3
- package/src/components/GridCellFiller.tsx +1 -0
- package/src/contexts/GridContextProvider.tsx +1 -0
- package/src/stories/grid/GridReadOnly.stories.tsx +2 -0
|
@@ -13,6 +13,8 @@ export interface GridProps<TData extends GridBaseRow = GridBaseRow> {
|
|
|
13
13
|
readOnly?: boolean;
|
|
14
14
|
defaultPostSort?: boolean;
|
|
15
15
|
selectable?: boolean;
|
|
16
|
+
enableClickSelection?: boolean;
|
|
17
|
+
enableSelectionWithoutKeys?: boolean;
|
|
16
18
|
hideSelectColumn?: boolean;
|
|
17
19
|
theme?: string;
|
|
18
20
|
['data-testid']?: string;
|
package/dist/step-ag-grid.cjs
CHANGED
|
@@ -2992,7 +2992,8 @@ const Grid = ({ 'data-testid': dataTestId, defaultPostSort = true, rowSelection
|
|
|
2992
2992
|
* Handle double click edit
|
|
2993
2993
|
*/
|
|
2994
2994
|
const onCellDoubleClick = React.useCallback((event) => {
|
|
2995
|
-
|
|
2995
|
+
const editable = fnOrVar(event.colDef?.editable, event);
|
|
2996
|
+
if (editable && !invokeEditAction(event)) {
|
|
2996
2997
|
void startCellEditing({ rowId: event.data.id, colId: event.column.getColId() });
|
|
2997
2998
|
}
|
|
2998
2999
|
}, [startCellEditing]);
|
|
@@ -3000,7 +3001,8 @@ const Grid = ({ 'data-testid': dataTestId, defaultPostSort = true, rowSelection
|
|
|
3000
3001
|
* Handle single click edits
|
|
3001
3002
|
*/
|
|
3002
3003
|
const onCellClicked = React.useCallback((event) => {
|
|
3003
|
-
|
|
3004
|
+
const editable = fnOrVar(event.colDef?.editable, event);
|
|
3005
|
+
if ((editable && event.colDef.singleClickEdit) ?? singleClickEdit) {
|
|
3004
3006
|
void startCellEditing({ rowId: event.data.id, colId: event.column.getColId() });
|
|
3005
3007
|
}
|
|
3006
3008
|
}, [singleClickEdit, startCellEditing]);
|
|
@@ -3185,7 +3187,8 @@ const Grid = ({ 'data-testid': dataTestId, defaultPostSort = true, rowSelection
|
|
|
3185
3187
|
const headerRowCount = columnDefs.some((c) => c.children) ? 2 : 1;
|
|
3186
3188
|
return (jsxRuntime.jsxs("div", { "data-testid": dataTestId, className: clsx('Grid-container', theme, 'theme-specific', staleGrid && 'Grid-sortIsStale', gridReady && rowData && autoSized && 'Grid-ready'), children: [gridContextMenu.component, jsxRuntime.jsx("div", { style: { flex: 1 }, ref: gridDivRef, children: jsxRuntime.jsx(agGridReact.AgGridReact, { theme: 'legacy', rowSelection: selectable
|
|
3187
3189
|
? {
|
|
3188
|
-
|
|
3190
|
+
enableSelectionWithoutKeys: params.enableSelectionWithoutKeys ?? false,
|
|
3191
|
+
enableClickSelection: params.enableClickSelection ?? false,
|
|
3189
3192
|
mode: rowSelection == 'single' ? 'singleRow' : 'multiRow',
|
|
3190
3193
|
}
|
|
3191
3194
|
: undefined, rowHeight: rowHeight, animateRows: params.animateRows ?? false, rowClassRules: params.rowClassRules, getRowId: (params) => `${params.data.id}`, onGridSizeChanged: onGridSizeChanged, suppressColumnVirtualisation: suppressColumnVirtualization, suppressClickEdit: true, onColumnVisible: setInitialContentSize, onRowDataUpdated: onRowDataChanged, onCellKeyDown: onCellKeyPress, onCellClicked: onCellClicked, onCellDoubleClicked: onCellDoubleClick, onCellEditingStarted: refreshSelectedRows, domLayout: params.domLayout, onColumnResized: onColumnResized, defaultColDef: { minWidth: 48, ...lodashEs.omit(params.defaultColDef, ['editable']) }, columnDefs: columnDefsAdjusted, rowData: rowData, noRowsOverlayComponent: (event) => {
|
|
@@ -3406,6 +3409,7 @@ const GridCellFiller = () => ({
|
|
|
3406
3409
|
colId: GridCellFillerColId,
|
|
3407
3410
|
headerName: '',
|
|
3408
3411
|
flex: 1,
|
|
3412
|
+
editable: false,
|
|
3409
3413
|
});
|
|
3410
3414
|
|
|
3411
3415
|
const Editor = (props) => ({
|
|
@@ -5378,6 +5382,7 @@ const GridContextProvider = (props) => {
|
|
|
5378
5382
|
const shouldSelectNode = !rowNode.isSelected();
|
|
5379
5383
|
if (shouldSelectNode) {
|
|
5380
5384
|
externallySelectedItemsAreInSyncRef.current = false;
|
|
5385
|
+
setExternallySelectedItemsAreInSync(false);
|
|
5381
5386
|
rowNode.setSelected(true, true);
|
|
5382
5387
|
await waitForExternallySelectedItemsToBeInSync();
|
|
5383
5388
|
}
|