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.
Files changed (109) hide show
  1. package/README.md +2 -0
  2. package/dist/MaterialReactTable.d.ts +144 -128
  3. package/dist/body/MRT_TableBody.d.ts +1 -1
  4. package/dist/body/MRT_TableBodyCell.d.ts +1 -1
  5. package/dist/body/MRT_TableBodyRow.d.ts +1 -1
  6. package/dist/body/MRT_TableDetailPanel.d.ts +1 -1
  7. package/dist/buttons/MRT_ColumnPinningButtons.d.ts +1 -1
  8. package/dist/buttons/MRT_CopyButton.d.ts +1 -1
  9. package/dist/buttons/MRT_EditActionButtons.d.ts +1 -1
  10. package/dist/buttons/MRT_ExpandAllButton.d.ts +1 -1
  11. package/dist/buttons/MRT_ExpandButton.d.ts +1 -1
  12. package/dist/buttons/MRT_FullScreenToggleButton.d.ts +1 -1
  13. package/dist/buttons/MRT_GrabHandleButton.d.ts +1 -1
  14. package/dist/buttons/MRT_ShowHideColumnsButton.d.ts +1 -1
  15. package/dist/buttons/MRT_ToggleColumnActionMenuButton.d.ts +1 -1
  16. package/dist/buttons/MRT_ToggleDensePaddingButton.d.ts +1 -1
  17. package/dist/buttons/MRT_ToggleFiltersButton.d.ts +1 -1
  18. package/dist/buttons/MRT_ToggleGlobalFilterButton.d.ts +1 -1
  19. package/dist/buttons/MRT_ToggleRowActionMenuButton.d.ts +1 -1
  20. package/dist/footer/MRT_TableFooter.d.ts +1 -1
  21. package/dist/footer/MRT_TableFooterCell.d.ts +1 -1
  22. package/dist/footer/MRT_TableFooterRow.d.ts +1 -1
  23. package/dist/head/MRT_DraggableTableHeadCell.d.ts +1 -1
  24. package/dist/head/MRT_TableHead.d.ts +1 -1
  25. package/dist/head/MRT_TableHeadCell.d.ts +1 -1
  26. package/dist/head/MRT_TableHeadCellFilterContainer.d.ts +1 -1
  27. package/dist/head/MRT_TableHeadCellFilterLabel.d.ts +1 -1
  28. package/dist/head/MRT_TableHeadCellResizeHandle.d.ts +1 -1
  29. package/dist/head/MRT_TableHeadCellSortLabel.d.ts +1 -1
  30. package/dist/head/MRT_TableHeadRow.d.ts +1 -1
  31. package/dist/inputs/MRT_EditCellTextField.d.ts +1 -1
  32. package/dist/inputs/MRT_FilterRangeFields.d.ts +1 -1
  33. package/dist/inputs/MRT_FilterTextField.d.ts +1 -1
  34. package/dist/inputs/MRT_SearchTextField.d.ts +1 -1
  35. package/dist/inputs/MRT_SelectCheckbox.d.ts +1 -1
  36. package/dist/material-react-table.cjs.development.js +569 -573
  37. package/dist/material-react-table.cjs.development.js.map +1 -1
  38. package/dist/material-react-table.cjs.production.min.js +1 -1
  39. package/dist/material-react-table.cjs.production.min.js.map +1 -1
  40. package/dist/material-react-table.esm.js +569 -573
  41. package/dist/material-react-table.esm.js.map +1 -1
  42. package/dist/menus/MRT_ColumnActionMenu.d.ts +1 -1
  43. package/dist/menus/MRT_FilterOptionMenu.d.ts +1 -1
  44. package/dist/menus/MRT_RowActionMenu.d.ts +1 -1
  45. package/dist/menus/MRT_ShowHideColumnsMenu.d.ts +1 -1
  46. package/dist/menus/MRT_ShowHideColumnsMenuItems.d.ts +1 -1
  47. package/dist/table/MRT_Table.d.ts +1 -1
  48. package/dist/table/MRT_TableContainer.d.ts +1 -1
  49. package/dist/table/MRT_TablePaper.d.ts +2 -2
  50. package/dist/toolbar/MRT_LinearProgressBar.d.ts +1 -1
  51. package/dist/toolbar/MRT_TablePagination.d.ts +1 -1
  52. package/dist/toolbar/MRT_ToolbarAlertBanner.d.ts +1 -1
  53. package/dist/toolbar/MRT_ToolbarBottom.d.ts +1 -1
  54. package/dist/toolbar/MRT_ToolbarInternalButtons.d.ts +1 -1
  55. package/dist/toolbar/MRT_ToolbarTop.d.ts +1 -1
  56. package/dist/utils.d.ts +2 -2
  57. package/package.json +1 -1
  58. package/src/MaterialReactTable.tsx +159 -157
  59. package/src/body/MRT_TableBody.tsx +12 -9
  60. package/src/body/MRT_TableBodyCell.tsx +15 -21
  61. package/src/body/MRT_TableBodyRow.tsx +7 -7
  62. package/src/body/MRT_TableDetailPanel.tsx +14 -11
  63. package/src/buttons/MRT_ColumnPinningButtons.tsx +3 -6
  64. package/src/buttons/MRT_CopyButton.tsx +5 -9
  65. package/src/buttons/MRT_EditActionButtons.tsx +4 -4
  66. package/src/buttons/MRT_ExpandAllButton.tsx +3 -3
  67. package/src/buttons/MRT_ExpandButton.tsx +4 -4
  68. package/src/buttons/MRT_FullScreenToggleButton.tsx +4 -4
  69. package/src/buttons/MRT_GrabHandleButton.tsx +3 -3
  70. package/src/buttons/MRT_ShowHideColumnsButton.tsx +4 -7
  71. package/src/buttons/MRT_ToggleColumnActionMenuButton.tsx +6 -6
  72. package/src/buttons/MRT_ToggleDensePaddingButton.tsx +4 -4
  73. package/src/buttons/MRT_ToggleFiltersButton.tsx +4 -7
  74. package/src/buttons/MRT_ToggleGlobalFilterButton.tsx +5 -5
  75. package/src/buttons/MRT_ToggleRowActionMenuButton.tsx +6 -9
  76. package/src/footer/MRT_TableFooter.tsx +5 -5
  77. package/src/footer/MRT_TableFooterCell.tsx +6 -6
  78. package/src/footer/MRT_TableFooterRow.tsx +5 -8
  79. package/src/head/MRT_DraggableTableHeadCell.tsx +4 -7
  80. package/src/head/MRT_TableHead.tsx +5 -5
  81. package/src/head/MRT_TableHeadCell.tsx +15 -25
  82. package/src/head/MRT_TableHeadCellFilterContainer.tsx +6 -7
  83. package/src/head/MRT_TableHeadCellFilterLabel.tsx +3 -3
  84. package/src/head/MRT_TableHeadCellResizeHandle.tsx +3 -3
  85. package/src/head/MRT_TableHeadCellSortLabel.tsx +3 -6
  86. package/src/head/MRT_TableHeadRow.tsx +6 -6
  87. package/src/inputs/MRT_EditCellTextField.tsx +10 -10
  88. package/src/inputs/MRT_FilterRangeFields.tsx +5 -13
  89. package/src/inputs/MRT_FilterTextField.tsx +10 -14
  90. package/src/inputs/MRT_SearchTextField.tsx +6 -6
  91. package/src/inputs/MRT_SelectCheckbox.tsx +10 -16
  92. package/src/menus/MRT_ColumnActionMenu.tsx +5 -5
  93. package/src/menus/MRT_FilterOptionMenu.tsx +33 -33
  94. package/src/menus/MRT_RowActionMenu.tsx +4 -4
  95. package/src/menus/MRT_ShowHideColumnsMenu.tsx +6 -6
  96. package/src/menus/MRT_ShowHideColumnsMenuItems.tsx +7 -10
  97. package/src/table/MRT_Table.tsx +14 -9
  98. package/src/table/MRT_TableContainer.tsx +16 -12
  99. package/src/table/MRT_TablePaper.tsx +8 -14
  100. package/src/table/MRT_TableRoot.tsx +25 -30
  101. package/src/toolbar/MRT_LinearProgressBar.tsx +4 -7
  102. package/src/toolbar/MRT_TablePagination.tsx +4 -4
  103. package/src/toolbar/MRT_ToolbarAlertBanner.tsx +6 -8
  104. package/src/toolbar/MRT_ToolbarBottom.tsx +8 -8
  105. package/src/toolbar/MRT_ToolbarInternalButtons.tsx +10 -12
  106. package/src/toolbar/MRT_ToolbarTop.tsx +11 -10
  107. package/src/utils.ts +2 -2
  108. package/dist/enums.d.ts +0 -13
  109. package/src/enums.ts +0 -13
