material-react-table 0.7.2 → 0.7.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/MaterialReactTable.d.ts +39 -22
- package/dist/enums.d.ts +1 -1
- package/dist/material-react-table.cjs.development.js +216 -111
- 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 +216 -111
- package/dist/material-react-table.esm.js.map +1 -1
- package/dist/menus/{MRT_FilterTypeMenu.d.ts → MRT_FilterOptionMenu.d.ts} +1 -1
- package/dist/utils.d.ts +6 -6
- package/package.json +6 -6
- package/src/MaterialReactTable.tsx +64 -21
- package/src/body/MRT_TableBodyCell.tsx +36 -5
- package/src/buttons/MRT_CopyButton.tsx +1 -0
- package/src/enums.ts +1 -1
- package/src/head/MRT_TableHeadCell.tsx +3 -5
- package/src/inputs/MRT_EditCellTextField.tsx +12 -1
- package/src/inputs/MRT_FilterTextField.tsx +16 -16
- package/src/inputs/MRT_SearchTextField.tsx +2 -2
- package/src/menus/MRT_ColumnActionMenu.tsx +2 -2
- package/src/menus/{MRT_FilterTypeMenu.tsx → MRT_FilterOptionMenu.tsx} +35 -33
- package/src/table/MRT_TableRoot.tsx +107 -37
- package/src/utils.ts +10 -10
|
@@ -1,15 +1,16 @@
|
|
|
1
1
|
import { ChangeEvent, Dispatch, FC, FocusEvent, MouseEvent, ReactNode, SetStateAction } from 'react';
|
|
2
2
|
import { AlertProps, ButtonProps, CheckboxProps, IconButtonProps, LinearProgressProps, PaperProps, SkeletonProps, TableBodyProps, TableCellProps, TableContainerProps, TableFooterProps, TableHeadProps, TablePaginationProps, TableProps, TableRowProps, TextFieldProps, ToolbarProps } from '@mui/material';
|
|
3
|
-
import { Cell, Column, ColumnDef, DefaultGenerics,
|
|
3
|
+
import { Cell, Column, ColumnDef, DefaultGenerics, FilterFn, FilterFnOption, Header, HeaderGroup, Options, Overwrite, PaginationState, Row, TableInstance, TableState, VisibilityState } from '@tanstack/react-table';
|
|
4
4
|
import { MRT_Localization } from './localization';
|
|
5
5
|
import { MRT_Icons } from './icons';
|
|
6
|
-
import {
|
|
7
|
-
export declare type MRT_TableOptions<D extends Record<string, any> = {}> = Partial<Omit<Options<D>, 'columns' | 'data' | 'initialState' | 'state' | 'expandRowsFn'>> & {
|
|
6
|
+
import { MRT_FILTER_OPTION } from './enums';
|
|
7
|
+
export declare type MRT_TableOptions<D extends Record<string, any> = {}> = Partial<Omit<Options<D>, 'columns' | 'data' | 'initialState' | 'state' | 'expandRowsFn' | 'filterFns'>> & {
|
|
8
8
|
columns: MRT_ColumnDef<D>[];
|
|
9
9
|
data: D[];
|
|
10
|
+
expandRowsFn?: (dataRow: D) => D[];
|
|
11
|
+
filterFns?: MRT_FILTER_OPTION | FilterFn<D> | string | number | symbol;
|
|
10
12
|
initialState?: Partial<MRT_TableState<D>>;
|
|
11
13
|
state?: Partial<MRT_TableState<D>>;
|
|
12
|
-
expandRowsFn?: (dataRow: D) => D[];
|
|
13
14
|
};
|
|
14
15
|
export interface MRT_RowModel<D extends Record<string, any> = {}> {
|
|
15
16
|
flatRows: MRT_Row<D>[];
|
|
@@ -32,32 +33,31 @@ export declare type MRT_TableInstance<D extends Record<string, any> = {}> = Omit
|
|
|
32
33
|
options: MaterialReactTableProps<D> & {
|
|
33
34
|
icons: MRT_Icons;
|
|
34
35
|
idPrefix: string;
|
|
35
|
-
filterTypes: {
|
|
36
|
-
[key in MRT_FILTER_TYPE]: any;
|
|
37
|
-
};
|
|
38
36
|
localization: MRT_Localization;
|
|
39
37
|
};
|
|
38
|
+
setCurrentEditingCell: Dispatch<SetStateAction<MRT_Cell<D> | null>>;
|
|
40
39
|
setCurrentEditingRow: Dispatch<SetStateAction<MRT_Row<D> | null>>;
|
|
41
|
-
|
|
42
|
-
[key: string]:
|
|
40
|
+
setCurrentFilterFns: Dispatch<SetStateAction<{
|
|
41
|
+
[key: string]: MRT_FilterFn<D>;
|
|
43
42
|
}>>;
|
|
44
|
-
|
|
43
|
+
setCurrentGlobalFilterFn: Dispatch<SetStateAction<MRT_FilterFn<D>>>;
|
|
45
44
|
setIsDensePadding: Dispatch<SetStateAction<boolean>>;
|
|
46
45
|
setIsFullScreen: Dispatch<SetStateAction<boolean>>;
|
|
47
46
|
setShowFilters: Dispatch<SetStateAction<boolean>>;
|
|
48
47
|
setShowGlobalFilter: Dispatch<SetStateAction<boolean>>;
|
|
49
48
|
};
|
|
50
49
|
export declare type MRT_TableState<D extends Record<string, any> = {}> = Omit<TableState, 'pagination'> & {
|
|
50
|
+
currentEditingCell: MRT_Cell<D> | null;
|
|
51
51
|
currentEditingRow: MRT_Row<D> | null;
|
|
52
|
-
|
|
53
|
-
|
|
52
|
+
currentFilterFns: Record<string, string | Function>;
|
|
53
|
+
currentGlobalFilterFn: Record<string, string | Function>;
|
|
54
54
|
isDensePadding: boolean;
|
|
55
55
|
isFullScreen: boolean;
|
|
56
56
|
showFilters: boolean;
|
|
57
57
|
showGlobalFilter: boolean;
|
|
58
58
|
pagination: Partial<PaginationState>;
|
|
59
59
|
};
|
|
60
|
-
export declare type MRT_ColumnDef<D extends Record<string, any> = {}> = Omit<ColumnDef<D>, 'header' | 'footer' | 'columns'> & {
|
|
60
|
+
export declare type MRT_ColumnDef<D extends Record<string, any> = {}> = Omit<ColumnDef<D>, 'header' | 'footer' | 'columns' | 'filterFn'> & {
|
|
61
61
|
Edit?: ({ cell, tableInstance, }: {
|
|
62
62
|
cell: MRT_Cell<D>;
|
|
63
63
|
tableInstance: MRT_TableInstance<D>;
|
|
@@ -83,8 +83,8 @@ export declare type MRT_ColumnDef<D extends Record<string, any> = {}> = Omit<Col
|
|
|
83
83
|
enableClickToCopy?: boolean;
|
|
84
84
|
enableColumnActions?: boolean;
|
|
85
85
|
enableEditing?: boolean;
|
|
86
|
-
|
|
87
|
-
|
|
86
|
+
enabledColumnFilterOptions?: (MRT_FILTER_OPTION | string)[];
|
|
87
|
+
filterFn?: MRT_FilterFn;
|
|
88
88
|
filterSelectOptions?: (string | {
|
|
89
89
|
text: string;
|
|
90
90
|
value: string;
|
|
@@ -129,7 +129,8 @@ export declare type MRT_ColumnDef<D extends Record<string, any> = {}> = Omit<Col
|
|
|
129
129
|
cell: MRT_Cell<D>;
|
|
130
130
|
tableInstance: MRT_TableInstance<D>;
|
|
131
131
|
}) => void;
|
|
132
|
-
onColumnFilterValueChange?: ({ event, filterValue, }: {
|
|
132
|
+
onColumnFilterValueChange?: ({ column, event, filterValue, }: {
|
|
133
|
+
column: MRT_Column<D>;
|
|
133
134
|
event: ChangeEvent<HTMLInputElement>;
|
|
134
135
|
filterValue: any;
|
|
135
136
|
}) => void;
|
|
@@ -156,8 +157,9 @@ export declare type MRT_Cell<D extends Record<string, any> = {}> = Omit<Cell<D>,
|
|
|
156
157
|
column: MRT_Column<D>;
|
|
157
158
|
row: MRT_Row<D>;
|
|
158
159
|
};
|
|
159
|
-
export declare type
|
|
160
|
+
export declare type MRT_FilterFn<D extends Record<string, any> = {}> = FilterFn<D> | FilterFnOption<D> | MRT_FILTER_OPTION | number | string | symbol;
|
|
160
161
|
export declare type MaterialReactTableProps<D extends Record<string, any> = {}> = MRT_TableOptions<D> & {
|
|
162
|
+
editingMode?: 'table' | 'row' | 'cell';
|
|
161
163
|
enableClickToCopy?: boolean;
|
|
162
164
|
enableColumnActions?: boolean;
|
|
163
165
|
enableDensePaddingToggle?: boolean;
|
|
@@ -165,6 +167,7 @@ export declare type MaterialReactTableProps<D extends Record<string, any> = {}>
|
|
|
165
167
|
enableExpandAll?: boolean;
|
|
166
168
|
enableFullScreenToggle?: boolean;
|
|
167
169
|
enablePagination?: boolean;
|
|
170
|
+
enablePersistentState?: boolean;
|
|
168
171
|
enableRowActions?: boolean;
|
|
169
172
|
enableRowNumbers?: boolean;
|
|
170
173
|
enableSelectAll?: boolean;
|
|
@@ -174,10 +177,8 @@ export declare type MaterialReactTableProps<D extends Record<string, any> = {}>
|
|
|
174
177
|
enableToolbarBottom?: boolean;
|
|
175
178
|
enableToolbarInternalActions?: boolean;
|
|
176
179
|
enableToolbarTop?: boolean;
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
[key in MRT_FILTER_TYPE]: any;
|
|
180
|
-
};
|
|
180
|
+
enabledColumnFilterOptions?: (MRT_FILTER_OPTION | string)[];
|
|
181
|
+
enabledGlobalFilterOptions?: (MRT_FILTER_OPTION | string)[];
|
|
181
182
|
icons?: Partial<MRT_Icons>;
|
|
182
183
|
idPrefix?: string;
|
|
183
184
|
isLoading?: boolean;
|
|
@@ -277,6 +278,21 @@ export declare type MaterialReactTableProps<D extends Record<string, any> = {}>
|
|
|
277
278
|
tableInstance: MRT_TableInstance<D>;
|
|
278
279
|
event: MouseEvent<HTMLTableCellElement>;
|
|
279
280
|
}) => void;
|
|
281
|
+
onCellEditBlur?: ({ cell, event, tableInstance, }: {
|
|
282
|
+
event: FocusEvent<HTMLInputElement>;
|
|
283
|
+
cell: MRT_Cell<D>;
|
|
284
|
+
tableInstance: MRT_TableInstance<D>;
|
|
285
|
+
}) => void;
|
|
286
|
+
onCellEditChange?: ({ cell, event, tableInstance, }: {
|
|
287
|
+
event: ChangeEvent<HTMLInputElement>;
|
|
288
|
+
cell: MRT_Cell<D>;
|
|
289
|
+
tableInstance: MRT_TableInstance<D>;
|
|
290
|
+
}) => void;
|
|
291
|
+
onColumnFilterValueChange?: ({ column, event, filterValue, }: {
|
|
292
|
+
column: MRT_Column<D>;
|
|
293
|
+
event: ChangeEvent<HTMLInputElement>;
|
|
294
|
+
filterValue: any;
|
|
295
|
+
}) => void;
|
|
280
296
|
onDetailPanelClick?: ({ event, row, tableInstance, }: {
|
|
281
297
|
event: MouseEvent<HTMLTableCellElement>;
|
|
282
298
|
row: MRT_Row<D>;
|
|
@@ -336,6 +352,7 @@ export declare type MaterialReactTableProps<D extends Record<string, any> = {}>
|
|
|
336
352
|
showGlobalFilter: boolean;
|
|
337
353
|
tableInstance: MRT_TableInstance<D>;
|
|
338
354
|
}) => void;
|
|
355
|
+
persistentStateMode?: 'localStorage' | 'sessionStorage';
|
|
339
356
|
positionActionsColumn?: 'first' | 'last';
|
|
340
357
|
positionPagination?: 'bottom' | 'top' | 'both';
|
|
341
358
|
positionToolbarActions?: 'bottom' | 'top';
|
|
@@ -375,5 +392,5 @@ export declare type MaterialReactTableProps<D extends Record<string, any> = {}>
|
|
|
375
392
|
}>;
|
|
376
393
|
}) => ReactNode;
|
|
377
394
|
};
|
|
378
|
-
declare const _default: <D extends Record<string, any> = {}>({ autoResetExpanded, columnResizeMode, enableColumnActions, enableColumnFilters, enableColumnResizing, enableDensePaddingToggle, enableExpandAll, enableFilters, enableFullScreenToggle, enableGlobalFilter, enableHiding, enableMultiRowSelection, enablePagination, enableSelectAll, enableSorting, enableStickyHeader, enableTableFooter, enableTableHead, enableToolbarBottom, enableToolbarInternalActions, enableToolbarTop, icons, localization, positionActionsColumn, positionPagination, positionToolbarActions, positionToolbarAlertBanner, ...rest }: MaterialReactTableProps<D>) => JSX.Element;
|
|
395
|
+
declare const _default: <D extends Record<string, any> = {}>({ autoResetExpanded, autoResetSorting, columnResizeMode, editingMode, enableColumnActions, enableColumnFilters, enableColumnResizing, enableDensePaddingToggle, enableExpandAll, enableFilters, enableFullScreenToggle, enableGlobalFilter, enableHiding, enableMultiRowSelection, enablePagination, enableSelectAll, enableSorting, enableStickyHeader, enableTableFooter, enableTableHead, enableToolbarBottom, enableToolbarInternalActions, enableToolbarTop, icons, localization, persistentStateMode, positionActionsColumn, positionPagination, positionToolbarActions, positionToolbarAlertBanner, ...rest }: MaterialReactTableProps<D>) => JSX.Element;
|
|
379
396
|
export default _default;
|
package/dist/enums.d.ts
CHANGED