material-react-table 2.0.0-alpha.1 → 2.0.0-alpha.2

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 (134) hide show
  1. package/README.md +2 -2
  2. package/dist/cjs/index.js +2400 -2365
  3. package/dist/cjs/index.js.map +1 -1
  4. package/dist/cjs/types/MaterialReactTable.d.ts +1 -1
  5. package/dist/cjs/types/buttons/MRT_GrabHandleButton.d.ts +1 -1
  6. package/dist/cjs/types/buttons/MRT_RowPinButton.d.ts +2 -2
  7. package/dist/cjs/types/column.utils.d.ts +6 -6
  8. package/dist/cjs/types/filterFns.d.ts +14 -14
  9. package/dist/cjs/types/head/MRT_TableHeadCellFilterLabel.d.ts +1 -1
  10. package/dist/cjs/types/head/MRT_TableHeadCellSortLabel.d.ts +1 -1
  11. package/dist/cjs/types/hooks/useMRT_DisplayColumns.d.ts +3 -3
  12. package/dist/cjs/types/icons.d.ts +1 -1
  13. package/dist/cjs/types/inputs/MRT_FilterRangeSlider.d.ts +1 -1
  14. package/dist/cjs/types/menus/MRT_ColumnActionMenu.d.ts +4 -4
  15. package/dist/cjs/types/menus/MRT_ShowHideColumnsMenuItems.d.ts +1 -1
  16. package/dist/cjs/types/toolbar/MRT_TablePagination.d.ts +2 -2
  17. package/dist/cjs/types/toolbar/MRT_TopToolbar.d.ts +1 -1
  18. package/dist/cjs/types/types.d.ts +198 -198
  19. package/dist/esm/material-react-table.esm.js +2027 -1993
  20. package/dist/esm/material-react-table.esm.js.map +1 -1
  21. package/dist/esm/types/MaterialReactTable.d.ts +1 -1
  22. package/dist/esm/types/buttons/MRT_GrabHandleButton.d.ts +1 -1
  23. package/dist/esm/types/buttons/MRT_RowPinButton.d.ts +2 -2
  24. package/dist/esm/types/column.utils.d.ts +6 -6
  25. package/dist/esm/types/filterFns.d.ts +14 -14
  26. package/dist/esm/types/head/MRT_TableHeadCellFilterLabel.d.ts +1 -1
  27. package/dist/esm/types/head/MRT_TableHeadCellSortLabel.d.ts +1 -1
  28. package/dist/esm/types/hooks/useMRT_DisplayColumns.d.ts +3 -3
  29. package/dist/esm/types/icons.d.ts +1 -1
  30. package/dist/esm/types/inputs/MRT_FilterRangeSlider.d.ts +1 -1
  31. package/dist/esm/types/menus/MRT_ColumnActionMenu.d.ts +4 -4
  32. package/dist/esm/types/menus/MRT_ShowHideColumnsMenuItems.d.ts +1 -1
  33. package/dist/esm/types/toolbar/MRT_TablePagination.d.ts +2 -2
  34. package/dist/esm/types/toolbar/MRT_TopToolbar.d.ts +1 -1
  35. package/dist/esm/types/types.d.ts +198 -198
  36. package/dist/index.d.ts +239 -239
  37. package/locales/fr.esm.js +1 -1
  38. package/locales/fr.esm.js.map +1 -1
  39. package/locales/fr.js +1 -1
  40. package/locales/fr.js.map +1 -1
  41. package/locales/tr.d.ts +2 -0
  42. package/locales/tr.esm.d.ts +2 -0
  43. package/locales/tr.esm.js +93 -0
  44. package/locales/tr.esm.js.map +1 -0
  45. package/locales/tr.js +97 -0
  46. package/locales/tr.js.map +1 -0
  47. package/locales/uk.d.ts +2 -0
  48. package/locales/uk.esm.d.ts +2 -0
  49. package/locales/uk.esm.js +93 -0
  50. package/locales/uk.esm.js.map +1 -0
  51. package/locales/uk.js +97 -0
  52. package/locales/uk.js.map +1 -0
  53. package/locales/vi.d.ts +2 -0
  54. package/locales/vi.esm.d.ts +2 -0
  55. package/locales/vi.esm.js +93 -0
  56. package/locales/vi.esm.js.map +1 -0
  57. package/locales/vi.js +97 -0
  58. package/locales/vi.js.map +1 -0
  59. package/locales/zh-Hans.d.ts +2 -0
  60. package/locales/zh-Hans.esm.d.ts +2 -0
  61. package/locales/zh-Hans.esm.js +93 -0
  62. package/locales/zh-Hans.esm.js.map +1 -0
  63. package/locales/zh-Hans.js +97 -0
  64. package/locales/zh-Hans.js.map +1 -0
  65. package/locales/zh-Hant.d.ts +2 -0
  66. package/locales/zh-Hant.esm.d.ts +2 -0
  67. package/locales/zh-Hant.esm.js +93 -0
  68. package/locales/zh-Hant.esm.js.map +1 -0
  69. package/locales/zh-Hant.js +97 -0
  70. package/locales/zh-Hant.js.map +1 -0
  71. package/package.json +2 -1
  72. package/src/MaterialReactTable.tsx +2 -2
  73. package/src/body/MRT_TableBody.tsx +9 -9
  74. package/src/body/MRT_TableBodyCell.tsx +22 -22
  75. package/src/body/MRT_TableBodyCellValue.tsx +5 -5
  76. package/src/body/MRT_TableBodyRow.tsx +32 -32
  77. package/src/body/MRT_TableBodyRowGrabHandle.tsx +2 -2
  78. package/src/body/MRT_TableBodyRowPinButton.tsx +3 -3
  79. package/src/body/MRT_TableDetailPanel.tsx +3 -3
  80. package/src/buttons/MRT_CopyButton.tsx +1 -1
  81. package/src/buttons/MRT_EditActionButtons.tsx +4 -4
  82. package/src/buttons/MRT_ExpandAllButton.tsx +3 -3
  83. package/src/buttons/MRT_ExpandButton.tsx +1 -1
  84. package/src/buttons/MRT_GrabHandleButton.tsx +10 -10
  85. package/src/buttons/MRT_RowPinButton.tsx +5 -5
  86. package/src/buttons/MRT_ShowHideColumnsButton.tsx +1 -1
  87. package/src/buttons/MRT_ToggleFullScreenButton.tsx +2 -2
  88. package/src/buttons/MRT_ToggleRowActionMenuButton.tsx +8 -8
  89. package/src/column.utils.ts +23 -17
  90. package/src/filterFns.ts +29 -29
  91. package/src/footer/MRT_TableFooter.tsx +9 -9
  92. package/src/footer/MRT_TableFooterCell.tsx +1 -1
  93. package/src/footer/MRT_TableFooterRow.tsx +2 -2
  94. package/src/head/MRT_TableHead.tsx +9 -9
  95. package/src/head/MRT_TableHeadCell.tsx +10 -6
  96. package/src/head/MRT_TableHeadCellColumnActionsButton.tsx +9 -6
  97. package/src/head/MRT_TableHeadCellFilterContainer.tsx +11 -4
  98. package/src/head/MRT_TableHeadCellFilterLabel.tsx +106 -61
  99. package/src/head/MRT_TableHeadCellGrabHandle.tsx +2 -2
  100. package/src/head/MRT_TableHeadCellResizeHandle.tsx +11 -11
  101. package/src/head/MRT_TableHeadCellSortLabel.tsx +8 -8
  102. package/src/head/MRT_TableHeadRow.tsx +2 -2
  103. package/src/hooks/useMRT_DisplayColumns.tsx +5 -5
  104. package/src/hooks/useMRT_Effects.ts +3 -3
  105. package/src/hooks/useMRT_TableInstance.ts +15 -14
  106. package/src/hooks/useMRT_TableOptions.ts +3 -3
  107. package/src/icons.ts +2 -2
  108. package/src/inputs/MRT_EditCellTextField.tsx +9 -9
  109. package/src/inputs/MRT_FilterCheckbox.tsx +7 -7
  110. package/src/inputs/MRT_FilterRangeFields.tsx +1 -1
  111. package/src/inputs/MRT_FilterRangeSlider.tsx +6 -6
  112. package/src/inputs/MRT_FilterTextField.tsx +75 -75
  113. package/src/inputs/MRT_GlobalFilterTextField.tsx +26 -26
  114. package/src/inputs/MRT_SelectCheckbox.tsx +7 -7
  115. package/src/locales/fr.ts +1 -1
  116. package/src/menus/MRT_ColumnActionMenu.tsx +14 -14
  117. package/src/menus/MRT_FilterOptionMenu.tsx +35 -35
  118. package/src/menus/MRT_RowActionMenu.tsx +7 -7
  119. package/src/menus/MRT_ShowHideColumnsMenu.tsx +6 -6
  120. package/src/menus/MRT_ShowHideColumnsMenuItems.tsx +5 -5
  121. package/src/modals/MRT_EditRowModal.tsx +8 -8
  122. package/src/sortingFns.ts +1 -1
  123. package/src/table/MRT_Table.tsx +7 -7
  124. package/src/table/MRT_TableContainer.tsx +10 -10
  125. package/src/table/MRT_TablePaper.tsx +9 -9
  126. package/src/toolbar/MRT_BottomToolbar.tsx +5 -5
  127. package/src/toolbar/MRT_LinearProgressBar.tsx +4 -4
  128. package/src/toolbar/MRT_TablePagination.tsx +19 -19
  129. package/src/toolbar/MRT_ToolbarAlertBanner.tsx +4 -4
  130. package/src/toolbar/MRT_ToolbarDropZone.tsx +6 -6
  131. package/src/toolbar/MRT_ToolbarInternalButtons.tsx +8 -5
  132. package/src/toolbar/MRT_TopToolbar.tsx +7 -7
  133. package/src/types.ts +263 -263
  134. package/src/useMaterialReactTable.ts +1 -1