package/README.md CHANGED
@@ -29,6 +29,8 @@ Join the [discord](https://discord.gg/5wqyRx6fnm) server to join in on the devel
29
29
 
30
30
  ### Features (All Features work and are MVP, but are still being polished)
31
31
 
32
+ _All features can be enabled/disabled easily_
33
+
32
34
  - [x] Click To Copy Cell Values
33
35
  - [x] Column Actions
34
36
  - [x] Column Grouping (Group By and Aggregates)
@@ -1,9 +1,9 @@
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, FilterFn, FilterFnOption, Header, HeaderGroup, Overwrite, ReactTableGenerics, Row, TableGenerics, TableInstance, TableState, UseTableInstanceOptions, VisibilityState } from '@tanstack/react-table';
3
+ import { Cell, Column, ColumnDef, FilterFn, FilterFnOption, Header, HeaderGroup, OnChangeFn, Overwrite, ReactTableGenerics, Row, TableGenerics, TableInstance, TableState, UseTableInstanceOptions, VisibilityState } from '@tanstack/react-table';
4
+ import { Options as VirtualizerOptions } from 'react-virtual';
4
5
  import { MRT_Localization } from './localization';
5
6
  import { MRT_Icons } from './icons';
6
- import { MRT_FILTER_OPTION } from './enums';
7
7
  export declare type MRT_TableOptions<D extends Record<string, any> = {}> = Partial<Omit<UseTableInstanceOptions<ReactTableGenerics>, 'columns' | 'data' | 'initialState' | 'state' | 'expandRowsFn' | 'filterFns'>> & {
8
8
  columns: MRT_ColumnDef<D>[];
9
9
  data: D[];
@@ -46,7 +46,7 @@ export declare type MRT_TableInstance<D extends Record<string, any> = {}> = Omit
46
46
  setCurrentFilterFns: Dispatch<SetStateAction<{
47
47
  [key: string]: MRT_FilterFn;
48
48
  }>>;
49
- setCurrentGlobalFilterFn: Dispatch<SetStateAction<MRT_FilterFn<D>>>;
49
+ setCurrentGlobalFilterFn: Dispatch<SetStateAction<MRT_FilterFn>>;
50
50
  setIsDensePadding: Dispatch<SetStateAction<boolean>>;
51
51
  setIsFullScreen: Dispatch<SetStateAction<boolean>>;
52
52
  setShowFilters: Dispatch<SetStateAction<boolean>>;
@@ -65,28 +65,32 @@ export declare type MRT_TableState<D extends Record<string, any> = {}> = TableSt
65
65
  showProgressBars: boolean;
66
66
  showSkeletons: boolean;
67
67
  };
