material-react-table 0.9.5 → 0.10.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/README.md +2 -0
- package/dist/MaterialReactTable.d.ts +144 -128
- package/dist/body/MRT_TableBody.d.ts +1 -1
- package/dist/body/MRT_TableBodyCell.d.ts +1 -1
- package/dist/body/MRT_TableBodyRow.d.ts +1 -1
- package/dist/body/MRT_TableDetailPanel.d.ts +1 -1
- package/dist/buttons/MRT_ColumnPinningButtons.d.ts +1 -1
- package/dist/buttons/MRT_CopyButton.d.ts +1 -1
- package/dist/buttons/MRT_EditActionButtons.d.ts +1 -1
- package/dist/buttons/MRT_ExpandAllButton.d.ts +1 -1
- package/dist/buttons/MRT_ExpandButton.d.ts +1 -1
- package/dist/buttons/MRT_FullScreenToggleButton.d.ts +1 -1
- package/dist/buttons/MRT_GrabHandleButton.d.ts +1 -1
- package/dist/buttons/MRT_ShowHideColumnsButton.d.ts +1 -1
- package/dist/buttons/MRT_ToggleColumnActionMenuButton.d.ts +1 -1
- package/dist/buttons/MRT_ToggleDensePaddingButton.d.ts +1 -1
- package/dist/buttons/MRT_ToggleFiltersButton.d.ts +1 -1
- package/dist/buttons/MRT_ToggleGlobalFilterButton.d.ts +1 -1
- package/dist/buttons/MRT_ToggleRowActionMenuButton.d.ts +1 -1
- package/dist/footer/MRT_TableFooter.d.ts +1 -1
- package/dist/footer/MRT_TableFooterCell.d.ts +1 -1
- package/dist/footer/MRT_TableFooterRow.d.ts +1 -1
- package/dist/head/MRT_DraggableTableHeadCell.d.ts +1 -1
- package/dist/head/MRT_TableHead.d.ts +1 -1
- package/dist/head/MRT_TableHeadCell.d.ts +1 -1
- package/dist/head/MRT_TableHeadCellFilterContainer.d.ts +1 -1
- package/dist/head/MRT_TableHeadCellFilterLabel.d.ts +1 -1
- package/dist/head/MRT_TableHeadCellResizeHandle.d.ts +1 -1
- package/dist/head/MRT_TableHeadCellSortLabel.d.ts +1 -1
- package/dist/head/MRT_TableHeadRow.d.ts +1 -1
- package/dist/inputs/MRT_EditCellTextField.d.ts +1 -1
- package/dist/inputs/MRT_FilterRangeFields.d.ts +1 -1
- package/dist/inputs/MRT_FilterTextField.d.ts +1 -1
- package/dist/inputs/MRT_SearchTextField.d.ts +1 -1
- package/dist/inputs/MRT_SelectCheckbox.d.ts +1 -1
- package/dist/material-react-table.cjs.development.js +569 -573
- package/dist/material-react-table.cjs.development.js.map +1 -1
- package/dist/material-react-table.cjs.production.min.js +1 -1
- package/dist/material-react-table.cjs.production.min.js.map +1 -1
- package/dist/material-react-table.esm.js +569 -573
- package/dist/material-react-table.esm.js.map +1 -1
- package/dist/menus/MRT_ColumnActionMenu.d.ts +1 -1
- package/dist/menus/MRT_FilterOptionMenu.d.ts +1 -1
- package/dist/menus/MRT_RowActionMenu.d.ts +1 -1
- package/dist/menus/MRT_ShowHideColumnsMenu.d.ts +1 -1
- package/dist/menus/MRT_ShowHideColumnsMenuItems.d.ts +1 -1
- package/dist/table/MRT_Table.d.ts +1 -1
- package/dist/table/MRT_TableContainer.d.ts +1 -1
- package/dist/table/MRT_TablePaper.d.ts +2 -2
- package/dist/toolbar/MRT_LinearProgressBar.d.ts +1 -1
- package/dist/toolbar/MRT_TablePagination.d.ts +1 -1
- package/dist/toolbar/MRT_ToolbarAlertBanner.d.ts +1 -1
- package/dist/toolbar/MRT_ToolbarBottom.d.ts +1 -1
- package/dist/toolbar/MRT_ToolbarInternalButtons.d.ts +1 -1
- package/dist/toolbar/MRT_ToolbarTop.d.ts +1 -1
- package/dist/utils.d.ts +2 -2
- package/package.json +1 -1
- package/src/MaterialReactTable.tsx +159 -157
- package/src/body/MRT_TableBody.tsx +12 -9
- package/src/body/MRT_TableBodyCell.tsx +15 -21
- package/src/body/MRT_TableBodyRow.tsx +7 -7
- package/src/body/MRT_TableDetailPanel.tsx +14 -11
- package/src/buttons/MRT_ColumnPinningButtons.tsx +3 -6
- package/src/buttons/MRT_CopyButton.tsx +5 -9
- package/src/buttons/MRT_EditActionButtons.tsx +4 -4
- package/src/buttons/MRT_ExpandAllButton.tsx +3 -3
- package/src/buttons/MRT_ExpandButton.tsx +4 -4
- package/src/buttons/MRT_FullScreenToggleButton.tsx +4 -4
- package/src/buttons/MRT_GrabHandleButton.tsx +3 -3
- package/src/buttons/MRT_ShowHideColumnsButton.tsx +4 -7
- package/src/buttons/MRT_ToggleColumnActionMenuButton.tsx +6 -6
- package/src/buttons/MRT_ToggleDensePaddingButton.tsx +4 -4
- package/src/buttons/MRT_ToggleFiltersButton.tsx +4 -7
- package/src/buttons/MRT_ToggleGlobalFilterButton.tsx +5 -5
- package/src/buttons/MRT_ToggleRowActionMenuButton.tsx +6 -9
- package/src/footer/MRT_TableFooter.tsx +5 -5
- package/src/footer/MRT_TableFooterCell.tsx +6 -6
- package/src/footer/MRT_TableFooterRow.tsx +5 -8
- package/src/head/MRT_DraggableTableHeadCell.tsx +4 -7
- package/src/head/MRT_TableHead.tsx +5 -5
- package/src/head/MRT_TableHeadCell.tsx +15 -25
- package/src/head/MRT_TableHeadCellFilterContainer.tsx +6 -7
- package/src/head/MRT_TableHeadCellFilterLabel.tsx +3 -3
- package/src/head/MRT_TableHeadCellResizeHandle.tsx +3 -3
- package/src/head/MRT_TableHeadCellSortLabel.tsx +3 -6
- package/src/head/MRT_TableHeadRow.tsx +6 -6
- package/src/inputs/MRT_EditCellTextField.tsx +10 -10
- package/src/inputs/MRT_FilterRangeFields.tsx +5 -13
- package/src/inputs/MRT_FilterTextField.tsx +10 -14
- package/src/inputs/MRT_SearchTextField.tsx +6 -6
- package/src/inputs/MRT_SelectCheckbox.tsx +10 -16
- package/src/menus/MRT_ColumnActionMenu.tsx +5 -5
- package/src/menus/MRT_FilterOptionMenu.tsx +33 -33
- package/src/menus/MRT_RowActionMenu.tsx +4 -4
- package/src/menus/MRT_ShowHideColumnsMenu.tsx +6 -6
- package/src/menus/MRT_ShowHideColumnsMenuItems.tsx +7 -10
- package/src/table/MRT_Table.tsx +14 -9
- package/src/table/MRT_TableContainer.tsx +16 -12
- package/src/table/MRT_TablePaper.tsx +8 -14
- package/src/table/MRT_TableRoot.tsx +25 -30
- package/src/toolbar/MRT_LinearProgressBar.tsx +4 -7
- package/src/toolbar/MRT_TablePagination.tsx +4 -4
- package/src/toolbar/MRT_ToolbarAlertBanner.tsx +6 -8
- package/src/toolbar/MRT_ToolbarBottom.tsx +8 -8
- package/src/toolbar/MRT_ToolbarInternalButtons.tsx +10 -12
- package/src/toolbar/MRT_ToolbarTop.tsx +11 -10
- package/src/utils.ts +2 -2
- package/dist/enums.d.ts +0 -13
- package/src/enums.ts +0 -13
|
@@ -34,6 +34,7 @@ import {
|
|
|
34
34
|
FilterFnOption,
|
|
35
35
|
Header,
|
|
36
36
|
HeaderGroup,
|
|
37
|
+
OnChangeFn,
|
|
37
38
|
Overwrite,
|
|
38
39
|
ReactTableGenerics,
|
|
39
40
|
Row,
|
|
@@ -43,9 +44,9 @@ import {
|
|
|
43
44
|
UseTableInstanceOptions,
|
|
44
45
|
VisibilityState,
|
|
45
46
|
} from '@tanstack/react-table';
|
|
47
|
+
import { Options as VirtualizerOptions } from 'react-virtual';
|
|
46
48
|
import { MRT_Localization, MRT_DefaultLocalization_EN } from './localization';
|
|
47
49
|
import { MRT_Default_Icons, MRT_Icons } from './icons';
|
|
48
|
-
import { MRT_FILTER_OPTION } from './enums';
|
|
49
50
|
import { MRT_TableRoot } from './table/MRT_TableRoot';
|
|
50
51
|
|
|
51
52
|
export type MRT_TableOptions<D extends Record<string, any> = {}> = Partial<
|
|
@@ -119,7 +120,7 @@ export type MRT_TableInstance<D extends Record<string, any> = {}> = Omit<
|
|
|
119
120
|
[key: string]: MRT_FilterFn;
|
|
120
121
|
}>
|
|
121
122
|
>;
|
|
122
|
-
setCurrentGlobalFilterFn: Dispatch<SetStateAction<MRT_FilterFn
|
|
123
|
+
setCurrentGlobalFilterFn: Dispatch<SetStateAction<MRT_FilterFn>>;
|
|
123
124
|
setIsDensePadding: Dispatch<SetStateAction<boolean>>;
|
|
124
125
|
setIsFullScreen: Dispatch<SetStateAction<boolean>>;
|
|
125
126
|
setShowFilters: Dispatch<SetStateAction<boolean>>;
|
|
@@ -142,48 +143,61 @@ export type MRT_TableState<D extends Record<string, any> = {}> = TableState & {
|
|
|
142
143
|
|
|
143
144
|
export type MRT_ColumnDef<D extends Record<string, any> = {}> = Omit<
|
|
144
145
|
ColumnDef<D>,
|
|
145
|
-
|
|
146
|
+
| 'accessorFn'
|
|
147
|
+
| 'aggregatedCell'
|
|
148
|
+
| 'header'
|
|
149
|
+
| 'footer'
|
|
150
|
+
| 'columns'
|
|
151
|
+
| 'filterFn'
|
|
152
|
+
| 'cell'
|
|
146
153
|
> & {
|
|
154
|
+
AggregatedCell?: ({
|
|
155
|
+
cell,
|
|
156
|
+
instance,
|
|
157
|
+
}: {
|
|
158
|
+
cell: MRT_Cell<D>;
|
|
159
|
+
instance: MRT_TableInstance<D>;
|
|
160
|
+
}) => ReactNode;
|
|
147
161
|
Cell?: ({
|
|
148
162
|
cell,
|
|
149
|
-
|
|
163
|
+
instance,
|
|
150
164
|
}: {
|
|
151
165
|
cell: MRT_Cell<D>;
|
|
152
|
-
|
|
166
|
+
instance: MRT_TableInstance<D>;
|
|
153
167
|
}) => ReactNode;
|
|
154
168
|
Edit?: ({
|
|
155
169
|
cell,
|
|
156
|
-
|
|
170
|
+
instance,
|
|
157
171
|
}: {
|
|
158
172
|
cell: MRT_Cell<D>;
|
|
159
|
-
|
|
173
|
+
instance: MRT_TableInstance<D>;
|
|
160
174
|
}) => ReactNode;
|
|
161
175
|
Filter?: ({
|
|
162
176
|
header,
|
|
163
|
-
|
|
177
|
+
instance,
|
|
164
178
|
}: {
|
|
165
179
|
header: MRT_Header<D>;
|
|
166
|
-
|
|
180
|
+
instance: MRT_TableInstance<D>;
|
|
167
181
|
}) => ReactNode;
|
|
168
182
|
Footer?:
|
|
169
183
|
| ReactNode
|
|
170
184
|
| (({
|
|
171
185
|
footer,
|
|
172
|
-
|
|
186
|
+
instance,
|
|
173
187
|
}: {
|
|
174
188
|
footer: MRT_Header<D>;
|
|
175
|
-
|
|
189
|
+
instance: MRT_TableInstance<D>;
|
|
176
190
|
}) => ReactNode);
|
|
177
191
|
Header?:
|
|
178
192
|
| ReactNode
|
|
179
193
|
| (({
|
|
180
194
|
header,
|
|
181
|
-
|
|
195
|
+
instance,
|
|
182
196
|
}: {
|
|
183
197
|
header: MRT_Header<D>;
|
|
184
|
-
|
|
198
|
+
instance: MRT_TableInstance<D>;
|
|
185
199
|
}) => ReactNode);
|
|
186
|
-
|
|
200
|
+
accessorFn?: (row: D) => any;
|
|
187
201
|
columns?: MRT_ColumnDef<D>[];
|
|
188
202
|
enableClickToCopy?: boolean;
|
|
189
203
|
enableColumnActions?: boolean;
|
|
@@ -198,83 +212,83 @@ export type MRT_ColumnDef<D extends Record<string, any> = {}> = Omit<
|
|
|
198
212
|
muiTableBodyCellCopyButtonProps?:
|
|
199
213
|
| ButtonProps
|
|
200
214
|
| (({
|
|
201
|
-
|
|
215
|
+
instance,
|
|
202
216
|
cell,
|
|
203
217
|
}: {
|
|
204
|
-
|
|
218
|
+
instance: MRT_TableInstance;
|
|
205
219
|
cell: MRT_Cell<D>;
|
|
206
220
|
}) => ButtonProps);
|
|
207
221
|
muiTableBodyCellEditTextFieldProps?:
|
|
208
222
|
| TextFieldProps
|
|
209
223
|
| (({
|
|
210
|
-
|
|
224
|
+
instance,
|
|
211
225
|
cell,
|
|
212
226
|
}: {
|
|
213
|
-
|
|
227
|
+
instance: MRT_TableInstance;
|
|
214
228
|
cell: MRT_Cell<D>;
|
|
215
229
|
}) => TextFieldProps);
|
|
216
230
|
muiTableBodyCellProps?:
|
|
217
231
|
| TableCellProps
|
|
218
232
|
| (({
|
|
219
|
-
|
|
233
|
+
instance,
|
|
220
234
|
cell,
|
|
221
235
|
}: {
|
|
222
|
-
|
|
236
|
+
instance: MRT_TableInstance;
|
|
223
237
|
cell: MRT_Cell<D>;
|
|
224
238
|
}) => TableCellProps);
|
|
225
239
|
muiTableFooterCellProps?:
|
|
226
240
|
| TableCellProps
|
|
227
241
|
| (({
|
|
228
|
-
|
|
242
|
+
instance,
|
|
229
243
|
column,
|
|
230
244
|
}: {
|
|
231
|
-
|
|
245
|
+
instance: MRT_TableInstance;
|
|
232
246
|
column: MRT_Column<D>;
|
|
233
247
|
}) => TableCellProps);
|
|
234
248
|
muiTableHeadCellColumnActionsButtonProps?:
|
|
235
249
|
| IconButtonProps
|
|
236
250
|
| (({
|
|
237
|
-
|
|
251
|
+
instance,
|
|
238
252
|
column,
|
|
239
253
|
}: {
|
|
240
|
-
|
|
254
|
+
instance: MRT_TableInstance;
|
|
241
255
|
column: MRT_Column<D>;
|
|
242
256
|
}) => IconButtonProps);
|
|
243
257
|
muiTableHeadCellFilterTextFieldProps?:
|
|
244
258
|
| TextFieldProps
|
|
245
259
|
| (({
|
|
246
|
-
|
|
260
|
+
instance,
|
|
247
261
|
column,
|
|
248
262
|
}: {
|
|
249
|
-
|
|
263
|
+
instance: MRT_TableInstance;
|
|
250
264
|
column: MRT_Column<D>;
|
|
251
265
|
}) => TextFieldProps);
|
|
252
266
|
muiTableHeadCellProps?:
|
|
253
267
|
| TableCellProps
|
|
254
268
|
| (({
|
|
255
|
-
|
|
269
|
+
instance,
|
|
256
270
|
column,
|
|
257
271
|
}: {
|
|
258
|
-
|
|
272
|
+
instance: MRT_TableInstance;
|
|
259
273
|
column: MRT_Column<D>;
|
|
260
274
|
}) => TableCellProps);
|
|
261
275
|
onMrtCellEditBlur?: ({
|
|
262
276
|
cell,
|
|
263
277
|
event,
|
|
264
|
-
|
|
278
|
+
instance,
|
|
265
279
|
}: {
|
|
266
280
|
event: FocusEvent<HTMLInputElement>;
|
|
267
281
|
cell: MRT_Cell<D>;
|
|
268
|
-
|
|
282
|
+
instance: MRT_TableInstance<D>;
|
|
269
283
|
}) => void;
|
|
270
284
|
onMrtCellEditChange?: ({
|
|
271
285
|
cell,
|
|
272
286
|
event,
|
|
273
|
-
|
|
287
|
+
instance,
|
|
274
288
|
}: {
|
|
275
289
|
event: ChangeEvent<HTMLInputElement>;
|
|
276
290
|
cell: MRT_Cell<D>;
|
|
277
|
-
|
|
291
|
+
instance: MRT_TableInstance<D>;
|
|
278
292
|
}) => void;
|
|
279
293
|
onMrtFilterValueChange?: ({
|
|
280
294
|
column,
|
|
@@ -330,9 +344,24 @@ export type MRT_Cell<D extends Record<string, any> = {}> = Omit<
|
|
|
330
344
|
row: MRT_Row<D>;
|
|
331
345
|
};
|
|
332
346
|
|
|
333
|
-
export type
|
|
347
|
+
export type MRT_FILTER_OPTION =
|
|
348
|
+
| 'between'
|
|
349
|
+
| 'contains'
|
|
350
|
+
| 'empty'
|
|
351
|
+
| 'endsWith'
|
|
352
|
+
| 'equals'
|
|
353
|
+
| 'fuzzy'
|
|
354
|
+
| 'greaterThan'
|
|
355
|
+
| 'greaterThanOrEqual'
|
|
356
|
+
| 'lessThan'
|
|
357
|
+
| 'lessThanOrEqual'
|
|
358
|
+
| 'notEmpty'
|
|
359
|
+
| 'notEquals'
|
|
360
|
+
| 'startsWith'
|
|
361
|
+
| FilterFnOption<TableGenerics>;
|
|
362
|
+
|
|
363
|
+
export type MRT_FilterFn =
|
|
334
364
|
| FilterFn<TableGenerics>
|
|
335
|
-
| FilterFnOption<D>
|
|
336
365
|
| MRT_FILTER_OPTION
|
|
337
366
|
| number
|
|
338
367
|
| string
|
|
@@ -367,248 +396,218 @@ export type MaterialReactTableProps<D extends Record<string, any> = {}> =
|
|
|
367
396
|
muiLinearProgressProps?:
|
|
368
397
|
| LinearProgressProps
|
|
369
398
|
| (({
|
|
370
|
-
|
|
399
|
+
instance,
|
|
371
400
|
}: {
|
|
372
|
-
|
|
401
|
+
instance: MRT_TableInstance;
|
|
373
402
|
}) => LinearProgressProps);
|
|
374
403
|
muiSearchTextFieldProps?:
|
|
375
404
|
| TextFieldProps
|
|
376
|
-
| (({
|
|
377
|
-
tableInstance,
|
|
378
|
-
}: {
|
|
379
|
-
tableInstance: MRT_TableInstance;
|
|
380
|
-
}) => TextFieldProps);
|
|
405
|
+
| (({ instance }: { instance: MRT_TableInstance }) => TextFieldProps);
|
|
381
406
|
muiSelectCheckboxProps?:
|
|
382
407
|
| CheckboxProps
|
|
383
408
|
| (({
|
|
384
|
-
|
|
409
|
+
instance,
|
|
385
410
|
isSelectAll,
|
|
386
411
|
row,
|
|
387
412
|
}: {
|
|
388
|
-
|
|
413
|
+
instance: MRT_TableInstance;
|
|
389
414
|
isSelectAll: boolean;
|
|
390
415
|
row?: MRT_Row<D>;
|
|
391
416
|
}) => CheckboxProps);
|
|
392
417
|
muiTableBodyCellCopyButtonProps?:
|
|
393
418
|
| ButtonProps
|
|
394
419
|
| (({
|
|
395
|
-
|
|
420
|
+
instance,
|
|
396
421
|
cell,
|
|
397
422
|
}: {
|
|
398
|
-
|
|
423
|
+
instance: MRT_TableInstance;
|
|
399
424
|
cell: MRT_Cell<D>;
|
|
400
425
|
}) => ButtonProps);
|
|
401
426
|
muiTableBodyCellEditTextFieldProps?:
|
|
402
427
|
| TextFieldProps
|
|
403
428
|
| (({
|
|
404
|
-
|
|
429
|
+
instance,
|
|
405
430
|
cell,
|
|
406
431
|
}: {
|
|
407
|
-
|
|
432
|
+
instance: MRT_TableInstance;
|
|
408
433
|
cell: MRT_Cell<D>;
|
|
409
434
|
}) => TextFieldProps);
|
|
410
435
|
muiTableBodyCellProps?:
|
|
411
436
|
| TableCellProps
|
|
412
437
|
| (({
|
|
413
|
-
|
|
438
|
+
instance,
|
|
414
439
|
cell,
|
|
415
440
|
}: {
|
|
416
|
-
|
|
441
|
+
instance: MRT_TableInstance;
|
|
417
442
|
cell: MRT_Cell<D>;
|
|
418
443
|
}) => TableCellProps);
|
|
419
444
|
muiTableBodyCellSkeletonProps?:
|
|
420
445
|
| SkeletonProps
|
|
421
446
|
| (({
|
|
422
|
-
|
|
447
|
+
instance,
|
|
423
448
|
cell,
|
|
424
449
|
}: {
|
|
425
|
-
|
|
450
|
+
instance: MRT_TableInstance;
|
|
426
451
|
cell: MRT_Cell<D>;
|
|
427
452
|
}) => SkeletonProps);
|
|
428
453
|
muiTableBodyProps?:
|
|
429
454
|
| TableBodyProps
|
|
430
|
-
| (({
|
|
431
|
-
tableInstance,
|
|
432
|
-
}: {
|
|
433
|
-
tableInstance: MRT_TableInstance;
|
|
434
|
-
}) => TableBodyProps);
|
|
455
|
+
| (({ instance }: { instance: MRT_TableInstance }) => TableBodyProps);
|
|
435
456
|
muiTableBodyRowProps?:
|
|
436
457
|
| TableRowProps
|
|
437
458
|
| (({
|
|
438
|
-
|
|
459
|
+
instance,
|
|
439
460
|
row,
|
|
440
461
|
}: {
|
|
441
|
-
|
|
462
|
+
instance: MRT_TableInstance;
|
|
442
463
|
row: MRT_Row<D>;
|
|
443
464
|
}) => TableRowProps);
|
|
444
465
|
muiTableContainerProps?:
|
|
445
466
|
| TableContainerProps
|
|
446
467
|
| (({
|
|
447
|
-
|
|
468
|
+
instance,
|
|
448
469
|
}: {
|
|
449
|
-
|
|
470
|
+
instance: MRT_TableInstance;
|
|
450
471
|
}) => TableContainerProps);
|
|
451
472
|
muiTableDetailPanelProps?:
|
|
452
473
|
| TableCellProps
|
|
453
474
|
| (({
|
|
454
|
-
|
|
475
|
+
instance,
|
|
455
476
|
row,
|
|
456
477
|
}: {
|
|
457
|
-
|
|
478
|
+
instance: MRT_TableInstance;
|
|
458
479
|
row: MRT_Row<D>;
|
|
459
480
|
}) => TableCellProps);
|
|
460
481
|
muiTableFooterCellProps?:
|
|
461
482
|
| TableCellProps
|
|
462
483
|
| (({
|
|
463
|
-
|
|
484
|
+
instance,
|
|
464
485
|
column,
|
|
465
486
|
}: {
|
|
466
|
-
|
|
487
|
+
instance: MRT_TableInstance;
|
|
467
488
|
column: MRT_Column<D>;
|
|
468
489
|
}) => TableCellProps);
|
|
469
490
|
muiTableFooterProps?:
|
|
470
491
|
| TableFooterProps
|
|
471
|
-
| (({
|
|
472
|
-
tableInstance,
|
|
473
|
-
}: {
|
|
474
|
-
tableInstance: MRT_TableInstance;
|
|
475
|
-
}) => TableFooterProps);
|
|
492
|
+
| (({ instance }: { instance: MRT_TableInstance }) => TableFooterProps);
|
|
476
493
|
muiTableFooterRowProps?:
|
|
477
494
|
| TableRowProps
|
|
478
495
|
| (({
|
|
479
|
-
|
|
496
|
+
instance,
|
|
480
497
|
footerGroup,
|
|
481
498
|
}: {
|
|
482
|
-
|
|
499
|
+
instance: MRT_TableInstance;
|
|
483
500
|
footerGroup: MRT_HeaderGroup<D>;
|
|
484
501
|
}) => TableRowProps);
|
|
485
502
|
muiTableHeadCellColumnActionsButtonProps?:
|
|
486
503
|
| IconButtonProps
|
|
487
504
|
| (({
|
|
488
|
-
|
|
505
|
+
instance,
|
|
489
506
|
column,
|
|
490
507
|
}: {
|
|
491
|
-
|
|
508
|
+
instance: MRT_TableInstance;
|
|
492
509
|
column: MRT_Column<D>;
|
|
493
510
|
}) => IconButtonProps);
|
|
494
511
|
muiTableHeadCellFilterTextFieldProps?:
|
|
495
512
|
| TextFieldProps
|
|
496
513
|
| (({
|
|
497
|
-
|
|
514
|
+
instance,
|
|
498
515
|
column,
|
|
499
516
|
}: {
|
|
500
|
-
|
|
517
|
+
instance: MRT_TableInstance;
|
|
501
518
|
column: MRT_Column<D>;
|
|
502
519
|
}) => TextFieldProps);
|
|
503
520
|
muiTableHeadCellProps?:
|
|
504
521
|
| TableCellProps
|
|
505
522
|
| (({
|
|
506
|
-
|
|
523
|
+
instance,
|
|
507
524
|
column,
|
|
508
525
|
}: {
|
|
509
|
-
|
|
526
|
+
instance: MRT_TableInstance;
|
|
510
527
|
column: MRT_Column<D>;
|
|
511
528
|
}) => TableCellProps);
|
|
512
529
|
muiTableHeadProps?:
|
|
513
530
|
| TableHeadProps
|
|
514
|
-
| (({
|
|
515
|
-
tableInstance,
|
|
516
|
-
}: {
|
|
517
|
-
tableInstance: MRT_TableInstance;
|
|
518
|
-
}) => TableHeadProps);
|
|
531
|
+
| (({ instance }: { instance: MRT_TableInstance }) => TableHeadProps);
|
|
519
532
|
muiTableHeadRowProps?:
|
|
520
533
|
| TableRowProps
|
|
521
534
|
| (({
|
|
522
|
-
|
|
535
|
+
instance,
|
|
523
536
|
headerGroup,
|
|
524
537
|
}: {
|
|
525
|
-
|
|
538
|
+
instance: MRT_TableInstance;
|
|
526
539
|
headerGroup: MRT_HeaderGroup<D>;
|
|
527
540
|
}) => TableRowProps);
|
|
528
541
|
muiTablePaginationProps?:
|
|
529
542
|
| Partial<TablePaginationProps>
|
|
530
543
|
| (({
|
|
531
|
-
|
|
544
|
+
instance,
|
|
532
545
|
}: {
|
|
533
|
-
|
|
546
|
+
instance: MRT_TableInstance;
|
|
534
547
|
}) => Partial<TablePaginationProps>);
|
|
535
548
|
muiTablePaperProps?:
|
|
536
549
|
| PaperProps
|
|
537
|
-
| (({
|
|
538
|
-
tableInstance,
|
|
539
|
-
}: {
|
|
540
|
-
tableInstance: MRT_TableInstance;
|
|
541
|
-
}) => PaperProps);
|
|
550
|
+
| (({ instance }: { instance: MRT_TableInstance }) => PaperProps);
|
|
542
551
|
muiTableProps?:
|
|
543
552
|
| TableProps
|
|
544
|
-
| (({
|
|
545
|
-
tableInstance,
|
|
546
|
-
}: {
|
|
547
|
-
tableInstance: MRT_TableInstance;
|
|
548
|
-
}) => TableProps);
|
|
553
|
+
| (({ instance }: { instance: MRT_TableInstance }) => TableProps);
|
|
549
554
|
muiTableToolbarAlertBannerProps?:
|
|
550
555
|
| AlertProps
|
|
551
|
-
| (({
|
|
552
|
-
tableInstance,
|
|
553
|
-
}: {
|
|
554
|
-
tableInstance: MRT_TableInstance;
|
|
555
|
-
}) => AlertProps);
|
|
556
|
+
| (({ instance }: { instance: MRT_TableInstance }) => AlertProps);
|
|
556
557
|
muiTableToolbarBottomProps?:
|
|
557
558
|
| ToolbarProps
|
|
558
|
-
| (({
|
|
559
|
-
tableInstance,
|
|
560
|
-
}: {
|
|
561
|
-
tableInstance: MRT_TableInstance;
|
|
562
|
-
}) => ToolbarProps);
|
|
559
|
+
| (({ instance }: { instance: MRT_TableInstance }) => ToolbarProps);
|
|
563
560
|
muiTableToolbarTopProps?:
|
|
564
561
|
| ToolbarProps
|
|
565
|
-
| (({
|
|
566
|
-
|
|
567
|
-
|
|
568
|
-
|
|
569
|
-
|
|
562
|
+
| (({ instance }: { instance: MRT_TableInstance }) => ToolbarProps);
|
|
563
|
+
onCurrentEditingCellChange?: OnChangeFn<MRT_Cell>;
|
|
564
|
+
onCurrentEditingRowChange?: OnChangeFn<MRT_Row>;
|
|
565
|
+
onCurrentFilterFnsChange?: OnChangeFn<{ [key: string]: MRT_FilterFn }>;
|
|
566
|
+
onCurrentGlobalFilterFnChange?: OnChangeFn<MRT_FilterFn>;
|
|
567
|
+
onIsDensePaddingChange?: OnChangeFn<boolean>;
|
|
568
|
+
onIsFullScreenChange?: OnChangeFn<boolean>;
|
|
570
569
|
onMrtCellClick?: ({
|
|
571
570
|
cell,
|
|
572
571
|
event,
|
|
573
|
-
|
|
572
|
+
instance,
|
|
574
573
|
}: {
|
|
575
574
|
cell: MRT_Cell<D>;
|
|
576
|
-
|
|
575
|
+
instance: MRT_TableInstance<D>;
|
|
577
576
|
event: MouseEvent<HTMLTableCellElement>;
|
|
578
577
|
}) => void;
|
|
579
578
|
onMrtCellEditBlur?: ({
|
|
580
579
|
cell,
|
|
581
580
|
event,
|
|
582
|
-
|
|
581
|
+
instance,
|
|
583
582
|
}: {
|
|
584
583
|
event: FocusEvent<HTMLInputElement>;
|
|
585
584
|
cell: MRT_Cell<D>;
|
|
586
|
-
|
|
585
|
+
instance: MRT_TableInstance<D>;
|
|
587
586
|
}) => void;
|
|
588
587
|
onMrtCellEditChange?: ({
|
|
589
588
|
cell,
|
|
590
589
|
event,
|
|
591
|
-
|
|
590
|
+
instance,
|
|
592
591
|
}: {
|
|
593
592
|
event: ChangeEvent<HTMLInputElement>;
|
|
594
593
|
cell: MRT_Cell<D>;
|
|
595
|
-
|
|
594
|
+
instance: MRT_TableInstance<D>;
|
|
596
595
|
}) => void;
|
|
597
596
|
onMrtDetailPanelClick?: ({
|
|
598
597
|
event,
|
|
599
598
|
row,
|
|
600
|
-
|
|
599
|
+
instance,
|
|
601
600
|
}: {
|
|
602
601
|
event: MouseEvent<HTMLTableCellElement>;
|
|
603
602
|
row: MRT_Row<D>;
|
|
604
|
-
|
|
603
|
+
instance: MRT_TableInstance<D>;
|
|
605
604
|
}) => void;
|
|
606
605
|
onMrtEditRowSubmit?: ({
|
|
607
606
|
row,
|
|
608
|
-
|
|
607
|
+
instance,
|
|
609
608
|
}: {
|
|
610
609
|
row: MRT_Row<D>;
|
|
611
|
-
|
|
610
|
+
instance: MRT_TableInstance<D>;
|
|
612
611
|
}) => Promise<void> | void;
|
|
613
612
|
onMrtFilterValueChange?: ({
|
|
614
613
|
column,
|
|
@@ -621,19 +620,19 @@ export type MaterialReactTableProps<D extends Record<string, any> = {}> =
|
|
|
621
620
|
}) => void;
|
|
622
621
|
onMrtGlobalFilterValueChange?: ({
|
|
623
622
|
event,
|
|
624
|
-
|
|
623
|
+
instance,
|
|
625
624
|
}: {
|
|
626
625
|
event: ChangeEvent<HTMLInputElement>;
|
|
627
|
-
|
|
626
|
+
instance: MRT_TableInstance<D>;
|
|
628
627
|
}) => void;
|
|
629
628
|
onMrtRowClick?: ({
|
|
630
629
|
event,
|
|
631
630
|
row,
|
|
632
|
-
|
|
631
|
+
instance,
|
|
633
632
|
}: {
|
|
634
633
|
event: MouseEvent<HTMLTableRowElement>;
|
|
635
634
|
row: MRT_Row<D>;
|
|
636
|
-
|
|
635
|
+
instance: MRT_TableInstance<D>;
|
|
637
636
|
}) => void;
|
|
638
637
|
onMrtRowExpandChange?: ({
|
|
639
638
|
event,
|
|
@@ -641,73 +640,75 @@ export type MaterialReactTableProps<D extends Record<string, any> = {}> =
|
|
|
641
640
|
}: {
|
|
642
641
|
event: MouseEvent<HTMLButtonElement>;
|
|
643
642
|
row: MRT_Row<D>;
|
|
644
|
-
|
|
643
|
+
instance: MRT_TableInstance<D>;
|
|
645
644
|
}) => void;
|
|
646
645
|
onMrtSelectAllChange?: ({
|
|
647
646
|
event,
|
|
648
647
|
selectedRows,
|
|
649
|
-
|
|
648
|
+
instance,
|
|
650
649
|
}: {
|
|
651
650
|
event: ChangeEvent;
|
|
652
651
|
selectedRows: MRT_Row<D>[];
|
|
653
|
-
|
|
652
|
+
instance: MRT_TableInstance<D>;
|
|
654
653
|
}) => void;
|
|
655
654
|
onMrtSelectRowChange?: ({
|
|
656
655
|
event,
|
|
657
656
|
row,
|
|
658
657
|
selectedRows,
|
|
659
|
-
|
|
658
|
+
instance,
|
|
660
659
|
}: {
|
|
661
660
|
event: ChangeEvent;
|
|
662
661
|
row: MRT_Row<D>;
|
|
663
662
|
selectedRows: MRT_Row<D>[];
|
|
664
|
-
|
|
663
|
+
instance: MRT_TableInstance<D>;
|
|
665
664
|
}) => void;
|
|
666
665
|
onMrtToggleColumnVisibility?: ({
|
|
667
666
|
column,
|
|
668
667
|
columnVisibility,
|
|
669
|
-
|
|
668
|
+
instance,
|
|
670
669
|
}: {
|
|
671
670
|
column: MRT_Column<D>;
|
|
672
671
|
columnVisibility: VisibilityState;
|
|
673
|
-
|
|
672
|
+
instance: MRT_TableInstance<D>;
|
|
674
673
|
}) => void;
|
|
675
674
|
onMrtToggleDensePadding?: ({
|
|
676
675
|
event,
|
|
677
676
|
isDensePadding,
|
|
678
|
-
|
|
677
|
+
instance,
|
|
679
678
|
}: {
|
|
680
679
|
event: MouseEvent<HTMLButtonElement>;
|
|
681
680
|
isDensePadding: boolean;
|
|
682
|
-
|
|
681
|
+
instance: MRT_TableInstance<D>;
|
|
683
682
|
}) => void;
|
|
684
683
|
onMrtToggleFullScreen?: ({
|
|
685
684
|
event,
|
|
686
685
|
isFullScreen,
|
|
687
|
-
|
|
686
|
+
instance,
|
|
688
687
|
}: {
|
|
689
688
|
event: MouseEvent<HTMLButtonElement>;
|
|
690
689
|
isFullScreen: boolean;
|
|
691
|
-
|
|
690
|
+
instance: MRT_TableInstance<D>;
|
|
692
691
|
}) => void;
|
|
693
692
|
onMrtToggleShowFilters?: ({
|
|
694
693
|
event,
|
|
695
694
|
showFilters,
|
|
696
|
-
|
|
695
|
+
instance,
|
|
697
696
|
}: {
|
|
698
697
|
event: MouseEvent<HTMLButtonElement>;
|
|
699
698
|
showFilters: boolean;
|
|
700
|
-
|
|
699
|
+
instance: MRT_TableInstance<D>;
|
|
701
700
|
}) => void;
|
|
702
701
|
onMrtToggleShowGlobalFilter?: ({
|
|
703
702
|
event,
|
|
704
703
|
showGlobalFilter,
|
|
705
|
-
|
|
704
|
+
instance,
|
|
706
705
|
}: {
|
|
707
706
|
event: MouseEvent<HTMLButtonElement>;
|
|
708
707
|
showGlobalFilter: boolean;
|
|
709
|
-
|
|
708
|
+
instance: MRT_TableInstance<D>;
|
|
710
709
|
}) => void;
|
|
710
|
+
onShowFiltersChange?: OnChangeFn<boolean>;
|
|
711
|
+
onShowGlobalFilterChange?: OnChangeFn<boolean>;
|
|
711
712
|
persistentStateMode?: 'localStorage' | 'sessionStorage';
|
|
712
713
|
positionActionsColumn?: 'first' | 'last';
|
|
713
714
|
positionPagination?: 'bottom' | 'top' | 'both';
|
|
@@ -716,66 +717,67 @@ export type MaterialReactTableProps<D extends Record<string, any> = {}> =
|
|
|
716
717
|
positionToolbarAlertBanner?: 'bottom' | 'top';
|
|
717
718
|
renderDetailPanel?: ({
|
|
718
719
|
row,
|
|
719
|
-
|
|
720
|
+
instance,
|
|
720
721
|
}: {
|
|
721
722
|
row: MRT_Row<D>;
|
|
722
|
-
|
|
723
|
+
instance: MRT_TableInstance<D>;
|
|
723
724
|
}) => ReactNode;
|
|
724
725
|
renderRowActionMenuItems?: ({
|
|
725
726
|
closeMenu,
|
|
726
727
|
row,
|
|
727
|
-
|
|
728
|
+
instance,
|
|
728
729
|
}: {
|
|
729
730
|
closeMenu: () => void;
|
|
730
731
|
row: MRT_Row<D>;
|
|
731
|
-
|
|
732
|
+
instance: MRT_TableInstance<D>;
|
|
732
733
|
}) => ReactNode[];
|
|
733
734
|
renderRowActions?: ({
|
|
734
735
|
row,
|
|
735
|
-
|
|
736
|
+
instance,
|
|
736
737
|
}: {
|
|
737
738
|
row: MRT_Row<D>;
|
|
738
|
-
|
|
739
|
+
instance: MRT_TableInstance<D>;
|
|
739
740
|
}) => ReactNode;
|
|
740
741
|
renderToolbarCustomActions?: ({
|
|
741
|
-
|
|
742
|
+
instance,
|
|
742
743
|
}: {
|
|
743
|
-
|
|
744
|
+
instance: MRT_TableInstance<D>;
|
|
744
745
|
}) => ReactNode;
|
|
745
746
|
renderToolbarInternalActions?: ({
|
|
746
|
-
|
|
747
|
+
instance,
|
|
747
748
|
MRT_ToggleGlobalFilterButton,
|
|
748
749
|
MRT_ToggleFiltersButton,
|
|
749
750
|
MRT_ShowHideColumnsButton,
|
|
750
751
|
MRT_ToggleDensePaddingButton,
|
|
751
752
|
MRT_FullScreenToggleButton,
|
|
752
753
|
}: {
|
|
753
|
-
|
|
754
|
+
instance: MRT_TableInstance<D>;
|
|
754
755
|
MRT_ToggleGlobalFilterButton: FC<
|
|
755
|
-
IconButtonProps & {
|
|
756
|
+
IconButtonProps & { instance: MRT_TableInstance<D> }
|
|
756
757
|
>;
|
|
757
758
|
MRT_ToggleFiltersButton: FC<
|
|
758
|
-
IconButtonProps & {
|
|
759
|
+
IconButtonProps & { instance: MRT_TableInstance<D> }
|
|
759
760
|
>;
|
|
760
761
|
MRT_ShowHideColumnsButton: FC<
|
|
761
|
-
IconButtonProps & {
|
|
762
|
+
IconButtonProps & { instance: MRT_TableInstance<D> }
|
|
762
763
|
>;
|
|
763
764
|
MRT_ToggleDensePaddingButton: FC<
|
|
764
|
-
IconButtonProps & {
|
|
765
|
+
IconButtonProps & { instance: MRT_TableInstance<D> }
|
|
765
766
|
>;
|
|
766
767
|
MRT_FullScreenToggleButton: FC<
|
|
767
|
-
IconButtonProps & {
|
|
768
|
+
IconButtonProps & { instance: MRT_TableInstance<D> }
|
|
768
769
|
>;
|
|
769
770
|
}) => ReactNode;
|
|
770
771
|
rowNumberMode?: 'original' | 'static';
|
|
771
772
|
selectAllMode?: 'all' | 'page';
|
|
772
773
|
tableId?: string;
|
|
774
|
+
virtualizerProps?: VirtualizerOptions<HTMLDivElement>;
|
|
773
775
|
};
|
|
774
776
|
|
|
775
777
|
export default <D extends Record<string, any> = {}>({
|
|
776
778
|
autoResetExpanded = false,
|
|
777
779
|
columnResizeMode = 'onEnd',
|
|
778
|
-
defaultColumn = { minSize:
|
|
780
|
+
defaultColumn = { minSize: 40, maxSize: 1000, size: 180 },
|
|
779
781
|
editingMode = 'row',
|
|
780
782
|
enableColumnActions = true,
|
|
781
783
|
enableColumnFilters = true,
|
|
@@ -793,7 +795,7 @@ export default <D extends Record<string, any> = {}>({
|
|
|
793
795
|
enablePinning = false,
|
|
794
796
|
enableSelectAll = true,
|
|
795
797
|
enableSorting = true,
|
|
796
|
-
enableStickyHeader =
|
|
798
|
+
enableStickyHeader = false,
|
|
797
799
|
enableTableFooter = true,
|
|
798
800
|
enableTableHead = true,
|
|
799
801
|
enableToolbarBottom = true,
|