@@ -1,8 +1,8 @@
1
1
  import { type DragEvent, useEffect } from 'react';
2
- import { alpha } from '@mui/material/styles';
3
2
  import Box from '@mui/material/Box';
4
3
  import Fade from '@mui/material/Fade';
5
4
  import Typography from '@mui/material/Typography';
5
+ import { alpha } from '@mui/material/styles';
6
6
  import { type MRT_TableInstance } from '../types';
7
7
 
8
8
  interface Props<TData extends Record<string, any>> {
@@ -19,7 +19,7 @@ export const MRT_ToolbarDropZone = <TData extends Record<string, any>>({
19
19
  setShowToolbarDropZone,
20
20
  } = table;
21
21
 
22
- const { draggingColumn, hoveredColumn, grouping, showToolbarDropZone } =
22
+ const { draggingColumn, grouping, hoveredColumn, showToolbarDropZone } =
23
23
  getState();
24
24
 
25
25
  const handleDragEnter = (_event: DragEvent<HTMLDivElement>) => {
@@ -41,23 +41,23 @@ export const MRT_ToolbarDropZone = <TData extends Record<string, any>>({
41
41
  <Fade in={showToolbarDropZone}>
42
42
  <Box
43
43
  className="Mui-ToolbarDropZone"
44
+ onDragEnter={handleDragEnter}
44
45
  sx={(theme) => ({
45
46
  alignItems: 'center',
47
+ backdropFilter: 'blur(4px)',
46
48
  backgroundColor: alpha(
47
49
  theme.palette.info.main,
48
50
  hoveredColumn?.id === 'drop-zone' ? 0.2 : 0.1,
49
51
  ),
50
- backdropFilter: 'blur(4px)',
51
- boxSizing: 'border-box',
52
52
  border: `dashed ${theme.palette.info.main} 2px`,
53
+ boxSizing: 'border-box',
53
54
  display: 'flex',
54
- justifyContent: 'center',
55
55
  height: '100%',
56
+ justifyContent: 'center',
56
57
  position: 'absolute',
57
58
  width: '100%',
58
59
  zIndex: 4,
59
60
  })}
60
- onDragEnter={handleDragEnter}
61
61
  >
62
62
  <Typography fontStyle="italic">
63
63
  {localization.dropToGroupBy.replace(
@@ -1,8 +1,8 @@
1
1
  import Box from '@mui/material/Box';
2
- import { MRT_ToggleFullScreenButton } from '../buttons/MRT_ToggleFullScreenButton';
3
2
  import { MRT_ShowHideColumnsButton } from '../buttons/MRT_ShowHideColumnsButton';
4
3
  import { MRT_ToggleDensePaddingButton } from '../buttons/MRT_ToggleDensePaddingButton';
5
4
  import { MRT_ToggleFiltersButton } from '../buttons/MRT_ToggleFiltersButton';
5
+ import { MRT_ToggleFullScreenButton } from '../buttons/MRT_ToggleFullScreenButton';
6
6
  import { MRT_ToggleGlobalFilterButton } from '../buttons/MRT_ToggleGlobalFilterButton';
7
7
  import { type MRT_TableInstance } from '../types';
8
8
 
@@ -15,14 +15,15 @@ export const MRT_ToolbarInternalButtons = <TData extends Record<string, any>>({
15
15
  }: Props<TData>) => {
16
16
  const {
17
17
  options: {
18
+ columnFilterDisplayMode,
18
19
  enableColumnFilters,
19
20
  enableColumnOrdering,
21
+ enableColumnPinning,
20
22
  enableDensityToggle,
21
23
  enableFilters,
22
24
  enableFullScreenToggle,
23
25
  enableGlobalFilter,
24
26
  enableHiding,
25
- enableColumnPinning,
26
27
  initialState,
27
28
  renderToolbarInternalActions,
28
29
  },
@@ -45,9 +46,11 @@ export const MRT_ToolbarInternalButtons = <TData extends Record<string, any>>({
45
46
  !initialState?.showGlobalFilter && (
46
47
  <MRT_ToggleGlobalFilterButton table={table} />
47
48
  )}
48
- {enableFilters && enableColumnFilters && (
49
- <MRT_ToggleFiltersButton table={table} />
50
- )}
49
+ {enableFilters &&
50
+ enableColumnFilters &&
51
+ columnFilterDisplayMode !== 'popover' && (
52
+ <MRT_ToggleFiltersButton table={table} />
53
+ )}
51
54
  {(enableHiding || enableColumnOrdering || enableColumnPinning) && (
52
55
  <MRT_ShowHideColumnsButton table={table} />
53
56
  )}
@@ -1,16 +1,16 @@
1
1
  import Box from '@mui/material/Box';
2
2
  import Toolbar from '@mui/material/Toolbar';
3
- import useMediaQuery from '@mui/material/useMediaQuery';
4
3
  import { lighten } from '@mui/material/styles';
5
- import { MRT_GlobalFilterTextField } from '../inputs/MRT_GlobalFilterTextField';
4
+ import { type Theme } from '@mui/material/styles';
5
+ import useMediaQuery from '@mui/material/useMediaQuery';
6
6
  import { MRT_LinearProgressBar } from './MRT_LinearProgressBar';
7
7
  import { MRT_TablePagination } from './MRT_TablePagination';
8
8
  import { MRT_ToolbarAlertBanner } from './MRT_ToolbarAlertBanner';
9
- import { MRT_ToolbarInternalButtons } from './MRT_ToolbarInternalButtons';
10
9
  import { MRT_ToolbarDropZone } from './MRT_ToolbarDropZone';
11
- import { type MRT_TableInstance } from '../types';
12
- import { type Theme } from '@mui/material/styles';
10
+ import { MRT_ToolbarInternalButtons } from './MRT_ToolbarInternalButtons';
13
11
  import { parseFromValuesOrFunc } from '../column.utils';
12
+ import { MRT_GlobalFilterTextField } from '../inputs/MRT_GlobalFilterTextField';
13
+ import { type MRT_TableInstance } from '../types';
14
14
 
15
15
  export const commonToolbarStyles = ({ theme }: { theme: Theme }) => ({
16
16
  alignItems: 'flex-start',
@@ -122,8 +122,8 @@ export const MRT_TopToolbar = <TData extends Record<string, any>>({
122
122
  )}
123
123
  </Box>
124
124
  {enablePagination &&
125
- ['top', 'both'].includes(positionPagination ?? '') && (
126
- <MRT_TablePagination table={table} position="top" />
125
+ ['both', 'top'].includes(positionPagination ?? '') && (
126
+ <MRT_TablePagination position="top" table={table} />
127
127
  )}
128
128
  <MRT_LinearProgressBar isTopToolbar table={table} />
129
129
  </Toolbar>