68
- export declare type MRT_ColumnDef<D extends Record<string, any> = {}> = Omit<ColumnDef<D>, 'accessorFN' | 'header' | 'footer' | 'columns' | 'filterFn'> & {
69
- Cell?: ({ cell, tableInstance, }: {
68
+ export declare type MRT_ColumnDef<D extends Record<string, any> = {}> = Omit<ColumnDef<D>, 'accessorFn' | 'aggregatedCell' | 'header' | 'footer' | 'columns' | 'filterFn' | 'cell'> & {
69
+ AggregatedCell?: ({ cell, instance, }: {
70
70
  cell: MRT_Cell<D>;
71
- tableInstance: MRT_TableInstance<D>;
71
+ instance: MRT_TableInstance<D>;
72
72
  }) => ReactNode;
73
- Edit?: ({ cell, tableInstance, }: {
73
+ Cell?: ({ cell, instance, }: {
74
74
  cell: MRT_Cell<D>;
75
- tableInstance: MRT_TableInstance<D>;
75
+ instance: MRT_TableInstance<D>;
76
76
  }) => ReactNode;
77
- Filter?: ({ header, tableInstance, }: {
77
+ Edit?: ({ cell, instance, }: {
78
+ cell: MRT_Cell<D>;
79
+ instance: MRT_TableInstance<D>;
80
+ }) => ReactNode;
81
+ Filter?: ({ header, instance, }: {
78
82
  header: MRT_Header<D>;
79
- tableInstance: MRT_TableInstance<D>;
83
+ instance: MRT_TableInstance<D>;
80
84
  }) => ReactNode;
81
- Footer?: ReactNode | (({ footer, tableInstance, }: {
85
+ Footer?: ReactNode | (({ footer, instance, }: {
82
86
  footer: MRT_Header<D>;
83
- tableInstance: MRT_TableInstance<D>;
87
+ instance: MRT_TableInstance<D>;
84
88
  }) => ReactNode);
85
- Header?: ReactNode | (({ header, tableInstance, }: {
89
+ Header?: ReactNode | (({ header, instance, }: {
86
90
  header: MRT_Header<D>;
87
- tableInstance: MRT_TableInstance<D>;
91
+ instance: MRT_TableInstance<D>;
88
92
  }) => ReactNode);
89
- accessorFN?: (row: D) => any;
93
+ accessorFn?: (row: D) => any;
90
94
  columns?: MRT_ColumnDef<D>[];
91
95
  enableClickToCopy?: boolean;
92
96
  enableColumnActions?: boolean;
@@ -101,43 +105,43 @@ export declare type MRT_ColumnDef<D extends Record<string, any> = {}> = Omit<Col
101
105
  footer?: string;
102
106
  header: string;
103
107
  id: keyof D | string;
104
- muiTableBodyCellCopyButtonProps?: ButtonProps | (({ tableInstance, cell, }: {
105
- tableInstance: MRT_TableInstance;
108
+ muiTableBodyCellCopyButtonProps?: ButtonProps | (({ instance, cell, }: {
109
+ instance: MRT_TableInstance;
106
110
  cell: MRT_Cell<D>;
107
111
  }) => ButtonProps);
108
- muiTableBodyCellEditTextFieldProps?: TextFieldProps | (({ tableInstance, cell, }: {
109
- tableInstance: MRT_TableInstance;
112
+ muiTableBodyCellEditTextFieldProps?: TextFieldProps | (({ instance, cell, }: {
113
+ instance: MRT_TableInstance;
110
114
  cell: MRT_Cell<D>;
111
115
  }) => TextFieldProps);
112
- muiTableBodyCellProps?: TableCellProps | (({ tableInstance, cell, }: {
113
- tableInstance: MRT_TableInstance;
116
+ muiTableBodyCellProps?: TableCellProps | (({ instance, cell, }: {
117
+ instance: MRT_TableInstance;
114
118
  cell: MRT_Cell<D>;
115
119
  }) => TableCellProps);
116
- muiTableFooterCellProps?: TableCellProps | (({ tableInstance, column, }: {
117
- tableInstance: MRT_TableInstance;
120
+ muiTableFooterCellProps?: TableCellProps | (({ instance, column, }: {
121
+ instance: MRT_TableInstance;
118
122
  column: MRT_Column<D>;
119
123
  }) => TableCellProps);
120
- muiTableHeadCellColumnActionsButtonProps?: IconButtonProps | (({ tableInstance, column, }: {
121
- tableInstance: MRT_TableInstance;
124
+ muiTableHeadCellColumnActionsButtonProps?: IconButtonProps | (({ instance, column, }: {
125
+ instance: MRT_TableInstance;
122
126
  column: MRT_Column<D>;
123
127
  }) => IconButtonProps);
124
- muiTableHeadCellFilterTextFieldProps?: TextFieldProps | (({ tableInstance, column, }: {
125
- tableInstance: MRT_TableInstance;
128
+ muiTableHeadCellFilterTextFieldProps?: TextFieldProps | (({ instance, column, }: {
129
+ instance: MRT_TableInstance;
126
130
  column: MRT_Column<D>;
127
131
  }) => TextFieldProps);
128
- muiTableHeadCellProps?: TableCellProps | (({ tableInstance, column, }: {
129
- tableInstance: MRT_TableInstance;
132
+ muiTableHeadCellProps?: TableCellProps | (({ instance, column, }: {
133
+ instance: MRT_TableInstance;
130
134
  column: MRT_Column<D>;
131
135
  }) => TableCellProps);
132
- onMrtCellEditBlur?: ({ cell, event, tableInstance, }: {
136
+ onMrtCellEditBlur?: ({ cell, event, instance, }: {
133
137
  event: FocusEvent<HTMLInputElement>;
134
138
  cell: MRT_Cell<D>;
135
- tableInstance: MRT_TableInstance<D>;
139
+ instance: MRT_TableInstance<D>;
136
140
  }) => void;
137
- onMrtCellEditChange?: ({ cell, event, tableInstance, }: {
141
+ onMrtCellEditChange?: ({ cell, event, instance, }: {
138
142
  event: ChangeEvent<HTMLInputElement>;
139
143
  cell: MRT_Cell<D>;
140
- tableInstance: MRT_TableInstance<D>;
144
+ instance: MRT_TableInstance<D>;
141
145
  }) => void;
142
146
  onMrtFilterValueChange?: ({ column, event, filterValue, }: {
143
147
  column: MRT_Column<D>;
@@ -168,7 +172,8 @@ export declare type MRT_Cell<D extends Record<string, any> = {}> = Omit<Cell<D>,
168
172
  column: MRT_Column<D>;
169
173
  row: MRT_Row<D>;
170
174
  };
171
- export declare type MRT_FilterFn<D extends Record<string, any> = {}> = FilterFn<TableGenerics> | FilterFnOption<D> | MRT_FILTER_OPTION | number | string | symbol;
175
+ export declare type MRT_FILTER_OPTION = 'between' | 'contains' | 'empty' | 'endsWith' | 'equals' | 'fuzzy' | 'greaterThan' | 'greaterThanOrEqual' | 'lessThan' | 'lessThanOrEqual' | 'notEmpty' | 'notEquals' | 'startsWith' | FilterFnOption<TableGenerics>;
176
+ export declare type MRT_FilterFn = FilterFn<TableGenerics> | MRT_FILTER_OPTION | number | string | symbol;
172
177
  export declare type MaterialReactTableProps<D extends Record<string, any> = {}> = MRT_TableOptions<D> & {
173
178
  editingMode?: 'table' | 'row' | 'cell';
174
179
  enableClickToCopy?: boolean;
@@ -194,217 +199,228 @@ export declare type MaterialReactTableProps<D extends Record<string, any> = {}>
194
199
  enabledGlobalFilterOptions?: (MRT_FILTER_OPTION | string)[];
195
200
  icons?: Partial<MRT_Icons>;
196
201
  localization?: Partial<MRT_Localization>;
197
- muiLinearProgressProps?: LinearProgressProps | (({ tableInstance, }: {
198
- tableInstance: MRT_TableInstance;
202
+ muiLinearProgressProps?: LinearProgressProps | (({ instance, }: {
203
+ instance: MRT_TableInstance;
199
204
  }) => LinearProgressProps);
200
- muiSearchTextFieldProps?: TextFieldProps | (({ tableInstance, }: {
201
- tableInstance: MRT_TableInstance;
205
+ muiSearchTextFieldProps?: TextFieldProps | (({ instance }: {
206
+ instance: MRT_TableInstance;
202
207
  }) => TextFieldProps);
203
- muiSelectCheckboxProps?: CheckboxProps | (({ tableInstance, isSelectAll, row, }: {
204
- tableInstance: MRT_TableInstance;
208
+ muiSelectCheckboxProps?: CheckboxProps | (({ instance, isSelectAll, row, }: {
209
+ instance: MRT_TableInstance;
205
210
  isSelectAll: boolean;
206
211
  row?: MRT_Row<D>;
207
212
  }) => CheckboxProps);
208
- muiTableBodyCellCopyButtonProps?: ButtonProps | (({ tableInstance, cell, }: {
209
- tableInstance: MRT_TableInstance;
213
+ muiTableBodyCellCopyButtonProps?: ButtonProps | (({ instance, cell, }: {
214
+ instance: MRT_TableInstance;
210
215
  cell: MRT_Cell<D>;
211
216
  }) => ButtonProps);
212
- muiTableBodyCellEditTextFieldProps?: TextFieldProps | (({ tableInstance, cell, }: {
213
- tableInstance: MRT_TableInstance;
217
+ muiTableBodyCellEditTextFieldProps?: TextFieldProps | (({ instance, cell, }: {
218
+ instance: MRT_TableInstance;
214
219
  cell: MRT_Cell<D>;
215
220
  }) => TextFieldProps);
216
- muiTableBodyCellProps?: TableCellProps | (({ tableInstance, cell, }: {
217
- tableInstance: MRT_TableInstance;
221
+ muiTableBodyCellProps?: TableCellProps | (({ instance, cell, }: {
222
+ instance: MRT_TableInstance;
218
223
  cell: MRT_Cell<D>;
219
224
  }) => TableCellProps);
220
- muiTableBodyCellSkeletonProps?: SkeletonProps | (({ tableInstance, cell, }: {
221
- tableInstance: MRT_TableInstance;
225
+ muiTableBodyCellSkeletonProps?: SkeletonProps | (({ instance, cell, }: {
226
+ instance: MRT_TableInstance;
222
227
  cell: MRT_Cell<D>;
223
228
  }) => SkeletonProps);
224
- muiTableBodyProps?: TableBodyProps | (({ tableInstance, }: {
225
- tableInstance: MRT_TableInstance;
229
+ muiTableBodyProps?: TableBodyProps | (({ instance }: {
230
+ instance: MRT_TableInstance;
226
231
  }) => TableBodyProps);
227
- muiTableBodyRowProps?: TableRowProps | (({ tableInstance, row, }: {
228
- tableInstance: MRT_TableInstance;
232
+ muiTableBodyRowProps?: TableRowProps | (({ instance, row, }: {
233
+ instance: MRT_TableInstance;
229
234
  row: MRT_Row<D>;
230
235
  }) => TableRowProps);
231
- muiTableContainerProps?: TableContainerProps | (({ tableInstance, }: {
232
- tableInstance: MRT_TableInstance;
236
+ muiTableContainerProps?: TableContainerProps | (({ instance, }: {
237
+ instance: MRT_TableInstance;
233
238
  }) => TableContainerProps);
234
- muiTableDetailPanelProps?: TableCellProps | (({ tableInstance, row, }: {
235
- tableInstance: MRT_TableInstance;
239
+ muiTableDetailPanelProps?: TableCellProps | (({ instance, row, }: {
240
+ instance: MRT_TableInstance;
236
241
  row: MRT_Row<D>;
237
242
  }) => TableCellProps);
238
- muiTableFooterCellProps?: TableCellProps | (({ tableInstance, column, }: {
239
- tableInstance: MRT_TableInstance;
243
+ muiTableFooterCellProps?: TableCellProps | (({ instance, column, }: {
244
+ instance: MRT_TableInstance;
240
245
  column: MRT_Column<D>;
241
246
  }) => TableCellProps);
242
- muiTableFooterProps?: TableFooterProps | (({ tableInstance, }: {
243
- tableInstance: MRT_TableInstance;
247
+ muiTableFooterProps?: TableFooterProps | (({ instance }: {
248
+ instance: MRT_TableInstance;
244
249
  }) => TableFooterProps);
245
- muiTableFooterRowProps?: TableRowProps | (({ tableInstance, footerGroup, }: {
246
- tableInstance: MRT_TableInstance;
250
+ muiTableFooterRowProps?: TableRowProps | (({ instance, footerGroup, }: {
251
+ instance: MRT_TableInstance;
247
252
  footerGroup: MRT_HeaderGroup<D>;
248
253
  }) => TableRowProps);
249
- muiTableHeadCellColumnActionsButtonProps?: IconButtonProps | (({ tableInstance, column, }: {
250
- tableInstance: MRT_TableInstance;
254
+ muiTableHeadCellColumnActionsButtonProps?: IconButtonProps | (({ instance, column, }: {
255
+ instance: MRT_TableInstance;
251
256
  column: MRT_Column<D>;
252
257
  }) => IconButtonProps);
253
- muiTableHeadCellFilterTextFieldProps?: TextFieldProps | (({ tableInstance, column, }: {
254
- tableInstance: MRT_TableInstance;
258
+ muiTableHeadCellFilterTextFieldProps?: TextFieldProps | (({ instance, column, }: {
259
+ instance: MRT_TableInstance;
255
260
  column: MRT_Column<D>;
256
261
  }) => TextFieldProps);
257
- muiTableHeadCellProps?: TableCellProps | (({ tableInstance, column, }: {
258
- tableInstance: MRT_TableInstance;
262
+ muiTableHeadCellProps?: TableCellProps | (({ instance, column, }: {
263
+ instance: MRT_TableInstance;
259
264
  column: MRT_Column<D>;
260
265
  }) => TableCellProps);
261
- muiTableHeadProps?: TableHeadProps | (({ tableInstance, }: {
262
- tableInstance: MRT_TableInstance;
266
+ muiTableHeadProps?: TableHeadProps | (({ instance }: {
267
+ instance: MRT_TableInstance;
263
268
  }) => TableHeadProps);
264
- muiTableHeadRowProps?: TableRowProps | (({ tableInstance, headerGroup, }: {
265
- tableInstance: MRT_TableInstance;
269
+ muiTableHeadRowProps?: TableRowProps | (({ instance, headerGroup, }: {
270
+ instance: MRT_TableInstance;
266
271
  headerGroup: MRT_HeaderGroup<D>;
267
272
  }) => TableRowProps);
268
- muiTablePaginationProps?: Partial<TablePaginationProps> | (({ tableInstance, }: {
269
- tableInstance: MRT_TableInstance;
273
+ muiTablePaginationProps?: Partial<TablePaginationProps> | (({ instance, }: {
274
+ instance: MRT_TableInstance;
270
275
  }) => Partial<TablePaginationProps>);
271
- muiTablePaperProps?: PaperProps | (({ tableInstance, }: {
272
- tableInstance: MRT_TableInstance;
276
+ muiTablePaperProps?: PaperProps | (({ instance }: {
277
+ instance: MRT_TableInstance;
273
278
  }) => PaperProps);
274
- muiTableProps?: TableProps | (({ tableInstance, }: {
275
- tableInstance: MRT_TableInstance;
279
+ muiTableProps?: TableProps | (({ instance }: {
280
+ instance: MRT_TableInstance;
276
281
  }) => TableProps);
277
- muiTableToolbarAlertBannerProps?: AlertProps | (({ tableInstance, }: {
278
- tableInstance: MRT_TableInstance;
282
+ muiTableToolbarAlertBannerProps?: AlertProps | (({ instance }: {
283
+ instance: MRT_TableInstance;
279
284
  }) => AlertProps);
280
- muiTableToolbarBottomProps?: ToolbarProps | (({ tableInstance, }: {
281
- tableInstance: MRT_TableInstance;
285
+ muiTableToolbarBottomProps?: ToolbarProps | (({ instance }: {
286
+ instance: MRT_TableInstance;
282
287
  }) => ToolbarProps);
283
- muiTableToolbarTopProps?: ToolbarProps | (({ tableInstance, }: {
284
- tableInstance: MRT_TableInstance;
288
+ muiTableToolbarTopProps?: ToolbarProps | (({ instance }: {
289
+ instance: MRT_TableInstance;
285
290
  }) => ToolbarProps);
286
- onMrtCellClick?: ({ cell, event, tableInstance, }: {
291
+ onCurrentEditingCellChange?: OnChangeFn<MRT_Cell>;
292
+ onCurrentEditingRowChange?: OnChangeFn<MRT_Row>;
293
+ onCurrentFilterFnsChange?: OnChangeFn<{
294
+ [key: string]: MRT_FilterFn;
295
+ }>;
296
+ onCurrentGlobalFilterFnChange?: OnChangeFn<MRT_FilterFn>;
297
+ onIsDensePaddingChange?: OnChangeFn<boolean>;
298
+ onIsFullScreenChange?: OnChangeFn<boolean>;
299
+ onMrtCellClick?: ({ cell, event, instance, }: {
287
300
  cell: MRT_Cell<D>;
288
- tableInstance: MRT_TableInstance<D>;
301
+ instance: MRT_TableInstance<D>;
289
302
  event: MouseEvent<HTMLTableCellElement>;
290
303
  }) => void;
291
- onMrtCellEditBlur?: ({ cell, event, tableInstance, }: {
304
+ onMrtCellEditBlur?: ({ cell, event, instance, }: {
292
305
  event: FocusEvent<HTMLInputElement>;
293
306
  cell: MRT_Cell<D>;
294
- tableInstance: MRT_TableInstance<D>;
307
+ instance: MRT_TableInstance<D>;
295
308
  }) => void;
296
- onMrtCellEditChange?: ({ cell, event, tableInstance, }: {
309
+ onMrtCellEditChange?: ({ cell, event, instance, }: {
297
310
  event: ChangeEvent<HTMLInputElement>;
298
311
  cell: MRT_Cell<D>;
299
- tableInstance: MRT_TableInstance<D>;
312
+ instance: MRT_TableInstance<D>;
300
313
  }) => void;
301
- onMrtDetailPanelClick?: ({ event, row, tableInstance, }: {
314
+ onMrtDetailPanelClick?: ({ event, row, instance, }: {
302
315
  event: MouseEvent<HTMLTableCellElement>;
303
316
  row: MRT_Row<D>;
304
- tableInstance: MRT_TableInstance<D>;
317
+ instance: MRT_TableInstance<D>;
305
318
  }) => void;
306
- onMrtEditRowSubmit?: ({ row, tableInstance, }: {
319
+ onMrtEditRowSubmit?: ({ row, instance, }: {
307
320
  row: MRT_Row<D>;
308
- tableInstance: MRT_TableInstance<D>;
321
+ instance: MRT_TableInstance<D>;
309
322
  }) => Promise<void> | void;
310
323
  onMrtFilterValueChange?: ({ column, event, filterValue, }: {
311
324
  column: MRT_Column<D>;
312
325
  event: ChangeEvent<HTMLInputElement>;
313
326
  filterValue: any;
314
327
  }) => void;
315
- onMrtGlobalFilterValueChange?: ({ event, tableInstance, }: {
328
+ onMrtGlobalFilterValueChange?: ({ event, instance, }: {
316
329
  event: ChangeEvent<HTMLInputElement>;
317
- tableInstance: MRT_TableInstance<D>;
330
+ instance: MRT_TableInstance<D>;
318
331
  }) => void;
319
- onMrtRowClick?: ({ event, row, tableInstance, }: {
332
+ onMrtRowClick?: ({ event, row, instance, }: {
320
333
  event: MouseEvent<HTMLTableRowElement>;
321
334
  row: MRT_Row<D>;
322
- tableInstance: MRT_TableInstance<D>;
335
+ instance: MRT_TableInstance<D>;
323
336
  }) => void;
324
337
  onMrtRowExpandChange?: ({ event, row, }: {
325
338
  event: MouseEvent<HTMLButtonElement>;
326
339
  row: MRT_Row<D>;
327
- tableInstance: MRT_TableInstance<D>;
340
+ instance: MRT_TableInstance<D>;
328
341
  }) => void;
329
- onMrtSelectAllChange?: ({ event, selectedRows, tableInstance, }: {
342
+ onMrtSelectAllChange?: ({ event, selectedRows, instance, }: {
330
343
  event: ChangeEvent;
331
344
  selectedRows: MRT_Row<D>[];
332
- tableInstance: MRT_TableInstance<D>;
345
+ instance: MRT_TableInstance<D>;
333
346
  }) => void;
334
- onMrtSelectRowChange?: ({ event, row, selectedRows, tableInstance, }: {
347
+ onMrtSelectRowChange?: ({ event, row, selectedRows, instance, }: {
335
348
  event: ChangeEvent;
336
349
  row: MRT_Row<D>;
337
350
  selectedRows: MRT_Row<D>[];
338
- tableInstance: MRT_TableInstance<D>;
351
+ instance: MRT_TableInstance<D>;
339
352
  }) => void;
340
- onMrtToggleColumnVisibility?: ({ column, columnVisibility, tableInstance, }: {
353
+ onMrtToggleColumnVisibility?: ({ column, columnVisibility, instance, }: {
341
354
  column: MRT_Column<D>;
342
355
  columnVisibility: VisibilityState;
343
- tableInstance: MRT_TableInstance<D>;
356
+ instance: MRT_TableInstance<D>;
344
357
  }) => void;
345
- onMrtToggleDensePadding?: ({ event, isDensePadding, tableInstance, }: {
358
+ onMrtToggleDensePadding?: ({ event, isDensePadding, instance, }: {
346
359
  event: MouseEvent<HTMLButtonElement>;
347
360
  isDensePadding: boolean;
348
- tableInstance: MRT_TableInstance<D>;
361
+ instance: MRT_TableInstance<D>;
349
362
  }) => void;
350
- onMrtToggleFullScreen?: ({ event, isFullScreen, tableInstance, }: {
363
+ onMrtToggleFullScreen?: ({ event, isFullScreen, instance, }: {
351
364
  event: MouseEvent<HTMLButtonElement>;
352
365
  isFullScreen: boolean;
353
- tableInstance: MRT_TableInstance<D>;
366
+ instance: MRT_TableInstance<D>;
354
367
  }) => void;
355
- onMrtToggleShowFilters?: ({ event, showFilters, tableInstance, }: {
368
+ onMrtToggleShowFilters?: ({ event, showFilters, instance, }: {
356
369
  event: MouseEvent<HTMLButtonElement>;
357
370
  showFilters: boolean;
358
- tableInstance: MRT_TableInstance<D>;
371
+ instance: MRT_TableInstance<D>;
359
372
  }) => void;
360
- onMrtToggleShowGlobalFilter?: ({ event, showGlobalFilter, tableInstance, }: {
373
+ onMrtToggleShowGlobalFilter?: ({ event, showGlobalFilter, instance, }: {
361
374
  event: MouseEvent<HTMLButtonElement>;
362
375
  showGlobalFilter: boolean;
363
- tableInstance: MRT_TableInstance<D>;
376
+ instance: MRT_TableInstance<D>;
364
377
  }) => void;
378
+ onShowFiltersChange?: OnChangeFn<boolean>;
379
+ onShowGlobalFilterChange?: OnChangeFn<boolean>;
365
380
  persistentStateMode?: 'localStorage' | 'sessionStorage';
366
381
  positionActionsColumn?: 'first' | 'last';
367
382
  positionPagination?: 'bottom' | 'top' | 'both';
368
383
  positionGlobalFilter?: 'left' | 'right';
369
384
  positionToolbarActions?: 'bottom' | 'top';
370
385
  positionToolbarAlertBanner?: 'bottom' | 'top';
371
- renderDetailPanel?: ({ row, tableInstance, }: {
386
+ renderDetailPanel?: ({ row, instance, }: {
372
387
  row: MRT_Row<D>;
373
- tableInstance: MRT_TableInstance<D>;
388
+ instance: MRT_TableInstance<D>;
374
389
  }) => ReactNode;
375
- renderRowActionMenuItems?: ({ closeMenu, row, tableInstance, }: {
390
+ renderRowActionMenuItems?: ({ closeMenu, row, instance, }: {
376
391
  closeMenu: () => void;
377
392
  row: MRT_Row<D>;
378
- tableInstance: MRT_TableInstance<D>;
393
+ instance: MRT_TableInstance<D>;
379
394
  }) => ReactNode[];
380
- renderRowActions?: ({ row, tableInstance, }: {
395
+ renderRowActions?: ({ row, instance, }: {
381
396
  row: MRT_Row<D>;
382
- tableInstance: MRT_TableInstance<D>;
397
+ instance: MRT_TableInstance<D>;
383
398
  }) => ReactNode;
384
- renderToolbarCustomActions?: ({ tableInstance, }: {
385
- tableInstance: MRT_TableInstance<D>;
399
+ renderToolbarCustomActions?: ({ instance, }: {
400
+ instance: MRT_TableInstance<D>;
386
401
  }) => ReactNode;
387
- renderToolbarInternalActions?: ({ tableInstance, MRT_ToggleGlobalFilterButton, MRT_ToggleFiltersButton, MRT_ShowHideColumnsButton, MRT_ToggleDensePaddingButton, MRT_FullScreenToggleButton, }: {
388
- tableInstance: MRT_TableInstance<D>;
402
+ renderToolbarInternalActions?: ({ instance, MRT_ToggleGlobalFilterButton, MRT_ToggleFiltersButton, MRT_ShowHideColumnsButton, MRT_ToggleDensePaddingButton, MRT_FullScreenToggleButton, }: {
403
+ instance: MRT_TableInstance<D>;
389
404
  MRT_ToggleGlobalFilterButton: FC<IconButtonProps & {
390
- tableInstance: MRT_TableInstance<D>;
405
+ instance: MRT_TableInstance<D>;
391
406
  }>;
392
407
  MRT_ToggleFiltersButton: FC<IconButtonProps & {
393
- tableInstance: MRT_TableInstance<D>;
408
+ instance: MRT_TableInstance<D>;
394
409
  }>;
395
410
  MRT_ShowHideColumnsButton: FC<IconButtonProps & {
396
- tableInstance: MRT_TableInstance<D>;
411
+ instance: MRT_TableInstance<D>;
397
412
  }>;
398
413
  MRT_ToggleDensePaddingButton: FC<IconButtonProps & {
399
- tableInstance: MRT_TableInstance<D>;
414
+ instance: MRT_TableInstance<D>;
400
415
  }>;
401
416
  MRT_FullScreenToggleButton: FC<IconButtonProps & {
402
- tableInstance: MRT_TableInstance<D>;
417
+ instance: MRT_TableInstance<D>;
403
418
  }>;
404
419
  }) => ReactNode;
405
420
  rowNumberMode?: 'original' | 'static';
406
421
  selectAllMode?: 'all' | 'page';
407
422
  tableId?: string;
423
+ virtualizerProps?: VirtualizerOptions<HTMLDivElement>;
408
424
  };
409
425
  declare const _default: <D extends Record<string, any> = {}>({ autoResetExpanded, columnResizeMode, defaultColumn, editingMode, enableColumnActions, enableColumnFilters, enableColumnOrdering, enableColumnResizing, enableDensePaddingToggle, enableExpandAll, enableFilters, enableFullScreenToggle, enableGlobalFilter, enableGrouping, enableHiding, enableMultiRowSelection, enablePagination, enablePinning, enableSelectAll, enableSorting, enableStickyHeader, enableTableFooter, enableTableHead, enableToolbarBottom, enableToolbarInternalActions, enableToolbarTop, icons, localization, persistentStateMode, positionActionsColumn, positionPagination, positionGlobalFilter, positionToolbarActions, positionToolbarAlertBanner, rowNumberMode, selectAllMode, ...rest }: MaterialReactTableProps<D>) => JSX.Element;
410
426
  export default _default;
@@ -1,7 +1,7 @@
1
1
  import { FC, RefObject } from 'react';
2
2
  import type { MRT_TableInstance } from '..';
3
3
  interface Props {
4
- tableInstance: MRT_TableInstance;
4
+ instance: MRT_TableInstance;
5
5
  tableContainerRef: RefObject<HTMLDivElement>;
6
6
  }
7
7
  export declare const MRT_TableBody: FC<Props>;
@@ -4,7 +4,7 @@ interface Props {
4
4
  cell: MRT_Cell;
5
5
  enableHover?: boolean;
6
6
  rowIndex: number;
7
- tableInstance: MRT_TableInstance;
7
+ instance: MRT_TableInstance;
8
8
  }
9
9
  export declare const MRT_TableBodyCell: FC<Props>;
10
10
  export {};
@@ -3,7 +3,7 @@ import type { MRT_Row, MRT_TableInstance } from '..';
3
3
  interface Props {
4
4
  row: MRT_Row;
5
5
  rowIndex: number;
6
- tableInstance: MRT_TableInstance;
6
+ instance: MRT_TableInstance;
7
7
  }
8
8
  export declare const MRT_TableBodyRow: FC<Props>;
9
9
  export {};
@@ -2,7 +2,7 @@ import { FC } from 'react';
2
2
  import type { MRT_Row, MRT_TableInstance } from '..';
3
3
  interface Props {
4
4
  row: MRT_Row;
5
- tableInstance: MRT_TableInstance;
5
+ instance: MRT_TableInstance;
6
6
  }
7
7
  export declare const MRT_TableDetailPanel: FC<Props>;
8
8
  export {};
@@ -2,7 +2,7 @@ import { FC } from 'react';
2
2
  import type { MRT_Column, MRT_TableInstance } from '..';
3
3
  interface Props {
4
4
  column: MRT_Column;
5
- tableInstance: MRT_TableInstance;
5
+ instance: MRT_TableInstance;
6
6
  }
7
7
  export declare const MRT_ColumnPinningButtons: FC<Props>;
8
8
  export {};
@@ -3,7 +3,7 @@ import { MRT_Cell, MRT_TableInstance } from '..';
3
3
  interface Props {
4
4
  cell: MRT_Cell;
5
5
  children: ReactNode;
6
- tableInstance: MRT_TableInstance;
6
+ instance: MRT_TableInstance;
7
7
  }
8
8
  export declare const MRT_CopyButton: FC<Props>;
9
9
  export {};
@@ -2,7 +2,7 @@ import { FC } from 'react';
2
2
  import type { MRT_Row, MRT_TableInstance } from '..';
3
3
  interface Props {
4
4
  row: MRT_Row;
5
- tableInstance: MRT_TableInstance;
5
+ instance: MRT_TableInstance;
6
6
  }
7
7
  export declare const MRT_EditActionButtons: FC<Props>;
8
8
  export {};
@@ -1,7 +1,7 @@
1
1
  import { FC } from 'react';
2
2
  import { MRT_TableInstance } from '..';
3
3
  interface Props {
4
- tableInstance: MRT_TableInstance;
4
+ instance: MRT_TableInstance;
5
5
  }
6
6
  export declare const MRT_ExpandAllButton: FC<Props>;
7
7
  export {};
@@ -2,7 +2,7 @@ import { FC } from 'react';
2
2
  import type { MRT_Row, MRT_TableInstance } from '..';
3
3
  interface Props {
4
4
  row: MRT_Row;
5
- tableInstance: MRT_TableInstance;
5
+ instance: MRT_TableInstance;
6
6
  }
7
7
  export declare const MRT_ExpandButton: FC<Props>;
8
8
  export {};
@@ -2,7 +2,7 @@ import { FC } from 'react';
2
2
  import { IconButtonProps } from '@mui/material';
3
3
  import { MRT_TableInstance } from '..';
4
4
  interface Props extends IconButtonProps {
5
- tableInstance: MRT_TableInstance;
5
+ instance: MRT_TableInstance;
6
6
  }
7
7
  export declare const MRT_FullScreenToggleButton: FC<Props>;
8
8
  export {};
@@ -2,7 +2,7 @@ import { FC, Ref } from 'react';
2
2
  import { MRT_TableInstance } from '..';
3
3
  interface Props {
4
4
  ref: Ref<HTMLButtonElement>;
5
- tableInstance: MRT_TableInstance;
5
+ instance: MRT_TableInstance;
6
6
  }
7
7
  export declare const MRT_GrabHandleButton: FC<Props>;
8
8
  export {};
@@ -2,7 +2,7 @@ import { FC } from 'react';
2
2
  import { IconButtonProps } from '@mui/material';
3
3
  import { MRT_TableInstance } from '..';
4
4
  interface Props extends IconButtonProps {
5
- tableInstance: MRT_TableInstance;
5
+ instance: MRT_TableInstance;
6
6
  }
7
7
  export declare const MRT_ShowHideColumnsButton: FC<Props>;
8
8
  export {};
@@ -2,7 +2,7 @@ import { FC } from 'react';
2
2
  import type { MRT_Header, MRT_TableInstance } from '..';
3
3
  interface Props {
4
4
  header: MRT_Header;
5
- tableInstance: MRT_TableInstance;
5
+ instance: MRT_TableInstance;
6
6
  }
7
7
  export declare const MRT_ToggleColumnActionMenuButton: FC<Props>;
8
8
  export {};
@@ -2,7 +2,7 @@ import { FC } from 'react';
2
2
  import { IconButtonProps } from '@mui/material';
3
3
  import { MRT_TableInstance } from '..';
4
4
  interface Props extends IconButtonProps {
5
- tableInstance: MRT_TableInstance;
5
+ instance: MRT_TableInstance;
6
6
  }
7
7
  export declare const MRT_ToggleDensePaddingButton: FC<Props>;
8
8
  export {};
@@ -2,7 +2,7 @@ import { FC } from 'react';
2
2
  import { IconButtonProps } from '@mui/material';
3
3
  import { MRT_TableInstance } from '..';
4
4
  interface Props extends IconButtonProps {
5
- tableInstance: MRT_TableInstance;
5
+ instance: MRT_TableInstance;
6
6
  }
7
7
  export declare const MRT_ToggleFiltersButton: FC<Props>;
8
8
  export {};
@@ -2,7 +2,7 @@ import { FC } from 'react';
2
2
  import { IconButtonProps } from '@mui/material';
3
3
  import { MRT_TableInstance } from '..';
4
4
  interface Props extends IconButtonProps {
5
- tableInstance: MRT_TableInstance;
5
+ instance: MRT_TableInstance;
6
6
  }
7
7
  export declare const MRT_ToggleGlobalFilterButton: FC<Props>;
8
8
  export {};
@@ -2,7 +2,7 @@ import { FC } from 'react';
2
2
  import type { MRT_Row, MRT_TableInstance } from '..';
3
3
  interface Props {
4
4
  row: MRT_Row;
5
- tableInstance: MRT_TableInstance;
5
+ instance: MRT_TableInstance;
6
6
  }
7
7
  export declare const MRT_ToggleRowActionMenuButton: FC<Props>;
8
8
  export {};