material-react-table 1.4.1 → 1.4.3
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/dist/cjs/index.js +14 -15
- package/dist/cjs/index.js.map +1 -1
- package/dist/esm/material-react-table.esm.js +12 -12
- package/dist/esm/material-react-table.esm.js.map +1 -1
- package/package.json +6 -6
- package/src/body/MRT_TableBody.tsx +52 -50
- package/src/inputs/MRT_FilterTextField.tsx +3 -2
- package/src/inputs/MRT_GlobalFilterTextField.tsx +1 -1
package/dist/cjs/index.js
CHANGED
@@ -58,7 +58,7 @@ var useMediaQuery = require('@mui/material/useMediaQuery');
|
|
58
58
|
var Collapse = require('@mui/material/Collapse');
|
59
59
|
var InputAdornment = require('@mui/material/InputAdornment');
|
60
60
|
var TextField = require('@mui/material/TextField');
|
61
|
-
var
|
61
|
+
var utils = require('@mui/material/utils');
|
62
62
|
var LinearProgress = require('@mui/material/LinearProgress');
|
63
63
|
var TablePagination = require('@mui/material/TablePagination');
|
64
64
|
var Alert = require('@mui/material/Alert');
|
@@ -135,7 +135,6 @@ var useMediaQuery__default = /*#__PURE__*/_interopDefaultLegacy(useMediaQuery);
|
|
135
135
|
var Collapse__default = /*#__PURE__*/_interopDefaultLegacy(Collapse);
|
136
136
|
var InputAdornment__default = /*#__PURE__*/_interopDefaultLegacy(InputAdornment);
|
137
137
|
var TextField__default = /*#__PURE__*/_interopDefaultLegacy(TextField);
|
138
|
-
var debounce__default = /*#__PURE__*/_interopDefaultLegacy(debounce);
|
139
138
|
var LinearProgress__default = /*#__PURE__*/_interopDefaultLegacy(LinearProgress);
|
140
139
|
var TablePagination__default = /*#__PURE__*/_interopDefaultLegacy(TablePagination);
|
141
140
|
var Alert__default = /*#__PURE__*/_interopDefaultLegacy(Alert);
|
@@ -1156,7 +1155,7 @@ const MRT_GlobalFilterTextField = ({ table, }) => {
|
|
1156
1155
|
: muiSearchTextFieldProps;
|
1157
1156
|
const [anchorEl, setAnchorEl] = React.useState(null);
|
1158
1157
|
const [searchValue, setSearchValue] = React.useState(globalFilter !== null && globalFilter !== void 0 ? globalFilter : '');
|
1159
|
-
const handleChangeDebounced = React.useCallback(
|
1158
|
+
const handleChangeDebounced = React.useCallback(utils.debounce((event) => {
|
1160
1159
|
var _a;
|
1161
1160
|
setGlobalFilter((_a = event.target.value) !== null && _a !== void 0 ? _a : undefined);
|
1162
1161
|
}, manualFiltering ? 500 : 250), []);
|
@@ -1527,7 +1526,7 @@ const MRT_TableHeadCellColumnActionsButton = ({ header, table, }) => {
|
|
1527
1526
|
};
|
1528
1527
|
|
1529
1528
|
const MRT_FilterTextField = ({ header, rangeFilterIndex, table, }) => {
|
1530
|
-
var _a, _b, _c, _d, _e, _f, _g, _h;
|
1529
|
+
var _a, _b, _c, _d, _e, _f, _g, _h, _j;
|
1531
1530
|
const { options: { enableColumnFilterModes, columnFilterModeOptions, icons: { FilterListIcon, CloseIcon }, localization, manualFiltering, muiTableHeadCellFilterTextFieldProps, }, refs: { filterInputRefs }, setColumnFilterFns, } = table;
|
1532
1531
|
const { column } = header;
|
1533
1532
|
const { columnDef } = column;
|
@@ -1558,13 +1557,13 @@ const MRT_FilterTextField = ({ header, rangeFilterIndex, table, }) => {
|
|
1558
1557
|
(currentFilterOption === null || currentFilterOption === void 0 ? void 0 : currentFilterOption.slice(1))}`]
|
1559
1558
|
: '';
|
1560
1559
|
const filterPlaceholder = !isRangeFilter
|
1561
|
-
? (_c = localization.filterByColumn) === null ||
|
1560
|
+
? (_c = textFieldProps === null || textFieldProps === void 0 ? void 0 : textFieldProps.placeholder) !== null && _c !== void 0 ? _c : (_d = localization.filterByColumn) === null || _d === void 0 ? void 0 : _d.replace('{column}', String(columnDef.header))
|
1562
1561
|
: rangeFilterIndex === 0
|
1563
1562
|
? localization.min
|
1564
1563
|
: rangeFilterIndex === 1
|
1565
1564
|
? localization.max
|
1566
1565
|
: '';
|
1567
|
-
const allowedColumnFilterOptions = (
|
1566
|
+
const allowedColumnFilterOptions = (_e = columnDef === null || columnDef === void 0 ? void 0 : columnDef.columnFilterModeOptions) !== null && _e !== void 0 ? _e : columnFilterModeOptions;
|
1568
1567
|
const showChangeModeButton = enableColumnFilterModes &&
|
1569
1568
|
columnDef.enableColumnFilterModes !== false &&
|
1570
1569
|
!rangeFilterIndex &&
|
@@ -1579,7 +1578,7 @@ const MRT_FilterTextField = ({ header, rangeFilterIndex, table, }) => {
|
|
1579
1578
|
? ((_a = column.getFilterValue()) === null || _a === void 0 ? void 0 : _a[rangeFilterIndex]) || []
|
1580
1579
|
: (_b = column.getFilterValue()) !== null && _b !== void 0 ? _b : '';
|
1581
1580
|
});
|
1582
|
-
const handleChangeDebounced = React.useCallback(
|
1581
|
+
const handleChangeDebounced = React.useCallback(utils.debounce((event) => {
|
1583
1582
|
const value = textFieldProps.type === 'date'
|
1584
1583
|
? event.target.valueAsDate
|
1585
1584
|
: textFieldProps.type === 'number'
|
@@ -1634,7 +1633,7 @@ const MRT_FilterTextField = ({ header, rangeFilterIndex, table, }) => {
|
|
1634
1633
|
isMounted.current = true;
|
1635
1634
|
}, [column.getFilterValue()]);
|
1636
1635
|
if (columnDef.Filter) {
|
1637
|
-
return (React__default["default"].createElement(React__default["default"].Fragment, null, (
|
1636
|
+
return (React__default["default"].createElement(React__default["default"].Fragment, null, (_f = columnDef.Filter) === null || _f === void 0 ? void 0 : _f.call(columnDef, { column, header, rangeFilterIndex, table })));
|
1638
1637
|
}
|
1639
1638
|
return (React__default["default"].createElement(React__default["default"].Fragment, null,
|
1640
1639
|
React__default["default"].createElement(TextField__default["default"], Object.assign({ fullWidth: true, inputProps: {
|
@@ -1646,7 +1645,7 @@ const MRT_FilterTextField = ({ header, rangeFilterIndex, table, }) => {
|
|
1646
1645
|
title: filterPlaceholder,
|
1647
1646
|
}, helperText: showChangeModeButton ? (React__default["default"].createElement("label", null, localization.filterMode.replace('{filterType}',
|
1648
1647
|
// @ts-ignore
|
1649
|
-
localization[`filter${((
|
1648
|
+
localization[`filter${((_g = currentFilterOption === null || currentFilterOption === void 0 ? void 0 : currentFilterOption.charAt(0)) === null || _g === void 0 ? void 0 : _g.toUpperCase()) +
|
1650
1649
|
(currentFilterOption === null || currentFilterOption === void 0 ? void 0 : currentFilterOption.slice(1))}`]))) : null, FormHelperTextProps: {
|
1651
1650
|
sx: {
|
1652
1651
|
fontSize: '0.75rem',
|
@@ -1663,7 +1662,7 @@ const MRT_FilterTextField = ({ header, rangeFilterIndex, table, }) => {
|
|
1663
1662
|
React__default["default"].createElement(FilterListIcon, null)))),
|
1664
1663
|
filterChipLabel && (React__default["default"].createElement(Chip__default["default"], { onDelete: handleClearEmptyFilterChip, label: filterChipLabel })))) : null,
|
1665
1664
|
endAdornment: !filterChipLabel && (React__default["default"].createElement(InputAdornment__default["default"], { position: "end" },
|
1666
|
-
React__default["default"].createElement(Tooltip__default["default"], { arrow: true, placement: "right", title: (
|
1665
|
+
React__default["default"].createElement(Tooltip__default["default"], { arrow: true, placement: "right", title: (_h = localization.clearFilter) !== null && _h !== void 0 ? _h : '' },
|
1667
1666
|
React__default["default"].createElement("span", null,
|
1668
1667
|
React__default["default"].createElement(IconButton__default["default"], { "aria-label": localization.clearFilter, disabled: !(filterValue === null || filterValue === void 0 ? void 0 : filterValue.length), onClick: handleClear, size: "small", sx: {
|
1669
1668
|
height: '1.75rem',
|
@@ -1700,8 +1699,8 @@ const MRT_FilterTextField = ({ header, rangeFilterIndex, table, }) => {
|
|
1700
1699
|
? textFieldProps.sx(theme)
|
1701
1700
|
: textFieldProps === null || textFieldProps === void 0 ? void 0 : textFieldProps.sx))) }),
|
1702
1701
|
(isSelectFilter || isMultiSelectFilter) && (React__default["default"].createElement(MenuItem__default["default"], { divider: true, disabled: true, hidden: true, value: "" },
|
1703
|
-
React__default["default"].createElement(Box__default["default"], { sx: { opacity: 0.5 } }, filterPlaceholder))), (
|
1704
|
-
|
1702
|
+
React__default["default"].createElement(Box__default["default"], { sx: { opacity: 0.5 } }, filterPlaceholder))), (_j = columnDef === null || columnDef === void 0 ? void 0 : columnDef.filterSelectOptions) === null || _j === void 0 ? void 0 :
|
1703
|
+
_j.map((option) => {
|
1705
1704
|
var _a;
|
1706
1705
|
let value;
|
1707
1706
|
let text;
|
@@ -2442,9 +2441,9 @@ const MRT_TableBody = ({ table }) => {
|
|
2442
2441
|
virtualizerInstanceRef.current = virtualizer;
|
2443
2442
|
}
|
2444
2443
|
const virtualRows = virtualizer ? virtualizer.getVirtualItems() : undefined;
|
2445
|
-
return (React__default["default"].createElement(TableBody__default["default"], Object.assign({}, tableBodyProps, { sx: (theme) => (Object.assign({ display: layoutMode === 'grid' ? 'grid' : 'table-row-group', height: virtualizer ? `${virtualizer.getTotalSize()}px` : 'inherit', position: 'relative' }, ((tableBodyProps === null || tableBodyProps === void 0 ? void 0 : tableBodyProps.sx) instanceof Function
|
2444
|
+
return (React__default["default"].createElement(TableBody__default["default"], Object.assign({}, tableBodyProps, { sx: (theme) => (Object.assign({ display: layoutMode === 'grid' ? 'grid' : 'table-row-group', height: virtualizer ? `${virtualizer.getTotalSize()}px` : 'inherit', minHeight: !rows.length ? '100px' : undefined, position: 'relative' }, ((tableBodyProps === null || tableBodyProps === void 0 ? void 0 : tableBodyProps.sx) instanceof Function
|
2446
2445
|
? tableBodyProps === null || tableBodyProps === void 0 ? void 0 : tableBodyProps.sx(theme)
|
2447
|
-
: tableBodyProps === null || tableBodyProps === void 0 ? void 0 : tableBodyProps.sx))) }), (
|
2446
|
+
: tableBodyProps === null || tableBodyProps === void 0 ? void 0 : tableBodyProps.sx))) }), (_a = tableBodyProps === null || tableBodyProps === void 0 ? void 0 : tableBodyProps.children) !== null && _a !== void 0 ? _a : (!rows.length ? (React__default["default"].createElement("tr", { style: { display: layoutMode === 'grid' ? 'grid' : 'table-row' } },
|
2448
2447
|
React__default["default"].createElement("td", { colSpan: table.getVisibleLeafColumns().length, style: { display: layoutMode === 'grid' ? 'grid' : 'table-cell' } },
|
2449
2448
|
React__default["default"].createElement(Typography__default["default"], { sx: {
|
2450
2449
|
color: 'text.secondary',
|
@@ -2473,7 +2472,7 @@ const MRT_TableBody = ({ table }) => {
|
|
2473
2472
|
: undefined,
|
2474
2473
|
};
|
2475
2474
|
return memoMode === 'rows' ? (React__default["default"].createElement(Memo_MRT_TableBodyRow, Object.assign({}, props))) : (React__default["default"].createElement(MRT_TableBodyRow, Object.assign({}, props)));
|
2476
|
-
})))));
|
2475
|
+
}))))));
|
2477
2476
|
};
|
2478
2477
|
const Memo_MRT_TableBody = React.memo(MRT_TableBody, (prev, next) => prev.table.options.data === next.table.options.data);
|
2479
2478
|
|