material-react-table 1.7.4 → 1.8.1
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/README.md +5 -13
- package/dist/cjs/index.js +84 -38
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/types/MaterialReactTable.d.ts +16 -8
- package/dist/cjs/types/body/MRT_TableBody.d.ts +3 -4
- package/dist/cjs/types/body/MRT_TableBodyCell.d.ts +2 -3
- package/dist/cjs/types/body/MRT_TableBodyRow.d.ts +4 -5
- package/dist/cjs/types/body/MRT_TableDetailPanel.d.ts +2 -3
- package/dist/cjs/types/column.utils.d.ts +4 -4
- package/dist/cjs/types/footer/MRT_TableFooter.d.ts +2 -3
- package/dist/cjs/types/footer/MRT_TableFooterRow.d.ts +2 -3
- package/dist/cjs/types/head/MRT_TableHead.d.ts +2 -3
- package/dist/cjs/types/head/MRT_TableHeadRow.d.ts +2 -3
- package/dist/cjs/types/table/MRT_TableRoot.d.ts +1 -272
- package/dist/esm/material-react-table.esm.js +82 -39
- package/dist/esm/material-react-table.esm.js.map +1 -1
- package/dist/esm/types/MaterialReactTable.d.ts +16 -8
- package/dist/esm/types/body/MRT_TableBody.d.ts +3 -4
- package/dist/esm/types/body/MRT_TableBodyCell.d.ts +2 -3
- package/dist/esm/types/body/MRT_TableBodyRow.d.ts +4 -5
- package/dist/esm/types/body/MRT_TableDetailPanel.d.ts +2 -3
- package/dist/esm/types/column.utils.d.ts +4 -4
- package/dist/esm/types/footer/MRT_TableFooter.d.ts +2 -3
- package/dist/esm/types/footer/MRT_TableFooterRow.d.ts +2 -3
- package/dist/esm/types/head/MRT_TableHead.d.ts +2 -3
- package/dist/esm/types/head/MRT_TableHeadRow.d.ts +2 -3
- package/dist/esm/types/table/MRT_TableRoot.d.ts +1 -272
- package/dist/index.d.ts +16 -7
- package/package.json +2 -2
- package/src/MaterialReactTable.tsx +44 -7
- package/src/body/MRT_TableBody.tsx +11 -10
- package/src/body/MRT_TableBodyCell.tsx +8 -12
- package/src/body/MRT_TableBodyCellValue.tsx +1 -0
- package/src/body/MRT_TableBodyRow.tsx +14 -7
- package/src/body/MRT_TableDetailPanel.tsx +2 -3
- package/src/buttons/MRT_ToggleRowActionMenuButton.tsx +4 -1
- package/src/column.utils.ts +12 -9
- package/src/footer/MRT_TableFooter.tsx +2 -3
- package/src/footer/MRT_TableFooterRow.tsx +7 -3
- package/src/head/MRT_TableHead.tsx +2 -3
- package/src/head/MRT_TableHeadCellSortLabel.tsx +4 -0
- package/src/head/MRT_TableHeadRow.tsx +7 -3
- package/src/inputs/MRT_EditCellTextField.tsx +38 -2
- package/src/menus/MRT_FilterOptionMenu.tsx +14 -5
- package/src/menus/MRT_RowActionMenu.tsx +12 -10
- package/src/table/MRT_Table.tsx +2 -3
- package/src/table/MRT_TableRoot.tsx +33 -19
package/README.md
CHANGED
@@ -27,17 +27,9 @@ View [Documentation](https://www.material-react-table.com/)
|
|
27
27
|
|
28
28
|
### __Built with [Material UI <sup>V5</sup>](https://mui.com) and [TanStack Table <sup>V8</sup>](https://tanstack.com/table/v8)__
|
29
29
|
|
30
|
-
<
|
31
|
-
|
32
|
-
|
33
|
-
=
|
34
|
-
<img src="https://mui.com/static/logo.png" height="24">
|
35
|
-
🤝
|
36
|
-
<img src="https://react-table-v7.tanstack.com/_next/static/images/logo-light-66d4dd9109004332c863391e6d1cb309.svg" height="24">
|
37
|
-
</div>
|
38
|
-
<br />
|
39
|
-
|
40
|
-
MRT is built with Material-UI components on top of [TanStack Table's](https://tanstack.com/table/v8) comprehensive and powerful react hooks api.
|
30
|
+
<img src="https://material-react-table.com/banner.png" alt="MRT" height="50"/>
|
31
|
+
|
32
|
+
> Want to use Mantine instead of Material UI? Check out [Mantine React Table](https://www.mantine-react-table.com)
|
41
33
|
|
42
34
|
## Learn More
|
43
35
|
|
@@ -148,7 +140,7 @@ export default function App() {
|
|
148
140
|
accessorKey: 'name', //simple recommended way to define a column
|
149
141
|
header: 'Name',
|
150
142
|
muiTableHeadCellProps: { sx: { color: 'green' } }, //optional custom props
|
151
|
-
Cell: ({ cell}) => <span>{cell.getValue()}</span>, //optional custom cell render
|
143
|
+
Cell: ({ cell }) => <span>{cell.getValue()}</span>, //optional custom cell render
|
152
144
|
},
|
153
145
|
{
|
154
146
|
accessorFn: (row) => row.age, //alternate way
|
@@ -202,4 +194,4 @@ PRs are Welcome, but please discuss in [GitHub Discussions](https://github.com/K
|
|
202
194
|
|
203
195
|
Read the [Contributing Guide](https://github.com/KevinVandy/material-react-table/blob/main/CONTRIBUTING.md) to learn how to run this project locally.
|
204
196
|
|
205
|
-
<!-- Use the FORCE, Luke! -->
|
197
|
+
<!-- Use the FORCE, Luke! -->
|
package/dist/cjs/index.js
CHANGED
@@ -365,7 +365,12 @@ const MRT_DefaultDisplayColumn = {
|
|
365
365
|
enableResizing: false,
|
366
366
|
enableSorting: false,
|
367
367
|
};
|
368
|
-
const parseCSSVarId = (id) => id
|
368
|
+
const parseCSSVarId = (id) => id
|
369
|
+
.replaceAll('.', '_')
|
370
|
+
.replaceAll(' ', '_')
|
371
|
+
.replaceAll('+', '_')
|
372
|
+
.replaceAll('(', '_')
|
373
|
+
.replaceAll(')', '_');
|
369
374
|
|
370
375
|
const fuzzy$1 = (row, columnId, filterValue, addMeta) => {
|
371
376
|
const itemRank = matchSorterUtils.rankItem(row.getValue(columnId), filterValue, {
|
@@ -635,6 +640,7 @@ const MRT_FilterOptionMenu = ({ anchorEl, header, onSelect, setAnchorEl, setFilt
|
|
635
640
|
const { globalFilterFn, density } = getState();
|
636
641
|
const { column } = header !== null && header !== void 0 ? header : {};
|
637
642
|
const { columnDef } = column !== null && column !== void 0 ? column : {};
|
643
|
+
const currentFilterValue = column === null || column === void 0 ? void 0 : column.getFilterValue();
|
638
644
|
const allowedColumnFilterOptions = (_a = columnDef === null || columnDef === void 0 ? void 0 : columnDef.columnFilterModeOptions) !== null && _a !== void 0 ? _a : columnFilterModeOptions;
|
639
645
|
const internalFilterOptions = React.useMemo(() => mrtFilterOptions(localization).filter((filterOption) => columnDef
|
640
646
|
? allowedColumnFilterOptions === undefined ||
|
@@ -646,12 +652,16 @@ const MRT_FilterOptionMenu = ({ anchorEl, header, onSelect, setAnchorEl, setFilt
|
|
646
652
|
if (header && column) {
|
647
653
|
setColumnFilterFns((prev) => (Object.assign(Object.assign({}, prev), { [header.id]: option })));
|
648
654
|
if (['empty', 'notEmpty'].includes(option)) {
|
649
|
-
|
655
|
+
if (currentFilterValue !== ' ') {
|
656
|
+
column.setFilterValue(' ');
|
657
|
+
}
|
650
658
|
}
|
651
659
|
else if ((columnDef === null || columnDef === void 0 ? void 0 : columnDef.filterVariant) === 'multi-select' ||
|
652
660
|
['arrIncludesSome', 'arrIncludesAll', 'arrIncludes'].includes(option)) {
|
653
|
-
|
654
|
-
|
661
|
+
if (currentFilterValue === null || currentFilterValue === void 0 ? void 0 : currentFilterValue.length) {
|
662
|
+
column.setFilterValue([]);
|
663
|
+
setFilterValue === null || setFilterValue === void 0 ? void 0 : setFilterValue([]);
|
664
|
+
}
|
655
665
|
}
|
656
666
|
else if ((columnDef === null || columnDef === void 0 ? void 0 : columnDef.filterVariant) === 'range' ||
|
657
667
|
['between', 'betweenInclusive', 'inNumberRange'].includes(option)) {
|
@@ -659,8 +669,10 @@ const MRT_FilterOptionMenu = ({ anchorEl, header, onSelect, setAnchorEl, setFilt
|
|
659
669
|
setFilterValue === null || setFilterValue === void 0 ? void 0 : setFilterValue('');
|
660
670
|
}
|
661
671
|
else {
|
662
|
-
|
663
|
-
|
672
|
+
if (!['', undefined].includes(currentFilterValue)) {
|
673
|
+
column.setFilterValue('');
|
674
|
+
setFilterValue === null || setFilterValue === void 0 ? void 0 : setFilterValue('');
|
675
|
+
}
|
664
676
|
}
|
665
677
|
}
|
666
678
|
else {
|
@@ -1039,11 +1051,13 @@ const MRT_RowActionMenu = ({ anchorEl, handleEdit, row, setAnchorEl, table, }) =
|
|
1039
1051
|
return (React__default["default"].createElement(Menu__default["default"], { anchorEl: anchorEl, open: !!anchorEl, onClose: () => setAnchorEl(null), MenuListProps: {
|
1040
1052
|
dense: density === 'compact',
|
1041
1053
|
} },
|
1042
|
-
enableEditing
|
1043
|
-
|
1044
|
-
|
1045
|
-
|
1046
|
-
|
1054
|
+
enableEditing instanceof Function
|
1055
|
+
? enableEditing(row)
|
1056
|
+
: enableEditing && (React__default["default"].createElement(MenuItem__default["default"], { onClick: handleEdit, sx: commonMenuItemStyles },
|
1057
|
+
React__default["default"].createElement(Box__default["default"], { sx: commonListItemStyles },
|
1058
|
+
React__default["default"].createElement(ListItemIcon__default["default"], null,
|
1059
|
+
React__default["default"].createElement(EditIcon, null)),
|
1060
|
+
localization.edit))), renderRowActionMenuItems === null || renderRowActionMenuItems === void 0 ? void 0 :
|
1047
1061
|
renderRowActionMenuItems({
|
1048
1062
|
row,
|
1049
1063
|
table,
|
@@ -1110,7 +1124,10 @@ const MRT_ToggleRowActionMenuButton = ({ cell, row, table, }) => {
|
|
1110
1124
|
setEditingRow(Object.assign({}, row));
|
1111
1125
|
setAnchorEl(null);
|
1112
1126
|
};
|
1113
|
-
return (React__default["default"].createElement(React__default["default"].Fragment, null, renderRowActions ? (React__default["default"].createElement(React__default["default"].Fragment, null, renderRowActions({ cell, row, table }))) : row.id === (editingRow === null || editingRow === void 0 ? void 0 : editingRow.id) && editingMode === 'row' ? (React__default["default"].createElement(MRT_EditActionButtons, { row: row, table: table })) : !renderRowActionMenuItems &&
|
1127
|
+
return (React__default["default"].createElement(React__default["default"].Fragment, null, renderRowActions ? (React__default["default"].createElement(React__default["default"].Fragment, null, renderRowActions({ cell, row, table }))) : row.id === (editingRow === null || editingRow === void 0 ? void 0 : editingRow.id) && editingMode === 'row' ? (React__default["default"].createElement(MRT_EditActionButtons, { row: row, table: table })) : !renderRowActionMenuItems &&
|
1128
|
+
(enableEditing instanceof Function
|
1129
|
+
? enableEditing(row)
|
1130
|
+
: enableEditing) ? (React__default["default"].createElement(Tooltip__default["default"], { placement: "right", arrow: true, title: localization.edit },
|
1114
1131
|
React__default["default"].createElement(IconButton__default["default"], { "aria-label": localization.edit, sx: commonIconButtonStyles, onClick: handleStartEditMode },
|
1115
1132
|
React__default["default"].createElement(EditIcon, null)))) : renderRowActionMenuItems ? (React__default["default"].createElement(React__default["default"].Fragment, null,
|
1116
1133
|
React__default["default"].createElement(Tooltip__default["default"], { arrow: true, enterDelay: 1000, enterNextDelay: 1000, title: localization.rowActions },
|
@@ -1939,7 +1956,11 @@ const MRT_TableHeadCellSortLabel = ({ header, table, tableCellProps, }) => {
|
|
1939
1956
|
transform: (tableCellProps === null || tableCellProps === void 0 ? void 0 : tableCellProps.align) !== 'right'
|
1940
1957
|
? 'translateX(-0.5ch)'
|
1941
1958
|
: undefined,
|
1942
|
-
}, IconComponent: ArrowDownwardIcon
|
1959
|
+
}, IconComponent: ArrowDownwardIcon, onClick: (e) => {
|
1960
|
+
var _a;
|
1961
|
+
e.stopPropagation();
|
1962
|
+
(_a = header.column.getToggleSortingHandler()) === null || _a === void 0 ? void 0 : _a(e);
|
1963
|
+
} })));
|
1943
1964
|
};
|
1944
1965
|
|
1945
1966
|
const MRT_TableHeadCell = ({ header, table }) => {
|
@@ -2105,7 +2126,7 @@ const MRT_TableHead = ({ table, virtualColumns, virtualPaddingLeft, virtualPaddi
|
|
2105
2126
|
};
|
2106
2127
|
|
2107
2128
|
const MRT_EditCellTextField = ({ cell, showLabel, table, }) => {
|
2108
|
-
var _a;
|
2129
|
+
var _a, _b;
|
2109
2130
|
const { getState, options: { muiTableBodyCellEditTextFieldProps }, refs: { editInputRefs }, setEditingCell, setEditingRow, } = table;
|
2110
2131
|
const { column, row } = cell;
|
2111
2132
|
const { columnDef } = column;
|
@@ -2123,6 +2144,7 @@ const MRT_EditCellTextField = ({ cell, showLabel, table, }) => {
|
|
2123
2144
|
})
|
2124
2145
|
: columnDef.muiTableBodyCellEditTextFieldProps;
|
2125
2146
|
const textFieldProps = Object.assign(Object.assign({}, mTableBodyCellEditTextFieldProps), mcTableBodyCellEditTextFieldProps);
|
2147
|
+
const isSelectEdit = columnDef.editVariant === 'select';
|
2126
2148
|
const saveRow = (newValue) => {
|
2127
2149
|
if (editingRow) {
|
2128
2150
|
setEditingRow(Object.assign(Object.assign({}, editingRow), { _valuesCache: Object.assign(Object.assign({}, editingRow._valuesCache), { [column.id]: newValue }) }));
|
@@ -2152,18 +2174,37 @@ const MRT_EditCellTextField = ({ cell, showLabel, table, }) => {
|
|
2152
2174
|
if (columnDef.Edit) {
|
2153
2175
|
return React__default["default"].createElement(React__default["default"].Fragment, null, (_a = columnDef.Edit) === null || _a === void 0 ? void 0 : _a.call(columnDef, { cell, column, row, table }));
|
2154
2176
|
}
|
2155
|
-
return (React__default["default"].createElement(TextField__default["default"], Object.assign({ disabled: columnDef.enableEditing
|
2177
|
+
return (React__default["default"].createElement(TextField__default["default"], Object.assign({ disabled: (columnDef.enableEditing instanceof Function
|
2178
|
+
? columnDef.enableEditing(row)
|
2179
|
+
: columnDef.enableEditing) === false, fullWidth: true, inputRef: (inputRef) => {
|
2156
2180
|
if (inputRef) {
|
2157
2181
|
editInputRefs.current[column.id] = inputRef;
|
2158
2182
|
if (textFieldProps.inputRef) {
|
2159
2183
|
textFieldProps.inputRef = inputRef;
|
2160
2184
|
}
|
2161
2185
|
}
|
2162
|
-
}, label: showLabel ? column.columnDef.header : undefined, margin: "none", name: column.id, placeholder: columnDef.header, value: value, variant: "standard" }, textFieldProps, { onClick: (e) => {
|
2186
|
+
}, label: showLabel ? column.columnDef.header : undefined, margin: "none", name: column.id, placeholder: columnDef.header, select: isSelectEdit, value: value, variant: "standard" }, textFieldProps, { onClick: (e) => {
|
2163
2187
|
var _a;
|
2164
2188
|
e.stopPropagation();
|
2165
2189
|
(_a = textFieldProps === null || textFieldProps === void 0 ? void 0 : textFieldProps.onClick) === null || _a === void 0 ? void 0 : _a.call(textFieldProps, e);
|
2166
|
-
}, onBlur: handleBlur, onChange: handleChange, onKeyDown: handleEnterKeyDown })))
|
2190
|
+
}, onBlur: handleBlur, onChange: handleChange, onKeyDown: handleEnterKeyDown }), (_b = columnDef === null || columnDef === void 0 ? void 0 : columnDef.editSelectOptions) === null || _b === void 0 ? void 0 : _b.map((option) => {
|
2191
|
+
let value;
|
2192
|
+
let text;
|
2193
|
+
if (typeof option !== 'object') {
|
2194
|
+
value = option;
|
2195
|
+
text = option;
|
2196
|
+
}
|
2197
|
+
else {
|
2198
|
+
value = option.value;
|
2199
|
+
text = option.text;
|
2200
|
+
}
|
2201
|
+
return (React__default["default"].createElement(MenuItem__default["default"], { key: value, sx: {
|
2202
|
+
display: 'flex',
|
2203
|
+
m: 0,
|
2204
|
+
alignItems: 'center',
|
2205
|
+
gap: '0.5rem',
|
2206
|
+
}, value: value }, text));
|
2207
|
+
})));
|
2167
2208
|
};
|
2168
2209
|
|
2169
2210
|
const MRT_CopyButton = ({ cell, children, table, }) => {
|
@@ -2247,6 +2288,7 @@ const MRT_TableBodyCellValue = ({ cell, table }) => {
|
|
2247
2288
|
renderedCellValue = cell.renderValue();
|
2248
2289
|
}
|
2249
2290
|
if (enableFilterMatchHighlighting &&
|
2291
|
+
columnDef.enableFilterMatchHighlighting !== false &&
|
2250
2292
|
renderedCellValue &&
|
2251
2293
|
allowedTypes.includes(typeof renderedCellValue) &&
|
2252
2294
|
((filterValue &&
|
@@ -2339,8 +2381,10 @@ const MRT_TableBodyCell = ({ cell, enableHover, measureElement, numRows, rowInde
|
|
2339
2381
|
}
|
2340
2382
|
: undefined;
|
2341
2383
|
}, [draggingColumn, draggingRow, hoveredColumn, hoveredRow, rowIndex]);
|
2342
|
-
const isEditable = (enableEditing
|
2343
|
-
columnDef.enableEditing
|
2384
|
+
const isEditable = (enableEditing instanceof Function ? enableEditing(row) : enableEditing) &&
|
2385
|
+
(columnDef.enableEditing instanceof Function
|
2386
|
+
? columnDef.enableEditing(row)
|
2387
|
+
: columnDef.enableEditing) !== false;
|
2344
2388
|
const isEditing = isEditable &&
|
2345
2389
|
editingMode !== 'modal' &&
|
2346
2390
|
(editingMode === 'table' ||
|
@@ -2350,9 +2394,7 @@ const MRT_TableBodyCell = ({ cell, enableHover, measureElement, numRows, rowInde
|
|
2350
2394
|
const handleDoubleClick = (event) => {
|
2351
2395
|
var _a;
|
2352
2396
|
(_a = tableCellProps === null || tableCellProps === void 0 ? void 0 : tableCellProps.onDoubleClick) === null || _a === void 0 ? void 0 : _a.call(tableCellProps, event);
|
2353
|
-
if (
|
2354
|
-
columnDef.enableEditing !== false &&
|
2355
|
-
editingMode === 'cell') {
|
2397
|
+
if (isEditable && editingMode === 'cell') {
|
2356
2398
|
setEditingCell(cell);
|
2357
2399
|
queueMicrotask(() => {
|
2358
2400
|
var _a;
|
@@ -2397,8 +2439,7 @@ const MRT_TableBodyCell = ({ cell, enableHover, measureElement, numRows, rowInde
|
|
2397
2439
|
: 1.25)}rem`
|
2398
2440
|
: undefined, textOverflow: columnDefType !== 'display' ? 'ellipsis' : undefined, whiteSpace: density === 'compact' ? 'nowrap' : 'normal', zIndex: (draggingColumn === null || draggingColumn === void 0 ? void 0 : draggingColumn.id) === column.id ? 2 : column.getIsPinned() ? 1 : 0, '&:hover': {
|
2399
2441
|
backgroundColor: enableHover &&
|
2400
|
-
|
2401
|
-
columnDef.enableEditing !== false &&
|
2442
|
+
isEditable &&
|
2402
2443
|
['table', 'cell'].includes(editingMode !== null && editingMode !== void 0 ? editingMode : '')
|
2403
2444
|
? theme.palette.mode === 'dark'
|
2404
2445
|
? `${styles.lighten(theme.palette.background.default, 0.2)} !important`
|
@@ -2857,7 +2898,7 @@ const MRT_EditRowModal = ({ open, row, table, }) => {
|
|
2857
2898
|
};
|
2858
2899
|
|
2859
2900
|
const MRT_TableRoot = (props) => {
|
2860
|
-
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v, _w, _x, _y, _z, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11;
|
2901
|
+
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v, _w, _x, _y, _z, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13;
|
2861
2902
|
const bottomToolbarRef = React.useRef(null);
|
2862
2903
|
const editInputRefs = React.useRef({});
|
2863
2904
|
const filterInputRefs = React.useRef({});
|
@@ -2898,18 +2939,18 @@ const MRT_TableRoot = (props) => {
|
|
2898
2939
|
const [showGlobalFilter, setShowGlobalFilter] = React.useState((_q = initialState === null || initialState === void 0 ? void 0 : initialState.showGlobalFilter) !== null && _q !== void 0 ? _q : false);
|
2899
2940
|
const [showToolbarDropZone, setShowToolbarDropZone] = React.useState((_r = initialState === null || initialState === void 0 ? void 0 : initialState.showToolbarDropZone) !== null && _r !== void 0 ? _r : false);
|
2900
2941
|
const displayColumns = React.useMemo(() => {
|
2901
|
-
var _a, _b, _c, _d, _e;
|
2942
|
+
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s;
|
2902
2943
|
return [
|
2903
|
-
columnOrder.includes('mrt-row-drag') && Object.assign(Object.assign(Object.assign({ header: props.localization.move, size: 60 }, props.defaultDisplayColumn), (
|
2904
|
-
columnOrder.includes('mrt-row-actions') && Object.assign(Object.assign(Object.assign({ Cell: ({ cell, row }) => (React__default["default"].createElement(MRT_ToggleRowActionMenuButton, { cell: cell, row: row, table: table })), header: props.localization.actions, size: 70 }, props.defaultDisplayColumn), (
|
2905
|
-
columnOrder.includes('mrt-row-expand') &&
|
2906
|
-
showExpandColumn(props, grouping) && Object.assign(Object.assign(Object.assign({ Cell: ({ row }) => (React__default["default"].createElement(MRT_ExpandButton, { row: row, table: table })), Header: props.enableExpandAll
|
2944
|
+
((_b = (_a = props.state) === null || _a === void 0 ? void 0 : _a.columnOrder) !== null && _b !== void 0 ? _b : columnOrder).includes('mrt-row-drag') && Object.assign(Object.assign(Object.assign({ header: props.localization.move, size: 60 }, props.defaultDisplayColumn), (_c = props.displayColumnDefOptions) === null || _c === void 0 ? void 0 : _c['mrt-row-drag']), { id: 'mrt-row-drag' }),
|
2945
|
+
((_e = (_d = props.state) === null || _d === void 0 ? void 0 : _d.columnOrder) !== null && _e !== void 0 ? _e : columnOrder).includes('mrt-row-actions') && Object.assign(Object.assign(Object.assign({ Cell: ({ cell, row }) => (React__default["default"].createElement(MRT_ToggleRowActionMenuButton, { cell: cell, row: row, table: table })), header: props.localization.actions, size: 70 }, props.defaultDisplayColumn), (_f = props.displayColumnDefOptions) === null || _f === void 0 ? void 0 : _f['mrt-row-actions']), { id: 'mrt-row-actions' }),
|
2946
|
+
((_h = (_g = props.state) === null || _g === void 0 ? void 0 : _g.columnOrder) !== null && _h !== void 0 ? _h : columnOrder).includes('mrt-row-expand') &&
|
2947
|
+
showExpandColumn(props, (_k = (_j = props.state) === null || _j === void 0 ? void 0 : _j.grouping) !== null && _k !== void 0 ? _k : grouping) && Object.assign(Object.assign(Object.assign({ Cell: ({ row }) => (React__default["default"].createElement(MRT_ExpandButton, { row: row, table: table })), Header: props.enableExpandAll
|
2907
2948
|
? () => React__default["default"].createElement(MRT_ExpandAllButton, { table: table })
|
2908
|
-
: null, header: props.localization.expand, size: 60 }, props.defaultDisplayColumn), (
|
2909
|
-
columnOrder.includes('mrt-row-select') && Object.assign(Object.assign(Object.assign({ Cell: ({ row }) => (React__default["default"].createElement(MRT_SelectCheckbox, { row: row, table: table })), Header: props.enableSelectAll && props.enableMultiRowSelection
|
2949
|
+
: null, header: props.localization.expand, size: 60 }, props.defaultDisplayColumn), (_l = props.displayColumnDefOptions) === null || _l === void 0 ? void 0 : _l['mrt-row-expand']), { id: 'mrt-row-expand' }),
|
2950
|
+
((_o = (_m = props.state) === null || _m === void 0 ? void 0 : _m.columnOrder) !== null && _o !== void 0 ? _o : columnOrder).includes('mrt-row-select') && Object.assign(Object.assign(Object.assign({ Cell: ({ row }) => (React__default["default"].createElement(MRT_SelectCheckbox, { row: row, table: table })), Header: props.enableSelectAll && props.enableMultiRowSelection
|
2910
2951
|
? () => React__default["default"].createElement(MRT_SelectCheckbox, { selectAll: true, table: table })
|
2911
|
-
: null, header: props.localization.select, size: 60 }, props.defaultDisplayColumn), (
|
2912
|
-
columnOrder.includes('mrt-row-numbers') && Object.assign(Object.assign(Object.assign({ Cell: ({ row }) => row.index + 1, Header: () => props.localization.rowNumber, header: props.localization.rowNumbers, size: 60 }, props.defaultDisplayColumn), (
|
2952
|
+
: null, header: props.localization.select, size: 60 }, props.defaultDisplayColumn), (_p = props.displayColumnDefOptions) === null || _p === void 0 ? void 0 : _p['mrt-row-select']), { id: 'mrt-row-select' }),
|
2953
|
+
((_r = (_q = props.state) === null || _q === void 0 ? void 0 : _q.columnOrder) !== null && _r !== void 0 ? _r : columnOrder).includes('mrt-row-numbers') && Object.assign(Object.assign(Object.assign({ Cell: ({ row }) => row.index + 1, Header: () => props.localization.rowNumber, header: props.localization.rowNumbers, size: 60 }, props.defaultDisplayColumn), (_s = props.displayColumnDefOptions) === null || _s === void 0 ? void 0 : _s['mrt-row-numbers']), { id: 'mrt-row-numbers' }),
|
2913
2954
|
].filter(Boolean);
|
2914
2955
|
}, [
|
2915
2956
|
columnOrder,
|
@@ -2932,6 +2973,8 @@ const MRT_TableRoot = (props) => {
|
|
2932
2973
|
props.localization,
|
2933
2974
|
props.positionActionsColumn,
|
2934
2975
|
props.renderDetailPanel,
|
2976
|
+
(_s = props.state) === null || _s === void 0 ? void 0 : _s.columnOrder,
|
2977
|
+
(_t = props.state) === null || _t === void 0 ? void 0 : _t.grouping,
|
2935
2978
|
]);
|
2936
2979
|
const columnDefs = React.useMemo(() => {
|
2937
2980
|
var _a, _b, _c;
|
@@ -2947,7 +2990,7 @@ const MRT_TableRoot = (props) => {
|
|
2947
2990
|
columnFilterFns,
|
2948
2991
|
displayColumns,
|
2949
2992
|
props.columns,
|
2950
|
-
(
|
2993
|
+
(_u = props.state) === null || _u === void 0 ? void 0 : _u.columnFilterFns,
|
2951
2994
|
]);
|
2952
2995
|
const data = React.useMemo(() => {
|
2953
2996
|
var _a, _b, _c, _d, _e;
|
@@ -2961,11 +3004,11 @@ const MRT_TableRoot = (props) => {
|
|
2961
3004
|
[getColumnId(col)]: null,
|
2962
3005
|
}))))
|
2963
3006
|
: props.data;
|
2964
|
-
}, [props.data, (
|
3007
|
+
}, [props.data, (_v = props.state) === null || _v === void 0 ? void 0 : _v.isLoading, (_w = props.state) === null || _w === void 0 ? void 0 : _w.showSkeletons]);
|
2965
3008
|
//@ts-ignore
|
2966
3009
|
const table = Object.assign(Object.assign({}, reactTable.useReactTable(Object.assign(Object.assign({ getCoreRowModel: reactTable.getCoreRowModel(), getExpandedRowModel: reactTable.getExpandedRowModel(), getFacetedRowModel: reactTable.getFacetedRowModel(), getFilteredRowModel: reactTable.getFilteredRowModel(), getGroupedRowModel: reactTable.getGroupedRowModel(), getPaginationRowModel: reactTable.getPaginationRowModel(), getSortedRowModel: reactTable.getSortedRowModel(), onColumnOrderChange: setColumnOrder, onGroupingChange: setGrouping, getSubRows: (row) => row === null || row === void 0 ? void 0 : row.subRows }, props), {
|
2967
3010
|
//@ts-ignore
|
2968
|
-
columns: columnDefs, data, globalFilterFn: (
|
3011
|
+
columns: columnDefs, data, globalFilterFn: (_y = (_x = props.filterFns) === null || _x === void 0 ? void 0 : _x[globalFilterFn]) !== null && _y !== void 0 ? _y : (_z = props.filterFns) === null || _z === void 0 ? void 0 : _z.fuzzy, initialState, state: Object.assign({ columnFilterFns,
|
2969
3012
|
columnOrder,
|
2970
3013
|
density,
|
2971
3014
|
draggingColumn,
|
@@ -2989,7 +3032,7 @@ const MRT_TableRoot = (props) => {
|
|
2989
3032
|
tableHeadCellRefs,
|
2990
3033
|
tablePaperRef,
|
2991
3034
|
topToolbarRef,
|
2992
|
-
}, setColumnFilterFns: (
|
3035
|
+
}, setColumnFilterFns: (_0 = props.onColumnFilterFnsChange) !== null && _0 !== void 0 ? _0 : setColumnFilterFns, setDensity: (_1 = props.onDensityChange) !== null && _1 !== void 0 ? _1 : setDensity, setDraggingColumn: (_2 = props.onDraggingColumnChange) !== null && _2 !== void 0 ? _2 : setDraggingColumn, setDraggingRow: (_3 = props.onDraggingRowChange) !== null && _3 !== void 0 ? _3 : setDraggingRow, setEditingCell: (_4 = props.onEditingCellChange) !== null && _4 !== void 0 ? _4 : setEditingCell, setEditingRow: (_5 = props.onEditingRowChange) !== null && _5 !== void 0 ? _5 : setEditingRow, setGlobalFilterFn: (_6 = props.onGlobalFilterFnChange) !== null && _6 !== void 0 ? _6 : setGlobalFilterFn, setHoveredColumn: (_7 = props.onHoveredColumnChange) !== null && _7 !== void 0 ? _7 : setHoveredColumn, setHoveredRow: (_8 = props.onHoveredRowChange) !== null && _8 !== void 0 ? _8 : setHoveredRow, setIsFullScreen: (_9 = props.onIsFullScreenChange) !== null && _9 !== void 0 ? _9 : setIsFullScreen, setShowAlertBanner: (_10 = props.onShowAlertBannerChange) !== null && _10 !== void 0 ? _10 : setShowAlertBanner, setShowFilters: (_11 = props.onShowFiltersChange) !== null && _11 !== void 0 ? _11 : setShowFilters, setShowGlobalFilter: (_12 = props.onShowGlobalFilterChange) !== null && _12 !== void 0 ? _12 : setShowGlobalFilter, setShowToolbarDropZone: (_13 = props.onShowToolbarDropZoneChange) !== null && _13 !== void 0 ? _13 : setShowToolbarDropZone });
|
2993
3036
|
if (props.tableInstanceRef) {
|
2994
3037
|
props.tableInstanceRef.current = table;
|
2995
3038
|
}
|
@@ -3136,13 +3179,16 @@ const MaterialReactTable = (_a) => {
|
|
3136
3179
|
return (React__default["default"].createElement(MRT_TableRoot, Object.assign({ aggregationFns: _aggregationFns, autoResetExpanded: autoResetExpanded, columnResizeMode: columnResizeMode, defaultColumn: _defaultColumn, defaultDisplayColumn: _defaultDisplayColumn, editingMode: editingMode, enableBottomToolbar: enableBottomToolbar, enableColumnActions: enableColumnActions, enableColumnFilters: enableColumnFilters, enableColumnOrdering: enableColumnOrdering, enableColumnResizing: enableColumnResizing, enableDensityToggle: enableDensityToggle, enableExpandAll: enableExpandAll, enableFilterMatchHighlighting: enableFilterMatchHighlighting, enableFilters: enableFilters, enableFullScreenToggle: enableFullScreenToggle, enableGlobalFilter: enableGlobalFilter, enableGlobalFilterRankedResults: enableGlobalFilterRankedResults, enableGrouping: enableGrouping, enableHiding: enableHiding, enableMultiRowSelection: enableMultiRowSelection, enableMultiSort: enableMultiSort, enablePagination: enablePagination, enablePinning: enablePinning, enableRowSelection: enableRowSelection, enableSelectAll: enableSelectAll, enableSorting: enableSorting, enableStickyHeader: enableStickyHeader, enableTableFooter: enableTableFooter, enableTableHead: enableTableHead, enableToolbarInternalActions: enableToolbarInternalActions, enableTopToolbar: enableTopToolbar, filterFns: _filterFns, icons: _icons, layoutMode: layoutMode, localization: _localization, manualFiltering: manualFiltering, manualGrouping: manualGrouping, manualPagination: manualPagination, manualSorting: manualSorting, positionActionsColumn: positionActionsColumn, positionExpandColumn: positionExpandColumn, positionGlobalFilter: positionGlobalFilter, positionPagination: positionPagination, positionToolbarAlertBanner: positionToolbarAlertBanner, positionToolbarDropZone: positionToolbarDropZone, rowNumberMode: rowNumberMode, selectAllMode: selectAllMode, sortingFns: _sortingFns }, rest)));
|
3137
3180
|
};
|
3138
3181
|
|
3182
|
+
exports.MRT_AggregationFns = MRT_AggregationFns;
|
3139
3183
|
exports.MRT_BottomToolbar = MRT_BottomToolbar;
|
3140
3184
|
exports.MRT_CopyButton = MRT_CopyButton;
|
3141
3185
|
exports.MRT_EditActionButtons = MRT_EditActionButtons;
|
3186
|
+
exports.MRT_FilterFns = MRT_FilterFns;
|
3142
3187
|
exports.MRT_FilterOptionMenu = MRT_FilterOptionMenu;
|
3143
3188
|
exports.MRT_FullScreenToggleButton = MRT_FullScreenToggleButton;
|
3144
3189
|
exports.MRT_GlobalFilterTextField = MRT_GlobalFilterTextField;
|
3145
3190
|
exports.MRT_ShowHideColumnsButton = MRT_ShowHideColumnsButton;
|
3191
|
+
exports.MRT_SortingFns = MRT_SortingFns;
|
3146
3192
|
exports.MRT_TablePagination = MRT_TablePagination;
|
3147
3193
|
exports.MRT_ToggleDensePaddingButton = MRT_ToggleDensePaddingButton;
|
3148
3194
|
exports.MRT_ToggleFiltersButton = MRT_ToggleFiltersButton;
|