material-react-table 2.0.5 → 2.0.6

Sign up to get free protection for your applications and to get access to all the features.
@@ -5,5 +5,5 @@ interface Params<TData extends MRT_RowData> {
5
5
  grouping: MRT_GroupingState;
6
6
  tableOptions: MRT_DefinedTableOptions<TData>;
7
7
  }
8
- export declare const useMRT_DisplayColumns: <TData extends MRT_RowData>({ columnOrder, creatingRow, grouping, tableOptions, }: Params<TData>) => MRT_ColumnDef<TData>[];
8
+ export declare const useMRT_DisplayColumns: <TData extends MRT_RowData>(params: Params<TData>) => MRT_ColumnDef<TData>[];
9
9
  export {};
@@ -0,0 +1,2 @@
1
+ import { type MRT_Localization } from '..';
2
+ export declare const MRT_Localization_HE: MRT_Localization;
@@ -1,6 +1,7 @@
1
1
  import { type PaginationProps } from '@mui/material/Pagination';
2
2
  import { type MRT_RowData, type MRT_TableInstance } from '../types';
3
3
  interface Props<TData extends MRT_RowData> extends Partial<PaginationProps & {
4
+ disabled?: boolean;
4
5
  rowsPerPageOptions?: {
5
6
  label: string;
6
7
  value: number;
package/package.json CHANGED
@@ -1,5 +1,5 @@
1
1
  {
2
- "version": "2.0.5",
2
+ "version": "2.0.6",
3
3
  "license": "MIT",
4
4
  "name": "material-react-table",
5
5
  "description": "A fully featured Material UI V5 implementation of TanStack React Table V8, written from the ground up in TypeScript.",
@@ -61,30 +61,30 @@
61
61
  "storybook:dev": "storybook dev -p 6006"
62
62
  },
63
63
  "devDependencies": {
64
- "@babel/core": "^7.23.5",
64
+ "@babel/core": "^7.23.6",
65
65
  "@babel/preset-react": "^7.23.3",
66
66
  "@emotion/react": "^11.11.1",
67
67
  "@emotion/styled": "^11.11.0",
68
68
  "@faker-js/faker": "^8.3.1",
69
- "@mui/icons-material": "^5.14.19",
70
- "@mui/material": "^5.14.19",
71
- "@mui/x-date-pickers": "^6.18.3",
69
+ "@mui/icons-material": "^5.15.0",
70
+ "@mui/material": "^5.15.0",
71
+ "@mui/x-date-pickers": "^6.18.4",
72
72
  "@rollup/plugin-typescript": "^11.1.5",
73
- "@size-limit/preset-small-lib": "^11.0.0",
74
- "@storybook/addon-a11y": "^7.6.3",
75
- "@storybook/addon-essentials": "^7.6.3",
76
- "@storybook/addon-interactions": "^7.6.3",
77
- "@storybook/addon-links": "^7.6.3",
78
- "@storybook/addon-storysource": "^7.6.3",
79
- "@storybook/blocks": "^7.6.3",
80
- "@storybook/react": "^7.6.3",
81
- "@storybook/react-vite": "^7.6.3",
73
+ "@size-limit/preset-small-lib": "^11.0.1",
74
+ "@storybook/addon-a11y": "^7.5.3",
75
+ "@storybook/addon-essentials": "^7.5.3",
76
+ "@storybook/addon-interactions": "^7.5.3",
77
+ "@storybook/addon-links": "^7.5.3",
78
+ "@storybook/addon-storysource": "^7.5.3",
79
+ "@storybook/blocks": "^7.5.3",
80
+ "@storybook/react": "^7.5.3",
81
+ "@storybook/react-vite": "^7.5.3",
82
82
  "@storybook/testing-library": "^0.2.2",
83
- "@types/node": "^20.10.3",
84
- "@types/react": "^18.2.42",
83
+ "@types/node": "^20.10.4",
84
+ "@types/react": "^18.2.45",
85
85
  "@types/react-dom": "^18.2.17",
86
- "@typescript-eslint/eslint-plugin": "^6.13.2",
87
- "@typescript-eslint/parser": "^6.13.2",
86
+ "@typescript-eslint/eslint-plugin": "^6.14.0",
87
+ "@typescript-eslint/parser": "^6.14.0",
88
88
  "@vitejs/plugin-react": "^4.2.1",
89
89
  "eslint": "^8.55.0",
90
90
  "eslint-plugin-mui-path-imports": "^0.0.15",
@@ -96,12 +96,12 @@
96
96
  "rollup": "^2.79.1",
97
97
  "rollup-plugin-dts": "^6.1.0",
98
98
  "rollup-plugin-peer-deps-external": "^2.2.4",
99
- "size-limit": "^11.0.0",
100
- "storybook": "^7.6.3",
101
- "storybook-dark-mode": "^3.0.3",
99
+ "size-limit": "^11.0.1",
100
+ "storybook": "^7.5.3",
101
+ "storybook-dark-mode": "^3.0.1",
102
102
  "tslib": "^2.6.2",
103
- "typescript": "^5.3.2",
104
- "vite": "^5.0.5"
103
+ "typescript": "^5.3.3",
104
+ "vite": "^5.0.8"
105
105
  },
106
106
  "peerDependencies": {
107
107
  "@emotion/react": ">=11.11",
@@ -126,12 +126,12 @@ export const MRT_TableBodyCell = <TData extends MRT_RowData>({
126
126
  const borderStyle = showResizeBorder
127
127
  ? `2px solid ${draggingBorderColor} !important`
128
128
  : isDraggingColumn || isDraggingRow
129
- ? `1px dashed ${theme.palette.grey[500]} !important`
130
- : isHoveredColumn ||
131
- isHoveredRow ||
132
- columnSizingInfo.isResizingColumn === column.id
133
- ? `2px dashed ${draggingBorderColor} !important`
134
- : undefined;
129
+ ? `1px dashed ${theme.palette.grey[500]} !important`
130
+ : isHoveredColumn ||
131
+ isHoveredRow ||
132
+ columnSizingInfo.isResizingColumn === column.id
133
+ ? `2px dashed ${draggingBorderColor} !important`
134
+ : undefined;
135
135
 
136
136
  if (showResizeBorder) {
137
137
  return { borderRight: borderStyle };
@@ -168,6 +168,7 @@ export const MRT_TableBodyCell = <TData extends MRT_RowData>({
168
168
  ]);
169
169
 
170
170
  const isEditable =
171
+ !cell.getIsPlaceholder() &&
171
172
  parseFromValuesOrFunc(enableEditing, row) &&
172
173
  parseFromValuesOrFunc(columnDef.enableEditing, row) !== false;
173
174
 
@@ -222,7 +223,8 @@ export const MRT_TableBodyCell = <TData extends MRT_RowData>({
222
223
  sx={(theme) => ({
223
224
  '&:hover': {
224
225
  outline:
225
- ['cell', 'table'].includes(editDisplayMode ?? '') && isEditable
226
+ (editDisplayMode === 'cell' && isEditable) ||
227
+ (editDisplayMode === 'table' && (isCreating || isEditing))
226
228
  ? `1px solid ${theme.palette.grey[500]}`
227
229
  : undefined,
228
230
  outlineOffset: '-1px',
@@ -241,12 +243,12 @@ export const MRT_TableBodyCell = <TData extends MRT_RowData>({
241
243
  ? '0 0.5rem'
242
244
  : '0.5rem'
243
245
  : density === 'comfortable'
244
- ? columnDefType === 'display'
245
- ? '0.5rem 0.75rem'
246
- : '1rem'
247
- : columnDefType === 'display'
248
- ? '1rem 1.25rem'
249
- : '1.5rem',
246
+ ? columnDefType === 'display'
247
+ ? '0.5rem 0.75rem'
248
+ : '1rem'
249
+ : columnDefType === 'display'
250
+ ? '1rem 1.25rem'
251
+ : '1.5rem',
250
252
  textOverflow: columnDefType !== 'display' ? 'ellipsis' : undefined,
251
253
  [theme.direction === 'rtl' ? 'pr' : 'pl']:
252
254
  column.id === 'mrt-row-expand'
@@ -255,8 +257,8 @@ export const MRT_TableBodyCell = <TData extends MRT_RowData>({
255
257
  (density === 'compact'
256
258
  ? 0.5
257
259
  : density === 'comfortable'
258
- ? 0.75
259
- : 1.25)
260
+ ? 0.75
261
+ : 1.25)
260
262
  }rem`
261
263
  : undefined,
262
264
  whiteSpace:
@@ -37,15 +37,15 @@ export const MRT_TableBodyCellValue = <TData extends MRT_RowData>({
37
37
  table,
38
38
  })
39
39
  : row.getIsGrouped() && !cell.getIsGrouped()
40
- ? null
41
- : cell.getIsGrouped() && columnDef.GroupedCell
42
- ? columnDef.GroupedCell({
43
- cell,
44
- column,
45
- row,
46
- table,
47
- })
48
- : undefined;
40
+ ? null
41
+ : cell.getIsGrouped() && columnDef.GroupedCell
42
+ ? columnDef.GroupedCell({
43
+ cell,
44
+ column,
45
+ row,
46
+ table,
47
+ })
48
+ : undefined;
49
49
 
50
50
  const isGroupedValue = renderedCellValue !== undefined;
51
51
 
@@ -153,8 +153,8 @@ export const MRT_TableBodyRow = <TData extends MRT_RowData>({
153
153
  ? row.getIsSelected()
154
154
  ? `${alpha(selectedRowBackgroundColor, 0.3)}`
155
155
  : theme.palette.mode === 'dark'
156
- ? `${lighten(baseBackgroundColor, 0.05)}`
157
- : `${darken(baseBackgroundColor, 0.05)}`
156
+ ? `${lighten(baseBackgroundColor, 0.05)}`
157
+ : `${darken(baseBackgroundColor, 0.05)}`
158
158
  : undefined,
159
159
  },
160
160
  backgroundColor: `${baseBackgroundColor} !important`,
@@ -170,28 +170,28 @@ export const MRT_TableBodyRow = <TData extends MRT_RowData>({
170
170
  opacity: isPinned
171
171
  ? 0.97
172
172
  : draggingRow?.id === row.id || hoveredRow?.id === row.id
173
- ? 0.5
174
- : 1,
173
+ ? 0.5
174
+ : 1,
175
175
  position: virtualRow
176
176
  ? 'absolute'
177
177
  : rowPinningDisplayMode?.includes('sticky') && isPinned
178
- ? 'sticky'
179
- : undefined,
178
+ ? 'sticky'
179
+ : undefined,
180
180
  td: {
181
181
  backgroundColor: row.getIsSelected()
182
182
  ? selectedRowBackgroundColor
183
183
  : isPinned
184
- ? pinnedRowBackgroundColor
185
- : undefined,
184
+ ? pinnedRowBackgroundColor
185
+ : undefined,
186
186
  },
187
187
  top: virtualRow
188
188
  ? 0
189
189
  : topPinnedIndex !== undefined && isPinned
190
- ? `${
191
- topPinnedIndex * rowHeight +
192
- (enableStickyHeader || isFullScreen ? tableHeadHeight - 1 : 0)
193
- }px`
194
- : undefined,
190
+ ? `${
191
+ topPinnedIndex * rowHeight +
192
+ (enableStickyHeader || isFullScreen ? tableHeadHeight - 1 : 0)
193
+ }px`
194
+ : undefined,
195
195
  transition: virtualRow ? 'none' : 'all 150ms ease-in-out',
196
196
  width: '100%',
197
197
  zIndex:
@@ -69,8 +69,8 @@ export const MRT_RowPinButton = <TData extends MRT_RowData>({
69
69
  rowPinningDisplayMode === 'sticky'
70
70
  ? 135
71
71
  : pinningPosition === 'top'
72
- ? 180
73
- : 0
72
+ ? 180
73
+ : 0
74
74
  }deg)`,
75
75
  }}
76
76
  />
@@ -25,8 +25,8 @@ export const MRT_ToggleDensePaddingButton = <TData extends MRT_RowData>({
25
25
  density === 'comfortable'
26
26
  ? 'compact'
27
27
  : density === 'compact'
28
- ? 'spacious'
29
- : 'comfortable';
28
+ ? 'spacious'
29
+ : 'comfortable';
30
30
  setDensity(nextDensity);
31
31
  };
32
32
 
@@ -47,8 +47,8 @@ export const MRT_TableFooterCell = <TData extends MRT_RowData>({
47
47
  density === 'compact'
48
48
  ? '0.5rem'
49
49
  : density === 'comfortable'
50
- ? '1rem'
51
- : '1.5rem',
50
+ ? '1rem'
51
+ : '1.5rem',
52
52
  verticalAlign: 'top',
53
53
  zIndex: column.getIsPinned() && columnDefType !== 'group' ? 2 : 1,
54
54
  ...getCommonMRTCellStyles({
@@ -97,10 +97,10 @@ export const MRT_TableHeadCell = <TData extends MRT_RowData>({
97
97
  const borderStyle = showResizeBorder
98
98
  ? `2px solid ${draggingBorderColor} !important`
99
99
  : draggingColumn?.id === column.id
100
- ? `1px dashed ${theme.palette.grey[500]}`
101
- : hoveredColumn?.id === column.id
102
- ? `2px dashed ${draggingBorderColor}`
103
- : undefined;
100
+ ? `1px dashed ${theme.palette.grey[500]}`
101
+ : hoveredColumn?.id === column.id
102
+ ? `2px dashed ${draggingBorderColor}`
103
+ : undefined;
104
104
 
105
105
  if (showResizeBorder) {
106
106
  return { borderRight: borderStyle };
@@ -158,32 +158,32 @@ export const MRT_TableHeadCell = <TData extends MRT_RowData>({
158
158
  density === 'compact'
159
159
  ? '0.5rem'
160
160
  : density === 'comfortable'
161
- ? columnDefType === 'display'
162
- ? '0.75rem'
163
- : '1rem'
164
- : columnDefType === 'display'
165
- ? '1rem 1.25rem'
166
- : '1.5rem',
161
+ ? columnDefType === 'display'
162
+ ? '0.75rem'
163
+ : '1rem'
164
+ : columnDefType === 'display'
165
+ ? '1rem 1.25rem'
166
+ : '1.5rem',
167
167
  pb:
168
168
  columnDefType === 'display'
169
169
  ? 0
170
170
  : showColumnFilters || density === 'compact'
171
- ? '0.4rem'
172
- : '0.6rem',
171
+ ? '0.4rem'
172
+ : '0.6rem',
173
173
  pt:
174
174
  columnDefType === 'group' || density === 'compact'
175
175
  ? '0.25rem'
176
176
  : density === 'comfortable'
177
- ? '.75rem'
178
- : '1.25rem',
177
+ ? '.75rem'
178
+ : '1.25rem',
179
179
  userSelect: enableMultiSort && column.getCanSort() ? 'none' : undefined,
180
180
  verticalAlign: 'top',
181
181
  zIndex:
182
182
  column.getIsResizing() || draggingColumn?.id === column.id
183
183
  ? 3
184
184
  : column.getIsPinned() && columnDefType !== 'group'
185
- ? 2
186
- : 1,
185
+ ? 2
186
+ : 1,
187
187
  ...getCommonMRTCellStyles({
188
188
  column,
189
189
  header,
@@ -209,8 +209,8 @@ export const MRT_TableHeadCell = <TData extends MRT_RowData>({
209
209
  tableCellProps?.align === 'center'
210
210
  ? 'center'
211
211
  : column.getCanResize()
212
- ? 'space-between'
213
- : 'flex-start',
212
+ ? 'space-between'
213
+ : 'flex-start',
214
214
  position: 'relative',
215
215
  width: '100%',
216
216
  }}
@@ -264,7 +264,9 @@ export const MRT_TableHeadCell = <TData extends MRT_RowData>({
264
264
  {columnDefType !== 'group' && (
265
265
  <Box
266
266
  className="Mui-TableHeadCell-Content-Actions"
267
- sx={{ whiteSpace: 'nowrap' }}
267
+ sx={{
268
+ whiteSpace: 'nowrap',
269
+ }}
268
270
  >
269
271
  {showDragHandle && (
270
272
  <MRT_TableHeadCellGrabHandle
@@ -52,10 +52,10 @@ export const MRT_TableHeadCellResizeHandle = <TData extends MRT_RowData>({
52
52
  cursor: 'col-resize',
53
53
  mr:
54
54
  density === 'compact'
55
- ? '-12px'
55
+ ? '-8px'
56
56
  : density === 'comfortable'
57
- ? '-20px'
58
- : '-28px',
57
+ ? '-16px'
58
+ : '-24px',
59
59
  position: 'absolute',
60
60
  px: '4px',
61
61
  right: column.columnDef.columnDefType === 'display' ? '4px' : '0',
@@ -70,6 +70,7 @@ export const MRT_TableHeadCellResizeHandle = <TData extends MRT_RowData>({
70
70
  borderWidth: '2px',
71
71
  height: '24px',
72
72
  touchAction: 'none',
73
+ transform: 'translateX(4px)',
73
74
  transition: column.getIsResizing()
74
75
  ? undefined
75
76
  : 'all 150ms ease-in-out',