material-react-table 0.22.0 → 0.22.1
Sign up to get free protection for your applications and to get access to all the features.
- package/README.md +90 -18
- package/dist/MaterialReactTable.d.ts +158 -152
- package/dist/filtersFns.d.ts +22 -22
- package/dist/material-react-table.cjs.development.js.map +1 -1
- package/dist/material-react-table.cjs.production.min.js.map +1 -1
- package/dist/material-react-table.esm.js.map +1 -1
- package/dist/sortingFns.d.ts +2 -2
- package/dist/table/MRT_TableRoot.d.ts +1 -1
- package/dist/utils.d.ts +7 -7
- package/package.json +6 -6
- package/src/MaterialReactTable.tsx +189 -174
- package/src/filtersFns.ts +22 -22
- package/src/sortingFns.ts +6 -6
- package/src/table/MRT_TableRoot.tsx +9 -10
- package/src/utils.ts +28 -22
@@ -48,27 +48,27 @@ import { MRT_SortingFns } from './sortingFns';
|
|
48
48
|
|
49
49
|
type LiteralUnion<T extends U, U = string> = T | (U & Record<never, never>);
|
50
50
|
|
51
|
-
export type MRT_TableOptions<
|
51
|
+
export type MRT_TableOptions<TData extends Record<string, any> = {}> = Partial<
|
52
52
|
Omit<
|
53
|
-
TableOptions<
|
53
|
+
TableOptions<TData>,
|
54
54
|
'columns' | 'data' | 'initialState' | 'state' | 'expandRowsFn'
|
55
55
|
>
|
56
56
|
> & {
|
57
|
-
columns: MRT_ColumnDef<
|
58
|
-
data:
|
59
|
-
expandRowsFn?: (dataRow:
|
60
|
-
initialState?: Partial<MRT_TableState<
|
61
|
-
state?: Partial<MRT_TableState<
|
57
|
+
columns: MRT_ColumnDef<TData>[];
|
58
|
+
data: TData[];
|
59
|
+
expandRowsFn?: (dataRow: TData) => TData[];
|
60
|
+
initialState?: Partial<MRT_TableState<TData>>;
|
61
|
+
state?: Partial<MRT_TableState<TData>>;
|
62
62
|
};
|
63
63
|
|
64
|
-
export interface MRT_RowModel<
|
65
|
-
flatRows: MRT_Row<
|
66
|
-
rows: MRT_Row<
|
67
|
-
rowsById: { [key: string]: MRT_Row<
|
64
|
+
export interface MRT_RowModel<TData extends Record<string, any> = {}> {
|
65
|
+
flatRows: MRT_Row<TData>[];
|
66
|
+
rows: MRT_Row<TData>[];
|
67
|
+
rowsById: { [key: string]: MRT_Row<TData> };
|
68
68
|
}
|
69
69
|
|
70
|
-
export type MRT_TableInstance<
|
71
|
-
Table<
|
70
|
+
export type MRT_TableInstance<TData extends Record<string, any> = {}> = Omit<
|
71
|
+
Table<TData>,
|
72
72
|
| 'getAllColumns'
|
73
73
|
| 'getAllFlatColumns'
|
74
74
|
| 'getAllLeafColumns'
|
@@ -86,22 +86,22 @@ export type MRT_TableInstance<D extends Record<string, any> = {}> = Omit<
|
|
86
86
|
| 'getState'
|
87
87
|
| 'options'
|
88
88
|
> & {
|
89
|
-
getAllColumns: () => MRT_Column<
|
90
|
-
getAllFlatColumns: () => MRT_Column<
|
91
|
-
getAllLeafColumns: () => MRT_Column<
|
92
|
-
getCenterLeafColumns: () => MRT_Column<
|
93
|
-
getColumn: (columnId: string) => MRT_Column<
|
94
|
-
getExpandedRowModel: () => MRT_RowModel<
|
95
|
-
getFlatHeaders: () => MRT_Header<
|
96
|
-
getLeftLeafColumns: () => MRT_Column<
|
97
|
-
getPaginationRowModel: () => MRT_RowModel<
|
98
|
-
getPreFilteredRowModel: () => MRT_RowModel<
|
99
|
-
getPrePaginationRowModel: () => MRT_RowModel<
|
100
|
-
getRightLeafColumns: () => MRT_Column<
|
101
|
-
getRowModel: () => MRT_RowModel<
|
102
|
-
getSelectedRowModel: () => MRT_RowModel<
|
103
|
-
getState: () => MRT_TableState<
|
104
|
-
options: MaterialReactTableProps<
|
89
|
+
getAllColumns: () => MRT_Column<TData>[];
|
90
|
+
getAllFlatColumns: () => MRT_Column<TData>[];
|
91
|
+
getAllLeafColumns: () => MRT_Column<TData>[];
|
92
|
+
getCenterLeafColumns: () => MRT_Column<TData>[];
|
93
|
+
getColumn: (columnId: string) => MRT_Column<TData>;
|
94
|
+
getExpandedRowModel: () => MRT_RowModel<TData>;
|
95
|
+
getFlatHeaders: () => MRT_Header<TData>[];
|
96
|
+
getLeftLeafColumns: () => MRT_Column<TData>[];
|
97
|
+
getPaginationRowModel: () => MRT_RowModel<TData>;
|
98
|
+
getPreFilteredRowModel: () => MRT_RowModel<TData>;
|
99
|
+
getPrePaginationRowModel: () => MRT_RowModel<TData>;
|
100
|
+
getRightLeafColumns: () => MRT_Column<TData>[];
|
101
|
+
getRowModel: () => MRT_RowModel<TData>;
|
102
|
+
getSelectedRowModel: () => MRT_RowModel<TData>;
|
103
|
+
getState: () => MRT_TableState<TData>;
|
104
|
+
options: MaterialReactTableProps<TData> & {
|
105
105
|
icons: MRT_Icons;
|
106
106
|
tableId: string;
|
107
107
|
localization: MRT_Localization;
|
@@ -121,23 +121,24 @@ export type MRT_TableInstance<D extends Record<string, any> = {}> = Omit<
|
|
121
121
|
setShowGlobalFilter: Dispatch<SetStateAction<boolean>>;
|
122
122
|
};
|
123
123
|
|
124
|
-
export type MRT_TableState<
|
125
|
-
|
126
|
-
|
127
|
-
|
128
|
-
|
129
|
-
|
130
|
-
|
131
|
-
|
132
|
-
|
133
|
-
|
134
|
-
|
135
|
-
|
136
|
-
|
137
|
-
|
124
|
+
export type MRT_TableState<TData extends Record<string, any> = {}> =
|
125
|
+
TableState & {
|
126
|
+
currentEditingCell: MRT_Cell<TData> | null;
|
127
|
+
currentEditingRow: MRT_Row<TData> | null;
|
128
|
+
currentFilterFns: Record<string, MRT_FilterOption>;
|
129
|
+
currentGlobalFilterFn: Record<string, MRT_FilterOption>;
|
130
|
+
density: 'comfortable' | 'compact' | 'spacious';
|
131
|
+
isLoading: boolean;
|
132
|
+
isFullScreen: boolean;
|
133
|
+
showAlertBanner: boolean;
|
134
|
+
showFilters: boolean;
|
135
|
+
showGlobalFilter: boolean;
|
136
|
+
showProgressBars: boolean;
|
137
|
+
showSkeletons: boolean;
|
138
|
+
};
|
138
139
|
|
139
|
-
export type MRT_ColumnDef<
|
140
|
-
ColumnDef<
|
140
|
+
export type MRT_ColumnDef<TData extends Record<string, any> = {}> = Omit<
|
141
|
+
ColumnDef<TData>,
|
141
142
|
| 'accessorFn'
|
142
143
|
| 'accessorKey'
|
143
144
|
| 'aggregatedCell'
|
@@ -153,29 +154,29 @@ export type MRT_ColumnDef<D extends Record<string, any> = {}> = Omit<
|
|
153
154
|
cell,
|
154
155
|
table,
|
155
156
|
}: {
|
156
|
-
cell: MRT_Cell<
|
157
|
-
table: MRT_TableInstance<
|
157
|
+
cell: MRT_Cell<TData>;
|
158
|
+
table: MRT_TableInstance<TData>;
|
158
159
|
}) => ReactNode;
|
159
160
|
Cell?: ({
|
160
161
|
cell,
|
161
162
|
table,
|
162
163
|
}: {
|
163
|
-
cell: MRT_Cell<
|
164
|
-
table: MRT_TableInstance<
|
164
|
+
cell: MRT_Cell<TData>;
|
165
|
+
table: MRT_TableInstance<TData>;
|
165
166
|
}) => ReactNode;
|
166
167
|
Edit?: ({
|
167
168
|
cell,
|
168
169
|
table,
|
169
170
|
}: {
|
170
|
-
cell: MRT_Cell<
|
171
|
-
table: MRT_TableInstance<
|
171
|
+
cell: MRT_Cell<TData>;
|
172
|
+
table: MRT_TableInstance<TData>;
|
172
173
|
}) => ReactNode;
|
173
174
|
Filter?: ({
|
174
175
|
header,
|
175
176
|
table,
|
176
177
|
}: {
|
177
|
-
header: MRT_Header<
|
178
|
-
table: MRT_TableInstance<
|
178
|
+
header: MRT_Header<TData>;
|
179
|
+
table: MRT_TableInstance<TData>;
|
179
180
|
}) => ReactNode;
|
180
181
|
Footer?:
|
181
182
|
| ReactNode
|
@@ -183,8 +184,8 @@ export type MRT_ColumnDef<D extends Record<string, any> = {}> = Omit<
|
|
183
184
|
footer,
|
184
185
|
table,
|
185
186
|
}: {
|
186
|
-
footer: MRT_Header<
|
187
|
-
table: MRT_TableInstance<
|
187
|
+
footer: MRT_Header<TData>;
|
188
|
+
table: MRT_TableInstance<TData>;
|
188
189
|
}) => ReactNode);
|
189
190
|
Header?:
|
190
191
|
| ReactNode
|
@@ -192,8 +193,8 @@ export type MRT_ColumnDef<D extends Record<string, any> = {}> = Omit<
|
|
192
193
|
header,
|
193
194
|
table,
|
194
195
|
}: {
|
195
|
-
header: MRT_Header<
|
196
|
-
table: MRT_TableInstance<
|
196
|
+
header: MRT_Header<TData>;
|
197
|
+
table: MRT_TableInstance<TData>;
|
197
198
|
}) => ReactNode);
|
198
199
|
/**
|
199
200
|
* Either an `accessorKey` or a combination of an `accessorFn` and `id` are required for a data column definition.
|
@@ -201,14 +202,14 @@ export type MRT_ColumnDef<D extends Record<string, any> = {}> = Omit<
|
|
201
202
|
*
|
202
203
|
* @example accessorFn: (row) => row.username
|
203
204
|
*/
|
204
|
-
accessorFn?: (row:
|
205
|
+
accessorFn?: (row: TData) => any;
|
205
206
|
/**
|
206
207
|
* Either an `accessorKey` or a combination of an `accessorFn` and `id` are required for a data column definition.
|
207
208
|
* Specify which key in the row this column should use to access the correct data.
|
208
209
|
*
|
209
210
|
* @example accessorKey: 'username'
|
210
211
|
*/
|
211
|
-
accessorKey?: LiteralUnion<string & keyof
|
212
|
+
accessorKey?: LiteralUnion<string & keyof TData>;
|
212
213
|
/**
|
213
214
|
* Specify what type of column this is. Either `data`, `display`, or `group`. Defaults to `data`.
|
214
215
|
* Leave this blank if you are just creating a normal data column.
|
@@ -218,16 +219,22 @@ export type MRT_ColumnDef<D extends Record<string, any> = {}> = Omit<
|
|
218
219
|
* @example columnDefType: 'display'
|
219
220
|
*/
|
220
221
|
columnDefType?: 'data' | 'display' | 'group';
|
221
|
-
columns?: MRT_ColumnDef<
|
222
|
+
columns?: MRT_ColumnDef<TData>[];
|
222
223
|
enableClickToCopy?: boolean;
|
223
224
|
enableColumnActions?: boolean;
|
224
225
|
enableColumnFilterChangeMode?: boolean;
|
225
226
|
enableColumnOrdering?: boolean;
|
226
227
|
enableEditing?: boolean;
|
227
228
|
enabledColumnFilterOptions?: MRT_FilterOption[] | null;
|
228
|
-
filterFn?: MRT_FilterFn<
|
229
|
+
filterFn?: MRT_FilterFn<TData>;
|
229
230
|
filterSelectOptions?: (string | { text: string; value: string })[];
|
231
|
+
/**
|
232
|
+
* footer must be a string. If you want custom JSX to render the footer, you can also specify a `Footer` option. (Capital F)
|
233
|
+
*/
|
230
234
|
footer?: string;
|
235
|
+
/**
|
236
|
+
* header must be a string. If you want custom JSX to render the header, you can also specify a `Header` option. (Capital H)
|
237
|
+
*/
|
231
238
|
header: string;
|
232
239
|
/**
|
233
240
|
* Either an `accessorKey` or a combination of an `accessorFn` and `id` are required for a data column definition.
|
@@ -238,15 +245,15 @@ export type MRT_ColumnDef<D extends Record<string, any> = {}> = Omit<
|
|
238
245
|
*
|
239
246
|
* @default gets set to the same value as `accessorKey` by default
|
240
247
|
*/
|
241
|
-
id?: LiteralUnion<string & keyof
|
248
|
+
id?: LiteralUnion<string & keyof TData>;
|
242
249
|
muiTableBodyCellCopyButtonProps?:
|
243
250
|
| ButtonProps
|
244
251
|
| (({
|
245
252
|
table,
|
246
253
|
cell,
|
247
254
|
}: {
|
248
|
-
table: MRT_TableInstance<
|
249
|
-
cell: MRT_Cell<
|
255
|
+
table: MRT_TableInstance<TData>;
|
256
|
+
cell: MRT_Cell<TData>;
|
250
257
|
}) => ButtonProps);
|
251
258
|
muiTableBodyCellEditTextFieldProps?:
|
252
259
|
| TextFieldProps
|
@@ -254,8 +261,8 @@ export type MRT_ColumnDef<D extends Record<string, any> = {}> = Omit<
|
|
254
261
|
table,
|
255
262
|
cell,
|
256
263
|
}: {
|
257
|
-
table: MRT_TableInstance<
|
258
|
-
cell: MRT_Cell<
|
264
|
+
table: MRT_TableInstance<TData>;
|
265
|
+
cell: MRT_Cell<TData>;
|
259
266
|
}) => TextFieldProps);
|
260
267
|
muiTableBodyCellProps?:
|
261
268
|
| TableCellProps
|
@@ -263,8 +270,8 @@ export type MRT_ColumnDef<D extends Record<string, any> = {}> = Omit<
|
|
263
270
|
table,
|
264
271
|
cell,
|
265
272
|
}: {
|
266
|
-
table: MRT_TableInstance<
|
267
|
-
cell: MRT_Cell<
|
273
|
+
table: MRT_TableInstance<TData>;
|
274
|
+
cell: MRT_Cell<TData>;
|
268
275
|
}) => TableCellProps);
|
269
276
|
muiTableFooterCellProps?:
|
270
277
|
| TableCellProps
|
@@ -272,8 +279,8 @@ export type MRT_ColumnDef<D extends Record<string, any> = {}> = Omit<
|
|
272
279
|
table,
|
273
280
|
column,
|
274
281
|
}: {
|
275
|
-
table: MRT_TableInstance<
|
276
|
-
column: MRT_Column<
|
282
|
+
table: MRT_TableInstance<TData>;
|
283
|
+
column: MRT_Column<TData>;
|
277
284
|
}) => TableCellProps);
|
278
285
|
muiTableHeadCellColumnActionsButtonProps?:
|
279
286
|
| IconButtonProps
|
@@ -281,8 +288,8 @@ export type MRT_ColumnDef<D extends Record<string, any> = {}> = Omit<
|
|
281
288
|
table,
|
282
289
|
column,
|
283
290
|
}: {
|
284
|
-
table: MRT_TableInstance<
|
285
|
-
column: MRT_Column<
|
291
|
+
table: MRT_TableInstance<TData>;
|
292
|
+
column: MRT_Column<TData>;
|
286
293
|
}) => IconButtonProps);
|
287
294
|
muiTableHeadCellFilterTextFieldProps?:
|
288
295
|
| TextFieldProps
|
@@ -290,8 +297,8 @@ export type MRT_ColumnDef<D extends Record<string, any> = {}> = Omit<
|
|
290
297
|
table,
|
291
298
|
column,
|
292
299
|
}: {
|
293
|
-
table: MRT_TableInstance<
|
294
|
-
column: MRT_Column<
|
300
|
+
table: MRT_TableInstance<TData>;
|
301
|
+
column: MRT_Column<TData>;
|
295
302
|
}) => TextFieldProps);
|
296
303
|
muiTableHeadCellProps?:
|
297
304
|
| TableCellProps
|
@@ -299,8 +306,8 @@ export type MRT_ColumnDef<D extends Record<string, any> = {}> = Omit<
|
|
299
306
|
table,
|
300
307
|
column,
|
301
308
|
}: {
|
302
|
-
table: MRT_TableInstance<
|
303
|
-
column: MRT_Column<
|
309
|
+
table: MRT_TableInstance<TData>;
|
310
|
+
column: MRT_Column<TData>;
|
304
311
|
}) => TableCellProps);
|
305
312
|
onCellEditBlur?: ({
|
306
313
|
cell,
|
@@ -308,8 +315,8 @@ export type MRT_ColumnDef<D extends Record<string, any> = {}> = Omit<
|
|
308
315
|
table,
|
309
316
|
}: {
|
310
317
|
event: FocusEvent<HTMLInputElement>;
|
311
|
-
cell: MRT_Cell<
|
312
|
-
table: MRT_TableInstance<
|
318
|
+
cell: MRT_Cell<TData>;
|
319
|
+
table: MRT_TableInstance<TData>;
|
313
320
|
}) => void;
|
314
321
|
onCellEditChange?: ({
|
315
322
|
cell,
|
@@ -317,77 +324,77 @@ export type MRT_ColumnDef<D extends Record<string, any> = {}> = Omit<
|
|
317
324
|
table,
|
318
325
|
}: {
|
319
326
|
event: ChangeEvent<HTMLInputElement>;
|
320
|
-
cell: MRT_Cell<
|
321
|
-
table: MRT_TableInstance<
|
327
|
+
cell: MRT_Cell<TData>;
|
328
|
+
table: MRT_TableInstance<TData>;
|
322
329
|
}) => void;
|
323
330
|
sortingFn?: MRT_SortingFn;
|
324
331
|
};
|
325
332
|
|
326
|
-
export type MRT_DefinedColumnDef<
|
327
|
-
MRT_ColumnDef<
|
333
|
+
export type MRT_DefinedColumnDef<TData extends Record<string, any> = {}> = Omit<
|
334
|
+
MRT_ColumnDef<TData>,
|
328
335
|
'id'
|
329
336
|
> & {
|
330
337
|
id: string;
|
331
338
|
};
|
332
339
|
|
333
|
-
export type MRT_Column<
|
334
|
-
Column<
|
340
|
+
export type MRT_Column<TData extends Record<string, any> = {}> = Omit<
|
341
|
+
Column<TData>,
|
335
342
|
'header' | 'footer' | 'columns' | 'columnDef' | 'filterFn'
|
336
343
|
> & {
|
337
|
-
columnDef: MRT_DefinedColumnDef<
|
338
|
-
columns?: MRT_Column<
|
339
|
-
filterFn?: MRT_FilterFn<
|
344
|
+
columnDef: MRT_DefinedColumnDef<TData>;
|
345
|
+
columns?: MRT_Column<TData>[];
|
346
|
+
filterFn?: MRT_FilterFn<TData>;
|
340
347
|
footer: string;
|
341
348
|
header: string;
|
342
349
|
};
|
343
350
|
|
344
|
-
export type MRT_Header<
|
345
|
-
Header<
|
351
|
+
export type MRT_Header<TData extends Record<string, any> = {}> = Omit<
|
352
|
+
Header<TData>,
|
346
353
|
'column'
|
347
354
|
> & {
|
348
|
-
column: MRT_Column<
|
355
|
+
column: MRT_Column<TData>;
|
349
356
|
};
|
350
357
|
|
351
|
-
export type MRT_HeaderGroup<
|
352
|
-
HeaderGroup<
|
358
|
+
export type MRT_HeaderGroup<TData extends Record<string, any> = {}> = Omit<
|
359
|
+
HeaderGroup<TData>,
|
353
360
|
'headers'
|
354
361
|
> & {
|
355
|
-
headers: MRT_Header<
|
362
|
+
headers: MRT_Header<TData>[];
|
356
363
|
};
|
357
364
|
|
358
|
-
export type MRT_Row<
|
359
|
-
Row<
|
365
|
+
export type MRT_Row<TData extends Record<string, any> = {}> = Omit<
|
366
|
+
Row<TData>,
|
360
367
|
'getVisibleCells' | 'getAllCells' | 'subRows' | 'original' | '_valuesCache'
|
361
368
|
> & {
|
362
|
-
getAllCells: () => MRT_Cell<
|
363
|
-
getVisibleCells: () => MRT_Cell<
|
364
|
-
subRows?: MRT_Row<
|
365
|
-
original:
|
366
|
-
_valuesCache?:
|
369
|
+
getAllCells: () => MRT_Cell<TData>[];
|
370
|
+
getVisibleCells: () => MRT_Cell<TData>[];
|
371
|
+
subRows?: MRT_Row<TData>[];
|
372
|
+
original: TData;
|
373
|
+
_valuesCache?: TData;
|
367
374
|
};
|
368
375
|
|
369
|
-
export type MRT_Cell<
|
370
|
-
Cell<
|
376
|
+
export type MRT_Cell<TData extends Record<string, any> = {}> = Omit<
|
377
|
+
Cell<TData>,
|
371
378
|
'column' | 'row'
|
372
379
|
> & {
|
373
|
-
column: MRT_Column<
|
374
|
-
row: MRT_Row<
|
380
|
+
column: MRT_Column<TData>;
|
381
|
+
row: MRT_Row<TData>;
|
375
382
|
};
|
376
383
|
|
377
384
|
export type MRT_SortingOption = keyof typeof MRT_SortingFns;
|
378
385
|
|
379
|
-
export type MRT_SortingFn<
|
380
|
-
| SortingFn<
|
386
|
+
export type MRT_SortingFn<TData extends Record<string, any> = {}> =
|
387
|
+
| SortingFn<TData>
|
381
388
|
| MRT_SortingOption;
|
382
389
|
|
383
390
|
export type MRT_FilterOption = keyof typeof MRT_FilterFns;
|
384
391
|
|
385
|
-
export type MRT_FilterFn<
|
386
|
-
| FilterFn<
|
392
|
+
export type MRT_FilterFn<TData extends Record<string, any> = {}> =
|
393
|
+
| FilterFn<TData>
|
387
394
|
| MRT_FilterOption;
|
388
395
|
|
389
|
-
export type MaterialReactTableProps<
|
390
|
-
MRT_TableOptions<
|
396
|
+
export type MaterialReactTableProps<TData extends Record<string, any> = {}> =
|
397
|
+
MRT_TableOptions<TData> & {
|
391
398
|
editingMode?: 'table' | 'row' | 'cell';
|
392
399
|
enableClickToCopy?: boolean;
|
393
400
|
enableColumnActions?: boolean;
|
@@ -416,32 +423,36 @@ export type MaterialReactTableProps<D extends Record<string, any> = {}> =
|
|
416
423
|
localization?: Partial<MRT_Localization>;
|
417
424
|
muiExpandAllButtonProps?:
|
418
425
|
| IconButtonProps
|
419
|
-
| (({ table }: { table: MRT_TableInstance<
|
426
|
+
| (({ table }: { table: MRT_TableInstance<TData> }) => IconButtonProps);
|
420
427
|
muiExpandButtonProps?:
|
421
428
|
| IconButtonProps
|
422
429
|
| (({
|
423
430
|
table,
|
424
431
|
}: {
|
425
|
-
table: MRT_TableInstance<
|
426
|
-
row: MRT_Row<
|
432
|
+
table: MRT_TableInstance<TData>;
|
433
|
+
row: MRT_Row<TData>;
|
427
434
|
}) => IconButtonProps);
|
428
435
|
muiLinearProgressProps?:
|
429
436
|
| LinearProgressProps
|
430
|
-
| (({
|
437
|
+
| (({
|
438
|
+
table,
|
439
|
+
}: {
|
440
|
+
table: MRT_TableInstance<TData>;
|
441
|
+
}) => LinearProgressProps);
|
431
442
|
muiSearchTextFieldProps?:
|
432
443
|
| TextFieldProps
|
433
|
-
| (({ table }: { table: MRT_TableInstance<
|
444
|
+
| (({ table }: { table: MRT_TableInstance<TData> }) => TextFieldProps);
|
434
445
|
muiSelectAllCheckboxProps?:
|
435
446
|
| CheckboxProps
|
436
|
-
| (({ table }: { table: MRT_TableInstance<
|
447
|
+
| (({ table }: { table: MRT_TableInstance<TData> }) => CheckboxProps);
|
437
448
|
muiSelectCheckboxProps?:
|
438
449
|
| CheckboxProps
|
439
450
|
| (({
|
440
451
|
table,
|
441
452
|
row,
|
442
453
|
}: {
|
443
|
-
table: MRT_TableInstance<
|
444
|
-
row: MRT_Row<
|
454
|
+
table: MRT_TableInstance<TData>;
|
455
|
+
row: MRT_Row<TData>;
|
445
456
|
}) => CheckboxProps);
|
446
457
|
muiTableBodyCellCopyButtonProps?:
|
447
458
|
| ButtonProps
|
@@ -449,8 +460,8 @@ export type MaterialReactTableProps<D extends Record<string, any> = {}> =
|
|
449
460
|
table,
|
450
461
|
cell,
|
451
462
|
}: {
|
452
|
-
table: MRT_TableInstance<
|
453
|
-
cell: MRT_Cell<
|
463
|
+
table: MRT_TableInstance<TData>;
|
464
|
+
cell: MRT_Cell<TData>;
|
454
465
|
}) => ButtonProps);
|
455
466
|
muiTableBodyCellEditTextFieldProps?:
|
456
467
|
| TextFieldProps
|
@@ -458,8 +469,8 @@ export type MaterialReactTableProps<D extends Record<string, any> = {}> =
|
|
458
469
|
table,
|
459
470
|
cell,
|
460
471
|
}: {
|
461
|
-
table: MRT_TableInstance<
|
462
|
-
cell: MRT_Cell<
|
472
|
+
table: MRT_TableInstance<TData>;
|
473
|
+
cell: MRT_Cell<TData>;
|
463
474
|
}) => TextFieldProps);
|
464
475
|
muiTableBodyCellProps?:
|
465
476
|
| TableCellProps
|
@@ -467,8 +478,8 @@ export type MaterialReactTableProps<D extends Record<string, any> = {}> =
|
|
467
478
|
table,
|
468
479
|
cell,
|
469
480
|
}: {
|
470
|
-
table: MRT_TableInstance<
|
471
|
-
cell: MRT_Cell<
|
481
|
+
table: MRT_TableInstance<TData>;
|
482
|
+
cell: MRT_Cell<TData>;
|
472
483
|
}) => TableCellProps);
|
473
484
|
muiTableBodyCellSkeletonProps?:
|
474
485
|
| SkeletonProps
|
@@ -476,32 +487,36 @@ export type MaterialReactTableProps<D extends Record<string, any> = {}> =
|
|
476
487
|
table,
|
477
488
|
cell,
|
478
489
|
}: {
|
479
|
-
table: MRT_TableInstance<
|
480
|
-
cell: MRT_Cell<
|
490
|
+
table: MRT_TableInstance<TData>;
|
491
|
+
cell: MRT_Cell<TData>;
|
481
492
|
}) => SkeletonProps);
|
482
493
|
muiTableBodyProps?:
|
483
494
|
| TableBodyProps
|
484
|
-
| (({ table }: { table: MRT_TableInstance<
|
495
|
+
| (({ table }: { table: MRT_TableInstance<TData> }) => TableBodyProps);
|
485
496
|
muiTableBodyRowProps?:
|
486
497
|
| TableRowProps
|
487
498
|
| (({
|
488
499
|
table,
|
489
500
|
row,
|
490
501
|
}: {
|
491
|
-
table: MRT_TableInstance<
|
492
|
-
row: MRT_Row<
|
502
|
+
table: MRT_TableInstance<TData>;
|
503
|
+
row: MRT_Row<TData>;
|
493
504
|
}) => TableRowProps);
|
494
505
|
muiTableContainerProps?:
|
495
506
|
| TableContainerProps
|
496
|
-
| (({
|
507
|
+
| (({
|
508
|
+
table,
|
509
|
+
}: {
|
510
|
+
table: MRT_TableInstance<TData>;
|
511
|
+
}) => TableContainerProps);
|
497
512
|
muiTableDetailPanelProps?:
|
498
513
|
| TableCellProps
|
499
514
|
| (({
|
500
515
|
table,
|
501
516
|
row,
|
502
517
|
}: {
|
503
|
-
table: MRT_TableInstance<
|
504
|
-
row: MRT_Row<
|
518
|
+
table: MRT_TableInstance<TData>;
|
519
|
+
row: MRT_Row<TData>;
|
505
520
|
}) => TableCellProps);
|
506
521
|
muiTableFooterCellProps?:
|
507
522
|
| TableCellProps
|
@@ -509,20 +524,20 @@ export type MaterialReactTableProps<D extends Record<string, any> = {}> =
|
|
509
524
|
table,
|
510
525
|
column,
|
511
526
|
}: {
|
512
|
-
table: MRT_TableInstance<
|
513
|
-
column: MRT_Column<
|
527
|
+
table: MRT_TableInstance<TData>;
|
528
|
+
column: MRT_Column<TData>;
|
514
529
|
}) => TableCellProps);
|
515
530
|
muiTableFooterProps?:
|
516
531
|
| TableFooterProps
|
517
|
-
| (({ table }: { table: MRT_TableInstance<
|
532
|
+
| (({ table }: { table: MRT_TableInstance<TData> }) => TableFooterProps);
|
518
533
|
muiTableFooterRowProps?:
|
519
534
|
| TableRowProps
|
520
535
|
| (({
|
521
536
|
table,
|
522
537
|
footerGroup,
|
523
538
|
}: {
|
524
|
-
table: MRT_TableInstance<
|
525
|
-
footerGroup: MRT_HeaderGroup<
|
539
|
+
table: MRT_TableInstance<TData>;
|
540
|
+
footerGroup: MRT_HeaderGroup<TData>;
|
526
541
|
}) => TableRowProps);
|
527
542
|
muiTableHeadCellColumnActionsButtonProps?:
|
528
543
|
| IconButtonProps
|
@@ -530,8 +545,8 @@ export type MaterialReactTableProps<D extends Record<string, any> = {}> =
|
|
530
545
|
table,
|
531
546
|
column,
|
532
547
|
}: {
|
533
|
-
table: MRT_TableInstance<
|
534
|
-
column: MRT_Column<
|
548
|
+
table: MRT_TableInstance<TData>;
|
549
|
+
column: MRT_Column<TData>;
|
535
550
|
}) => IconButtonProps);
|
536
551
|
muiTableHeadCellFilterTextFieldProps?:
|
537
552
|
| TextFieldProps
|
@@ -539,8 +554,8 @@ export type MaterialReactTableProps<D extends Record<string, any> = {}> =
|
|
539
554
|
table,
|
540
555
|
column,
|
541
556
|
}: {
|
542
|
-
table: MRT_TableInstance<
|
543
|
-
column: MRT_Column<
|
557
|
+
table: MRT_TableInstance<TData>;
|
558
|
+
column: MRT_Column<TData>;
|
544
559
|
}) => TextFieldProps);
|
545
560
|
muiTableHeadCellProps?:
|
546
561
|
| TableCellProps
|
@@ -548,51 +563,51 @@ export type MaterialReactTableProps<D extends Record<string, any> = {}> =
|
|
548
563
|
table,
|
549
564
|
column,
|
550
565
|
}: {
|
551
|
-
table: MRT_TableInstance<
|
552
|
-
column: MRT_Column<
|
566
|
+
table: MRT_TableInstance<TData>;
|
567
|
+
column: MRT_Column<TData>;
|
553
568
|
}) => TableCellProps);
|
554
569
|
muiTableHeadProps?:
|
555
570
|
| TableHeadProps
|
556
|
-
| (({ table }: { table: MRT_TableInstance<
|
571
|
+
| (({ table }: { table: MRT_TableInstance<TData> }) => TableHeadProps);
|
557
572
|
muiTableHeadRowProps?:
|
558
573
|
| TableRowProps
|
559
574
|
| (({
|
560
575
|
table,
|
561
576
|
headerGroup,
|
562
577
|
}: {
|
563
|
-
table: MRT_TableInstance<
|
564
|
-
headerGroup: MRT_HeaderGroup<
|
578
|
+
table: MRT_TableInstance<TData>;
|
579
|
+
headerGroup: MRT_HeaderGroup<TData>;
|
565
580
|
}) => TableRowProps);
|
566
581
|
muiTablePaginationProps?:
|
567
582
|
| Partial<TablePaginationProps>
|
568
583
|
| (({
|
569
584
|
table,
|
570
585
|
}: {
|
571
|
-
table: MRT_TableInstance<
|
586
|
+
table: MRT_TableInstance<TData>;
|
572
587
|
}) => Partial<TablePaginationProps>);
|
573
588
|
muiTablePaperProps?:
|
574
589
|
| PaperProps
|
575
|
-
| (({ table }: { table: MRT_TableInstance<
|
590
|
+
| (({ table }: { table: MRT_TableInstance<TData> }) => PaperProps);
|
576
591
|
muiTableProps?:
|
577
592
|
| TableProps
|
578
|
-
| (({ table }: { table: MRT_TableInstance<
|
593
|
+
| (({ table }: { table: MRT_TableInstance<TData> }) => TableProps);
|
579
594
|
muiTableToolbarAlertBannerProps?:
|
580
595
|
| AlertProps
|
581
|
-
| (({ table }: { table: MRT_TableInstance<
|
596
|
+
| (({ table }: { table: MRT_TableInstance<TData> }) => AlertProps);
|
582
597
|
muiTableToolbarBottomProps?:
|
583
598
|
| ToolbarProps
|
584
|
-
| (({ table }: { table: MRT_TableInstance<
|
599
|
+
| (({ table }: { table: MRT_TableInstance<TData> }) => ToolbarProps);
|
585
600
|
muiTableToolbarTopProps?:
|
586
601
|
| ToolbarProps
|
587
|
-
| (({ table }: { table: MRT_TableInstance<
|
602
|
+
| (({ table }: { table: MRT_TableInstance<TData> }) => ToolbarProps);
|
588
603
|
onCellEditBlur?: ({
|
589
604
|
cell,
|
590
605
|
event,
|
591
606
|
table,
|
592
607
|
}: {
|
593
608
|
event: FocusEvent<HTMLInputElement>;
|
594
|
-
cell: MRT_Cell<
|
595
|
-
table: MRT_TableInstance<
|
609
|
+
cell: MRT_Cell<TData>;
|
610
|
+
table: MRT_TableInstance<TData>;
|
596
611
|
}) => void;
|
597
612
|
onCellEditChange?: ({
|
598
613
|
cell,
|
@@ -600,8 +615,8 @@ export type MaterialReactTableProps<D extends Record<string, any> = {}> =
|
|
600
615
|
table,
|
601
616
|
}: {
|
602
617
|
event: ChangeEvent<HTMLInputElement>;
|
603
|
-
cell: MRT_Cell<
|
604
|
-
table: MRT_TableInstance<
|
618
|
+
cell: MRT_Cell<TData>;
|
619
|
+
table: MRT_TableInstance<TData>;
|
605
620
|
}) => void;
|
606
621
|
onCurrentEditingCellChange?: OnChangeFn<MRT_Cell>;
|
607
622
|
onCurrentEditingRowChange?: OnChangeFn<MRT_Row>;
|
@@ -611,8 +626,8 @@ export type MaterialReactTableProps<D extends Record<string, any> = {}> =
|
|
611
626
|
row,
|
612
627
|
table,
|
613
628
|
}: {
|
614
|
-
row: MRT_Row<
|
615
|
-
table: MRT_TableInstance<
|
629
|
+
row: MRT_Row<TData>;
|
630
|
+
table: MRT_TableInstance<TData>;
|
616
631
|
}) => Promise<void> | void;
|
617
632
|
onDensityChange?: OnChangeFn<boolean>;
|
618
633
|
onIsFullScreenChange?: OnChangeFn<boolean>;
|
@@ -627,8 +642,8 @@ export type MaterialReactTableProps<D extends Record<string, any> = {}> =
|
|
627
642
|
row,
|
628
643
|
table,
|
629
644
|
}: {
|
630
|
-
row: MRT_Row<
|
631
|
-
table: MRT_TableInstance<
|
645
|
+
row: MRT_Row<TData>;
|
646
|
+
table: MRT_TableInstance<TData>;
|
632
647
|
}) => ReactNode;
|
633
648
|
renderRowActionMenuItems?: ({
|
634
649
|
closeMenu,
|
@@ -636,25 +651,25 @@ export type MaterialReactTableProps<D extends Record<string, any> = {}> =
|
|
636
651
|
table,
|
637
652
|
}: {
|
638
653
|
closeMenu: () => void;
|
639
|
-
row: MRT_Row<
|
640
|
-
table: MRT_TableInstance<
|
654
|
+
row: MRT_Row<TData>;
|
655
|
+
table: MRT_TableInstance<TData>;
|
641
656
|
}) => ReactNode[];
|
642
657
|
renderRowActions?: ({
|
643
658
|
row,
|
644
659
|
table,
|
645
660
|
}: {
|
646
|
-
row: MRT_Row<
|
647
|
-
table: MRT_TableInstance<
|
661
|
+
row: MRT_Row<TData>;
|
662
|
+
table: MRT_TableInstance<TData>;
|
648
663
|
}) => ReactNode;
|
649
664
|
renderToolbarBottomCustomActions?: ({
|
650
665
|
table,
|
651
666
|
}: {
|
652
|
-
table: MRT_TableInstance<
|
667
|
+
table: MRT_TableInstance<TData>;
|
653
668
|
}) => ReactNode;
|
654
669
|
renderToolbarTopCustomActions?: ({
|
655
670
|
table,
|
656
671
|
}: {
|
657
|
-
table: MRT_TableInstance<
|
672
|
+
table: MRT_TableInstance<TData>;
|
658
673
|
}) => ReactNode;
|
659
674
|
renderToolbarInternalActions?: ({
|
660
675
|
table,
|
@@ -664,21 +679,21 @@ export type MaterialReactTableProps<D extends Record<string, any> = {}> =
|
|
664
679
|
MRT_ToggleDensePaddingButton,
|
665
680
|
MRT_FullScreenToggleButton,
|
666
681
|
}: {
|
667
|
-
table: MRT_TableInstance<
|
682
|
+
table: MRT_TableInstance<TData>;
|
668
683
|
MRT_ToggleGlobalFilterButton: FC<
|
669
|
-
IconButtonProps & { table: MRT_TableInstance<
|
684
|
+
IconButtonProps & { table: MRT_TableInstance<TData> }
|
670
685
|
>;
|
671
686
|
MRT_ToggleFiltersButton: FC<
|
672
|
-
IconButtonProps & { table: MRT_TableInstance<
|
687
|
+
IconButtonProps & { table: MRT_TableInstance<TData> }
|
673
688
|
>;
|
674
689
|
MRT_ShowHideColumnsButton: FC<
|
675
|
-
IconButtonProps & { table: MRT_TableInstance<
|
690
|
+
IconButtonProps & { table: MRT_TableInstance<TData> }
|
676
691
|
>;
|
677
692
|
MRT_ToggleDensePaddingButton: FC<
|
678
|
-
IconButtonProps & { table: MRT_TableInstance<
|
693
|
+
IconButtonProps & { table: MRT_TableInstance<TData> }
|
679
694
|
>;
|
680
695
|
MRT_FullScreenToggleButton: FC<
|
681
|
-
IconButtonProps & { table: MRT_TableInstance<
|
696
|
+
IconButtonProps & { table: MRT_TableInstance<TData> }
|
682
697
|
>;
|
683
698
|
}) => ReactNode;
|
684
699
|
rowCount?: number;
|
@@ -688,7 +703,7 @@ export type MaterialReactTableProps<D extends Record<string, any> = {}> =
|
|
688
703
|
virtualizerProps?: Partial<VirtualizerOptions<HTMLDivElement>>;
|
689
704
|
};
|
690
705
|
|
691
|
-
export default <
|
706
|
+
export default <TData extends Record<string, any> = {}>({
|
692
707
|
autoResetExpanded = false,
|
693
708
|
columnResizeMode = 'onEnd',
|
694
709
|
defaultColumn = { minSize: 40, maxSize: 1000, size: 180 },
|
@@ -729,7 +744,7 @@ export default <D extends Record<string, any> = {}>({
|
|
729
744
|
rowNumberMode = 'original',
|
730
745
|
selectAllMode = 'all',
|
731
746
|
...rest
|
732
|
-
}: MaterialReactTableProps<
|
747
|
+
}: MaterialReactTableProps<TData>) => (
|
733
748
|
<MRT_TableRoot
|
734
749
|
autoResetExpanded={autoResetExpanded}
|
735
750
|
columnResizeMode={columnResizeMode}
|