material-react-table 1.0.0-beta.1 → 1.0.0-beta.10
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 +20 -20
- package/dist/cjs/MaterialReactTable.d.ts +96 -19
- package/dist/cjs/_locales/en.d.ts +2 -0
- package/dist/cjs/_locales/es.d.ts +2 -0
- package/dist/cjs/body/MRT_EditRowModal.d.ts +0 -1
- package/dist/cjs/body/MRT_TableBody.d.ts +1 -2
- package/dist/cjs/body/MRT_TableBodyCellValue.d.ts +2 -2
- package/dist/cjs/buttons/MRT_ColumnPinningButtons.d.ts +0 -1
- package/dist/cjs/buttons/MRT_EditActionButtons.d.ts +0 -1
- package/dist/cjs/buttons/MRT_FullScreenToggleButton.d.ts +0 -1
- package/dist/cjs/buttons/MRT_ShowHideColumnsButton.d.ts +0 -1
- package/dist/cjs/buttons/MRT_ToggleDensePaddingButton.d.ts +0 -1
- package/dist/cjs/buttons/MRT_ToggleFiltersButton.d.ts +0 -1
- package/dist/cjs/buttons/MRT_ToggleGlobalFilterButton.d.ts +0 -1
- package/dist/cjs/column.utils.d.ts +12 -1
- package/dist/cjs/index.d.ts +4 -3
- package/dist/cjs/index.js +235 -192
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/inputs/MRT_EditCellTextField.d.ts +0 -1
- package/dist/cjs/inputs/MRT_GlobalFilterTextField.d.ts +0 -1
- package/dist/cjs/menus/MRT_FilterOptionMenu.d.ts +3 -4
- package/dist/cjs/menus/MRT_ShowHideColumnsMenu.d.ts +0 -1
- package/dist/cjs/table/MRT_Table.d.ts +1 -2
- package/dist/cjs/table/MRT_TableRoot.d.ts +250 -3
- package/dist/cjs/toolbar/MRT_TablePagination.d.ts +3 -4
- package/dist/cjs/toolbar/MRT_ToolbarAlertBanner.d.ts +1 -1
- package/dist/cjs/toolbar/MRT_ToolbarInternalButtons.d.ts +3 -4
- package/dist/cjs/toolbar/MRT_TopToolbar.d.ts +1 -0
- package/dist/en.cjs +90 -0
- package/dist/en.cjs.d.ts +2 -0
- package/dist/en.cjs.map +1 -0
- package/dist/en.esm.d.ts +2 -0
- package/dist/en.esm.js +86 -0
- package/dist/en.esm.js.map +1 -0
- package/dist/esm/MaterialReactTable.d.ts +96 -19
- package/dist/esm/_locales/en.d.ts +2 -0
- package/dist/esm/_locales/es.d.ts +2 -0
- package/dist/esm/body/MRT_EditRowModal.d.ts +0 -1
- package/dist/esm/body/MRT_TableBody.d.ts +1 -2
- package/dist/esm/body/MRT_TableBodyCellValue.d.ts +2 -2
- package/dist/esm/buttons/MRT_ColumnPinningButtons.d.ts +0 -1
- package/dist/esm/buttons/MRT_EditActionButtons.d.ts +0 -1
- package/dist/esm/buttons/MRT_FullScreenToggleButton.d.ts +0 -1
- package/dist/esm/buttons/MRT_ShowHideColumnsButton.d.ts +0 -1
- package/dist/esm/buttons/MRT_ToggleDensePaddingButton.d.ts +0 -1
- package/dist/esm/buttons/MRT_ToggleFiltersButton.d.ts +0 -1
- package/dist/esm/buttons/MRT_ToggleGlobalFilterButton.d.ts +0 -1
- package/dist/esm/column.utils.d.ts +12 -1
- package/dist/esm/index.d.ts +4 -3
- package/dist/esm/inputs/MRT_EditCellTextField.d.ts +0 -1
- package/dist/esm/inputs/MRT_GlobalFilterTextField.d.ts +0 -1
- package/dist/esm/material-react-table.esm.js +236 -195
- package/dist/esm/material-react-table.esm.js.map +1 -1
- package/dist/esm/menus/MRT_FilterOptionMenu.d.ts +3 -4
- package/dist/esm/menus/MRT_ShowHideColumnsMenu.d.ts +0 -1
- package/dist/esm/table/MRT_Table.d.ts +1 -2
- package/dist/esm/table/MRT_TableRoot.d.ts +250 -3
- package/dist/esm/toolbar/MRT_TablePagination.d.ts +3 -4
- package/dist/esm/toolbar/MRT_ToolbarAlertBanner.d.ts +1 -1
- package/dist/esm/toolbar/MRT_ToolbarInternalButtons.d.ts +3 -4
- package/dist/esm/toolbar/MRT_TopToolbar.d.ts +1 -0
- package/dist/index.d.ts +47 -41
- package/package.json +7 -6
- package/src/MaterialReactTable.tsx +100 -23
- package/src/_locales/de.ts +0 -0
- package/src/{localization.ts → _locales/en.ts} +4 -82
- package/src/_locales/es.ts +86 -0
- package/src/_locales/fr.ts +0 -0
- package/src/_locales/hi.ts +0 -0
- package/src/_locales/id.ts +0 -0
- package/src/_locales/ja.ts +0 -0
- package/src/_locales/nl.ts +0 -0
- package/src/_locales/pt.ts +0 -0
- package/src/_locales/ru.ts +0 -0
- package/src/_locales/uk.ts +0 -0
- package/src/_locales/vi.ts +0 -0
- package/src/_locales/zh.ts +0 -0
- package/src/body/MRT_TableBody.tsx +54 -30
- package/src/body/MRT_TableBodyCell.tsx +11 -58
- package/src/body/MRT_TableBodyCellValue.tsx +7 -2
- package/src/body/MRT_TableBodyRowGrabHandle.tsx +5 -8
- package/src/buttons/MRT_GrabHandleButton.tsx +2 -2
- package/src/buttons/MRT_ToggleGlobalFilterButton.tsx +7 -2
- package/src/column.utils.ts +72 -0
- package/src/footer/MRT_TableFooter.tsx +3 -2
- package/src/footer/MRT_TableFooterCell.tsx +5 -15
- package/src/head/MRT_TableHead.tsx +10 -2
- package/src/head/MRT_TableHeadCell.tsx +9 -50
- package/src/head/MRT_TableHeadCellFilterLabel.tsx +7 -7
- package/src/head/MRT_TableHeadCellGrabHandle.tsx +5 -12
- package/src/index.tsx +6 -3
- package/src/inputs/MRT_FilterTextField.tsx +7 -6
- package/src/inputs/MRT_GlobalFilterTextField.tsx +1 -0
- package/src/menus/MRT_FilterOptionMenu.tsx +19 -2
- package/src/table/MRT_Table.tsx +3 -4
- package/src/table/MRT_TableContainer.tsx +2 -11
- package/src/table/MRT_TablePaper.tsx +34 -20
- package/src/table/MRT_TableRoot.tsx +34 -11
- package/src/toolbar/MRT_BottomToolbar.tsx +9 -3
- package/src/toolbar/MRT_TablePagination.tsx +8 -5
- package/src/toolbar/MRT_ToolbarAlertBanner.tsx +7 -1
- package/src/toolbar/MRT_ToolbarInternalButtons.tsx +8 -4
- package/src/toolbar/MRT_TopToolbar.tsx +8 -1
- package/dist/cjs/localization.d.ts +0 -82
- package/dist/esm/localization.d.ts +0 -82
package/dist/cjs/index.js
CHANGED
|
@@ -159,7 +159,7 @@ const MRT_FilterFns = Object.assign(Object.assign({}, reactTable.filterFns), { b
|
|
|
159
159
|
notEquals,
|
|
160
160
|
startsWith });
|
|
161
161
|
|
|
162
|
-
const
|
|
162
|
+
const MRT_Localization_EN = {
|
|
163
163
|
actions: 'Actions',
|
|
164
164
|
and: 'and',
|
|
165
165
|
cancel: 'Cancel',
|
|
@@ -208,6 +208,8 @@ const MRT_DefaultLocalization_EN = {
|
|
|
208
208
|
max: 'Max',
|
|
209
209
|
min: 'Min',
|
|
210
210
|
move: 'Move',
|
|
211
|
+
noRecordsToDisplay: 'No records to display',
|
|
212
|
+
noResultsFound: 'No results found',
|
|
211
213
|
or: 'or',
|
|
212
214
|
pinToLeft: 'Pin to left',
|
|
213
215
|
pinToRight: 'Pin to right',
|
|
@@ -391,7 +393,7 @@ const mrtFilterOptions = (localization) => [
|
|
|
391
393
|
divider: false,
|
|
392
394
|
},
|
|
393
395
|
];
|
|
394
|
-
const MRT_FilterOptionMenu = ({ anchorEl, header, onSelect, setAnchorEl, table, }) => {
|
|
396
|
+
const MRT_FilterOptionMenu = ({ anchorEl, header, onSelect, setAnchorEl, setFilterValue, table, }) => {
|
|
395
397
|
var _a, _b, _c, _d;
|
|
396
398
|
const { getState, options: { columnFilterModeOptions, globalFilterModeOptions, localization, renderColumnFilterModeMenuItems, renderGlobalFilterModeMenuItems, }, setColumnFilterFns, setGlobalFilterFn, } = table;
|
|
397
399
|
const { globalFilterFn, density } = getState();
|
|
@@ -410,11 +412,19 @@ const MRT_FilterOptionMenu = ({ anchorEl, header, onSelect, setAnchorEl, table,
|
|
|
410
412
|
if (['empty', 'notEmpty'].includes(option)) {
|
|
411
413
|
column.setFilterValue(' ');
|
|
412
414
|
}
|
|
413
|
-
else if (
|
|
415
|
+
else if ((columnDef === null || columnDef === void 0 ? void 0 : columnDef.filterVariant) === 'multi-select' ||
|
|
416
|
+
['arrIncludesSome', 'arrIncludesAll', 'arrIncludes'].includes(option)) {
|
|
417
|
+
column.setFilterValue([]);
|
|
418
|
+
setFilterValue === null || setFilterValue === void 0 ? void 0 : setFilterValue([]);
|
|
419
|
+
}
|
|
420
|
+
else if ((columnDef === null || columnDef === void 0 ? void 0 : columnDef.filterVariant) === 'range' ||
|
|
421
|
+
['between', 'betweenInclusive', 'inNumberRange'].includes(option)) {
|
|
414
422
|
column.setFilterValue(['', '']);
|
|
423
|
+
setFilterValue === null || setFilterValue === void 0 ? void 0 : setFilterValue('');
|
|
415
424
|
}
|
|
416
425
|
else {
|
|
417
426
|
column.setFilterValue('');
|
|
427
|
+
setFilterValue === null || setFilterValue === void 0 ? void 0 : setFilterValue('');
|
|
418
428
|
}
|
|
419
429
|
}
|
|
420
430
|
else {
|
|
@@ -477,11 +487,11 @@ const MRT_GrabHandleButton = ({ iconButtonProps, onDragEnd, onDragStart, table,
|
|
|
477
487
|
var _a;
|
|
478
488
|
const { options: { icons: { DragHandleIcon }, localization, }, } = table;
|
|
479
489
|
return (React__default["default"].createElement(material.Tooltip, { arrow: true, enterDelay: 1000, enterNextDelay: 1000, placement: "top", title: (_a = iconButtonProps === null || iconButtonProps === void 0 ? void 0 : iconButtonProps.title) !== null && _a !== void 0 ? _a : localization.move },
|
|
480
|
-
React__default["default"].createElement(material.IconButton, Object.assign({ disableRipple: true, draggable: "true",
|
|
490
|
+
React__default["default"].createElement(material.IconButton, Object.assign({ disableRipple: true, draggable: "true", size: "small" }, iconButtonProps, { onClick: (e) => {
|
|
481
491
|
var _a;
|
|
482
492
|
e.stopPropagation();
|
|
483
493
|
(_a = iconButtonProps === null || iconButtonProps === void 0 ? void 0 : iconButtonProps.onClick) === null || _a === void 0 ? void 0 : _a.call(iconButtonProps, e);
|
|
484
|
-
}, sx: (theme) => (Object.assign({ cursor: 'grab', m: 0, opacity: 0.5, p: '2px', transition: 'all 0.2s ease-in-out', '&:hover': {
|
|
494
|
+
}, onDragStart: onDragStart, onDragEnd: onDragEnd, sx: (theme) => (Object.assign({ cursor: 'grab', m: 0, opacity: 0.5, p: '2px', transition: 'all 0.2s ease-in-out', '&:hover': {
|
|
485
495
|
backgroundColor: 'transparent',
|
|
486
496
|
opacity: 1,
|
|
487
497
|
}, '&:active': {
|
|
@@ -595,6 +605,37 @@ const getDefaultColumnFilterFn = (columnDef) => {
|
|
|
595
605
|
return 'betweenInclusive';
|
|
596
606
|
return 'fuzzy';
|
|
597
607
|
};
|
|
608
|
+
const getIsLastLeftPinnedColumn = (table, column) => {
|
|
609
|
+
return (column.getIsPinned() === 'left' &&
|
|
610
|
+
table.getLeftLeafHeaders().length - 1 === column.getPinnedIndex());
|
|
611
|
+
};
|
|
612
|
+
const getIsFirstRightPinnedColumn = (column) => {
|
|
613
|
+
return column.getIsPinned() === 'right' && column.getPinnedIndex() === 0;
|
|
614
|
+
};
|
|
615
|
+
const getTotalRight = (table, column) => {
|
|
616
|
+
return ((table.getRightLeafHeaders().length - 1 - column.getPinnedIndex()) * 160);
|
|
617
|
+
};
|
|
618
|
+
const getCommonCellStyles = ({ column, header, table, tableCellProps, theme, }) => {
|
|
619
|
+
var _a, _b, _c, _d;
|
|
620
|
+
return (Object.assign(Object.assign({ backgroundColor: column.getIsPinned() && column.columnDef.columnDefType !== 'group'
|
|
621
|
+
? material.alpha(material.lighten(theme.palette.background.default, 0.04), 0.95)
|
|
622
|
+
: 'inherit', backgroundImage: 'inherit', boxShadow: getIsLastLeftPinnedColumn(table, column)
|
|
623
|
+
? `-4px 0 8px -6px ${material.alpha(theme.palette.common.black, 0.2)} inset`
|
|
624
|
+
: getIsFirstRightPinnedColumn(column)
|
|
625
|
+
? `4px 0 8px -6px ${material.alpha(theme.palette.common.black, 0.2)} inset`
|
|
626
|
+
: undefined, left: column.getIsPinned() === 'left'
|
|
627
|
+
? `${column.getStart('left')}px`
|
|
628
|
+
: undefined, opacity: ((_a = table.getState().draggingColumn) === null || _a === void 0 ? void 0 : _a.id) === column.id ||
|
|
629
|
+
((_b = table.getState().hoveredColumn) === null || _b === void 0 ? void 0 : _b.id) === column.id
|
|
630
|
+
? 0.5
|
|
631
|
+
: 1, position: column.getIsPinned() && column.columnDef.columnDefType !== 'group'
|
|
632
|
+
? 'sticky'
|
|
633
|
+
: undefined, right: column.getIsPinned() === 'right'
|
|
634
|
+
? `${getTotalRight(table, column)}px`
|
|
635
|
+
: undefined, transition: `all ${column.getIsResizing() ? 0 : '0.2s'} ease-in-out` }, ((tableCellProps === null || tableCellProps === void 0 ? void 0 : tableCellProps.sx) instanceof Function
|
|
636
|
+
? tableCellProps.sx(theme)
|
|
637
|
+
: tableCellProps === null || tableCellProps === void 0 ? void 0 : tableCellProps.sx)), { maxWidth: `min(${column.getSize()}px, fit-content)`, minWidth: `max(${column.getSize()}px, ${(_c = column.columnDef.minSize) !== null && _c !== void 0 ? _c : 30}px)`, width: (_d = header === null || header === void 0 ? void 0 : header.getSize()) !== null && _d !== void 0 ? _d : column.getSize() }));
|
|
638
|
+
};
|
|
598
639
|
|
|
599
640
|
const MRT_ShowHideColumnsMenuItems = ({ allColumns, hoveredColumn, setHoveredColumn, column, isSubMenu, table, }) => {
|
|
600
641
|
var _a;
|
|
@@ -1047,7 +1088,7 @@ const MRT_GlobalFilterTextField = ({ table, }) => {
|
|
|
1047
1088
|
textFieldProps.inputRef = inputRef;
|
|
1048
1089
|
}
|
|
1049
1090
|
} })),
|
|
1050
|
-
React__default["default"].createElement(MRT_FilterOptionMenu, { anchorEl: anchorEl, setAnchorEl: setAnchorEl, table: table })));
|
|
1091
|
+
React__default["default"].createElement(MRT_FilterOptionMenu, { anchorEl: anchorEl, setAnchorEl: setAnchorEl, table: table, onSelect: handleClear })));
|
|
1051
1092
|
};
|
|
1052
1093
|
|
|
1053
1094
|
const MRT_LinearProgressBar = ({ isTopToolbar, table }) => {
|
|
@@ -1065,7 +1106,7 @@ const MRT_LinearProgressBar = ({ isTopToolbar, table }) => {
|
|
|
1065
1106
|
React__default["default"].createElement(material.LinearProgress, Object.assign({ "aria-label": "Loading", "aria-busy": "true", sx: { position: 'relative' } }, linearProgressProps))));
|
|
1066
1107
|
};
|
|
1067
1108
|
|
|
1068
|
-
const MRT_TablePagination = ({ table, position }) => {
|
|
1109
|
+
const MRT_TablePagination = ({ table, position, }) => {
|
|
1069
1110
|
const { getPrePaginationRowModel, getState, setPageIndex, setPageSize, options: { muiTablePaginationProps, enableToolbarInternalActions, rowCount, }, } = table;
|
|
1070
1111
|
const { pagination: { pageSize = 10, pageIndex = 0 }, showGlobalFilter, } = getState();
|
|
1071
1112
|
const totalRowCount = rowCount !== null && rowCount !== void 0 ? rowCount : getPrePaginationRowModel().rows.length;
|
|
@@ -1083,14 +1124,14 @@ const MRT_TablePagination = ({ table, position }) => {
|
|
|
1083
1124
|
enableToolbarInternalActions &&
|
|
1084
1125
|
!showGlobalFilter
|
|
1085
1126
|
? '3.5rem'
|
|
1086
|
-
:
|
|
1127
|
+
: undefined, position: 'relative', zIndex: 2 }, ((tablePaginationProps === null || tablePaginationProps === void 0 ? void 0 : tablePaginationProps.sx) instanceof Function
|
|
1087
1128
|
? tablePaginationProps.sx(theme)
|
|
1088
1129
|
: tablePaginationProps === null || tablePaginationProps === void 0 ? void 0 : tablePaginationProps.sx))) })));
|
|
1089
1130
|
};
|
|
1090
1131
|
|
|
1091
1132
|
const MRT_ToolbarAlertBanner = ({ stackAlertBanner, table, }) => {
|
|
1092
1133
|
var _a, _b;
|
|
1093
|
-
const { getPrePaginationRowModel, getSelectedRowModel, getState, options: { localization, muiToolbarAlertBannerProps, muiToolbarAlertBannerChipProps, }, } = table;
|
|
1134
|
+
const { getPrePaginationRowModel, getSelectedRowModel, getState, options: { localization, muiToolbarAlertBannerProps, muiToolbarAlertBannerChipProps, positionToolbarAlertBanner, }, } = table;
|
|
1094
1135
|
const { grouping, showAlertBanner } = getState();
|
|
1095
1136
|
const alertProps = muiToolbarAlertBannerProps instanceof Function
|
|
1096
1137
|
? muiToolbarAlertBannerProps({ table })
|
|
@@ -1108,7 +1149,11 @@ const MRT_ToolbarAlertBanner = ({ stackAlertBanner, table, }) => {
|
|
|
1108
1149
|
index > 0 ? localization.thenBy : '',
|
|
1109
1150
|
React__default["default"].createElement(material.Chip, Object.assign({ label: table.getColumn(columnId).columnDef.header, onDelete: () => table.getColumn(columnId).toggleGrouping() }, chipProps))))))) : null;
|
|
1110
1151
|
return (React__default["default"].createElement(material.Collapse, { in: showAlertBanner || !!selectMessage || !!groupedByMessage, timeout: stackAlertBanner ? 200 : 0 },
|
|
1111
|
-
React__default["default"].createElement(material.Alert, Object.assign({ color: "info", icon: false }, alertProps, { sx: (theme) => (Object.assign({ borderRadius: 0, fontSize: '1rem', left: 0, p: 0, position: 'relative',
|
|
1152
|
+
React__default["default"].createElement(material.Alert, Object.assign({ color: "info", icon: false }, alertProps, { sx: (theme) => (Object.assign({ borderRadius: 0, fontSize: '1rem', left: 0, p: 0, position: 'relative', mb: stackAlertBanner
|
|
1153
|
+
? 0
|
|
1154
|
+
: positionToolbarAlertBanner === 'bottom'
|
|
1155
|
+
? '-1rem'
|
|
1156
|
+
: undefined, right: 0, top: 0, width: '100%', zIndex: 2 }, ((alertProps === null || alertProps === void 0 ? void 0 : alertProps.sx) instanceof Function
|
|
1112
1157
|
? alertProps.sx(theme)
|
|
1113
1158
|
: alertProps === null || alertProps === void 0 ? void 0 : alertProps.sx))) }),
|
|
1114
1159
|
(alertProps === null || alertProps === void 0 ? void 0 : alertProps.title) && React__default["default"].createElement(material.AlertTitle, null, alertProps.title),
|
|
@@ -1180,16 +1225,16 @@ const MRT_ToggleGlobalFilterButton = (_a) => {
|
|
|
1180
1225
|
var _b;
|
|
1181
1226
|
var { table } = _a, rest = __rest(_a, ["table"]);
|
|
1182
1227
|
const { getState, options: { icons: { SearchIcon, SearchOffIcon }, localization, }, refs: { searchInputRef }, setShowGlobalFilter, } = table;
|
|
1183
|
-
const { showGlobalFilter } = getState();
|
|
1228
|
+
const { globalFilter, showGlobalFilter } = getState();
|
|
1184
1229
|
const handleToggleSearch = () => {
|
|
1185
1230
|
setShowGlobalFilter(!showGlobalFilter);
|
|
1186
1231
|
queueMicrotask(() => { var _a; return (_a = searchInputRef.current) === null || _a === void 0 ? void 0 : _a.focus(); });
|
|
1187
1232
|
};
|
|
1188
1233
|
return (React__default["default"].createElement(material.Tooltip, { arrow: true, title: (_b = rest === null || rest === void 0 ? void 0 : rest.title) !== null && _b !== void 0 ? _b : localization.showHideSearch },
|
|
1189
|
-
React__default["default"].createElement(material.IconButton, Object.assign({ onClick: handleToggleSearch }, rest, { title: undefined }), showGlobalFilter ? React__default["default"].createElement(SearchOffIcon, null) : React__default["default"].createElement(SearchIcon, null))));
|
|
1234
|
+
React__default["default"].createElement(material.IconButton, Object.assign({ disabled: !!globalFilter, onClick: handleToggleSearch }, rest, { title: undefined }), showGlobalFilter ? React__default["default"].createElement(SearchOffIcon, null) : React__default["default"].createElement(SearchIcon, null))));
|
|
1190
1235
|
};
|
|
1191
1236
|
|
|
1192
|
-
const MRT_ToolbarInternalButtons = ({ table }) => {
|
|
1237
|
+
const MRT_ToolbarInternalButtons = ({ table, }) => {
|
|
1193
1238
|
var _a;
|
|
1194
1239
|
const { options: { enableColumnFilters, enableColumnOrdering, enableDensityToggle, enableFilters, enableFullScreenToggle, enableGlobalFilter, enableHiding, enablePinning, initialState, renderToolbarInternalActions, }, } = table;
|
|
1195
1240
|
return (React__default["default"].createElement(material.Box, { sx: {
|
|
@@ -1237,6 +1282,7 @@ const commonToolbarStyles = ({ theme }) => ({
|
|
|
1237
1282
|
backgroundColor: material.lighten(theme.palette.background.default, 0.04),
|
|
1238
1283
|
backgroundImage: 'none',
|
|
1239
1284
|
display: 'grid',
|
|
1285
|
+
flexWrap: 'wrap-reverse',
|
|
1240
1286
|
minHeight: '3.5rem',
|
|
1241
1287
|
overflow: 'hidden',
|
|
1242
1288
|
p: '0 !important',
|
|
@@ -1275,7 +1321,11 @@ const MRT_TopToolbar = ({ table }) => {
|
|
|
1275
1321
|
width: '100%',
|
|
1276
1322
|
} },
|
|
1277
1323
|
enableGlobalFilter && positionGlobalFilter === 'left' && (React__default["default"].createElement(MRT_GlobalFilterTextField, { table: table })), (_a = renderTopToolbarCustomActions === null || renderTopToolbarCustomActions === void 0 ? void 0 : renderTopToolbarCustomActions({ table })) !== null && _a !== void 0 ? _a : React__default["default"].createElement("span", null),
|
|
1278
|
-
enableToolbarInternalActions ? (React__default["default"].createElement(material.Box, { sx: {
|
|
1324
|
+
enableToolbarInternalActions ? (React__default["default"].createElement(material.Box, { sx: {
|
|
1325
|
+
display: 'flex',
|
|
1326
|
+
flexWrap: 'wrap-reverse',
|
|
1327
|
+
justifyContent: 'flex-end',
|
|
1328
|
+
} },
|
|
1279
1329
|
enableGlobalFilter && positionGlobalFilter === 'right' && (React__default["default"].createElement(MRT_GlobalFilterTextField, { table: table })),
|
|
1280
1330
|
React__default["default"].createElement(MRT_ToolbarInternalButtons, { table: table }))) : (enableGlobalFilter &&
|
|
1281
1331
|
positionGlobalFilter === 'right' && (React__default["default"].createElement(MRT_GlobalFilterTextField, { table: table })))),
|
|
@@ -1298,14 +1348,14 @@ const MRT_BottomToolbar = ({ table }) => {
|
|
|
1298
1348
|
// @ts-ignore
|
|
1299
1349
|
toolbarProps.ref.current = ref;
|
|
1300
1350
|
}
|
|
1301
|
-
}, sx: (theme) => (Object.assign(Object.assign(Object.assign({}, commonToolbarStyles({ theme })), { bottom: isFullScreen ? '0' : undefined, boxShadow:
|
|
1351
|
+
}, sx: (theme) => (Object.assign(Object.assign(Object.assign({}, commonToolbarStyles({ theme })), { bottom: isFullScreen ? '0' : undefined, boxShadow: `0 1px 2px -1px ${material.alpha(theme.palette.common.black, 0.1)} inset`, left: 0, position: isFullScreen ? 'fixed' : 'relative', right: 0 }), ((toolbarProps === null || toolbarProps === void 0 ? void 0 : toolbarProps.sx) instanceof Function
|
|
1302
1352
|
? toolbarProps.sx(theme)
|
|
1303
1353
|
: toolbarProps === null || toolbarProps === void 0 ? void 0 : toolbarProps.sx))) }),
|
|
1304
1354
|
React__default["default"].createElement(MRT_LinearProgressBar, { isTopToolbar: false, table: table }),
|
|
1305
|
-
positionToolbarAlertBanner === 'bottom' && (React__default["default"].createElement(MRT_ToolbarAlertBanner, { table: table })),
|
|
1355
|
+
positionToolbarAlertBanner === 'bottom' && (React__default["default"].createElement(MRT_ToolbarAlertBanner, { stackAlertBanner: stackAlertBanner, table: table })),
|
|
1306
1356
|
['both', 'bottom'].includes(positionToolbarDropZone !== null && positionToolbarDropZone !== void 0 ? positionToolbarDropZone : '') && (React__default["default"].createElement(MRT_ToolbarDropZone, { table: table })),
|
|
1307
1357
|
React__default["default"].createElement(material.Box, { sx: {
|
|
1308
|
-
alignItems: '
|
|
1358
|
+
alignItems: 'center',
|
|
1309
1359
|
boxSizing: 'border-box',
|
|
1310
1360
|
display: 'flex',
|
|
1311
1361
|
justifyContent: 'space-between',
|
|
@@ -1453,9 +1503,6 @@ const MRT_FilterTextField = ({ header, rangeFilterIndex, table, }) => {
|
|
|
1453
1503
|
const handleFilterMenuOpen = (event) => {
|
|
1454
1504
|
setAnchorEl(event.currentTarget);
|
|
1455
1505
|
};
|
|
1456
|
-
React.useEffect(() => {
|
|
1457
|
-
handleClear();
|
|
1458
|
-
}, [columnDef._filterFn]);
|
|
1459
1506
|
if (columnDef.Filter) {
|
|
1460
1507
|
return React__default["default"].createElement(React__default["default"].Fragment, null, (_e = columnDef.Filter) === null || _e === void 0 ? void 0 : _e.call(columnDef, { column, header, table }));
|
|
1461
1508
|
}
|
|
@@ -1513,7 +1560,11 @@ const MRT_FilterTextField = ({ header, rangeFilterIndex, table, }) => {
|
|
|
1513
1560
|
if (textFieldProps.inputRef) {
|
|
1514
1561
|
textFieldProps.inputRef = inputRef;
|
|
1515
1562
|
}
|
|
1516
|
-
}, sx: (theme) => (Object.assign({ p: 0, minWidth:
|
|
1563
|
+
}, sx: (theme) => (Object.assign({ p: 0, minWidth: columnDef.filterVariant === 'range'
|
|
1564
|
+
? '90px'
|
|
1565
|
+
: !filterChipLabel
|
|
1566
|
+
? '120px'
|
|
1567
|
+
: 'auto', width: '100%', '& .MuiSelect-icon': {
|
|
1517
1568
|
mr: '1.5rem',
|
|
1518
1569
|
} }, ((textFieldProps === null || textFieldProps === void 0 ? void 0 : textFieldProps.sx) instanceof Function
|
|
1519
1570
|
? textFieldProps.sx(theme)
|
|
@@ -1541,7 +1592,7 @@ const MRT_FilterTextField = ({ header, rangeFilterIndex, table, }) => {
|
|
|
1541
1592
|
isMultiSelectFilter && (React__default["default"].createElement(material.Checkbox, { checked: ((_a = column.getFilterValue()) !== null && _a !== void 0 ? _a : []).includes(value), sx: { mr: '0.5rem' } })),
|
|
1542
1593
|
text));
|
|
1543
1594
|
})),
|
|
1544
|
-
React__default["default"].createElement(MRT_FilterOptionMenu, { anchorEl: anchorEl, header: header, setAnchorEl: setAnchorEl, table: table })));
|
|
1595
|
+
React__default["default"].createElement(MRT_FilterOptionMenu, { anchorEl: anchorEl, header: header, setAnchorEl: setAnchorEl, table: table, setFilterValue: setFilterValue })));
|
|
1545
1596
|
};
|
|
1546
1597
|
|
|
1547
1598
|
const MRT_FilterRangeFields = ({ header, table }) => {
|
|
@@ -1563,11 +1614,8 @@ const MRT_TableHeadCellFilterLabel = ({ header, table }) => {
|
|
|
1563
1614
|
const { options: { icons: { FilterAltIcon }, localization, }, } = table;
|
|
1564
1615
|
const { column } = header;
|
|
1565
1616
|
const { columnDef } = column;
|
|
1566
|
-
const isRangeFilter =
|
|
1567
|
-
'between',
|
|
1568
|
-
'betweenInclusive',
|
|
1569
|
-
'inNumberRange',
|
|
1570
|
-
].includes(columnDef._filterFn);
|
|
1617
|
+
const isRangeFilter = columnDef.filterVariant === 'range' ||
|
|
1618
|
+
['between', 'betweenInclusive', 'inNumberRange'].includes(columnDef._filterFn);
|
|
1571
1619
|
const currentFilterOption = columnDef._filterFn;
|
|
1572
1620
|
const filterTooltip = localization.filteringByColumn
|
|
1573
1621
|
.replace('{column}', String(columnDef.header))
|
|
@@ -1579,8 +1627,8 @@ const MRT_TableHeadCellFilterLabel = ({ header, table }) => {
|
|
|
1579
1627
|
? column.getFilterValue().join(`" ${isRangeFilter ? localization.and : localization.or} "`)
|
|
1580
1628
|
: column.getFilterValue()}"`)
|
|
1581
1629
|
.replace('" "', '');
|
|
1582
|
-
return (React__default["default"].createElement(material.Grow, { unmountOnExit: true, in: (!!column.getFilterValue() && isRangeFilter) ||
|
|
1583
|
-
(
|
|
1630
|
+
return (React__default["default"].createElement(material.Grow, { unmountOnExit: true, in: (!!column.getFilterValue() && !isRangeFilter) ||
|
|
1631
|
+
(isRangeFilter && // @ts-ignore
|
|
1584
1632
|
(!!((_b = column.getFilterValue()) === null || _b === void 0 ? void 0 : _b[0]) || !!((_c = column.getFilterValue()) === null || _c === void 0 ? void 0 : _c[1]))) },
|
|
1585
1633
|
React__default["default"].createElement("span", null,
|
|
1586
1634
|
React__default["default"].createElement(material.Tooltip, { arrow: true, placement: "top", title: filterTooltip },
|
|
@@ -1597,7 +1645,7 @@ const MRT_TableHeadCellFilterLabel = ({ header, table }) => {
|
|
|
1597
1645
|
};
|
|
1598
1646
|
|
|
1599
1647
|
const MRT_TableHeadCellGrabHandle = ({ column, table, tableHeadCellRef, }) => {
|
|
1600
|
-
const { getState, options: { enableColumnOrdering, muiTableHeadCellDragHandleProps
|
|
1648
|
+
const { getState, options: { enableColumnOrdering, muiTableHeadCellDragHandleProps }, setColumnOrder, setDraggingColumn, setHoveredColumn, } = table;
|
|
1601
1649
|
const { columnDef } = column;
|
|
1602
1650
|
const { hoveredColumn, draggingColumn, columnOrder } = getState();
|
|
1603
1651
|
const mIconButtonProps = muiTableHeadCellDragHandleProps instanceof Function
|
|
@@ -1607,16 +1655,15 @@ const MRT_TableHeadCellGrabHandle = ({ column, table, tableHeadCellRef, }) => {
|
|
|
1607
1655
|
? columnDef.muiTableHeadCellDragHandleProps({ column, table })
|
|
1608
1656
|
: columnDef.muiTableHeadCellDragHandleProps;
|
|
1609
1657
|
const iconButtonProps = Object.assign(Object.assign({}, mIconButtonProps), mcIconButtonProps);
|
|
1610
|
-
const handleDragStart = (
|
|
1658
|
+
const handleDragStart = (event) => {
|
|
1659
|
+
var _a;
|
|
1660
|
+
(_a = iconButtonProps === null || iconButtonProps === void 0 ? void 0 : iconButtonProps.onDragStart) === null || _a === void 0 ? void 0 : _a.call(iconButtonProps, event);
|
|
1611
1661
|
setDraggingColumn(column);
|
|
1612
|
-
|
|
1662
|
+
event.dataTransfer.setDragImage(tableHeadCellRef.current, 0, 0);
|
|
1613
1663
|
};
|
|
1614
1664
|
const handleDragEnd = (event) => {
|
|
1615
|
-
|
|
1616
|
-
|
|
1617
|
-
draggedColumn: column,
|
|
1618
|
-
targetColumn: hoveredColumn,
|
|
1619
|
-
});
|
|
1665
|
+
var _a;
|
|
1666
|
+
(_a = iconButtonProps === null || iconButtonProps === void 0 ? void 0 : iconButtonProps.onDragEnd) === null || _a === void 0 ? void 0 : _a.call(iconButtonProps, event);
|
|
1620
1667
|
if ((hoveredColumn === null || hoveredColumn === void 0 ? void 0 : hoveredColumn.id) === 'drop-zone') {
|
|
1621
1668
|
column.toggleGrouping();
|
|
1622
1669
|
}
|
|
@@ -1684,7 +1731,7 @@ const MRT_TableHeadCellSortLabel = ({ header, table }) => {
|
|
|
1684
1731
|
const MRT_TableHeadCell = ({ header, table }) => {
|
|
1685
1732
|
var _a, _b, _c, _d;
|
|
1686
1733
|
const theme = material.useTheme();
|
|
1687
|
-
const { getState, options: { enableColumnActions, enableColumnDragging, enableColumnOrdering,
|
|
1734
|
+
const { getState, options: { enableColumnActions, enableColumnDragging, enableColumnOrdering, enableGrouping, enableMultiSort, muiTableHeadCellProps, }, setHoveredColumn, } = table;
|
|
1688
1735
|
const { density, draggingColumn, grouping, hoveredColumn, showColumnFilters, } = getState();
|
|
1689
1736
|
const { column } = header;
|
|
1690
1737
|
const { columnDef } = column;
|
|
@@ -1696,16 +1743,6 @@ const MRT_TableHeadCell = ({ header, table }) => {
|
|
|
1696
1743
|
? columnDef.muiTableHeadCellProps({ column, table })
|
|
1697
1744
|
: columnDef.muiTableHeadCellProps;
|
|
1698
1745
|
const tableCellProps = Object.assign(Object.assign({}, mTableHeadCellProps), mcTableHeadCellProps);
|
|
1699
|
-
const getIsLastLeftPinnedColumn = () => {
|
|
1700
|
-
return (column.getIsPinned() === 'left' &&
|
|
1701
|
-
table.getLeftLeafHeaders().length - 1 === column.getPinnedIndex());
|
|
1702
|
-
};
|
|
1703
|
-
const getIsFirstRightPinnedColumn = () => {
|
|
1704
|
-
return column.getIsPinned() === 'right' && column.getPinnedIndex() === 0;
|
|
1705
|
-
};
|
|
1706
|
-
const getTotalRight = () => {
|
|
1707
|
-
return ((table.getRightLeafHeaders().length - 1 - column.getPinnedIndex()) * 150);
|
|
1708
|
-
};
|
|
1709
1746
|
const handleDragEnter = (_e) => {
|
|
1710
1747
|
if (enableGrouping && (hoveredColumn === null || hoveredColumn === void 0 ? void 0 : hoveredColumn.id) === 'drop-zone') {
|
|
1711
1748
|
setHoveredColumn(null);
|
|
@@ -1734,44 +1771,33 @@ const MRT_TableHeadCell = ({ header, table }) => {
|
|
|
1734
1771
|
})
|
|
1735
1772
|
: columnDef === null || columnDef === void 0 ? void 0 : columnDef.Header)) !== null && _b !== void 0 ? _b : columnDef.header);
|
|
1736
1773
|
const tableHeadCellRef = React__default["default"].useRef(null);
|
|
1737
|
-
return (React__default["default"].createElement(material.TableCell, Object.assign({ align: columnDefType === 'group' ? 'center' : 'left', colSpan: header.colSpan, onDragEnter: handleDragEnter, ref: tableHeadCellRef }, tableCellProps, { sx: (theme) => {
|
|
1738
|
-
|
|
1739
|
-
|
|
1740
|
-
?
|
|
1741
|
-
|
|
1742
|
-
|
|
1743
|
-
:
|
|
1744
|
-
?
|
|
1745
|
-
:
|
|
1746
|
-
|
|
1747
|
-
|
|
1748
|
-
? 0.
|
|
1749
|
-
:
|
|
1750
|
-
|
|
1751
|
-
|
|
1752
|
-
|
|
1753
|
-
|
|
1754
|
-
|
|
1755
|
-
|
|
1756
|
-
|
|
1757
|
-
|
|
1758
|
-
|
|
1759
|
-
|
|
1760
|
-
|
|
1761
|
-
|
|
1762
|
-
|
|
1763
|
-
|
|
1764
|
-
? '0.25rem'
|
|
1765
|
-
: density === 'comfortable'
|
|
1766
|
-
? '.75rem'
|
|
1767
|
-
: '1.25rem', right: column.getIsPinned() === 'right' ? `${getTotalRight()}px` : undefined, transition: `all ${enableColumnResizing ? 0 : '0.2s'} ease-in-out`, userSelect: enableMultiSort && column.getCanSort() ? 'none' : undefined, verticalAlign: 'top', zIndex: column.getIsResizing() || (draggingColumn === null || draggingColumn === void 0 ? void 0 : draggingColumn.id) === column.id
|
|
1768
|
-
? 3
|
|
1769
|
-
: column.getIsPinned() && columnDefType !== 'group'
|
|
1770
|
-
? 2
|
|
1771
|
-
: 1 }, ((tableCellProps === null || tableCellProps === void 0 ? void 0 : tableCellProps.sx) instanceof Function
|
|
1772
|
-
? tableCellProps.sx(theme)
|
|
1773
|
-
: tableCellProps === null || tableCellProps === void 0 ? void 0 : tableCellProps.sx)), draggingBorders), { maxWidth: `min(${column.getSize()}px, fit-content)`, minWidth: `max(${column.getSize()}px, ${(_a = columnDef.minSize) !== null && _a !== void 0 ? _a : 30}px)`, width: header.getSize() }));
|
|
1774
|
-
} }),
|
|
1774
|
+
return (React__default["default"].createElement(material.TableCell, Object.assign({ align: columnDefType === 'group' ? 'center' : 'left', colSpan: header.colSpan, onDragEnter: handleDragEnter, ref: tableHeadCellRef }, tableCellProps, { sx: (theme) => (Object.assign(Object.assign({ fontWeight: 'bold', overflow: 'visible', p: density === 'compact'
|
|
1775
|
+
? '0.5rem'
|
|
1776
|
+
: density === 'comfortable'
|
|
1777
|
+
? columnDefType === 'display'
|
|
1778
|
+
? '0.75rem'
|
|
1779
|
+
: '1rem'
|
|
1780
|
+
: columnDefType === 'display'
|
|
1781
|
+
? '1rem 1.25rem'
|
|
1782
|
+
: '1.5rem', pb: columnDefType === 'display'
|
|
1783
|
+
? 0
|
|
1784
|
+
: showColumnFilters || density === 'compact'
|
|
1785
|
+
? '0.4rem'
|
|
1786
|
+
: '0.6rem', pt: columnDefType === 'group' || density === 'compact'
|
|
1787
|
+
? '0.25rem'
|
|
1788
|
+
: density === 'comfortable'
|
|
1789
|
+
? '.75rem'
|
|
1790
|
+
: '1.25rem', userSelect: enableMultiSort && column.getCanSort() ? 'none' : undefined, verticalAlign: 'top', zIndex: column.getIsResizing() || (draggingColumn === null || draggingColumn === void 0 ? void 0 : draggingColumn.id) === column.id
|
|
1791
|
+
? 3
|
|
1792
|
+
: column.getIsPinned() && columnDefType !== 'group'
|
|
1793
|
+
? 2
|
|
1794
|
+
: 1 }, getCommonCellStyles({
|
|
1795
|
+
column,
|
|
1796
|
+
header,
|
|
1797
|
+
table,
|
|
1798
|
+
tableCellProps,
|
|
1799
|
+
theme,
|
|
1800
|
+
})), draggingBorders)) }),
|
|
1775
1801
|
header.isPlaceholder ? null : (React__default["default"].createElement(material.Box, { sx: {
|
|
1776
1802
|
alignItems: 'flex-start',
|
|
1777
1803
|
display: 'flex',
|
|
@@ -1826,11 +1852,13 @@ const MRT_TableHeadRow = ({ headerGroup, table }) => {
|
|
|
1826
1852
|
};
|
|
1827
1853
|
|
|
1828
1854
|
const MRT_TableHead = ({ table }) => {
|
|
1829
|
-
const { getHeaderGroups, options: { muiTableHeadProps }, } = table;
|
|
1855
|
+
const { getHeaderGroups, options: { enableStickyHeader, muiTableHeadProps }, } = table;
|
|
1830
1856
|
const tableHeadProps = muiTableHeadProps instanceof Function
|
|
1831
1857
|
? muiTableHeadProps({ table })
|
|
1832
1858
|
: muiTableHeadProps;
|
|
1833
|
-
return (React__default["default"].createElement(material.TableHead, Object.assign({}, tableHeadProps
|
|
1859
|
+
return (React__default["default"].createElement(material.TableHead, Object.assign({}, tableHeadProps, { sx: (theme) => (Object.assign({ opacity: enableStickyHeader ? 0.95 : undefined }, ((tableHeadProps === null || tableHeadProps === void 0 ? void 0 : tableHeadProps.sx) instanceof Function
|
|
1860
|
+
? tableHeadProps === null || tableHeadProps === void 0 ? void 0 : tableHeadProps.sx(theme)
|
|
1861
|
+
: tableHeadProps === null || tableHeadProps === void 0 ? void 0 : tableHeadProps.sx))) }), getHeaderGroups().map((headerGroup) => (React__default["default"].createElement(MRT_TableHeadRow, { headerGroup: headerGroup, key: headerGroup.id, table: table })))));
|
|
1834
1862
|
};
|
|
1835
1863
|
|
|
1836
1864
|
const MRT_EditCellTextField = ({ cell, showLabel, table, }) => {
|
|
@@ -1926,28 +1954,27 @@ const MRT_CopyButton = ({ cell, children, table, }) => {
|
|
|
1926
1954
|
};
|
|
1927
1955
|
|
|
1928
1956
|
const MRT_TableBodyRowGrabHandle = ({ cell, rowRef, table, }) => {
|
|
1929
|
-
const { options: { muiTableBodyRowDragHandleProps
|
|
1957
|
+
const { options: { muiTableBodyRowDragHandleProps }, } = table;
|
|
1930
1958
|
const { row } = cell;
|
|
1931
1959
|
const iconButtonProps = muiTableBodyRowDragHandleProps instanceof Function
|
|
1932
1960
|
? muiTableBodyRowDragHandleProps({ row, table })
|
|
1933
1961
|
: muiTableBodyRowDragHandleProps;
|
|
1934
|
-
const handleDragStart = (
|
|
1935
|
-
|
|
1962
|
+
const handleDragStart = (event) => {
|
|
1963
|
+
var _a;
|
|
1964
|
+
(_a = iconButtonProps === null || iconButtonProps === void 0 ? void 0 : iconButtonProps.onDragStart) === null || _a === void 0 ? void 0 : _a.call(iconButtonProps, event);
|
|
1965
|
+
event.dataTransfer.setDragImage(rowRef.current, 0, 0);
|
|
1936
1966
|
table.setDraggingRow(row);
|
|
1937
1967
|
};
|
|
1938
1968
|
const handleDragEnd = (event) => {
|
|
1939
|
-
|
|
1940
|
-
|
|
1941
|
-
draggedRow: table.getState().draggingRow,
|
|
1942
|
-
targetRow: table.getState().hoveredRow,
|
|
1943
|
-
});
|
|
1969
|
+
var _a;
|
|
1970
|
+
(_a = iconButtonProps === null || iconButtonProps === void 0 ? void 0 : iconButtonProps.onDragEnd) === null || _a === void 0 ? void 0 : _a.call(iconButtonProps, event);
|
|
1944
1971
|
table.setDraggingRow(null);
|
|
1945
1972
|
table.setHoveredRow(null);
|
|
1946
1973
|
};
|
|
1947
1974
|
return (React__default["default"].createElement(MRT_GrabHandleButton, { iconButtonProps: iconButtonProps, onDragStart: handleDragStart, onDragEnd: handleDragEnd, table: table }));
|
|
1948
1975
|
};
|
|
1949
1976
|
|
|
1950
|
-
const
|
|
1977
|
+
const _MRT_TableBodyCellValue = ({ cell, table }) => {
|
|
1951
1978
|
var _a, _b;
|
|
1952
1979
|
const { column, row } = cell;
|
|
1953
1980
|
const { columnDef } = column;
|
|
@@ -1969,6 +1996,7 @@ const MRT_TableBodyCellValue = ({ cell, table }) => {
|
|
|
1969
1996
|
})
|
|
1970
1997
|
: (_b = (_a = columnDef === null || columnDef === void 0 ? void 0 : columnDef.Cell) === null || _a === void 0 ? void 0 : _a.call(columnDef, { cell, column, row, table })) !== null && _b !== void 0 ? _b : cell.renderValue()));
|
|
1971
1998
|
};
|
|
1999
|
+
const MRT_TableBodyCellValue = React.memo(_MRT_TableBodyCellValue, (prev, next) => prev.cell.getValue() === next.cell.getValue());
|
|
1972
2000
|
|
|
1973
2001
|
const MRT_TableBodyCell = ({ cell, enableHover, rowIndex, rowRef, table, }) => {
|
|
1974
2002
|
var _a, _b;
|
|
@@ -1985,6 +2013,9 @@ const MRT_TableBodyCell = ({ cell, enableHover, rowIndex, rowRef, table, }) => {
|
|
|
1985
2013
|
? columnDef.muiTableBodyCellProps({ cell, table })
|
|
1986
2014
|
: columnDef.muiTableBodyCellProps;
|
|
1987
2015
|
const tableCellProps = Object.assign(Object.assign({}, mTableCellBodyProps), mcTableCellBodyProps);
|
|
2016
|
+
const skeletonProps = muiTableBodyCellSkeletonProps instanceof Function
|
|
2017
|
+
? muiTableBodyCellSkeletonProps({ cell, column, row, table })
|
|
2018
|
+
: muiTableBodyCellSkeletonProps;
|
|
1988
2019
|
const isEditable = (enableEditing || columnDef.enableEditing) &&
|
|
1989
2020
|
columnDef.enableEditing !== false;
|
|
1990
2021
|
const isEditing = isEditable &&
|
|
@@ -2015,16 +2046,6 @@ const MRT_TableBodyCell = ({ cell, enableHover, rowIndex, rowRef, table, }) => {
|
|
|
2015
2046
|
});
|
|
2016
2047
|
}
|
|
2017
2048
|
};
|
|
2018
|
-
const getIsLastLeftPinnedColumn = () => {
|
|
2019
|
-
return (column.getIsPinned() === 'left' &&
|
|
2020
|
-
table.getLeftLeafHeaders().length - 1 === column.getPinnedIndex());
|
|
2021
|
-
};
|
|
2022
|
-
const getIsFirstRightPinnedColumn = () => {
|
|
2023
|
-
return column.getIsPinned() === 'right' && column.getPinnedIndex() === 0;
|
|
2024
|
-
};
|
|
2025
|
-
const getTotalRight = () => {
|
|
2026
|
-
return ((table.getRightLeafHeaders().length - 1 - column.getPinnedIndex()) * 150);
|
|
2027
|
-
};
|
|
2028
2049
|
const handleDragEnter = (e) => {
|
|
2029
2050
|
var _a;
|
|
2030
2051
|
(_a = tableCellProps === null || tableCellProps === void 0 ? void 0 : tableCellProps.onDragEnter) === null || _a === void 0 ? void 0 : _a.call(tableCellProps, e);
|
|
@@ -2053,53 +2074,34 @@ const MRT_TableBodyCell = ({ cell, enableHover, rowIndex, rowRef, table, }) => {
|
|
|
2053
2074
|
: undefined,
|
|
2054
2075
|
}
|
|
2055
2076
|
: undefined;
|
|
2056
|
-
return (React__default["default"].createElement(material.TableCell, Object.assign({}, tableCellProps, { onDragEnter: handleDragEnter, onDoubleClick: handleDoubleClick, sx: (theme) => {
|
|
2057
|
-
|
|
2058
|
-
|
|
2059
|
-
|
|
2060
|
-
|
|
2061
|
-
? `4px 0 4px -2px ${material.alpha(theme.palette.common.black, 0.1)}`
|
|
2062
|
-
: getIsFirstRightPinnedColumn()
|
|
2063
|
-
? `-4px 0 4px -2px ${material.alpha(theme.palette.common.black, 0.1)}`
|
|
2064
|
-
: undefined, cursor: isEditable && editingMode === 'cell' ? 'pointer' : 'text', left: column.getIsPinned() === 'left'
|
|
2065
|
-
? `${column.getStart('left')}px`
|
|
2066
|
-
: undefined, opacity: (draggingColumn === null || draggingColumn === void 0 ? void 0 : draggingColumn.id) === column.id || (hoveredColumn === null || hoveredColumn === void 0 ? void 0 : hoveredColumn.id) === column.id
|
|
2067
|
-
? 0.5
|
|
2068
|
-
: 1, overflow: 'hidden', p: density === 'compact'
|
|
2077
|
+
return (React__default["default"].createElement(material.TableCell, Object.assign({}, tableCellProps, { onDragEnter: handleDragEnter, onDoubleClick: handleDoubleClick, sx: (theme) => (Object.assign(Object.assign({ cursor: isEditable && editingMode === 'cell' ? 'pointer' : 'text', overflow: 'hidden', p: density === 'compact'
|
|
2078
|
+
? columnDefType === 'display'
|
|
2079
|
+
? '0 0.5rem'
|
|
2080
|
+
: '0.5rem'
|
|
2081
|
+
: density === 'comfortable'
|
|
2069
2082
|
? columnDefType === 'display'
|
|
2070
|
-
? '0 0.
|
|
2071
|
-
: '
|
|
2072
|
-
:
|
|
2073
|
-
?
|
|
2074
|
-
|
|
2075
|
-
|
|
2076
|
-
|
|
2077
|
-
|
|
2078
|
-
|
|
2079
|
-
|
|
2080
|
-
|
|
2081
|
-
|
|
2082
|
-
|
|
2083
|
-
|
|
2084
|
-
|
|
2085
|
-
|
|
2086
|
-
?
|
|
2087
|
-
|
|
2088
|
-
|
|
2089
|
-
|
|
2090
|
-
|
|
2091
|
-
|
|
2092
|
-
columnDef.enableEditing !== false &&
|
|
2093
|
-
['table', 'cell'].includes(editingMode !== null && editingMode !== void 0 ? editingMode : '')
|
|
2094
|
-
? theme.palette.mode === 'dark'
|
|
2095
|
-
? `${material.lighten(theme.palette.background.default, 0.2)} !important`
|
|
2096
|
-
: `${material.darken(theme.palette.background.default, 0.1)} !important`
|
|
2097
|
-
: undefined,
|
|
2098
|
-
} }, ((tableCellProps === null || tableCellProps === void 0 ? void 0 : tableCellProps.sx) instanceof Function
|
|
2099
|
-
? tableCellProps.sx(theme)
|
|
2100
|
-
: tableCellProps === null || tableCellProps === void 0 ? void 0 : tableCellProps.sx)), draggingBorders), { maxWidth: `min(${column.getSize()}px, fit-content)`, minWidth: `max(${column.getSize()}px, ${(_a = columnDef.minSize) !== null && _a !== void 0 ? _a : 30}px)`, width: column.getSize() }));
|
|
2101
|
-
} }),
|
|
2102
|
-
React__default["default"].createElement(React__default["default"].Fragment, null, cell.getIsPlaceholder() ? null : isLoading || showSkeletons ? (React__default["default"].createElement(material.Skeleton, Object.assign({ animation: "wave", height: 20, width: skeletonWidth }, muiTableBodyCellSkeletonProps))) : enableRowNumbers &&
|
|
2083
|
+
? '0.5rem 0.75rem'
|
|
2084
|
+
: '1rem'
|
|
2085
|
+
: columnDefType === 'display'
|
|
2086
|
+
? '1rem 1.25rem'
|
|
2087
|
+
: '1.5rem', pl: column.id === 'mrt-row-expand'
|
|
2088
|
+
? `${row.depth +
|
|
2089
|
+
(density === 'compact'
|
|
2090
|
+
? 0.5
|
|
2091
|
+
: density === 'comfortable'
|
|
2092
|
+
? 0.75
|
|
2093
|
+
: 1.25)}rem`
|
|
2094
|
+
: 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': {
|
|
2095
|
+
backgroundColor: enableHover &&
|
|
2096
|
+
enableEditing &&
|
|
2097
|
+
columnDef.enableEditing !== false &&
|
|
2098
|
+
['table', 'cell'].includes(editingMode !== null && editingMode !== void 0 ? editingMode : '')
|
|
2099
|
+
? theme.palette.mode === 'dark'
|
|
2100
|
+
? `${material.lighten(theme.palette.background.default, 0.2)} !important`
|
|
2101
|
+
: `${material.darken(theme.palette.background.default, 0.1)} !important`
|
|
2102
|
+
: undefined,
|
|
2103
|
+
} }, getCommonCellStyles({ column, table, theme, tableCellProps })), draggingBorders)) }),
|
|
2104
|
+
React__default["default"].createElement(React__default["default"].Fragment, null, cell.getIsPlaceholder() ? null : isLoading || showSkeletons ? (React__default["default"].createElement(material.Skeleton, Object.assign({ animation: "wave", height: 20, width: skeletonWidth }, skeletonProps))) : enableRowNumbers &&
|
|
2103
2105
|
rowNumberMode === 'static' &&
|
|
2104
2106
|
column.id === 'mrt-row-numbers' ? (rowIndex + 1) : column.id === 'mrt-row-drag' ? (React__default["default"].createElement(MRT_TableBodyRowGrabHandle, { cell: cell, rowRef: rowRef, table: table })) : columnDefType === 'display' &&
|
|
2105
2107
|
(column.id === 'mrt-row-select' ||
|
|
@@ -2169,9 +2171,10 @@ const MRT_TableBodyRow = ({ row, rowIndex, table, virtualRow, }) => {
|
|
|
2169
2171
|
renderDetailPanel && !row.getIsGrouped() && (React__default["default"].createElement(MRT_TableDetailPanel, { row: row, table: table }))));
|
|
2170
2172
|
};
|
|
2171
2173
|
|
|
2172
|
-
const MRT_TableBody = ({ table
|
|
2173
|
-
|
|
2174
|
-
const {
|
|
2174
|
+
const MRT_TableBody = ({ table }) => {
|
|
2175
|
+
var _a;
|
|
2176
|
+
const { getRowModel, getPrePaginationRowModel, getState, options: { enableGlobalFilterRankedResults, enablePagination, enableRowVirtualization, localization, manualFiltering, manualSorting, muiTableBodyProps, virtualizerInstanceRef, virtualizerProps, }, refs: { tableContainerRef, tablePaperRef }, } = table;
|
|
2177
|
+
const { columnFilters, globalFilter, pagination, sorting } = getState();
|
|
2175
2178
|
const tableBodyProps = muiTableBodyProps instanceof Function
|
|
2176
2179
|
? muiTableBodyProps({ table })
|
|
2177
2180
|
: muiTableBodyProps;
|
|
@@ -2236,7 +2239,18 @@ const MRT_TableBody = ({ table, tableContainerRef }) => {
|
|
|
2236
2239
|
// ? virtualizer.getTotalSize() - virtualRows[virtualRows.length - 1].end
|
|
2237
2240
|
// : 0;
|
|
2238
2241
|
// }
|
|
2239
|
-
return (React__default["default"].createElement(material.TableBody, Object.assign({}, tableBodyProps),
|
|
2242
|
+
return (React__default["default"].createElement(material.TableBody, Object.assign({}, tableBodyProps), !rows.length ? (React__default["default"].createElement("tr", null,
|
|
2243
|
+
React__default["default"].createElement("td", { colSpan: table.getVisibleLeafColumns().length },
|
|
2244
|
+
React__default["default"].createElement(material.Typography, { sx: {
|
|
2245
|
+
color: 'text.secondary',
|
|
2246
|
+
fontStyle: 'italic',
|
|
2247
|
+
maxWidth: `min(100vw, ${(_a = tablePaperRef.current) === null || _a === void 0 ? void 0 : _a.clientWidth}px)`,
|
|
2248
|
+
py: '2rem',
|
|
2249
|
+
textAlign: 'center',
|
|
2250
|
+
width: '100%',
|
|
2251
|
+
} }, globalFilter || columnFilters.length
|
|
2252
|
+
? localization.noResultsFound
|
|
2253
|
+
: localization.noRecordsToDisplay)))) : (React__default["default"].createElement(React__default["default"].Fragment, null,
|
|
2240
2254
|
enableRowVirtualization && paddingTop > 0 && (React__default["default"].createElement("tr", null,
|
|
2241
2255
|
React__default["default"].createElement("td", { style: { height: `${paddingTop}px` } }))),
|
|
2242
2256
|
(enableRowVirtualization ? virtualRows : rows).map((rowOrVirtualRow, rowIndex) => {
|
|
@@ -2246,12 +2260,12 @@ const MRT_TableBody = ({ table, tableContainerRef }) => {
|
|
|
2246
2260
|
return (React__default["default"].createElement(MRT_TableBodyRow, { key: row.id, row: row, rowIndex: enableRowVirtualization ? rowOrVirtualRow.index : rowIndex, table: table, virtualRow: enableRowVirtualization ? rowOrVirtualRow : null }));
|
|
2247
2261
|
}),
|
|
2248
2262
|
enableRowVirtualization && paddingBottom > 0 && (React__default["default"].createElement("tr", null,
|
|
2249
|
-
React__default["default"].createElement("td", { style: { height: `${paddingBottom}px` } })))));
|
|
2263
|
+
React__default["default"].createElement("td", { style: { height: `${paddingBottom}px` } })))))));
|
|
2250
2264
|
};
|
|
2251
2265
|
|
|
2252
2266
|
const MRT_TableFooterCell = ({ footer, table }) => {
|
|
2253
2267
|
var _a, _b, _c;
|
|
2254
|
-
const { getState, options: { muiTableFooterCellProps
|
|
2268
|
+
const { getState, options: { muiTableFooterCellProps }, } = table;
|
|
2255
2269
|
const { density } = getState();
|
|
2256
2270
|
const { column } = footer;
|
|
2257
2271
|
const { columnDef } = column;
|
|
@@ -2263,13 +2277,11 @@ const MRT_TableFooterCell = ({ footer, table }) => {
|
|
|
2263
2277
|
? columnDef.muiTableFooterCellProps({ column, table })
|
|
2264
2278
|
: columnDef.muiTableFooterCellProps;
|
|
2265
2279
|
const tableCellProps = Object.assign(Object.assign({}, mTableFooterCellProps), mcTableFooterCellProps);
|
|
2266
|
-
return (React__default["default"].createElement(material.TableCell, Object.assign({ align: columnDefType === 'group' ? 'center' : 'left', colSpan: footer.colSpan, variant: "head" }, tableCellProps, { sx: (theme) => (Object.assign({
|
|
2280
|
+
return (React__default["default"].createElement(material.TableCell, Object.assign({ align: columnDefType === 'group' ? 'center' : 'left', colSpan: footer.colSpan, variant: "head" }, tableCellProps, { sx: (theme) => (Object.assign({ fontWeight: 'bold', p: density === 'compact'
|
|
2267
2281
|
? '0.5rem'
|
|
2268
2282
|
: density === 'comfortable'
|
|
2269
2283
|
? '1rem'
|
|
2270
|
-
: '1.5rem',
|
|
2271
|
-
? tableCellProps.sx(theme)
|
|
2272
|
-
: tableCellProps === null || tableCellProps === void 0 ? void 0 : tableCellProps.sx))) }),
|
|
2284
|
+
: '1.5rem', verticalAlign: 'top' }, getCommonCellStyles({ column, table, theme, tableCellProps }))) }),
|
|
2273
2285
|
React__default["default"].createElement(React__default["default"].Fragment, null, footer.isPlaceholder
|
|
2274
2286
|
? null
|
|
2275
2287
|
: (_c = (_b = (columnDef.Footer instanceof Function
|
|
@@ -2302,16 +2314,16 @@ const MRT_TableFooter = ({ table }) => {
|
|
|
2302
2314
|
? muiTableFooterProps({ table })
|
|
2303
2315
|
: muiTableFooterProps;
|
|
2304
2316
|
const stickFooter = (isFullScreen || enableStickyFooter) && enableStickyFooter !== false;
|
|
2305
|
-
return (React__default["default"].createElement(material.TableFooter, Object.assign({}, tableFooterProps, { sx: (theme) => (Object.assign({
|
|
2317
|
+
return (React__default["default"].createElement(material.TableFooter, Object.assign({}, tableFooterProps, { sx: (theme) => (Object.assign({ backgroundColor: material.lighten(theme.palette.background.default, 0.06), bottom: stickFooter ? 0 : undefined, opacity: stickFooter ? 0.95 : undefined, outline: stickFooter
|
|
2306
2318
|
? theme.palette.mode === 'light'
|
|
2307
2319
|
? `1px solid ${theme.palette.grey[300]}`
|
|
2308
2320
|
: `1px solid ${theme.palette.grey[700]}`
|
|
2309
|
-
: undefined }, ((tableFooterProps === null || tableFooterProps === void 0 ? void 0 : tableFooterProps.sx) instanceof Function
|
|
2321
|
+
: undefined, position: stickFooter ? 'sticky' : undefined }, ((tableFooterProps === null || tableFooterProps === void 0 ? void 0 : tableFooterProps.sx) instanceof Function
|
|
2310
2322
|
? tableFooterProps === null || tableFooterProps === void 0 ? void 0 : tableFooterProps.sx(theme)
|
|
2311
2323
|
: tableFooterProps === null || tableFooterProps === void 0 ? void 0 : tableFooterProps.sx))) }), getFooterGroups().map((footerGroup) => (React__default["default"].createElement(MRT_TableFooterRow, { footerGroup: footerGroup, key: footerGroup.id, table: table })))));
|
|
2312
2324
|
};
|
|
2313
2325
|
|
|
2314
|
-
const MRT_Table = ({
|
|
2326
|
+
const MRT_Table = ({ table }) => {
|
|
2315
2327
|
const { getState, options: { enableColumnResizing, enableRowVirtualization, enableStickyHeader, enableTableFooter, enableTableHead, muiTableProps, }, } = table;
|
|
2316
2328
|
const { isFullScreen } = getState();
|
|
2317
2329
|
const tableProps = muiTableProps instanceof Function
|
|
@@ -2321,7 +2333,7 @@ const MRT_Table = ({ tableContainerRef, table }) => {
|
|
|
2321
2333
|
? tableProps.sx(theme)
|
|
2322
2334
|
: tableProps === null || tableProps === void 0 ? void 0 : tableProps.sx))) }),
|
|
2323
2335
|
enableTableHead && React__default["default"].createElement(MRT_TableHead, { table: table }),
|
|
2324
|
-
React__default["default"].createElement(MRT_TableBody, {
|
|
2336
|
+
React__default["default"].createElement(MRT_TableBody, { table: table }),
|
|
2325
2337
|
enableTableFooter && React__default["default"].createElement(MRT_TableFooter, { table: table })));
|
|
2326
2338
|
};
|
|
2327
2339
|
|
|
@@ -2356,31 +2368,42 @@ const MRT_TableContainer = ({ table }) => {
|
|
|
2356
2368
|
: tableContainerProps === null || tableContainerProps === void 0 ? void 0 : tableContainerProps.sx))), style: Object.assign({ maxHeight: isFullScreen
|
|
2357
2369
|
? `calc(100vh - ${totalToolbarHeight}px)`
|
|
2358
2370
|
: undefined }, tableContainerProps === null || tableContainerProps === void 0 ? void 0 : tableContainerProps.style) }),
|
|
2359
|
-
React__default["default"].createElement(MRT_Table, {
|
|
2371
|
+
React__default["default"].createElement(MRT_Table, { table: table })));
|
|
2360
2372
|
};
|
|
2361
2373
|
|
|
2362
2374
|
const MRT_TablePaper = ({ table }) => {
|
|
2363
|
-
const { getState, options: { enableBottomToolbar, enableTopToolbar, muiTablePaperProps }, } = table;
|
|
2375
|
+
const { getState, options: { enableBottomToolbar, enableTopToolbar, muiTablePaperProps, renderBottomToolbar, renderTopToolbar, }, refs: { tablePaperRef }, } = table;
|
|
2364
2376
|
const { isFullScreen } = getState();
|
|
2365
|
-
React.useEffect(() => {
|
|
2366
|
-
if (typeof window !== 'undefined') {
|
|
2367
|
-
if (isFullScreen) {
|
|
2368
|
-
document.body.style.height = '100vh';
|
|
2369
|
-
}
|
|
2370
|
-
else {
|
|
2371
|
-
document.body.style.height = 'auto';
|
|
2372
|
-
}
|
|
2373
|
-
}
|
|
2374
|
-
}, [isFullScreen]);
|
|
2375
2377
|
const tablePaperProps = muiTablePaperProps instanceof Function
|
|
2376
2378
|
? muiTablePaperProps({ table })
|
|
2377
2379
|
: muiTablePaperProps;
|
|
2378
|
-
return (React__default["default"].createElement(material.Paper, Object.assign({ elevation: 2 }, tablePaperProps, {
|
|
2380
|
+
return (React__default["default"].createElement(material.Paper, Object.assign({ elevation: 2 }, tablePaperProps, { ref: (ref) => {
|
|
2381
|
+
tablePaperRef.current = ref;
|
|
2382
|
+
if (tablePaperProps === null || tablePaperProps === void 0 ? void 0 : tablePaperProps.ref) {
|
|
2383
|
+
//@ts-ignore
|
|
2384
|
+
tablePaperProps.ref.current = ref;
|
|
2385
|
+
}
|
|
2386
|
+
}, sx: (theme) => (Object.assign({ transition: 'all 0.2s ease-in-out' }, ((tablePaperProps === null || tablePaperProps === void 0 ? void 0 : tablePaperProps.sx) instanceof Function
|
|
2379
2387
|
? tablePaperProps === null || tablePaperProps === void 0 ? void 0 : tablePaperProps.sx(theme)
|
|
2380
|
-
: tablePaperProps === null || tablePaperProps === void 0 ? void 0 : tablePaperProps.sx))), style: Object.assign(Object.assign({}, tablePaperProps === null || tablePaperProps === void 0 ? void 0 : tablePaperProps.style),
|
|
2381
|
-
|
|
2388
|
+
: tablePaperProps === null || tablePaperProps === void 0 ? void 0 : tablePaperProps.sx))), style: Object.assign(Object.assign({}, tablePaperProps === null || tablePaperProps === void 0 ? void 0 : tablePaperProps.style), (isFullScreen
|
|
2389
|
+
? {
|
|
2390
|
+
height: '100vh',
|
|
2391
|
+
margin: 0,
|
|
2392
|
+
maxHeight: '100vh',
|
|
2393
|
+
maxWidth: '100vw',
|
|
2394
|
+
padding: 0,
|
|
2395
|
+
width: '100vw',
|
|
2396
|
+
}
|
|
2397
|
+
: {})) }),
|
|
2398
|
+
enableTopToolbar &&
|
|
2399
|
+
(renderTopToolbar instanceof Function
|
|
2400
|
+
? renderTopToolbar({ table })
|
|
2401
|
+
: renderTopToolbar !== null && renderTopToolbar !== void 0 ? renderTopToolbar : React__default["default"].createElement(MRT_TopToolbar, { table: table })),
|
|
2382
2402
|
React__default["default"].createElement(MRT_TableContainer, { table: table }),
|
|
2383
|
-
enableBottomToolbar &&
|
|
2403
|
+
enableBottomToolbar &&
|
|
2404
|
+
(renderBottomToolbar instanceof Function
|
|
2405
|
+
? renderBottomToolbar({ table })
|
|
2406
|
+
: renderBottomToolbar !== null && renderBottomToolbar !== void 0 ? renderBottomToolbar : React__default["default"].createElement(MRT_BottomToolbar, { table: table }))));
|
|
2384
2407
|
};
|
|
2385
2408
|
|
|
2386
2409
|
const MRT_EditRowModal = ({ open, row, table, }) => {
|
|
@@ -2408,6 +2431,7 @@ const MRT_TableRoot = (props) => {
|
|
|
2408
2431
|
const filterInputRefs = React.useRef({});
|
|
2409
2432
|
const searchInputRef = React.useRef(null);
|
|
2410
2433
|
const tableContainerRef = React.useRef(null);
|
|
2434
|
+
const tablePaperRef = React.useRef(null);
|
|
2411
2435
|
const topToolbarRef = React.useRef(null);
|
|
2412
2436
|
const initialState = React.useMemo(() => {
|
|
2413
2437
|
var _a, _b;
|
|
@@ -2443,14 +2467,14 @@ const MRT_TableRoot = (props) => {
|
|
|
2443
2467
|
const [showColumnFilters, setShowFilters] = React.useState((_p = initialState === null || initialState === void 0 ? void 0 : initialState.showColumnFilters) !== null && _p !== void 0 ? _p : false);
|
|
2444
2468
|
const [showGlobalFilter, setShowGlobalFilter] = React.useState((_q = initialState === null || initialState === void 0 ? void 0 : initialState.showGlobalFilter) !== null && _q !== void 0 ? _q : false);
|
|
2445
2469
|
const displayColumns = React.useMemo(() => {
|
|
2446
|
-
var _a, _b, _c, _d, _e
|
|
2470
|
+
var _a, _b, _c, _d, _e;
|
|
2447
2471
|
return [
|
|
2448
|
-
columnOrder.includes('mrt-row-drag') && Object.assign(Object.assign(Object.assign({ header:
|
|
2449
|
-
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:
|
|
2472
|
+
columnOrder.includes('mrt-row-drag') && Object.assign(Object.assign(Object.assign({ header: props.localization.move, size: 60 }, props.defaultDisplayColumn), (_a = props.displayColumnDefOptions) === null || _a === void 0 ? void 0 : _a['mrt-row-drag']), { id: 'mrt-row-drag' }),
|
|
2473
|
+
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), (_b = props.displayColumnDefOptions) === null || _b === void 0 ? void 0 : _b['mrt-row-actions']), { id: 'mrt-row-actions' }),
|
|
2450
2474
|
columnOrder.includes('mrt-row-expand') &&
|
|
2451
|
-
showExpandColumn(props, grouping) && Object.assign(Object.assign(Object.assign({ Cell: ({ row }) => (React__default["default"].createElement(MRT_ExpandButton, { row: row, table: table })), Header: () => props.enableExpandAll ? (React__default["default"].createElement(MRT_ExpandAllButton, { table: table })) : null, header:
|
|
2452
|
-
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 ? (React__default["default"].createElement(MRT_SelectCheckbox, { selectAll: true, table: table })) : null, header:
|
|
2453
|
-
columnOrder.includes('mrt-row-numbers') && Object.assign(Object.assign(Object.assign({ Cell: ({ row }) => row.index + 1, Header: () =>
|
|
2475
|
+
showExpandColumn(props, grouping) && Object.assign(Object.assign(Object.assign({ Cell: ({ row }) => (React__default["default"].createElement(MRT_ExpandButton, { row: row, table: table })), Header: () => props.enableExpandAll ? (React__default["default"].createElement(MRT_ExpandAllButton, { table: table })) : null, header: props.localization.expand, size: 60 }, props.defaultDisplayColumn), (_c = props.displayColumnDefOptions) === null || _c === void 0 ? void 0 : _c['mrt-row-expand']), { id: 'mrt-row-expand' }),
|
|
2476
|
+
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 ? (React__default["default"].createElement(MRT_SelectCheckbox, { selectAll: true, table: table })) : null, header: props.localization.select, size: 60 }, props.defaultDisplayColumn), (_d = props.displayColumnDefOptions) === null || _d === void 0 ? void 0 : _d['mrt-row-select']), { id: 'mrt-row-select' }),
|
|
2477
|
+
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), (_e = props.displayColumnDefOptions) === null || _e === void 0 ? void 0 : _e['mrt-row-numbers']), { id: 'mrt-row-numbers' }),
|
|
2454
2478
|
].filter(Boolean);
|
|
2455
2479
|
}, [
|
|
2456
2480
|
columnOrder,
|
|
@@ -2528,29 +2552,48 @@ const MRT_TableRoot = (props) => {
|
|
|
2528
2552
|
filterInputRefs,
|
|
2529
2553
|
searchInputRef,
|
|
2530
2554
|
tableContainerRef,
|
|
2555
|
+
tablePaperRef,
|
|
2531
2556
|
topToolbarRef,
|
|
2532
2557
|
}, setColumnFilterFns: (_x = props.onFilterFnsChange) !== null && _x !== void 0 ? _x : setColumnFilterFns, setDensity: (_y = props.onDensityChange) !== null && _y !== void 0 ? _y : setDensity, setDraggingColumn: (_z = props.onDraggingColumnChange) !== null && _z !== void 0 ? _z : setDraggingColumn, setDraggingRow: (_0 = props.onDraggingRowChange) !== null && _0 !== void 0 ? _0 : setDraggingRow, setEditingCell: (_1 = props.onEditingCellChange) !== null && _1 !== void 0 ? _1 : setEditingCell, setEditingRow: (_2 = props.onEditingRowChange) !== null && _2 !== void 0 ? _2 : setEditingRow, setGlobalFilterFn: (_3 = props.onGlobalFilterFnChange) !== null && _3 !== void 0 ? _3 : setGlobalFilterFn, setHoveredColumn: (_4 = props.onHoveredColumnChange) !== null && _4 !== void 0 ? _4 : setHoveredColumn, setHoveredRow: (_5 = props.onHoveredRowChange) !== null && _5 !== void 0 ? _5 : setHoveredRow, setIsFullScreen: (_6 = props.onIsFullScreenChange) !== null && _6 !== void 0 ? _6 : setIsFullScreen, setShowAlertBanner: (_7 = props.onShowAlertBannerChange) !== null && _7 !== void 0 ? _7 : setShowAlertBanner, setShowFilters: (_8 = props.onShowFiltersChange) !== null && _8 !== void 0 ? _8 : setShowFilters, setShowGlobalFilter: (_9 = props.onShowGlobalFilterChange) !== null && _9 !== void 0 ? _9 : setShowGlobalFilter });
|
|
2533
2558
|
if (props.tableInstanceRef) {
|
|
2534
2559
|
props.tableInstanceRef.current = table;
|
|
2535
2560
|
}
|
|
2561
|
+
const initialBodyHeight = React.useRef();
|
|
2562
|
+
React.useEffect(() => {
|
|
2563
|
+
if (typeof window !== 'undefined') {
|
|
2564
|
+
initialBodyHeight.current = document.body.style.height;
|
|
2565
|
+
}
|
|
2566
|
+
}, []);
|
|
2567
|
+
React.useEffect(() => {
|
|
2568
|
+
if (typeof window !== 'undefined') {
|
|
2569
|
+
if (table.getState().isFullScreen) {
|
|
2570
|
+
document.body.style.height = '100vh';
|
|
2571
|
+
}
|
|
2572
|
+
else {
|
|
2573
|
+
document.body.style.height = initialBodyHeight.current;
|
|
2574
|
+
}
|
|
2575
|
+
}
|
|
2576
|
+
}, [table.getState().isFullScreen]);
|
|
2536
2577
|
return (React__default["default"].createElement(React__default["default"].Fragment, null,
|
|
2537
|
-
React__default["default"].createElement(material.Dialog, { PaperComponent: material.Box, TransitionComponent: material.Grow, disablePortal: true, fullScreen: true, keepMounted: false, onClose: () => setIsFullScreen(false), open: isFullScreen, transitionDuration: 400 },
|
|
2578
|
+
React__default["default"].createElement(material.Dialog, { PaperComponent: material.Box, TransitionComponent: material.Grow, disablePortal: true, fullScreen: true, keepMounted: false, onClose: () => table.setIsFullScreen(false), open: table.getState().isFullScreen, transitionDuration: 400 },
|
|
2538
2579
|
React__default["default"].createElement(MRT_TablePaper, { table: table })),
|
|
2539
|
-
!isFullScreen && React__default["default"].createElement(MRT_TablePaper, { table: table }),
|
|
2580
|
+
!table.getState().isFullScreen && (React__default["default"].createElement(MRT_TablePaper, { table: table })),
|
|
2540
2581
|
editingRow && props.editingMode === 'modal' && (React__default["default"].createElement(MRT_EditRowModal, { row: editingRow, table: table, open: true }))));
|
|
2541
2582
|
};
|
|
2542
2583
|
|
|
2543
2584
|
var MaterialReactTable = (_a) => {
|
|
2544
2585
|
var { aggregationFns, autoResetExpanded = false, columnResizeMode = 'onEnd', defaultColumn = { minSize: 40, maxSize: 1000, size: 180 }, defaultDisplayColumn, editingMode = 'modal', enableBottomToolbar = true, enableColumnActions = true, enableColumnFilters = true, enableColumnOrdering = false, enableColumnResizing = false, enableDensityToggle = true, enableExpandAll = true, enableFilters = true, enableFullScreenToggle = true, enableGlobalFilter = true, enableGlobalFilterRankedResults = true, enableGrouping = false, enableHiding = true, enableMultiRowSelection = true, enableMultiSort = true, enablePagination = true, enablePinning = false, enableRowSelection = false, enableSelectAll = true, enableSorting = true, enableStickyHeader = false, enableTableFooter = true, enableTableHead = true, enableToolbarInternalActions = true, enableTopToolbar = true, filterFns, icons, localization, positionActionsColumn = 'first', positionExpandColumn = 'first', positionGlobalFilter = 'right', positionPagination = 'bottom', positionToolbarAlertBanner = 'top', positionToolbarDropZone = 'top', rowNumberMode = 'original', selectAllMode = 'all', sortingFns } = _a, rest = __rest(_a, ["aggregationFns", "autoResetExpanded", "columnResizeMode", "defaultColumn", "defaultDisplayColumn", "editingMode", "enableBottomToolbar", "enableColumnActions", "enableColumnFilters", "enableColumnOrdering", "enableColumnResizing", "enableDensityToggle", "enableExpandAll", "enableFilters", "enableFullScreenToggle", "enableGlobalFilter", "enableGlobalFilterRankedResults", "enableGrouping", "enableHiding", "enableMultiRowSelection", "enableMultiSort", "enablePagination", "enablePinning", "enableRowSelection", "enableSelectAll", "enableSorting", "enableStickyHeader", "enableTableFooter", "enableTableHead", "enableToolbarInternalActions", "enableTopToolbar", "filterFns", "icons", "localization", "positionActionsColumn", "positionExpandColumn", "positionGlobalFilter", "positionPagination", "positionToolbarAlertBanner", "positionToolbarDropZone", "rowNumberMode", "selectAllMode", "sortingFns"]);
|
|
2545
|
-
return (React__default["default"].createElement(MRT_TableRoot, Object.assign({ aggregationFns: Object.assign(Object.assign({}, MRT_AggregationFns), aggregationFns), autoResetExpanded: autoResetExpanded, columnResizeMode: columnResizeMode, defaultColumn: defaultColumn, defaultDisplayColumn: Object.assign({ columnDefType: 'display', enableClickToCopy: false, enableColumnActions: false, enableColumnDragging: false, enableColumnFilter: false, enableColumnOrdering: false, enableEditing: false, enableGlobalFilter: false, enableGrouping: false, enableHiding: false, enableResizing: false, enableSorting: false }, defaultDisplayColumn), editingMode: editingMode, enableBottomToolbar: enableBottomToolbar, enableColumnActions: enableColumnActions, enableColumnFilters: enableColumnFilters, enableColumnOrdering: enableColumnOrdering, enableColumnResizing: enableColumnResizing, enableDensityToggle: enableDensityToggle, enableExpandAll: enableExpandAll, 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: Object.assign(Object.assign({}, MRT_FilterFns), filterFns), icons: Object.assign(Object.assign({}, MRT_Default_Icons), icons), localization: Object.assign(Object.assign({},
|
|
2586
|
+
return (React__default["default"].createElement(MRT_TableRoot, Object.assign({ aggregationFns: Object.assign(Object.assign({}, MRT_AggregationFns), aggregationFns), autoResetExpanded: autoResetExpanded, columnResizeMode: columnResizeMode, defaultColumn: defaultColumn, defaultDisplayColumn: Object.assign({ columnDefType: 'display', enableClickToCopy: false, enableColumnActions: false, enableColumnDragging: false, enableColumnFilter: false, enableColumnOrdering: false, enableEditing: false, enableGlobalFilter: false, enableGrouping: false, enableHiding: false, enableResizing: false, enableSorting: false }, defaultDisplayColumn), editingMode: editingMode, enableBottomToolbar: enableBottomToolbar, enableColumnActions: enableColumnActions, enableColumnFilters: enableColumnFilters, enableColumnOrdering: enableColumnOrdering, enableColumnResizing: enableColumnResizing, enableDensityToggle: enableDensityToggle, enableExpandAll: enableExpandAll, 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: Object.assign(Object.assign({}, MRT_FilterFns), filterFns), icons: Object.assign(Object.assign({}, MRT_Default_Icons), icons), localization: Object.assign(Object.assign({}, MRT_Localization_EN), localization), positionActionsColumn: positionActionsColumn, positionExpandColumn: positionExpandColumn, positionGlobalFilter: positionGlobalFilter, positionPagination: positionPagination, positionToolbarAlertBanner: positionToolbarAlertBanner, positionToolbarDropZone: positionToolbarDropZone, rowNumberMode: rowNumberMode, selectAllMode: selectAllMode, sortingFns: Object.assign(Object.assign({}, MRT_SortingFns), sortingFns) }, rest)));
|
|
2546
2587
|
};
|
|
2547
2588
|
|
|
2548
2589
|
exports.MRT_CopyButton = MRT_CopyButton;
|
|
2549
2590
|
exports.MRT_FullScreenToggleButton = MRT_FullScreenToggleButton;
|
|
2550
2591
|
exports.MRT_GlobalFilterTextField = MRT_GlobalFilterTextField;
|
|
2551
2592
|
exports.MRT_ShowHideColumnsButton = MRT_ShowHideColumnsButton;
|
|
2593
|
+
exports.MRT_TablePagination = MRT_TablePagination;
|
|
2552
2594
|
exports.MRT_ToggleDensePaddingButton = MRT_ToggleDensePaddingButton;
|
|
2553
2595
|
exports.MRT_ToggleFiltersButton = MRT_ToggleFiltersButton;
|
|
2554
2596
|
exports.MRT_ToggleGlobalFilterButton = MRT_ToggleGlobalFilterButton;
|
|
2597
|
+
exports.MRT_ToolbarInternalButtons = MRT_ToolbarInternalButtons;
|
|
2555
2598
|
exports["default"] = MaterialReactTable;
|
|
2556
2599
|
//# sourceMappingURL=index.js.map
|