material-react-table 0.9.7 → 0.12.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 (110) hide show
  1. package/dist/MaterialReactTable.d.ts +176 -158
  2. package/dist/body/MRT_TableBody.d.ts +1 -1
  3. package/dist/body/MRT_TableBodyCell.d.ts +1 -1
  4. package/dist/body/MRT_TableBodyRow.d.ts +1 -1
  5. package/dist/body/MRT_TableDetailPanel.d.ts +1 -1
  6. package/dist/buttons/MRT_ColumnPinningButtons.d.ts +1 -1
  7. package/dist/buttons/MRT_CopyButton.d.ts +1 -1
  8. package/dist/buttons/MRT_EditActionButtons.d.ts +1 -1
  9. package/dist/buttons/MRT_ExpandAllButton.d.ts +1 -1
  10. package/dist/buttons/MRT_ExpandButton.d.ts +1 -1
  11. package/dist/buttons/MRT_FullScreenToggleButton.d.ts +1 -1
  12. package/dist/buttons/MRT_GrabHandleButton.d.ts +1 -1
  13. package/dist/buttons/MRT_ShowHideColumnsButton.d.ts +1 -1
  14. package/dist/buttons/MRT_ToggleColumnActionMenuButton.d.ts +1 -1
  15. package/dist/buttons/MRT_ToggleDensePaddingButton.d.ts +1 -1
  16. package/dist/buttons/MRT_ToggleFiltersButton.d.ts +1 -1
  17. package/dist/buttons/MRT_ToggleGlobalFilterButton.d.ts +1 -1
  18. package/dist/buttons/MRT_ToggleRowActionMenuButton.d.ts +1 -1
  19. package/dist/filtersFNs.d.ts +2 -2
  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 +607 -577
  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 +607 -577
  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 +1 -1
  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 +227 -211
  59. package/src/body/MRT_TableBody.tsx +5 -8
  60. package/src/body/MRT_TableBodyCell.tsx +15 -19
  61. package/src/body/MRT_TableBodyRow.tsx +8 -12
  62. package/src/body/MRT_TableDetailPanel.tsx +13 -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 +5 -5
  66. package/src/buttons/MRT_ExpandAllButton.tsx +3 -3
  67. package/src/buttons/MRT_ExpandButton.tsx +5 -5
  68. package/src/buttons/MRT_FullScreenToggleButton.tsx +6 -6
  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 +6 -6
  73. package/src/buttons/MRT_ToggleFiltersButton.tsx +6 -9
  74. package/src/buttons/MRT_ToggleGlobalFilterButton.tsx +7 -7
  75. package/src/buttons/MRT_ToggleRowActionMenuButton.tsx +6 -9
  76. package/src/filtersFNs.ts +2 -2
  77. package/src/footer/MRT_TableFooter.tsx +5 -5
  78. package/src/footer/MRT_TableFooterCell.tsx +6 -6
  79. package/src/footer/MRT_TableFooterRow.tsx +5 -8
  80. package/src/head/MRT_DraggableTableHeadCell.tsx +4 -7
  81. package/src/head/MRT_TableHead.tsx +5 -5
  82. package/src/head/MRT_TableHeadCell.tsx +14 -22
  83. package/src/head/MRT_TableHeadCellFilterContainer.tsx +6 -7
  84. package/src/head/MRT_TableHeadCellFilterLabel.tsx +3 -3
  85. package/src/head/MRT_TableHeadCellResizeHandle.tsx +3 -3
  86. package/src/head/MRT_TableHeadCellSortLabel.tsx +3 -6
  87. package/src/head/MRT_TableHeadRow.tsx +6 -6
  88. package/src/inputs/MRT_EditCellTextField.tsx +12 -12
  89. package/src/inputs/MRT_FilterRangeFields.tsx +5 -13
  90. package/src/inputs/MRT_FilterTextField.tsx +82 -53
  91. package/src/inputs/MRT_SearchTextField.tsx +17 -13
  92. package/src/inputs/MRT_SelectCheckbox.tsx +14 -20
  93. package/src/menus/MRT_ColumnActionMenu.tsx +5 -5
  94. package/src/menus/MRT_FilterOptionMenu.tsx +43 -36
  95. package/src/menus/MRT_RowActionMenu.tsx +4 -4
  96. package/src/menus/MRT_ShowHideColumnsMenu.tsx +6 -6
  97. package/src/menus/MRT_ShowHideColumnsMenuItems.tsx +9 -12
  98. package/src/table/MRT_Table.tsx +7 -7
  99. package/src/table/MRT_TableContainer.tsx +5 -8
  100. package/src/table/MRT_TablePaper.tsx +7 -9
  101. package/src/table/MRT_TableRoot.tsx +13 -21
  102. package/src/toolbar/MRT_LinearProgressBar.tsx +4 -7
  103. package/src/toolbar/MRT_TablePagination.tsx +4 -4
  104. package/src/toolbar/MRT_ToolbarAlertBanner.tsx +6 -8
  105. package/src/toolbar/MRT_ToolbarBottom.tsx +8 -8
  106. package/src/toolbar/MRT_ToolbarInternalButtons.tsx +10 -12
  107. package/src/toolbar/MRT_ToolbarTop.tsx +10 -10
  108. package/src/utils.ts +2 -2
  109. package/dist/enums.d.ts +0 -13
  110. package/src/enums.ts +0 -13
