@toolbox-web/grid-react 1.4.0 → 1.5.1

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.
Files changed (42) hide show
  1. package/README.md +1 -1
  2. package/chunks/grid-detail-panel-CR7YUhdN.js +52 -0
  3. package/chunks/grid-responsive-card-BB28Zl2O.js +45 -0
  4. package/chunks/portal-bridge-DLA6Zs11.js +51 -0
  5. package/chunks/react-column-config-Sb-U7Bq3.js +109 -0
  6. package/chunks/react-grid-adapter-CzByOnua.js +416 -0
  7. package/features/editing.js +5 -0
  8. package/features/filtering.d.ts.map +1 -1
  9. package/features/filtering.js +55 -45
  10. package/features/grouping-columns.js +18 -23
  11. package/features/grouping-rows.js +11 -16
  12. package/features/index.js +3 -3
  13. package/features/master-detail.js +18 -0
  14. package/features/pinned-rows.d.ts.map +1 -1
  15. package/features/pinned-rows.js +24 -17
  16. package/features/responsive.js +18 -0
  17. package/index.d.ts +1 -0
  18. package/index.d.ts.map +1 -1
  19. package/index.js +422 -1000
  20. package/lib/column-shorthand.d.ts +27 -1
  21. package/lib/column-shorthand.d.ts.map +1 -1
  22. package/lib/context-types.d.ts +17 -2
  23. package/lib/context-types.d.ts.map +1 -1
  24. package/lib/data-grid.d.ts.map +1 -1
  25. package/lib/editor-mount-hooks.d.ts +39 -0
  26. package/lib/editor-mount-hooks.d.ts.map +1 -0
  27. package/lib/event-props.d.ts +134 -6
  28. package/lib/event-props.d.ts.map +1 -1
  29. package/lib/feature-props.d.ts +20 -2
  30. package/lib/feature-props.d.ts.map +1 -1
  31. package/lib/portal-bridge.d.ts +11 -0
  32. package/lib/portal-bridge.d.ts.map +1 -1
  33. package/lib/react-column-config.d.ts +12 -0
  34. package/lib/react-column-config.d.ts.map +1 -1
  35. package/lib/react-grid-adapter.d.ts +61 -11
  36. package/lib/react-grid-adapter.d.ts.map +1 -1
  37. package/lib/use-grid-overlay.d.ts +2 -0
  38. package/lib/use-grid-overlay.d.ts.map +1 -1
  39. package/lib/use-grid.d.ts +2 -0
  40. package/lib/use-grid.d.ts.map +1 -1
  41. package/package.json +1 -1
  42. package/chunks/portal-bridge-DZ4yQkmm.js +0 -42
@@ -1,4 +1,4 @@
1
- import { ColumnConfig } from '@toolbox-web/grid';
1
+ import { ColumnConfig } from './react-column-config';
2
2
  /**
3
3
  * Type for column shorthand notation.
4
4
  *
@@ -14,6 +14,7 @@ import { ColumnConfig } from '@toolbox-web/grid';
14
14
  * columns={['id:number', 'name:string', 'email']}
15
15
  * columns={[{ field: 'id' }, { field: 'name' }, { field: 'email' }]}
16
16
  * ```
17
+ * @since 0.7.0
17
18
  */
18
19
  export type ColumnShorthand<TRow = unknown> = string | ColumnConfig<TRow>;
19
20
  /**
@@ -29,6 +30,7 @@ export type ColumnShorthand<TRow = unknown> = string | ColumnConfig<TRow>;
29
30
  * @example
30
31
  * parseColumnShorthand('name') → { field: 'name', header: 'Name' }
31
32
  * parseColumnShorthand('salary:number') → { field: 'salary', header: 'Salary', type: 'number' }
33
+ * @since 0.7.0
32
34
  */
33
35
  export declare function parseColumnShorthand<TRow = unknown>(shorthand: string): ColumnConfig<TRow>;
34
36
  /**
@@ -47,13 +49,37 @@ export declare function parseColumnShorthand<TRow = unknown>(shorthand: string):
47
49
  * // { field: 'email', width: 200 }
48
50
  * // ]
49
51
  * ```
52
+ * @since 0.7.0
50
53
  */
51
54
  export declare function normalizeColumns<TRow = unknown>(columns: ColumnShorthand<TRow>[]): ColumnConfig<TRow>[];
55
+ /**
56
+ * Apply column defaults to a list of columns. Individual column properties
57
+ * override defaults — the per-column value always wins over the default.
58
+ *
59
+ * @param columns - Normalized columns to merge defaults into
60
+ * @param defaults - Partial column config applied as a baseline; pass `undefined` to no-op
61
+ * @returns A new array with the defaults merged in (input is not mutated)
62
+ *
63
+ * @example
64
+ * ```tsx
65
+ * applyColumnDefaults(
66
+ * [{ field: 'id' }, { field: 'name', sortable: false }],
67
+ * { sortable: true, resizable: true },
68
+ * );
69
+ * // [
70
+ * // { field: 'id', sortable: true, resizable: true },
71
+ * // { field: 'name', sortable: false, resizable: true },
72
+ * // ]
73
+ * ```
74
+ * @since 0.7.0
75
+ */
76
+ export declare function applyColumnDefaults<TRow = unknown>(columns: ColumnConfig<TRow>[], defaults: Partial<ColumnConfig<TRow>> | undefined): ColumnConfig<TRow>[];
52
77
  /**
53
78
  * Check if an array of columns contains any shorthand strings.
54
79
  *
55
80
  * @param columns - Array to check
56
81
  * @returns True if any element is a string shorthand
82
+ * @since 0.7.0
57
83
  */
58
84
  export declare function hasColumnShorthands<TRow>(columns: ColumnShorthand<TRow>[]): boolean;