@@ -7,14 +7,14 @@ interface Props {
7
7
  anchorEl: HTMLElement | null;
8
8
  isSubMenu?: boolean;
9
9
  setAnchorEl: (anchorEl: HTMLElement | null) => void;
10
- tableInstance: MRT_TableInstance;
10
+ instance: MRT_TableInstance;
11
11
  }
12
12
 
13
13
  export const MRT_ShowHideColumnsMenu: FC<Props> = ({
14
14
  anchorEl,
15
15
  isSubMenu,
16
16
  setAnchorEl,
17
- tableInstance,
17
+ instance,
18
18
  }) => {
19
19
  const {
20
20
  getAllColumns,
@@ -28,7 +28,7 @@ export const MRT_ShowHideColumnsMenu: FC<Props> = ({
28
28
  getState,
29
29
  toggleAllColumnsVisible,
30
30
  options: { localization, enablePinning, enableColumnOrdering },
31
- } = tableInstance;
31
+ } = instance;
32
32
 
33
33
  const { isDensePadding, columnOrder, columnPinning } = getState();
34
34
 
@@ -88,14 +88,14 @@ export const MRT_ShowHideColumnsMenu: FC<Props> = ({
88
88
  </Button>
89
89
  )}
90
90
  {!isSubMenu && enableColumnOrdering && (
91
- <Button onClick={() => tableInstance.resetColumnOrder()}>
91
+ <Button onClick={() => instance.resetColumnOrder()}>
92
92
  {localization.resetOrder}
93
93
  </Button>
94
94
  )}
95
95
  {!isSubMenu && enablePinning && (
96
96
  <Button
97
97
  disabled={!getIsSomeColumnsPinned()}
98
- onClick={() => tableInstance.resetColumnPinning(true)}
98
+ onClick={() => instance.resetColumnPinning(true)}
99
99
  >
100
100
  {localization.unpinAll}
101
101
  </Button>
@@ -114,7 +114,7 @@ export const MRT_ShowHideColumnsMenu: FC<Props> = ({
114
114
  column={column}
115
115
  isSubMenu={isSubMenu}
116
116
  key={`${index}-${column.id}`}
117
- tableInstance={tableInstance}
117
+ instance={instance}
118
118
  />
119
119
  ))}
120
120
  </Menu>
@@ -10,20 +10,20 @@ interface Props {
10
10
  allColumns: MRT_Column[];
11
11
  column: MRT_Column;
12
12
  isSubMenu?: boolean;
13
- tableInstance: MRT_TableInstance;
13
+ instance: MRT_TableInstance;
14
14
  }
15
15
 
16
16
  export const MRT_ShowHideColumnsMenuItems: FC<Props> = ({
17
17
  allColumns,
18
18
  column,
19
19
  isSubMenu,
20
- tableInstance,
20
+ instance,
21
21
  }) => {
22
22
  const {
23
23
  getState,
24
- options: { enableColumnOrdering, onMrtToggleColumnVisibility },
24
+ options: { enableColumnOrdering, onColumnVisibilityChanged },
25
25
  setColumnOrder,
26
- } = tableInstance;
26
+ } = instance;
27
27
 
28
28
  const { columnOrder, columnVisibility } = getState();
29
29
 
@@ -56,10 +56,10 @@ export const MRT_ShowHideColumnsMenuItems: FC<Props> = ({
56
56
  } else {
57
57
  column.toggleVisibility();
58
58
  }
59
- onMrtToggleColumnVisibility?.({
59
+ onColumnVisibilityChanged?.({
60
60
  column,
61
61
  columnVisibility,
62
- tableInstance,
62
+ instance,
63
63
  });
64
64
  };
65
65
 
@@ -89,14 +89,11 @@ export const MRT_ShowHideColumnsMenuItems: FC<Props> = ({
89
89
  !allColumns.some((col) => col.columnDefType === 'group') && (
90
90
  <MRT_GrabHandleButton
91
91
  ref={dragRef as Ref<HTMLButtonElement>}
92
- tableInstance={tableInstance}
92
+ instance={instance}
93
93
  />
94
94
  )}
95
95
  {!isSubMenu && column.getCanPin() && (
96
- <MRT_ColumnPinningButtons
97
- column={column}
98
- tableInstance={tableInstance}
99
- />
96
+ <MRT_ColumnPinningButtons column={column} instance={instance} />
100
97
  )}
101
98
  <FormControlLabel
102
99
  componentsProps={{
@@ -125,7 +122,7 @@ export const MRT_ShowHideColumnsMenuItems: FC<Props> = ({
125
122
  key={`${i}-${c.id}`}
126
123
  column={c}
127
124
  isSubMenu={isSubMenu}
128
- tableInstance={tableInstance}
125
+ instance={instance}
129
126
  />
130
127
  ))}
131
128
  </>
@@ -7,10 +7,10 @@ import { MRT_TableInstance } from '..';
7
7
 
8
8
  interface Props {
9
9
  tableContainerRef: RefObject<HTMLDivElement>;
10
- tableInstance: MRT_TableInstance;
10
+ instance: MRT_TableInstance;
11
11
  }
12
12
 
13
- export const MRT_Table: FC<Props> = ({ tableContainerRef, tableInstance }) => {
13
+ export const MRT_Table: FC<Props> = ({ tableContainerRef, instance }) => {
14
14
  const {
15
15
  getState,
16
16
  options: {
@@ -21,13 +21,13 @@ export const MRT_Table: FC<Props> = ({ tableContainerRef, tableInstance }) => {
21
21
  enableTableHead,
22
22
  muiTableProps,
23
23
  },
24
- } = tableInstance;
24
+ } = instance;
25
25
 
26
26
  const { isFullScreen } = getState();
27
27
 
28
28
  const tableProps =
29
29
  muiTableProps instanceof Function
30
- ? muiTableProps({ tableInstance })
30
+ ? muiTableProps({ instance })
31
31
  : muiTableProps;
32
32
 
33
33
  return (
@@ -42,12 +42,12 @@ export const MRT_Table: FC<Props> = ({ tableContainerRef, tableInstance }) => {
42
42
  ...tableProps?.sx,
43
43
  }}
44
44
  >
45
- {enableTableHead && <MRT_TableHead tableInstance={tableInstance} />}
45
+ {enableTableHead && <MRT_TableHead instance={instance} />}
46
46
  <MRT_TableBody
47
47
  tableContainerRef={tableContainerRef}
48
- tableInstance={tableInstance}
48
+ instance={instance}
49
49
  />
50
- {enableTableFooter && <MRT_TableFooter tableInstance={tableInstance} />}
50
+ {enableTableFooter && <MRT_TableFooter instance={instance} />}
51
51
  </Table>
52
52
  );
53
53
  };
@@ -7,10 +7,10 @@ const useIsomorphicLayoutEffect =
7
7
  typeof window !== 'undefined' ? useLayoutEffect : useEffect;
8
8
 
9
9
  interface Props {
10
- tableInstance: MRT_TableInstance;
10
+ instance: MRT_TableInstance;
11
11
  }
12
12
 
13
- export const MRT_TableContainer: FC<Props> = ({ tableInstance }) => {
13
+ export const MRT_TableContainer: FC<Props> = ({ instance }) => {
14
14
  const {
15
15
  getState,
16
16
  options: {
@@ -19,7 +19,7 @@ export const MRT_TableContainer: FC<Props> = ({ tableInstance }) => {
19
19
  muiTableContainerProps,
20
20
  tableId,
21
21
  },
22
- } = tableInstance;
22
+ } = instance;
23
23
 
24
24
  const { isFullScreen } = getState();
25
25
 
@@ -27,7 +27,7 @@ export const MRT_TableContainer: FC<Props> = ({ tableInstance }) => {
27
27
 
28
28
  const tableContainerProps =
29
29
  muiTableContainerProps instanceof Function
30
- ? muiTableContainerProps({ tableInstance })
30
+ ? muiTableContainerProps({ instance })
31
31
  : muiTableContainerProps;
32
32
 
33
33
  useIsomorphicLayoutEffect(() => {
@@ -68,10 +68,7 @@ export const MRT_TableContainer: FC<Props> = ({ tableInstance }) => {
68
68
  ...tableContainerProps?.style,
69
69
  }}
70
70
  >
71
- <MRT_Table
72
- tableContainerRef={tableContainerRef}
73
- tableInstance={tableInstance}
74
- />
71
+ <MRT_Table tableContainerRef={tableContainerRef} instance={instance} />
75
72
  </TableContainer>
76
73
  );
77
74
  };
@@ -8,14 +8,14 @@ import { MRT_TableContainer } from './MRT_TableContainer';
8
8
  import type { MRT_TableInstance } from '..';
9
9
 
10
10
  interface Props {
11
- tableInstance: MRT_TableInstance;
11
+ instance: MRT_TableInstance;
12
12
  }
13
13
 
14
- export const MRT_TablePaper: FC<Props> = ({ tableInstance }) => {
14
+ export const MRT_TablePaper: FC<Props> = ({ instance }) => {
15
15
  const {
16
16
  getState,
17
17
  options: { enableToolbarBottom, enableToolbarTop, muiTablePaperProps },
18
- } = tableInstance;
18
+ } = instance;
19
19
 
20
20
  const { isFullScreen } = getState();
21
21
 
@@ -31,7 +31,7 @@ export const MRT_TablePaper: FC<Props> = ({ tableInstance }) => {
31
31
 
32
32
  const tablePaperProps =
33
33
  muiTablePaperProps instanceof Function
34
- ? muiTablePaperProps({ tableInstance })
34
+ ? muiTablePaperProps({ instance })
35
35
  : muiTablePaperProps;
36
36
 
37
37
  return (
@@ -50,11 +50,9 @@ export const MRT_TablePaper: FC<Props> = ({ tableInstance }) => {
50
50
  width: isFullScreen ? '100vw' : undefined,
51
51
  }}
52
52
  >
53
- {enableToolbarTop && <MRT_ToolbarTop tableInstance={tableInstance} />}
54
- <MRT_TableContainer tableInstance={tableInstance} />
55
- {enableToolbarBottom && (
56
- <MRT_ToolbarBottom tableInstance={tableInstance} />
57
- )}
53
+ {enableToolbarTop && <MRT_ToolbarTop instance={instance} />}
54
+ <MRT_TableContainer instance={instance} />
55
+ {enableToolbarBottom && <MRT_ToolbarBottom instance={instance} />}
58
56
  </Paper>
59
57
  </DndProvider>
60
58
  );
@@ -18,6 +18,7 @@ import {
18
18
  MRT_Cell,
19
19
  MRT_ColumnDef,
20
20
  MRT_FilterFn,
21
+ MRT_FILTER_OPTION,
21
22
  MRT_Row,
22
23
  MRT_TableInstance,
23
24
  MRT_TableState,
@@ -35,7 +36,6 @@ import {
35
36
  getAllLeafColumnDefs,
36
37
  } from '../utils';
37
38
  import { defaultFilterFNs } from '../filtersFNs';
38
- import { MRT_FILTER_OPTION } from '../enums';
39
39
  import { Box, Dialog, Grow } from '@mui/material';
40
40
 
41
41
  export const MRT_TableRoot = <D extends Record<string, any> = {}>(
@@ -124,16 +124,14 @@ export const MRT_TableRoot = <D extends Record<string, any> = {}>(
124
124
  [c.id as string]:
125
125
  c.filterFn ??
126
126
  initialState?.currentFilterFns?.[c.id] ??
127
- (!!c.filterSelectOptions?.length
128
- ? MRT_FILTER_OPTION.EQUALS
129
- : MRT_FILTER_OPTION.FUZZY),
127
+ (!!c.filterSelectOptions?.length ? 'equals' : 'fuzzy'),
130
128
  })),
131
129
  ),
132
130
  );
133
131
 
134
132
  const [currentGlobalFilterFn, setCurrentGlobalFilterFn] = useState<
135
133
  MRT_FILTER_OPTION | FilterFn<ReactTableGenerics> | string | number | symbol
136
- >(props.globalFilterFn ?? MRT_FILTER_OPTION.FUZZY);
134
+ >(props.globalFilterFn ?? 'fuzzy');
137
135
 
138
136
  const table = useMemo(
139
137
  () =>
@@ -163,7 +161,7 @@ export const MRT_TableRoot = <D extends Record<string, any> = {}>(
163
161
  Cell: ({ cell }) => (
164
162
  <MRT_ToggleRowActionMenuButton
165
163
  row={cell.row as any}
166
- tableInstance={tableInstance}
164
+ instance={instance}
167
165
  />
168
166
  ),
169
167
  header: props.localization?.actions,
@@ -175,14 +173,11 @@ export const MRT_TableRoot = <D extends Record<string, any> = {}>(
175
173
  showExpandColumn &&
176
174
  createDisplayColumn(table, {
177
175
  Cell: ({ cell }) => (
178
- <MRT_ExpandButton
179
- row={cell.row as any}
180
- tableInstance={tableInstance}
181
- />
176
+ <MRT_ExpandButton row={cell.row as any} instance={instance} />
182
177
  ),
183
178
  Header: () =>
184
179
  props.enableExpandAll ? (
185
- <MRT_ExpandAllButton tableInstance={tableInstance} />
180
+ <MRT_ExpandAllButton instance={instance} />
186
181
  ) : null,
187
182
  header: props.localization?.expand,
188
183
  id: 'mrt-expand',
@@ -193,14 +188,11 @@ export const MRT_TableRoot = <D extends Record<string, any> = {}>(
193
188
  props.enableRowSelection &&
194
189
  createDisplayColumn(table, {
195
190
  Cell: ({ cell }) => (
196
- <MRT_SelectCheckbox
197
- row={cell.row as any}
198
- tableInstance={tableInstance}
199
- />
191
+ <MRT_SelectCheckbox row={cell.row as any} instance={instance} />
200
192
  ),
201
193
  Header: () =>
202
194
  props.enableSelectAll ? (
203
- <MRT_SelectCheckbox selectAll tableInstance={tableInstance} />
195
+ <MRT_SelectCheckbox selectAll instance={instance} />
204
196
  ) : null,
205
197
  header: props.localization?.select,
206
198
  id: 'mrt-select',
@@ -265,7 +257,7 @@ export const MRT_TableRoot = <D extends Record<string, any> = {}>(
265
257
  );
266
258
 
267
259
  //@ts-ignore
268
- const tableInstance = {
260
+ const instance = {
269
261
  //@ts-ignore
270
262
  ...useTableInstance(table, {
271
263
  ...props,
@@ -311,7 +303,7 @@ export const MRT_TableRoot = <D extends Record<string, any> = {}>(
311
303
  }
312
304
  const itemArgs: [string, string] = [
313
305
  `mrt-${tableId}-table-state`,
314
- JSON.stringify(tableInstance.getState()),
306
+ JSON.stringify(instance.getState()),
315
307
  ];
316
308
  if (props.persistentStateMode === 'localStorage') {
317
309
  localStorage.setItem(...itemArgs);
@@ -322,7 +314,7 @@ export const MRT_TableRoot = <D extends Record<string, any> = {}>(
322
314
  props.enablePersistentState,
323
315
  props.tableId,
324
316
  props.persistentStateMode,
325
- tableInstance,
317
+ instance,
326
318
  ]);
327
319
 
328
320
  return (
@@ -337,9 +329,9 @@ export const MRT_TableRoot = <D extends Record<string, any> = {}>(
337
329
  open={isFullScreen}
338
330
  transitionDuration={400}
339
331
  >
340
- <MRT_TablePaper tableInstance={tableInstance} />
332
+ <MRT_TablePaper instance={instance} />
341
333
  </Dialog>
342
- {!isFullScreen && <MRT_TablePaper tableInstance={tableInstance} />}
334
+ {!isFullScreen && <MRT_TablePaper instance={instance} />}
343
335
  </>
344
336
  );
345
337
  };
@@ -4,23 +4,20 @@ import { MRT_TableInstance } from '..';
4
4
 
5
5
  interface Props {
6
6
  alignTo: 'bottom' | 'top';
7
- tableInstance: MRT_TableInstance;
7
+ instance: MRT_TableInstance;
8
8
  }
9
9
 
10
- export const MRT_LinearProgressBar: FC<Props> = ({
11
- alignTo,
12
- tableInstance,
13
- }) => {
10
+ export const MRT_LinearProgressBar: FC<Props> = ({ alignTo, instance }) => {
14
11
  const {
15
12
  options: { muiLinearProgressProps },
16
13
  getState,
17
- } = tableInstance;
14
+ } = instance;
18
15
 
19
16
  const { isLoading, showProgressBars } = getState();
20
17
 
21
18
  const linearProgressProps =
22
19
  muiLinearProgressProps instanceof Function
23
- ? muiLinearProgressProps({ tableInstance })
20
+ ? muiLinearProgressProps({ instance })
24
21
  : muiLinearProgressProps;
25
22
 
26
23
  return (
@@ -3,17 +3,17 @@ import { TablePagination } from '@mui/material';
3
3
  import { MRT_TableInstance } from '..';
4
4
 
5
5
  interface Props {
6
- tableInstance: MRT_TableInstance;
6
+ instance: MRT_TableInstance;
7
7
  }
8
8
 
9
- export const MRT_TablePagination: FC<Props> = ({ tableInstance }) => {
9
+ export const MRT_TablePagination: FC<Props> = ({ instance }) => {
10
10
  const {
11
11
  getPrePaginationRowModel,
12
12
  getState,
13
13
  setPageIndex,
14
14
  setPageSize,
15
15
  options: { muiTablePaginationProps },
16
- } = tableInstance;
16
+ } = instance;
17
17
 
18
18
  const {
19
19
  pagination: { pageSize = 10, pageIndex = 0 },
@@ -21,7 +21,7 @@ export const MRT_TablePagination: FC<Props> = ({ tableInstance }) => {
21
21
 
22
22
  const tablePaginationProps =
23
23
  muiTablePaginationProps instanceof Function
24
- ? muiTablePaginationProps({ tableInstance })
24
+ ? muiTablePaginationProps({ instance })
25
25
  : muiTablePaginationProps;
26
26
 
27
27
  const handleChangeRowsPerPage = (event: ChangeEvent<HTMLInputElement>) => {
@@ -4,25 +4,25 @@ import { MRT_TableInstance } from '..';
4
4
 
5
5
  interface Props {
6
6
  stackAlertBanner?: boolean;
7
- tableInstance: MRT_TableInstance;
7
+ instance: MRT_TableInstance;
8
8
  }
9
9
 
10
10
  export const MRT_ToolbarAlertBanner: FC<Props> = ({
11
11
  stackAlertBanner,
12
- tableInstance,
12
+ instance,
13
13
  }) => {
14
14
  const {
15
15
  getPrePaginationRowModel,
16
16
  getSelectedRowModel,
17
17
  getState,
18
18
  options: { localization, muiTableToolbarAlertBannerProps },
19
- } = tableInstance;
19
+ } = instance;
20
20
 
21
21
  const { grouping } = getState();
22
22
 
23
23
  const alertProps =
24
24
  muiTableToolbarAlertBannerProps instanceof Function
25
- ? muiTableToolbarAlertBannerProps({ tableInstance })
25
+ ? muiTableToolbarAlertBannerProps({ instance })
26
26
  : muiTableToolbarAlertBannerProps;
27
27
 
28
28
  const selectMessage =
@@ -47,10 +47,8 @@ export const MRT_ToolbarAlertBanner: FC<Props> = ({
47
47
  {index > 0 ? localization.thenBy : ''}
48
48
  <Chip
49
49
  color="secondary"
50
- label={tableInstance.getColumn(columnId).columnDef.header}
51
- onDelete={() =>
52
- tableInstance.getColumn(columnId).toggleGrouping()
53
- }
50
+ label={instance.getColumn(columnId).columnDef.header}
51
+ onDelete={() => instance.getColumn(columnId).toggleGrouping()}
54
52
  />
55
53
  </Fragment>
56
54
  ))}
@@ -8,10 +8,10 @@ import { commonToolbarStyles } from './MRT_ToolbarTop';
8
8
  import { MRT_TableInstance } from '..';
9
9
 
10
10
  interface Props {
11
- tableInstance: MRT_TableInstance;
11
+ instance: MRT_TableInstance;
12
12
  }
13
13
 
14
- export const MRT_ToolbarBottom: FC<Props> = ({ tableInstance }) => {
14
+ export const MRT_ToolbarBottom: FC<Props> = ({ instance }) => {
15
15
  const {
16
16
  getState,
17
17
  options: {
@@ -24,7 +24,7 @@ export const MRT_ToolbarBottom: FC<Props> = ({ tableInstance }) => {
24
24
  positionToolbarAlertBanner,
25
25
  renderToolbarCustomActions,
26
26
  },
27
- } = tableInstance;
27
+ } = instance;
28
28
 
29
29
  const { isFullScreen } = getState();
30
30
 
@@ -32,7 +32,7 @@ export const MRT_ToolbarBottom: FC<Props> = ({ tableInstance }) => {
32
32
 
33
33
  const toolbarProps =
34
34
  muiTableToolbarBottomProps instanceof Function
35
- ? muiTableToolbarBottomProps({ tableInstance })
35
+ ? muiTableToolbarBottomProps({ instance })
36
36
  : muiTableToolbarBottomProps;
37
37
 
38
38
  const stackAlertBanner =
@@ -58,9 +58,9 @@ export const MRT_ToolbarBottom: FC<Props> = ({ tableInstance }) => {
58
58
  } as any)
59
59
  }
60
60
  >
61
- <MRT_LinearProgressBar alignTo="top" tableInstance={tableInstance} />
61
+ <MRT_LinearProgressBar alignTo="top" instance={instance} />
62
62
  {positionToolbarAlertBanner === 'bottom' && (
63
- <MRT_ToolbarAlertBanner tableInstance={tableInstance} />
63
+ <MRT_ToolbarAlertBanner instance={instance} />
64
64
  )}
65
65
  <Box
66
66
  sx={{
@@ -73,13 +73,13 @@ export const MRT_ToolbarBottom: FC<Props> = ({ tableInstance }) => {
73
73
  }}
74
74
  >
75
75
  {enableToolbarInternalActions && positionToolbarActions === 'bottom' ? (
76
- <MRT_ToolbarInternalButtons tableInstance={tableInstance} />
76
+ <MRT_ToolbarInternalButtons instance={instance} />
77
77
  ) : (
78
78
  <span />
79
79
  )}
80
80
  {enablePagination &&
81
81
  ['bottom', 'both'].includes(positionPagination ?? '') && (
82
- <MRT_TablePagination tableInstance={tableInstance} />
82
+ <MRT_TablePagination instance={instance} />
83
83
  )}
84
84
  </Box>
85
85
  </Toolbar>
@@ -9,10 +9,10 @@ import { MRT_TableInstance } from '..';
9
9
  import { MRT_SearchTextField } from '../inputs/MRT_SearchTextField';
10
10
 
11
11
  interface Props {
12
- tableInstance: MRT_TableInstance;
12
+ instance: MRT_TableInstance;
13
13
  }
14
14
 
15
- export const MRT_ToolbarInternalButtons: FC<Props> = ({ tableInstance }) => {
15
+ export const MRT_ToolbarInternalButtons: FC<Props> = ({ instance }) => {
16
16
  const {
17
17
  options: {
18
18
  enableColumnFilters,
@@ -24,7 +24,7 @@ export const MRT_ToolbarInternalButtons: FC<Props> = ({ tableInstance }) => {
24
24
  positionGlobalFilter,
25
25
  renderToolbarInternalActions,
26
26
  },
27
- } = tableInstance;
27
+ } = instance;
28
28
 
29
29
  return (
30
30
  <Box
@@ -40,26 +40,24 @@ export const MRT_ToolbarInternalButtons: FC<Props> = ({ tableInstance }) => {
40
40
  MRT_ToggleDensePaddingButton,
41
41
  MRT_ToggleFiltersButton,
42
42
  MRT_ToggleGlobalFilterButton,
43
- tableInstance,
43
+ instance,
44
44
  }) ?? (
45
45
  <>
46
46
  {enableGlobalFilter && positionGlobalFilter === 'right' && (
47
- <MRT_SearchTextField tableInstance={tableInstance} />
47
+ <MRT_SearchTextField instance={instance} />
48
48
  )}
49
49
  {enableFilters && enableGlobalFilter && (
50
- <MRT_ToggleGlobalFilterButton tableInstance={tableInstance} />
50
+ <MRT_ToggleGlobalFilterButton instance={instance} />
51
51
  )}
52
52
  {enableFilters && enableColumnFilters && (
53
- <MRT_ToggleFiltersButton tableInstance={tableInstance} />
54
- )}
55
- {enableHiding && (
56
- <MRT_ShowHideColumnsButton tableInstance={tableInstance} />
53
+ <MRT_ToggleFiltersButton instance={instance} />
57
54
  )}
55
+ {enableHiding && <MRT_ShowHideColumnsButton instance={instance} />}
58
56
  {enableDensePaddingToggle && (
59
- <MRT_ToggleDensePaddingButton tableInstance={tableInstance} />
57
+ <MRT_ToggleDensePaddingButton instance={instance} />
60
58
  )}
61
59
  {enableFullScreenToggle && (
62
- <MRT_FullScreenToggleButton tableInstance={tableInstance} />
60
+ <MRT_FullScreenToggleButton instance={instance} />
63
61
  )}
64
62
  </>
65
63
  )}
@@ -20,10 +20,10 @@ export const commonToolbarStyles = ({ theme }: { theme: Theme }) => ({
20
20
  });
21
21
 
22
22
  interface Props {
23
- tableInstance: MRT_TableInstance;
23
+ instance: MRT_TableInstance;
24
24
  }
25
25
 
26
- export const MRT_ToolbarTop: FC<Props> = ({ tableInstance }) => {
26
+ export const MRT_ToolbarTop: FC<Props> = ({ instance }) => {
27
27
  const {
28
28
  getState,
29
29
  options: {
@@ -38,7 +38,7 @@ export const MRT_ToolbarTop: FC<Props> = ({ tableInstance }) => {
38
38
  positionToolbarAlertBanner,
39
39
  renderToolbarCustomActions,
40
40
  },
41
- } = tableInstance;
41
+ } = instance;
42
42
 
43
43
  const { isFullScreen, showGlobalFilter } = getState();
44
44
 
@@ -46,7 +46,7 @@ export const MRT_ToolbarTop: FC<Props> = ({ tableInstance }) => {
46
46
 
47
47
  const toolbarProps =
48
48
  muiTableToolbarTopProps instanceof Function
49
- ? muiTableToolbarTopProps({ tableInstance })
49
+ ? muiTableToolbarTopProps({ instance })
50
50
  : muiTableToolbarTopProps;
51
51
 
52
52
  const stackAlertBanner =
@@ -71,7 +71,7 @@ export const MRT_ToolbarTop: FC<Props> = ({ tableInstance }) => {
71
71
  {positionToolbarAlertBanner === 'top' && (
72
72
  <MRT_ToolbarAlertBanner
73
73
  stackAlertBanner={stackAlertBanner}
74
- tableInstance={tableInstance}
74
+ instance={instance}
75
75
  />
76
76
  )}
77
77
  <Box
@@ -87,20 +87,20 @@ export const MRT_ToolbarTop: FC<Props> = ({ tableInstance }) => {
87
87
  }}
88
88
  >
89
89
  {enableGlobalFilter && positionGlobalFilter === 'left' && (
90
- <MRT_SearchTextField tableInstance={tableInstance} />
90
+ <MRT_SearchTextField instance={instance} />
91
91
  )}
92
- {renderToolbarCustomActions?.({ tableInstance }) ?? <span />}
92
+ {renderToolbarCustomActions?.({ instance }) ?? <span />}
93
93
  {enableToolbarInternalActions && positionToolbarActions === 'top' && (
94
- <MRT_ToolbarInternalButtons tableInstance={tableInstance} />
94
+ <MRT_ToolbarInternalButtons instance={instance} />
95
95
  )}
96
96
  </Box>
97
97
  <div>
98
98
  {enablePagination &&
99
99
  ['top', 'both'].includes(positionPagination ?? '') && (
100
- <MRT_TablePagination tableInstance={tableInstance} />
100
+ <MRT_TablePagination instance={instance} />
101
101
  )}
102
102
  </div>
103
- <MRT_LinearProgressBar alignTo="bottom" tableInstance={tableInstance} />
103
+ <MRT_LinearProgressBar alignTo="bottom" instance={instance} />
104
104
  </Toolbar>
105
105
  );
106
106
  };
package/src/utils.ts CHANGED
@@ -5,7 +5,6 @@ import {
5
5
  Updater,
6
6
  } from '@tanstack/react-table';
7
7
  import { MRT_Column, MRT_ColumnDef, MRT_FilterFn } from '.';
8
- import { MRT_FILTER_OPTION } from './enums';
9
8
  import { defaultFilterFNs } from './filtersFNs';
10
9
 
11
10
  export const getAllLeafColumnDefs = (
@@ -49,7 +48,8 @@ export const createDataColumn = <D extends Record<string, any> = {}>(
49
48
  filterFn:
50
49
  currentFilterFns[column.id] instanceof Function
51
50
  ? currentFilterFns[column.id]
52
- : defaultFilterFNs[currentFilterFns[column.id] as MRT_FILTER_OPTION],
51
+ : // @ts-ignore
52
+ defaultFilterFNs[currentFilterFns[column.id]],
53
53
  ...column,
54
54
  }) as any;
55
55
 
package/dist/enums.d.ts DELETED
@@ -1,13 +0,0 @@
1
- export declare enum MRT_FILTER_OPTION {
2
- BETWEEN = "between",
3
- CONTAINS = "contains",
4
- EMPTY = "empty",
5
- ENDS_WITH = "endsWith",
6
- EQUALS = "equals",
7
- FUZZY = "fuzzy",
8
- GREATER_THAN = "greaterThan",
9
- LESS_THAN = "lessThan",
10
- NOT_EMPTY = "notEmpty",
11
- NOT_EQUALS = "notEquals",
12
- STARTS_WITH = "startsWith"
13
- }