59
85
  //# sourceMappingURL=column-shorthand.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"column-shorthand.d.ts","sourceRoot":"","sources":["../../../../libs/grid-react/src/lib/column-shorthand.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAEtD;;;;;;;;;;;;;;;GAeG;AACH,MAAM,MAAM,eAAe,CAAC,IAAI,GAAG,OAAO,IAAI,MAAM,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC;AA2C1E;;;;;;;;;;;;;GAaG;AACH,wBAAgB,oBAAoB,CAAC,IAAI,GAAG,OAAO,EAAE,SAAS,EAAE,MAAM,GAAG,YAAY,CAAC,IAAI,CAAC,CAsB1F;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,GAAG,OAAO,EAAE,OAAO,EAAE,eAAe,CAAC,IAAI,CAAC,EAAE,GAAG,YAAY,CAAC,IAAI,CAAC,EAAE,CAOvG;AAED;;;;;GAKG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,OAAO,EAAE,eAAe,CAAC,IAAI,CAAC,EAAE,GAAG,OAAO,CAEnF"}
1
+ {"version":3,"file":"column-shorthand.d.ts","sourceRoot":"","sources":["../../../../libs/grid-react/src/lib/column-shorthand.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AACH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAE1D;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,MAAM,eAAe,CAAC,IAAI,GAAG,OAAO,IAAI,MAAM,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC;AA2C1E;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,oBAAoB,CAAC,IAAI,GAAG,OAAO,EAAE,SAAS,EAAE,MAAM,GAAG,YAAY,CAAC,IAAI,CAAC,CAsB1F;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,GAAG,OAAO,EAAE,OAAO,EAAE,eAAe,CAAC,IAAI,CAAC,EAAE,GAAG,YAAY,CAAC,IAAI,CAAC,EAAE,CAOvG;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,GAAG,OAAO,EAChD,OAAO,EAAE,YAAY,CAAC,IAAI,CAAC,EAAE,EAC7B,QAAQ,EAAE,OAAO,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,GAAG,SAAS,GAChD,YAAY,CAAC,IAAI,CAAC,EAAE,CAGtB;AAED;;;;;;GAMG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,OAAO,EAAE,eAAe,CAAC,IAAI,CAAC,EAAE,GAAG,OAAO,CAEnF"}
@@ -1,8 +1,15 @@
1
1
  import { ColumnConfig } from '@toolbox-web/grid';
2
2
  /**
3
3
  * Context object passed to cell renderer components.
4
+ *
5
+ * @typeParam TValue - Cell value type. Defaults to `any` because the value
6
+ * shape is per-column and awkward to narrow inside JSX expressions;
7
+ * specify it (e.g. `GridCellContext<string, MyRow>`) when known.
8
+ * @typeParam TRow - Row data shape. Defaults to `unknown` so users are
9
+ * prompted to specify their row type explicitly for type safety.
10
+ * @since 0.0.1
4
11
  */
5
- export interface GridCellContext<TValue = unknown, TRow = unknown> {
12
+ export interface GridCellContext<TValue = any, TRow = unknown> {
6
13
  /** The cell value for this column */
7
14
  value: TValue;
8
15
  /** The full row data object */
@@ -14,8 +21,14 @@ export interface GridCellContext<TValue = unknown, TRow = unknown> {
14
21
  }
15
22
  /**
16
23
  * Context object passed to cell editor components.
24
+ *
25
+ * @typeParam TValue - Cell value type. Defaults to `any` because the value
26
+ * shape is per-column and awkward to narrow inside JSX expressions.
27
+ * @typeParam TRow - Row data shape. Defaults to `unknown` so users are
28
+ * prompted to specify their row type explicitly for type safety.
29
+ * @since 0.0.1
17
30
  */
18
- export interface GridEditorContext<TValue = unknown, TRow = unknown> {
31
+ export interface GridEditorContext<TValue = any, TRow = unknown> {
19
32
  /** The cell value for this column */
20
33
  value: TValue;
21
34
  /** The full row data object */
@@ -46,6 +59,7 @@ export interface GridEditorContext<TValue = unknown, TRow = unknown> {
46
59
  }
47
60
  /**
48
61
  * Context object passed to detail panel components.
62
+ * @since 0.0.1
49
63
  */
50
64
  export interface GridDetailContext<TRow = unknown> {
51
65
  /** The row data object */
@@ -55,6 +69,7 @@ export interface GridDetailContext<TRow = unknown> {
55
69
  }
56
70
  /**
57
71
  * Context object passed to tool panel components.
72
+ * @since 0.0.1
58
73
  */
59
74
  export interface GridToolPanelContext {
60
75
  /** Reference to the grid element */
@@ -1 +1 @@
1
- {"version":3,"file":"context-types.d.ts","sourceRoot":"","sources":["../../../../libs/grid-react/src/lib/context-types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAEtD;;GAEG;AACH,MAAM,WAAW,eAAe,CAAC,MAAM,GAAG,OAAO,EAAE,IAAI,GAAG,OAAO;IAC/D,qCAAqC;IACrC,KAAK,EAAE,MAAM,CAAC;IACd,+BAA+B;IAC/B,GAAG,EAAE,IAAI,CAAC;IACV,+BAA+B;IAC/B,MAAM,EAAE,YAAY,CAAC,IAAI,CAAC,CAAC;IAC3B,gBAAgB;IAChB,KAAK,EAAE,MAAM,IAAI,GAAG,MAAM,CAAC;CAC5B;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB,CAAC,MAAM,GAAG,OAAO,EAAE,IAAI,GAAG,OAAO;IACjE,qCAAqC;IACrC,KAAK,EAAE,MAAM,CAAC;IACd,+BAA+B;IAC/B,GAAG,EAAE,IAAI,CAAC;IACV,+BAA+B;IAC/B,MAAM,EAAE,YAAY,CAAC,IAAI,CAAC,CAAC;IAC3B,gBAAgB;IAChB,KAAK,EAAE,MAAM,IAAI,GAAG,MAAM,CAAC;IAC3B,4FAA4F;IAC5F,KAAK,EAAE,MAAM,CAAC;IACd,4CAA4C;IAC5C,MAAM,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAC;IACnC,oCAAoC;IACpC,MAAM,EAAE,MAAM,IAAI,CAAC;IACnB;;;OAGG;IACH,SAAS,EAAE,CAAC,OAAO,EAAE,OAAO,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC;IAC5C;;;;;;OAMG;IACH,aAAa,CAAC,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,IAAI,KAAK,IAAI,CAAC;CAChE;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB,CAAC,IAAI,GAAG,OAAO;IAC/C,0BAA0B;IAC1B,GAAG,EAAE,IAAI,CAAC;IACV,gBAAgB;IAChB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC,oCAAoC;IACpC,IAAI,EAAE,WAAW,CAAC;CACnB"}
1
+ {"version":3,"file":"context-types.d.ts","sourceRoot":"","sources":["../../../../libs/grid-react/src/lib/context-types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAEtD;;;;;;;;;GASG;AACH,MAAM,WAAW,eAAe,CAAC,MAAM,GAAG,GAAG,EAAE,IAAI,GAAG,OAAO;IAC3D,qCAAqC;IACrC,KAAK,EAAE,MAAM,CAAC;IACd,+BAA+B;IAC/B,GAAG,EAAE,IAAI,CAAC;IACV,+BAA+B;IAC/B,MAAM,EAAE,YAAY,CAAC,IAAI,CAAC,CAAC;IAC3B,gBAAgB;IAChB,KAAK,EAAE,MAAM,IAAI,GAAG,MAAM,CAAC;CAC5B;AAED;;;;;;;;GAQG;AACH,MAAM,WAAW,iBAAiB,CAAC,MAAM,GAAG,GAAG,EAAE,IAAI,GAAG,OAAO;IAC7D,qCAAqC;IACrC,KAAK,EAAE,MAAM,CAAC;IACd,+BAA+B;IAC/B,GAAG,EAAE,IAAI,CAAC;IACV,+BAA+B;IAC/B,MAAM,EAAE,YAAY,CAAC,IAAI,CAAC,CAAC;IAC3B,gBAAgB;IAChB,KAAK,EAAE,MAAM,IAAI,GAAG,MAAM,CAAC;IAC3B,4FAA4F;IAC5F,KAAK,EAAE,MAAM,CAAC;IACd,4CAA4C;IAC5C,MAAM,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAC;IACnC,oCAAoC;IACpC,MAAM,EAAE,MAAM,IAAI,CAAC;IACnB;;;OAGG;IACH,SAAS,EAAE,CAAC,OAAO,EAAE,OAAO,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC;IAC5C;;;;;;OAMG;IACH,aAAa,CAAC,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,IAAI,KAAK,IAAI,CAAC;CAChE;AAED;;;GAGG;AACH,MAAM,WAAW,iBAAiB,CAAC,IAAI,GAAG,OAAO;IAC/C,0BAA0B;IAC1B,GAAG,EAAE,IAAI,CAAC;IACV,gBAAgB;IAChB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED;;;GAGG;AACH,MAAM,WAAW,oBAAoB;IACnC,oCAAoC;IACpC,IAAI,EAAE,WAAW,CAAC;CACnB"}
@@ -1 +1 @@
1
- {"version":3,"file":"data-grid.d.ts","sourceRoot":"","sources":["../../../../libs/grid-react/src/lib/data-grid.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"data-grid.d.ts","sourceRoot":"","sources":["../../../../libs/grid-react/src/lib/data-grid.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,39 @@
1
+ /**
2
+ * Editor mount hook registry — append-only hooks called when a React-managed
3
+ * editor container is mounted into the DOM with a known owner grid.
4
+ *
5
+ * This is the augmentation point that lets feature secondary entries
6
+ * (e.g. `@toolbox-web/grid-react/features/editing`) install per-editor
7
+ * lifecycle behaviour (such as the `before-edit-close` blur bridge)
8
+ * without coupling the central adapter / column-config files to the
9
+ * editing feature. Mirrors how core grid plugins augment the grid via
10
+ * `registerPlugin()`.
11
+ *
12
+ * @packageDocumentation
13
+ * @internal
14
+ */
15
+ /**
16
+ * Hook called when an editor container is mounted. Returning a function
17
+ * registers a teardown that runs when the editor is released.
18
+ */
19
+ export type EditorMountHook = (ctx: {
20
+ container: HTMLElement;
21
+ gridEl: HTMLElement;
22
+ }) => (() => void) | void;
23
+ /**
24
+ * Install an editor-mount hook. Called by feature secondary entries
25
+ * (e.g. `features/editing`) on import. Idempotent across hot-reload
26
+ * boundaries is NOT guaranteed; consumers should import once.
27
+ *
28
+ * @internal Plugin API
29
+ */
30
+ export declare function registerEditorMountHook(hook: EditorMountHook): void;
31
+ /**
32
+ * Run all registered editor-mount hooks for a freshly mounted editor.
33
+ * Returns a combined teardown that invokes each hook's teardown in
34
+ * registration order.
35
+ *
36
+ * @internal Adapter / column-config use only.
37
+ */
38
+ export declare function notifyEditorMounted(container: HTMLElement, gridEl: HTMLElement): () => void;
39
+ //# sourceMappingURL=editor-mount-hooks.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"editor-mount-hooks.d.ts","sourceRoot":"","sources":["../../../../libs/grid-react/src/lib/editor-mount-hooks.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH;;;GAGG;AACH,MAAM,MAAM,eAAe,GAAG,CAAC,GAAG,EAAE;IAAE,SAAS,EAAE,WAAW,CAAC;IAAC,MAAM,EAAE,WAAW,CAAA;CAAE,KAAK,CAAC,MAAM,IAAI,CAAC,GAAG,IAAI,CAAC;AAI5G;;;;;;GAMG;AACH,wBAAgB,uBAAuB,CAAC,IAAI,EAAE,eAAe,GAAG,IAAI,CAEnE;AAED;;;;;;GAMG;AACH,wBAAgB,mBAAmB,CAAC,SAAS,EAAE,WAAW,EAAE,MAAM,EAAE,WAAW,GAAG,MAAM,IAAI,CAS3F"}
@@ -1,7 +1,8 @@
1
- import { CellActivateDetail, CellChangeDetail, CellClickDetail, CellCommitDetail, ChangedRowsResetDetail, ColumnMoveDetail, ColumnResizeDetail, ColumnVisibilityDetail, CopyDetail, DetailExpandDetail, ExportCompleteDetail, FilterChangeDetail, GridColumnState, GroupToggleDetail, PasteDetail, PrintCompleteDetail, PrintStartDetail, ResponsiveChangeDetail, RowClickDetail, RowCommitDetail, RowDragEndDetail, RowDragStartDetail, RowDropDetail, RowMoveDetail, RowTransferDetail, SelectionChangeDetail, SortChangeDetail, TbwScrollDetail, TreeExpandDetail, UndoRedoDetail } from '@toolbox-web/grid/all';
1
+ import { CellActivateDetail, CellChangeDetail, CellClickDetail, CellCommitDetail, ChangedRowsResetDetail, ColumnMoveDetail, ColumnResizeDetail, ColumnVisibilityDetail, CopyDetail, DataGridEventMap, DetailExpandDetail, ExportCompleteDetail, FilterChangeDetail, GridColumnState, GroupToggleDetail, PasteDetail, PrintCompleteDetail, PrintStartDetail, ResponsiveChangeDetail, RowClickDetail, RowCommitDetail, RowDragEndDetail, RowDragStartDetail, RowDropDetail, RowMoveDetail, RowTransferDetail, SelectionChangeDetail, SortChangeDetail, TbwScrollDetail, TreeExpandDetail, UndoRedoDetail } from '@toolbox-web/grid/all';
2
2
  /**
3
3
  * Event handler type with unwrapped detail.
4
4
  * Pattern: `(detail: T, event?: CustomEvent) => void`
5
+ * @since 0.7.0
5
6
  */
6
7
  export type EventHandler<T> = (detail: T, event?: CustomEvent<T>) => void;
7
8
  /**
@@ -10,6 +11,7 @@ export type EventHandler<T> = (detail: T, event?: CustomEvent<T>) => void;
10
11
  * with optional access to the full CustomEvent for preventDefault().
11
12
  *
12
13
  * @template TRow - The row data type
14
+ * @since 0.7.0
13
15
  */
14
16
  export interface EventProps<TRow = unknown> {
15
17
  /**
@@ -87,6 +89,40 @@ export interface EventProps<TRow = unknown> {
87
89
  * ```
88
90
  */
89
91
  onChangedRowsReset?: EventHandler<ChangedRowsResetDetail<TRow>>;
92
+ /**
93
+ * Fired when an editor opens for a cell.
94
+ *
95
+ * @requires `import '@toolbox-web/grid-react/features/editing';`
96
+ */
97
+ onEditOpen?: EventHandler<DataGridEventMap<TRow>['edit-open']>;
98
+ /**
99
+ * Fired before an editor closes (commit or cancel). Cancelable.
100
+ *
101
+ * @requires `import '@toolbox-web/grid-react/features/editing';`
102
+ */
103
+ onBeforeEditClose?: EventHandler<DataGridEventMap<TRow>['before-edit-close']>;
104
+ /**
105
+ * Fired after an editor closes (commit or cancel).
106
+ *
107
+ * @requires `import '@toolbox-web/grid-react/features/editing';`
108
+ */
109
+ onEditClose?: EventHandler<DataGridEventMap<TRow>['edit-close']>;
110
+ /**
111
+ * Fired when a cell edit is canceled (e.g. Escape key).
112
+ *
113
+ * @requires `import '@toolbox-web/grid-react/features/editing';`
114
+ */
115
+ onCellCancel?: EventHandler<DataGridEventMap<TRow>['cell-cancel']>;
116
+ /**
117
+ * Fired when the dirty/changed-rows state transitions.
118
+ *
119
+ * @requires `import '@toolbox-web/grid-react/features/editing';`
120
+ */
121
+ onDirtyChange?: EventHandler<DataGridEventMap<TRow>['dirty-change']>;
122
+ /**
123
+ * Fired when the row data is replaced (e.g. via the `data` property setter).
124
+ */
125
+ onDataChange?: EventHandler<DataGridEventMap<TRow>['data-change']>;
90
126
  /**
91
127
  * Fired when sort state changes.
92
128
  *
@@ -135,7 +171,22 @@ export interface EventProps<TRow = unknown> {
135
171
  */
136
172
  onColumnMove?: EventHandler<ColumnMoveDetail>;
137
173
  /**
138
- * Fired when column visibility changes.
174
+ * Fired when a column resize is reset (e.g. via double-click on the resize handle).
175
+ *
176
+ * @example
177
+ * ```tsx
178
+ * onColumnResizeReset={(detail) => console.log('Reset width for:', detail.field)}
179
+ * ```
180
+ */
181
+ onColumnResizeReset?: EventHandler<DataGridEventMap<TRow>['column-resize-reset']>;
182
+ /**
183
+ * Fired when a column is shown or hidden — either via the visibility
184
+ * sidebar, `grid.toggleColumnVisibility(field)`, `grid.setColumnVisible(field, visible)`,
185
+ * or `grid.showAllColumns()`.
186
+ *
187
+ * `field` and `visible` are present for single-column toggles and
188
+ * `undefined` for bulk operations (`showAllColumns`). `visibleColumns`
189
+ * always lists the current set.
139
190
  *
140
191
  * @requires `import '@toolbox-web/grid-react/features/visibility';`
141
192
  *
@@ -143,6 +194,7 @@ export interface EventProps<TRow = unknown> {
143
194
  * ```tsx
144
195
  * onColumnVisibility={(detail) => {
145
196
  * console.log(detail.hidden ? 'Hidden:' : 'Shown:', detail.field);
197
+ * localStorage.setItem('visibleColumns', JSON.stringify(detail.visibleColumns));
146
198
  * }}
147
199
  * ```
148
200
  */
@@ -226,6 +278,24 @@ export interface EventProps<TRow = unknown> {
226
278
  * ```
227
279
  */
228
280
  onGroupToggle?: EventHandler<GroupToggleDetail>;
281
+ /**
282
+ * Fired when a group is expanded.
283
+ *
284
+ * @requires `import '@toolbox-web/grid-react/features/grouping-rows';`
285
+ */
286
+ onGroupExpand?: EventHandler<DataGridEventMap<TRow>['group-expand']>;
287
+ /**
288
+ * Fired when a group is collapsed.
289
+ *
290
+ * @requires `import '@toolbox-web/grid-react/features/grouping-rows';`
291
+ */
292
+ onGroupCollapse?: EventHandler<DataGridEventMap<TRow>['group-collapse']>;
293
+ /**
294
+ * Fired when the context menu opens.
295
+ *
296
+ * @requires `import '@toolbox-web/grid-react/features/context-menu';`
297
+ */
298
+ onContextMenuOpen?: EventHandler<DataGridEventMap<TRow>['context-menu-open']>;
229
299
  /**
230
300
  * Fired when a tree node is expanded.
231
301
  *
@@ -286,16 +356,27 @@ export interface EventProps<TRow = unknown> {
286
356
  */
287
357
  onPaste?: EventHandler<PasteDetail>;
288
358
  /**
289
- * Fired when undo/redo is performed.
359
+ * Fired when an undo action is performed.
360
+ *
361
+ * @requires `import '@toolbox-web/grid-react/features/undo-redo';`
362
+ *
363
+ * @example
364
+ * ```tsx
365
+ * onUndo={(detail) => console.log('Undid:', detail.action.type, '- Can undo:', detail.canUndo)}
366
+ * ```
367
+ */
368
+ onUndo?: EventHandler<UndoRedoDetail>;
369
+ /**
370
+ * Fired when a redo action is performed.
290
371
  *
291
372
  * @requires `import '@toolbox-web/grid-react/features/undo-redo';`
292
373
  *
293
374
  * @example
294
375
  * ```tsx
295
- * onUndoRedo={(detail) => console.log(detail.type, '- Can undo:', detail.canUndo)}
376
+ * onRedo={(detail) => console.log('Redid:', detail.action.type, '- Can redo:', detail.canRedo)}
296
377
  * ```
297
378
  */
298
- onUndoRedo?: EventHandler<UndoRedoDetail>;
379
+ onRedo?: EventHandler<UndoRedoDetail>;
299
380
  /**
300
381
  * Fired when export completes.
301
382
  *
@@ -350,8 +431,55 @@ export interface EventProps<TRow = unknown> {
350
431
  /**
351
432
  * Map of event handler prop names to their corresponding event names.
352
433
  * Used internally to wire up event listeners.
434
+ *
435
+ * The `satisfies` clause enforces bidirectional sync:
436
+ * - Every key must be a valid `keyof EventProps` (interface drift fails)
437
+ * - Every value must be a valid `keyof DataGridEventMap` (event-name typos
438
+ * and stale entries pointing at non-existent events fail at compile time)
353
439
  */
354
- export declare const EVENT_PROP_MAP: Record<keyof EventProps, string>;
440
+ export declare const EVENT_PROP_MAP: {
441
+ readonly onCellClick: "cell-click";
442
+ readonly onRowClick: "row-click";
443
+ readonly onCellActivate: "cell-activate";
444
+ readonly onCellChange: "cell-change";
445
+ readonly onCellCommit: "cell-commit";
446
+ readonly onCellCancel: "cell-cancel";
447
+ readonly onRowCommit: "row-commit";
448
+ readonly onChangedRowsReset: "changed-rows-reset";
449
+ readonly onEditOpen: "edit-open";
450
+ readonly onBeforeEditClose: "before-edit-close";
451
+ readonly onEditClose: "edit-close";
452
+ readonly onDirtyChange: "dirty-change";
453
+ readonly onDataChange: "data-change";
454
+ readonly onSortChange: "sort-change";
455
+ readonly onFilterChange: "filter-change";
456
+ readonly onColumnResize: "column-resize";
457
+ readonly onColumnResizeReset: "column-resize-reset";
458
+ readonly onColumnMove: "column-move";
459
+ readonly onColumnVisibility: "column-visibility";
460
+ readonly onColumnStateChange: "column-state-change";
461
+ readonly onSelectionChange: "selection-change";
462
+ readonly onRowMove: "row-move";
463
+ readonly onRowDragStart: "row-drag-start";
464
+ readonly onRowDragEnd: "row-drag-end";
465
+ readonly onRowDrop: "row-drop";
466
+ readonly onRowTransfer: "row-transfer";
467
+ readonly onGroupToggle: "group-toggle";
468
+ readonly onGroupExpand: "group-expand";
469
+ readonly onGroupCollapse: "group-collapse";
470
+ readonly onTreeExpand: "tree-expand";
471
+ readonly onDetailExpand: "detail-expand";
472
+ readonly onResponsiveChange: "responsive-change";
473
+ readonly onContextMenuOpen: "context-menu-open";
474
+ readonly onCopy: "copy";
475
+ readonly onPaste: "paste";
476
+ readonly onUndo: "undo";
477
+ readonly onRedo: "redo";
478
+ readonly onExportComplete: "export-complete";
479
+ readonly onPrintStart: "print-start";
480
+ readonly onPrintComplete: "print-complete";
481
+ readonly onTbwScroll: "tbw-scroll";
482
+ };
355
483
  /**
356
484
  * Gets all event prop names.
357
485
  */
@@ -1 +1 @@
1
- {"version":3,"file":"event-props.d.ts","sourceRoot":"","sources":["../../../../libs/grid-react/src/lib/event-props.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"event-props.d.ts","sourceRoot":"","sources":["../../../../libs/grid-react/src/lib/event-props.ts"],"names":[],"mappings":"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"}
@@ -35,6 +35,7 @@ type ReactGroupingColumnsConfig = Omit<GroupingColumnsConfig, 'groupHeaderRender
35
35
  * Each prop lazily loads its corresponding plugin when used.
36
36
  *
37
37
  * @template TRow - The row data type
38
+ * @since 0.7.0
38
39
  */
39
40
  export interface FeatureProps<TRow = unknown> {
40
41
  /**
@@ -369,17 +370,34 @@ export interface FeatureProps<TRow = unknown> {
369
370
  }
370
371
  /**
371
372
  * Props for controlling SSR behavior.
373
+ *
374
+ * @deprecated This prop is a no-op in any meaningful sense and will be removed
375
+ * in a future major release. The original RFC introduced `ssr` to disable
376
+ * dynamic feature imports during server-side rendering, but the React adapter
377
+ * no longer uses dynamic imports — features are registered via synchronous
378
+ * side-effect imports (`import '@toolbox-web/grid-react/features/...'`), which
379
+ * are SSR-safe by construction. Setting `ssr={true}` today only skips plugin
380
+ * instantiation on the React side; `<tbw-grid>` itself is a custom element
381
+ * that requires a custom-elements polyfill to render anything server-side, and
382
+ * upon client hydration the grid mounts and renders normally regardless of
383
+ * this flag. If you need real SSR support (Next.js / Remix / Astro), open an
384
+ * issue describing your hydration requirements so we can design a proper
385
+ * cross-adapter story rather than relying on this flag.
386
+ * @since 0.7.0
372
387
  */
373
388
  export interface SSRProps {
374
389
  /**
375
- * Enable SSR mode - disables feature plugins for server-side rendering.
376
- * In SSR mode, the grid renders without interactive features.
390
+ * Enable SSR mode - skips React-side plugin instantiation.
391
+ *
392
+ * @deprecated No-op in practice — see {@link SSRProps} for details. Will be
393
+ * removed in a future major release.
377
394
  * @default false
378
395
  */
379
396
  ssr?: boolean;
380
397
  }
381
398
  /**
382
399
  * All feature-related props combined.
400
+ * @since 0.7.0
383
401
  */
384
402
  export type AllFeatureProps<TRow = unknown> = FeatureProps<TRow> & SSRProps;
385
403
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"feature-props.d.ts","sourceRoot":"","sources":["../../../../libs/grid-react/src/lib/feature-props.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"feature-props.d.ts","sourceRoot":"","sources":["../../../../libs/grid-react/src/lib/feature-props.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAGH,OAAO,KAAK,EACV,eAAe,EACf,0BAA0B,EAC1B,iBAAiB,EACjB,YAAY,EAEZ,YAAY,EACZ,qBAAqB,EACrB,kBAAkB,EAClB,kBAAkB,EAClB,eAAe,EACf,gBAAgB,EAChB,WAAW,EACX,WAAW,EACX,aAAa,EACb,sBAAsB,EACtB,iBAAiB,EACjB,gBAAgB,EAChB,eAAe,EACf,gBAAgB,EAChB,aAAa,EACb,UAAU,EACV,cAAc,EACd,gBAAgB,EACjB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,mCAAmC,CAAC;AACvE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,qCAAqC,CAAC;AAC7E,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,4CAA4C,CAAC;AACxF,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAGvC;;;;;;GAMG;AACH,KAAK,iBAAiB,CAAC,IAAI,GAAG,OAAO,IAAI,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE,qBAAqB,CAAC,GAAG;IACzF,mBAAmB,CAAC,EAAE,YAAY,CAAC,IAAI,CAAC,CAAC,qBAAqB,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,iBAAiB,KAAK,SAAS,CAAC,CAAC;CAC9G,CAAC;AAEF;;GAEG;AACH,KAAK,0BAA0B,GAAG,IAAI,CAAC,qBAAqB,EAAE,UAAU,CAAC,GAAG;IAC1E,QAAQ,CAAC,EACL,qBAAqB,CAAC,UAAU,CAAC,GACjC,CAAC,CAAC,GAAG,IAAI,EAAE,UAAU,CAAC,WAAW,CAAC,qBAAqB,CAAC,UAAU,CAAC,CAAC,CAAC,KAAK,SAAS,CAAC,CAAC;CAC1F,CAAC;AAEF;;;;;;GAMG;AACH,KAAK,0BAA0B,GAAG,IAAI,CAAC,qBAAqB,EAAE,qBAAqB,GAAG,cAAc,CAAC,GAAG;IACtG,YAAY,CAAC,EAAE,0BAA0B,EAAE,CAAC;IAC5C,mBAAmB,CAAC,EAChB,qBAAqB,CAAC,qBAAqB,CAAC,GAC5C,CAAC,CAAC,GAAG,IAAI,EAAE,UAAU,CAAC,WAAW,CAAC,qBAAqB,CAAC,qBAAqB,CAAC,CAAC,CAAC,KAAK,SAAS,CAAC,CAAC;CACrG,CAAC;AAGF;;;;;;GAMG;AACH,MAAM,WAAW,YAAY,CAAC,IAAI,GAAG,OAAO;IAK1C;;;;;;;;;;;;;OAaG;IACH,SAAS,CAAC,EAAE,MAAM,GAAG,KAAK,GAAG,OAAO,GAAG,eAAe,CAAC,IAAI,CAAC,CAAC;IAE7D;;;;;;;;;;;;;;;;;;OAkBG;IACH,OAAO,CAAC,EAAE,OAAO,GAAG,OAAO,GAAG,UAAU,GAAG,QAAQ,GAAG,aAAa,CAAC;IAEpE;;;;;;;;;;OAUG;IACH,SAAS,CAAC,EAAE,OAAO,GAAG,eAAe,CAAC;IAEtC;;;;;;;;;;OAUG;IACH,WAAW,CAAC,EAAE,OAAO,GAAG,iBAAiB,CAAC;IAM1C;;;;;;;;;;;;;;;;;;;;OAoBG;IACH,SAAS,CAAC,EAAE,OAAO,GAAG,QAAQ,GAAG,OAAO,GAAG,eAAe,CAAC;IAE3D;;;;;;;;;;OAUG;IACH,SAAS,CAAC,EAAE,OAAO,GAAG,iBAAiB,CAAC,IAAI,CAAC,CAAC;IAM9C;;;;;;;;;OASG;IACH,cAAc,CAAC,EAAE,OAAO,GAAG,aAAa,CAAC;IAEzC;;;;;;;;;OASG;IACH,UAAU,CAAC,EAAE,OAAO,GAAG,gBAAgB,CAAC;IAExC;;;;;;;;;;;;;;OAcG;IACH,aAAa,CAAC,EAAE,OAAO,CAAC;IAExB;;;;;;;;;;;;;OAaG;IACH,eAAe,CAAC,EAAE,OAAO,GAAG,0BAA0B,CAAC;IAEvD;;;;;;;;;OASG;IACH,oBAAoB,CAAC,EAAE,OAAO,GAAG,0BAA0B,CAAC;IAM5D;;;;;;;;;;;OAWG;IACH,WAAW,CAAC,EAAE,OAAO,GAAG,gBAAgB,CAAC;IAEzC;;;;;;;;;;;;;;OAcG;IACH,WAAW,CAAC,EAAE,OAAO,GAAG,iBAAiB,CAAC,IAAI,CAAC,CAAC;IAEhD;;;;;;;;;;;;OAYG;IACH,YAAY,CAAC,EAAE,kBAAkB,CAAC;IAElC;;;;;;;;;;;OAWG;IACH,UAAU,CAAC,EAAE,OAAO,GAAG,gBAAgB,CAAC;IAMxC;;;;;;;;;;;;OAYG;IACH,IAAI,CAAC,EAAE,OAAO,GAAG,UAAU,CAAC;IAE5B;;;;;;;;;;;OAWG;IACH,YAAY,CAAC,EAAE,kBAAkB,CAAC;IAMlC;;;;;;;;;;;;OAYG;IACH,UAAU,CAAC,EAAE,OAAO,GAAG,sBAAsB,CAAC;IAM9C;;;;;;;;;;OAUG;IACH,QAAQ,CAAC,EAAE,OAAO,GAAG,cAAc,CAAC;IAMpC;;;;;;;;;;OAUG;IACH,MAAM,CAAC,EAAE,OAAO,GAAG,YAAY,CAAC;IAEhC;;;;;;;;;OASG;IACH,KAAK,CAAC,EAAE,OAAO,GAAG,WAAW,CAAC;IAM9B;;;;;;;;;;;;;OAaG;IACH,KAAK,CAAC,EAAE,WAAW,CAAC;IAEpB;;;;;;;;;;;OAWG;IACH,UAAU,CAAC,EAAE,gBAAgB,CAAC;IAM9B;;;;;;;;;;OAUG;IACH,OAAO,CAAC,EAAE,OAAO,GAAG,aAAa,CAAC;CACnC;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,WAAW,QAAQ;IACvB;;;;;;OAMG;IACH,GAAG,CAAC,EAAE,OAAO,CAAC;CACf;AAED;;;GAGG;AACH,MAAM,MAAM,eAAe,CAAC,IAAI,GAAG,OAAO,IAAI,YAAY,CAAC,IAAI,CAAC,GAAG,QAAQ,CAAC"}
@@ -48,6 +48,17 @@ export declare function clearContainersForGrid(gridEl: HTMLElement): void;
48
48
  * Use `clearContainersForGrid()` in multi-grid scenarios instead.
49
49
  */
50
50
  export declare function clearAllContainers(): void;
51
+ /**
52
+ * Wrap a React-returning render function as a vanilla `(ctx) => HTMLElement | null`
53
+ * suitable for any grid renderer slot (cell renderer, group header, pinned-row
54
+ * panel, etc.). Returns `null` when the React function returns `null` /
55
+ * `undefined` / `false`, so built-in conditional renderers can opt out.
56
+ *
57
+ * The wrapper is a `<div style="display:contents">` so it imposes no layout.
58
+ * Each call mounts a fresh portal — call sites that need to update the same
59
+ * container instead should use `renderToContainer` directly with `existingKey`.
60
+ */
61
+ export declare function createNodeBridge<TCtx>(reactFn: (ctx: TCtx) => ReactNode): (ctx: TCtx) => HTMLElement | null;
51
62
  /**
52
63
  * Reset the key counter. Only use in tests.
53
64
  * @internal
@@ -1 +1 @@
1
- {"version":3,"file":"portal-bridge.d.ts","sourceRoot":"","sources":["../../../../libs/grid-react/src/lib/portal-bridge.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAGvC,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAmB5D;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,WAAW,EAAE,EAAE,EAAE,mBAAmB,GAAG,IAAI,GAAG,IAAI,CAM1F;AAED;;;;GAIG;AACH,wBAAgB,gBAAgB,CAAC,MAAM,CAAC,EAAE,WAAW,GAAG,mBAAmB,GAAG,IAAI,CAIjF;AAuCD;;;;;;;;;;;;GAYG;AACH,wBAAgB,iBAAiB,CAC/B,SAAS,EAAE,WAAW,EACtB,OAAO,EAAE,SAAS,EAClB,WAAW,CAAC,EAAE,MAAM,EACpB,MAAM,CAAC,EAAE,WAAW,GACnB,MAAM,CAoBR;AAED;;;;;;GAMG;AACH,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;IAAE,IAAI,CAAC,EAAE,OAAO,CAAA;CAAE,GAAG,IAAI,CAQnF;AAED;;;GAGG;AACH,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,WAAW,GAAG,IAAI,CAWhE;AAED;;;GAGG;AACH,wBAAgB,kBAAkB,IAAI,IAAI,CAczC;AAED;;;GAGG;AACH,wBAAgB,eAAe,IAAI,IAAI,CAEtC;AAED;;;;GAIG;AACH,wBAAgB,WAAW,IAAI,IAAI,CAKlC"}
1
+ {"version":3,"file":"portal-bridge.d.ts","sourceRoot":"","sources":["../../../../libs/grid-react/src/lib/portal-bridge.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAGvC,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAmB5D;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,WAAW,EAAE,EAAE,EAAE,mBAAmB,GAAG,IAAI,GAAG,IAAI,CAM1F;AAED;;;;GAIG;AACH,wBAAgB,gBAAgB,CAAC,MAAM,CAAC,EAAE,WAAW,GAAG,mBAAmB,GAAG,IAAI,CAIjF;AAuCD;;;;;;;;;;;;GAYG;AACH,wBAAgB,iBAAiB,CAC/B,SAAS,EAAE,WAAW,EACtB,OAAO,EAAE,SAAS,EAClB,WAAW,CAAC,EAAE,MAAM,EACpB,MAAM,CAAC,EAAE,WAAW,GACnB,MAAM,CAoBR;AAED;;;;;;GAMG;AACH,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;IAAE,IAAI,CAAC,EAAE,OAAO,CAAA;CAAE,GAAG,IAAI,CAQnF;AAED;;;GAGG;AACH,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,WAAW,GAAG,IAAI,CAWhE;AAED;;;GAGG;AACH,wBAAgB,kBAAkB,IAAI,IAAI,CAczC;AAED;;;;;;;;;GASG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,OAAO,EAAE,CAAC,GAAG,EAAE,IAAI,KAAK,SAAS,GAAG,CAAC,GAAG,EAAE,IAAI,KAAK,WAAW,GAAG,IAAI,CAS3G;AAED;;;GAGG;AACH,wBAAgB,eAAe,IAAI,IAAI,CAEtC;AAED;;;;GAIG;AACH,wBAAgB,WAAW,IAAI,IAAI,CAKlC"}
@@ -26,6 +26,7 @@ import { ReactNode } from 'react';
26
26
  * },
27
27
  * ];
28
28
  * ```
29
+ * @since 0.0.1
29
30
  */
30
31
  export interface ColumnConfig<TRow = unknown> extends Omit<BaseColumnConfig<TRow>, 'renderer' | 'viewRenderer' | 'editor' | 'headerRenderer' | 'headerLabelRenderer'> {
31
32
  /**
@@ -72,6 +73,7 @@ export interface ColumnConfig<TRow = unknown> extends Omit<BaseColumnConfig<TRow
72
73
  * ],
73
74
  * };
74
75
  * ```
76
+ * @since 0.0.1
75
77
  */
76
78
  export type GridConfig<TRow = unknown> = Omit<BaseGridConfig<TRow>, 'columns' | 'loadingRenderer'> & {
77
79
  columns?: ColumnConfig<TRow>[];
@@ -97,6 +99,16 @@ export type GridConfig<TRow = unknown> = Omit<BaseGridConfig<TRow>, 'columns' |
97
99
  * @internal
98
100
  */
99
101
  export declare function cleanupConfigRootsIn(parentEl: HTMLElement): void;
102
+ /**
103
+ * Returns a function that, when invoked, blurs the focused input/textarea/select
104
+ * inside `container` (if any). Used by the `before-edit-close` bridge so editors
105
+ * with `onBlur={commit}` flush their pending value before the cell DOM is torn
106
+ * down by Tab / programmatic row exit. The native `.blur()` method fires both
107
+ * `blur` (non-bubbling) and `focusout` (bubbling) — React's event delegation
108
+ * listens to `focusout` and maps it to `onBlur`.
109
+ * @internal
110
+ */
111
+ export declare function makeFlushFocusedInput(container: HTMLElement): () => void;
100
112
  /**
101
113
  * Wraps a React renderer function into a DOM-returning viewRenderer.
102
114
  * Used internally by DataGrid to process reactRenderer properties.
@@ -1 +1 @@
1
- {"version":3,"file":"react-column-config.d.ts","sourceRoot":"","sources":["../../../../libs/grid-react/src/lib/react-column-config.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"react-column-config.d.ts","sourceRoot":"","sources":["../../../../libs/grid-react/src/lib/react-column-config.ts"],"names":[],"mappings":"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"}