material-react-table 0.8.15 → 0.9.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -1
- package/dist/MaterialReactTable.d.ts +38 -36
- package/dist/body/MRT_TableBody.d.ts +2 -1
- package/dist/material-react-table.cjs.development.js +630 -86
- package/dist/material-react-table.cjs.development.js.map +1 -1
- package/dist/material-react-table.cjs.production.min.js +1 -1
- package/dist/material-react-table.cjs.production.min.js.map +1 -1
- package/dist/material-react-table.esm.js +137 -84
- package/dist/material-react-table.esm.js.map +1 -1
- package/dist/table/MRT_Table.d.ts +2 -1
- package/dist/table/MRT_TableRoot.d.ts +1 -0
- package/dist/toolbar/MRT_LinearProgressBar.d.ts +1 -0
- package/dist/utils.d.ts +1 -1
- package/package.json +11 -10
- package/src/MaterialReactTable.tsx +51 -47
- package/src/body/MRT_TableBody.tsx +53 -14
- package/src/body/MRT_TableBodyCell.tsx +13 -9
- package/src/body/MRT_TableBodyRow.tsx +4 -3
- package/src/body/MRT_TableDetailPanel.tsx +2 -2
- package/src/buttons/MRT_EditActionButtons.tsx +2 -2
- package/src/buttons/MRT_ExpandButton.tsx +2 -2
- package/src/buttons/MRT_FullScreenToggleButton.tsx +2 -2
- package/src/buttons/MRT_ToggleDensePaddingButton.tsx +2 -2
- package/src/buttons/MRT_ToggleFiltersButton.tsx +2 -2
- package/src/buttons/MRT_ToggleGlobalFilterButton.tsx +4 -4
- package/src/head/MRT_TableHeadCellFilterLabel.tsx +1 -0
- package/src/inputs/MRT_EditCellTextField.tsx +8 -8
- package/src/inputs/MRT_FilterTextField.tsx +2 -2
- package/src/inputs/MRT_SearchTextField.tsx +4 -4
- package/src/inputs/MRT_SelectCheckbox.tsx +4 -4
- package/src/menus/MRT_ColumnActionMenu.tsx +2 -2
- package/src/menus/MRT_ShowHideColumnsMenu.tsx +1 -1
- package/src/menus/MRT_ShowHideColumnsMenuItems.tsx +2 -2
- package/src/table/MRT_Table.tsx +10 -3
- package/src/table/MRT_TableContainer.tsx +10 -4
- package/src/table/MRT_TableRoot.tsx +11 -11
- package/src/toolbar/MRT_LinearProgressBar.tsx +17 -2
- package/src/toolbar/MRT_ToolbarBottom.tsx +4 -4
- package/src/toolbar/MRT_ToolbarInternalButtons.tsx +2 -1
- package/src/toolbar/MRT_ToolbarTop.tsx +13 -6
- package/src/utils.ts +1 -1
|
@@ -5,6 +5,7 @@ import { Tooltip, IconButton, Menu, MenuItem, Box, FormControlLabel, Switch, But
|
|
|
5
5
|
import { rankItem, rankings } from '@tanstack/match-sorter-utils';
|
|
6
6
|
import { useDrop, useDrag, DndProvider } from 'react-dnd';
|
|
7
7
|
import { HTML5Backend } from 'react-dnd-html5-backend';
|
|
8
|
+
import { useVirtual } from 'react-virtual';
|
|
8
9
|
|
|
9
10
|
function _extends() {
|
|
10
11
|
_extends = Object.assign ? Object.assign.bind() : function (target) {
|
|
@@ -187,7 +188,7 @@ var MRT_ExpandButton = function MRT_ExpandButton(_ref) {
|
|
|
187
188
|
_tableInstance$option = tableInstance.options,
|
|
188
189
|
ExpandMoreIcon = _tableInstance$option.icons.ExpandMoreIcon,
|
|
189
190
|
localization = _tableInstance$option.localization,
|
|
190
|
-
|
|
191
|
+
onMrtRowExpandChange = _tableInstance$option.onMrtRowExpandChange,
|
|
191
192
|
renderDetailPanel = _tableInstance$option.renderDetailPanel;
|
|
192
193
|
|
|
193
194
|
var _getState = getState(),
|
|
@@ -195,7 +196,7 @@ var MRT_ExpandButton = function MRT_ExpandButton(_ref) {
|
|
|
195
196
|
|
|
196
197
|
var handleToggleExpand = function handleToggleExpand(event) {
|
|
197
198
|
row.toggleExpanded();
|
|
198
|
-
|
|
199
|
+
onMrtRowExpandChange == null ? void 0 : onMrtRowExpandChange({
|
|
199
200
|
event: event,
|
|
200
201
|
row: row,
|
|
201
202
|
tableInstance: tableInstance
|
|
@@ -639,7 +640,7 @@ var MRT_ShowHideColumnsMenuItems = function MRT_ShowHideColumnsMenuItems(_ref) {
|
|
|
639
640
|
var getState = tableInstance.getState,
|
|
640
641
|
_tableInstance$option = tableInstance.options,
|
|
641
642
|
enableColumnOrdering = _tableInstance$option.enableColumnOrdering,
|
|
642
|
-
|
|
643
|
+
onMrtToggleColumnVisibility = _tableInstance$option.onMrtToggleColumnVisibility,
|
|
643
644
|
setColumnOrder = tableInstance.setColumnOrder;
|
|
644
645
|
|
|
645
646
|
var _getState = getState(),
|
|
@@ -686,7 +687,7 @@ var MRT_ShowHideColumnsMenuItems = function MRT_ShowHideColumnsMenuItems(_ref) {
|
|
|
686
687
|
column.toggleVisibility();
|
|
687
688
|
}
|
|
688
689
|
|
|
689
|
-
|
|
690
|
+
onMrtToggleColumnVisibility == null ? void 0 : onMrtToggleColumnVisibility({
|
|
690
691
|
column: column,
|
|
691
692
|
columnVisibility: columnVisibility,
|
|
692
693
|
tableInstance: tableInstance
|
|
@@ -783,7 +784,7 @@ var MRT_ShowHideColumnsMenu = function MRT_ShowHideColumnsMenu(_ref) {
|
|
|
783
784
|
if (columnOrder.length > 0 && !columns.some(function (col) {
|
|
784
785
|
return col.columnDefType === 'group';
|
|
785
786
|
})) {
|
|
786
|
-
return [].concat(getLeftLeafColumns(),
|
|
787
|
+
return [].concat(getLeftLeafColumns(), Array.from(new Set(columnOrder)).map(function (colId) {
|
|
787
788
|
return getCenterLeafColumns().find(function (col) {
|
|
788
789
|
return (col == null ? void 0 : col.id) === colId;
|
|
789
790
|
});
|
|
@@ -874,7 +875,7 @@ var MRT_ColumnActionMenu = function MRT_ColumnActionMenu(_ref) {
|
|
|
874
875
|
SortIcon = _tableInstance$option2.SortIcon,
|
|
875
876
|
RestartAltIcon = _tableInstance$option2.RestartAltIcon,
|
|
876
877
|
VisibilityOffIcon = _tableInstance$option2.VisibilityOffIcon,
|
|
877
|
-
|
|
878
|
+
tableId = _tableInstance$option.tableId,
|
|
878
879
|
localization = _tableInstance$option.localization,
|
|
879
880
|
setShowFilters = tableInstance.setShowFilters;
|
|
880
881
|
var column = header.column;
|
|
@@ -942,7 +943,7 @@ var MRT_ColumnActionMenu = function MRT_ColumnActionMenu(_ref) {
|
|
|
942
943
|
var _document$getElementB, _header$muiTableHeadC, _header$muiTableHeadC2;
|
|
943
944
|
|
|
944
945
|
return (_document$getElementB = document.getElementById( // @ts-ignore
|
|
945
|
-
(_header$muiTableHeadC = (_header$muiTableHeadC2 = header.muiTableHeadCellFilterTextFieldProps) == null ? void 0 : _header$muiTableHeadC2.id) != null ? _header$muiTableHeadC : "mrt-" +
|
|
946
|
+
(_header$muiTableHeadC = (_header$muiTableHeadC2 = header.muiTableHeadCellFilterTextFieldProps) == null ? void 0 : _header$muiTableHeadC2.id) != null ? _header$muiTableHeadC : "mrt-" + tableId + "-" + header.id + "-filter-text-field")) == null ? void 0 : _document$getElementB.focus();
|
|
946
947
|
}, 200);
|
|
947
948
|
setAnchorEl(null);
|
|
948
949
|
};
|
|
@@ -1155,7 +1156,7 @@ var MRT_EditActionButtons = function MRT_EditActionButtons(_ref) {
|
|
|
1155
1156
|
CancelIcon = _tableInstance$option2.CancelIcon,
|
|
1156
1157
|
SaveIcon = _tableInstance$option2.SaveIcon,
|
|
1157
1158
|
localization = _tableInstance$option.localization,
|
|
1158
|
-
|
|
1159
|
+
onMrtEditRowSubmit = _tableInstance$option.onMrtEditRowSubmit,
|
|
1159
1160
|
setCurrentEditingRow = tableInstance.setCurrentEditingRow;
|
|
1160
1161
|
|
|
1161
1162
|
var _getState = getState(),
|
|
@@ -1169,7 +1170,7 @@ var MRT_EditActionButtons = function MRT_EditActionButtons(_ref) {
|
|
|
1169
1170
|
};
|
|
1170
1171
|
|
|
1171
1172
|
var handleSave = function handleSave() {
|
|
1172
|
-
|
|
1173
|
+
onMrtEditRowSubmit == null ? void 0 : onMrtEditRowSubmit({
|
|
1173
1174
|
row: currentEditingRow != null ? currentEditingRow : row,
|
|
1174
1175
|
tableInstance: tableInstance
|
|
1175
1176
|
});
|
|
@@ -1281,8 +1282,8 @@ var MRT_SelectCheckbox = function MRT_SelectCheckbox(_ref) {
|
|
|
1281
1282
|
_tableInstance$option = tableInstance.options,
|
|
1282
1283
|
localization = _tableInstance$option.localization,
|
|
1283
1284
|
muiSelectCheckboxProps = _tableInstance$option.muiSelectCheckboxProps,
|
|
1284
|
-
|
|
1285
|
-
|
|
1285
|
+
onMrtSelectRowChange = _tableInstance$option.onMrtSelectRowChange,
|
|
1286
|
+
onMrtSelectAllChange = _tableInstance$option.onMrtSelectAllChange,
|
|
1286
1287
|
selectAllMode = _tableInstance$option.selectAllMode;
|
|
1287
1288
|
|
|
1288
1289
|
var _getState = getState(),
|
|
@@ -1296,14 +1297,14 @@ var MRT_SelectCheckbox = function MRT_SelectCheckbox(_ref) {
|
|
|
1296
1297
|
tableInstance.getToggleAllPageRowsSelectedHandler()(event);
|
|
1297
1298
|
}
|
|
1298
1299
|
|
|
1299
|
-
|
|
1300
|
+
onMrtSelectAllChange == null ? void 0 : onMrtSelectAllChange({
|
|
1300
1301
|
event: event,
|
|
1301
1302
|
selectedRows: event.target.checked ? getRowModel().flatRows : [],
|
|
1302
1303
|
tableInstance: tableInstance
|
|
1303
1304
|
});
|
|
1304
1305
|
} else if (row) {
|
|
1305
1306
|
row == null ? void 0 : row.getToggleSelectedHandler()(event);
|
|
1306
|
-
|
|
1307
|
+
onMrtSelectRowChange == null ? void 0 : onMrtSelectRowChange({
|
|
1307
1308
|
event: event,
|
|
1308
1309
|
row: row,
|
|
1309
1310
|
selectedRows: event.target.checked ? [].concat(getSelectedRowModel().flatRows, [row]) : getSelectedRowModel().flatRows.filter(function (selectedRow) {
|
|
@@ -1351,14 +1352,14 @@ var MRT_FullScreenToggleButton = function MRT_FullScreenToggleButton(_ref) {
|
|
|
1351
1352
|
FullscreenExitIcon = _tableInstance$option2.FullscreenExitIcon,
|
|
1352
1353
|
FullscreenIcon = _tableInstance$option2.FullscreenIcon,
|
|
1353
1354
|
localization = _tableInstance$option.localization,
|
|
1354
|
-
|
|
1355
|
+
onMrtToggleFullScreen = _tableInstance$option.onMrtToggleFullScreen,
|
|
1355
1356
|
setIsFullScreen = tableInstance.setIsFullScreen;
|
|
1356
1357
|
|
|
1357
1358
|
var _getState = getState(),
|
|
1358
1359
|
isFullScreen = _getState.isFullScreen;
|
|
1359
1360
|
|
|
1360
1361
|
var handleToggleFullScreen = function handleToggleFullScreen(event) {
|
|
1361
|
-
|
|
1362
|
+
onMrtToggleFullScreen == null ? void 0 : onMrtToggleFullScreen({
|
|
1362
1363
|
event: event,
|
|
1363
1364
|
isFullScreen: !isFullScreen,
|
|
1364
1365
|
tableInstance: tableInstance
|
|
@@ -1416,14 +1417,14 @@ var MRT_ToggleDensePaddingButton = function MRT_ToggleDensePaddingButton(_ref) {
|
|
|
1416
1417
|
DensityMediumIcon = _tableInstance$option2.DensityMediumIcon,
|
|
1417
1418
|
DensitySmallIcon = _tableInstance$option2.DensitySmallIcon,
|
|
1418
1419
|
localization = _tableInstance$option.localization,
|
|
1419
|
-
|
|
1420
|
+
onMrtToggleDensePadding = _tableInstance$option.onMrtToggleDensePadding,
|
|
1420
1421
|
setIsDensePadding = tableInstance.setIsDensePadding;
|
|
1421
1422
|
|
|
1422
1423
|
var _getState = getState(),
|
|
1423
1424
|
isDensePadding = _getState.isDensePadding;
|
|
1424
1425
|
|
|
1425
1426
|
var handleToggleDensePadding = function handleToggleDensePadding(event) {
|
|
1426
|
-
|
|
1427
|
+
onMrtToggleDensePadding == null ? void 0 : onMrtToggleDensePadding({
|
|
1427
1428
|
event: event,
|
|
1428
1429
|
isDensePadding: !isDensePadding,
|
|
1429
1430
|
tableInstance: tableInstance
|
|
@@ -1451,14 +1452,14 @@ var MRT_ToggleFiltersButton = function MRT_ToggleFiltersButton(_ref) {
|
|
|
1451
1452
|
FilterListIcon = _tableInstance$option2.FilterListIcon,
|
|
1452
1453
|
FilterListOffIcon = _tableInstance$option2.FilterListOffIcon,
|
|
1453
1454
|
localization = _tableInstance$option.localization,
|
|
1454
|
-
|
|
1455
|
+
onMrtToggleShowFilters = _tableInstance$option.onMrtToggleShowFilters,
|
|
1455
1456
|
setShowFilters = tableInstance.setShowFilters;
|
|
1456
1457
|
|
|
1457
1458
|
var _getState = getState(),
|
|
1458
1459
|
showFilters = _getState.showFilters;
|
|
1459
1460
|
|
|
1460
1461
|
var handleToggleShowFilters = function handleToggleShowFilters(event) {
|
|
1461
|
-
|
|
1462
|
+
onMrtToggleShowFilters == null ? void 0 : onMrtToggleShowFilters({
|
|
1462
1463
|
event: event,
|
|
1463
1464
|
showFilters: !showFilters,
|
|
1464
1465
|
tableInstance: tableInstance
|
|
@@ -1485,10 +1486,10 @@ var MRT_ToggleGlobalFilterButton = function MRT_ToggleGlobalFilterButton(_ref) {
|
|
|
1485
1486
|
_tableInstance$option2 = _tableInstance$option.icons,
|
|
1486
1487
|
SearchIcon = _tableInstance$option2.SearchIcon,
|
|
1487
1488
|
SearchOffIcon = _tableInstance$option2.SearchOffIcon,
|
|
1488
|
-
|
|
1489
|
+
tableId = _tableInstance$option.tableId,
|
|
1489
1490
|
localization = _tableInstance$option.localization,
|
|
1490
1491
|
muiSearchTextFieldProps = _tableInstance$option.muiSearchTextFieldProps,
|
|
1491
|
-
|
|
1492
|
+
onMrtToggleShowGlobalFilter = _tableInstance$option.onMrtToggleShowGlobalFilter,
|
|
1492
1493
|
setShowGlobalFilter = tableInstance.setShowGlobalFilter;
|
|
1493
1494
|
|
|
1494
1495
|
var _getState = getState(),
|
|
@@ -1499,7 +1500,7 @@ var MRT_ToggleGlobalFilterButton = function MRT_ToggleGlobalFilterButton(_ref) {
|
|
|
1499
1500
|
}) : muiSearchTextFieldProps;
|
|
1500
1501
|
|
|
1501
1502
|
var handleToggleSearch = function handleToggleSearch(event) {
|
|
1502
|
-
|
|
1503
|
+
onMrtToggleShowGlobalFilter == null ? void 0 : onMrtToggleShowGlobalFilter({
|
|
1503
1504
|
event: event,
|
|
1504
1505
|
showGlobalFilter: !showGlobalFilter,
|
|
1505
1506
|
tableInstance: tableInstance
|
|
@@ -1508,7 +1509,7 @@ var MRT_ToggleGlobalFilterButton = function MRT_ToggleGlobalFilterButton(_ref) {
|
|
|
1508
1509
|
setTimeout(function () {
|
|
1509
1510
|
var _document$getElementB, _textFieldProps$id;
|
|
1510
1511
|
|
|
1511
|
-
return (_document$getElementB = document.getElementById((_textFieldProps$id = textFieldProps == null ? void 0 : textFieldProps.id) != null ? _textFieldProps$id : "mrt-" +
|
|
1512
|
+
return (_document$getElementB = document.getElementById((_textFieldProps$id = textFieldProps == null ? void 0 : textFieldProps.id) != null ? _textFieldProps$id : "mrt-" + tableId + "-search-text-field")) == null ? void 0 : _document$getElementB.focus();
|
|
1512
1513
|
}, 200);
|
|
1513
1514
|
};
|
|
1514
1515
|
|
|
@@ -1528,10 +1529,10 @@ var MRT_SearchTextField = function MRT_SearchTextField(_ref) {
|
|
|
1528
1529
|
_tableInstance$option2 = _tableInstance$option.icons,
|
|
1529
1530
|
SearchIcon = _tableInstance$option2.SearchIcon,
|
|
1530
1531
|
CloseIcon = _tableInstance$option2.CloseIcon,
|
|
1531
|
-
|
|
1532
|
+
tableId = _tableInstance$option.tableId,
|
|
1532
1533
|
localization = _tableInstance$option.localization,
|
|
1533
1534
|
muiSearchTextFieldProps = _tableInstance$option.muiSearchTextFieldProps,
|
|
1534
|
-
|
|
1535
|
+
onMrtGlobalFilterValueChange = _tableInstance$option.onMrtGlobalFilterValueChange;
|
|
1535
1536
|
|
|
1536
1537
|
var _getState = getState(),
|
|
1537
1538
|
globalFilter = _getState.globalFilter,
|
|
@@ -1549,7 +1550,7 @@ var MRT_SearchTextField = function MRT_SearchTextField(_ref) {
|
|
|
1549
1550
|
var _event$target$value;
|
|
1550
1551
|
|
|
1551
1552
|
setGlobalFilter((_event$target$value = event.target.value) != null ? _event$target$value : undefined);
|
|
1552
|
-
|
|
1553
|
+
onMrtGlobalFilterValueChange == null ? void 0 : onMrtGlobalFilterValueChange({
|
|
1553
1554
|
event: event,
|
|
1554
1555
|
tableInstance: tableInstance
|
|
1555
1556
|
});
|
|
@@ -1571,7 +1572,7 @@ var MRT_SearchTextField = function MRT_SearchTextField(_ref) {
|
|
|
1571
1572
|
"in": showGlobalFilter,
|
|
1572
1573
|
orientation: "horizontal"
|
|
1573
1574
|
}, React.createElement(TextField, Object.assign({
|
|
1574
|
-
id: "mrt-" +
|
|
1575
|
+
id: "mrt-" + tableId + "-search-text-field",
|
|
1575
1576
|
placeholder: localization.search,
|
|
1576
1577
|
onChange: function onChange(event) {
|
|
1577
1578
|
setSearchValue(event.target.value);
|
|
@@ -1626,6 +1627,7 @@ var MRT_ToolbarInternalButtons = function MRT_ToolbarInternalButtons(_ref) {
|
|
|
1626
1627
|
enableFullScreenToggle = _tableInstance$option.enableFullScreenToggle,
|
|
1627
1628
|
enableGlobalFilter = _tableInstance$option.enableGlobalFilter,
|
|
1628
1629
|
enableHiding = _tableInstance$option.enableHiding,
|
|
1630
|
+
positionGlobalFilter = _tableInstance$option.positionGlobalFilter,
|
|
1629
1631
|
renderToolbarInternalActions = _tableInstance$option.renderToolbarInternalActions;
|
|
1630
1632
|
return React.createElement(Box, {
|
|
1631
1633
|
sx: {
|
|
@@ -1640,7 +1642,7 @@ var MRT_ToolbarInternalButtons = function MRT_ToolbarInternalButtons(_ref) {
|
|
|
1640
1642
|
MRT_ToggleFiltersButton: MRT_ToggleFiltersButton,
|
|
1641
1643
|
MRT_ToggleGlobalFilterButton: MRT_ToggleGlobalFilterButton,
|
|
1642
1644
|
tableInstance: tableInstance
|
|
1643
|
-
})) != null ? _renderToolbarInterna : React.createElement(React.Fragment, null, enableGlobalFilter && React.createElement(MRT_SearchTextField, {
|
|
1645
|
+
})) != null ? _renderToolbarInterna : React.createElement(React.Fragment, null, enableGlobalFilter && positionGlobalFilter === 'right' && React.createElement(MRT_SearchTextField, {
|
|
1644
1646
|
tableInstance: tableInstance
|
|
1645
1647
|
}), enableFilters && enableGlobalFilter && React.createElement(MRT_ToggleGlobalFilterButton, {
|
|
1646
1648
|
tableInstance: tableInstance
|
|
@@ -1765,7 +1767,8 @@ var MRT_ToolbarAlertBanner = function MRT_ToolbarAlertBanner(_ref) {
|
|
|
1765
1767
|
};
|
|
1766
1768
|
|
|
1767
1769
|
var MRT_LinearProgressBar = function MRT_LinearProgressBar(_ref) {
|
|
1768
|
-
var
|
|
1770
|
+
var alignTo = _ref.alignTo,
|
|
1771
|
+
tableInstance = _ref.tableInstance;
|
|
1769
1772
|
var muiLinearProgressProps = tableInstance.options.muiLinearProgressProps,
|
|
1770
1773
|
getState = tableInstance.getState;
|
|
1771
1774
|
|
|
@@ -1779,10 +1782,19 @@ var MRT_LinearProgressBar = function MRT_LinearProgressBar(_ref) {
|
|
|
1779
1782
|
return React.createElement(Collapse, {
|
|
1780
1783
|
"in": isLoading || showProgressBars,
|
|
1781
1784
|
mountOnEnter: true,
|
|
1782
|
-
unmountOnExit: true
|
|
1785
|
+
unmountOnExit: true,
|
|
1786
|
+
sx: {
|
|
1787
|
+
bottom: alignTo === 'bottom' ? 0 : undefined,
|
|
1788
|
+
position: 'absolute',
|
|
1789
|
+
top: alignTo === 'top' ? 0 : undefined,
|
|
1790
|
+
width: '100%'
|
|
1791
|
+
}
|
|
1783
1792
|
}, React.createElement(LinearProgress, Object.assign({
|
|
1784
1793
|
"aria-label": "Loading",
|
|
1785
|
-
"aria-busy": "true"
|
|
1794
|
+
"aria-busy": "true",
|
|
1795
|
+
sx: {
|
|
1796
|
+
position: 'relative'
|
|
1797
|
+
}
|
|
1786
1798
|
}, linearProgressProps)));
|
|
1787
1799
|
};
|
|
1788
1800
|
|
|
@@ -1806,25 +1818,28 @@ var MRT_ToolbarTop = function MRT_ToolbarTop(_ref2) {
|
|
|
1806
1818
|
var tableInstance = _ref2.tableInstance;
|
|
1807
1819
|
var getState = tableInstance.getState,
|
|
1808
1820
|
_tableInstance$option = tableInstance.options,
|
|
1821
|
+
enableGlobalFilter = _tableInstance$option.enableGlobalFilter,
|
|
1809
1822
|
enablePagination = _tableInstance$option.enablePagination,
|
|
1810
1823
|
enableToolbarInternalActions = _tableInstance$option.enableToolbarInternalActions,
|
|
1811
|
-
|
|
1824
|
+
tableId = _tableInstance$option.tableId,
|
|
1812
1825
|
muiTableToolbarTopProps = _tableInstance$option.muiTableToolbarTopProps,
|
|
1813
1826
|
positionPagination = _tableInstance$option.positionPagination,
|
|
1827
|
+
positionGlobalFilter = _tableInstance$option.positionGlobalFilter,
|
|
1814
1828
|
positionToolbarActions = _tableInstance$option.positionToolbarActions,
|
|
1815
1829
|
positionToolbarAlertBanner = _tableInstance$option.positionToolbarAlertBanner,
|
|
1816
1830
|
renderToolbarCustomActions = _tableInstance$option.renderToolbarCustomActions;
|
|
1817
1831
|
|
|
1818
1832
|
var _getState = getState(),
|
|
1819
|
-
isFullScreen = _getState.isFullScreen
|
|
1833
|
+
isFullScreen = _getState.isFullScreen,
|
|
1834
|
+
showGlobalFilter = _getState.showGlobalFilter;
|
|
1820
1835
|
|
|
1821
1836
|
var isMobile = useMediaQuery('(max-width:720px)');
|
|
1822
1837
|
var toolbarProps = muiTableToolbarTopProps instanceof Function ? muiTableToolbarTopProps({
|
|
1823
1838
|
tableInstance: tableInstance
|
|
1824
1839
|
}) : muiTableToolbarTopProps;
|
|
1825
|
-
var stackAlertBanner = isMobile || positionToolbarAlertBanner === 'top' && !!renderToolbarCustomActions;
|
|
1840
|
+
var stackAlertBanner = isMobile || positionToolbarAlertBanner === 'top' && (!!renderToolbarCustomActions || showGlobalFilter);
|
|
1826
1841
|
return React.createElement(Toolbar, Object.assign({
|
|
1827
|
-
id: "mrt-" +
|
|
1842
|
+
id: "mrt-" + tableId + "-toolbar-top",
|
|
1828
1843
|
variant: "dense"
|
|
1829
1844
|
}, toolbarProps, {
|
|
1830
1845
|
sx: function sx(theme) {
|
|
@@ -1846,15 +1861,18 @@ var MRT_ToolbarTop = function MRT_ToolbarTop(_ref2) {
|
|
|
1846
1861
|
position: stackAlertBanner ? 'relative' : 'absolute',
|
|
1847
1862
|
right: 0,
|
|
1848
1863
|
top: 0,
|
|
1849
|
-
width: '
|
|
1864
|
+
width: renderToolbarCustomActions ? '100%' : undefined
|
|
1850
1865
|
}
|
|
1851
|
-
},
|
|
1866
|
+
}, enableGlobalFilter && positionGlobalFilter === 'left' && React.createElement(MRT_SearchTextField, {
|
|
1867
|
+
tableInstance: tableInstance
|
|
1868
|
+
}), (_renderToolbarCustomA = renderToolbarCustomActions == null ? void 0 : renderToolbarCustomActions({
|
|
1852
1869
|
tableInstance: tableInstance
|
|
1853
1870
|
})) != null ? _renderToolbarCustomA : React.createElement("span", null), enableToolbarInternalActions && positionToolbarActions === 'top' && React.createElement(MRT_ToolbarInternalButtons, {
|
|
1854
1871
|
tableInstance: tableInstance
|
|
1855
1872
|
})), React.createElement("div", null, enablePagination && ['top', 'both'].includes(positionPagination != null ? positionPagination : '') && React.createElement(MRT_TablePagination, {
|
|
1856
1873
|
tableInstance: tableInstance
|
|
1857
1874
|
})), React.createElement(MRT_LinearProgressBar, {
|
|
1875
|
+
alignTo: "bottom",
|
|
1858
1876
|
tableInstance: tableInstance
|
|
1859
1877
|
}));
|
|
1860
1878
|
};
|
|
@@ -1864,7 +1882,7 @@ var MRT_ToolbarBottom = function MRT_ToolbarBottom(_ref) {
|
|
|
1864
1882
|
var getState = tableInstance.getState,
|
|
1865
1883
|
_tableInstance$option = tableInstance.options,
|
|
1866
1884
|
enableToolbarInternalActions = _tableInstance$option.enableToolbarInternalActions,
|
|
1867
|
-
|
|
1885
|
+
tableId = _tableInstance$option.tableId,
|
|
1868
1886
|
enablePagination = _tableInstance$option.enablePagination,
|
|
1869
1887
|
muiTableToolbarBottomProps = _tableInstance$option.muiTableToolbarBottomProps,
|
|
1870
1888
|
positionPagination = _tableInstance$option.positionPagination,
|
|
@@ -1881,7 +1899,7 @@ var MRT_ToolbarBottom = function MRT_ToolbarBottom(_ref) {
|
|
|
1881
1899
|
}) : muiTableToolbarBottomProps;
|
|
1882
1900
|
var stackAlertBanner = isMobile || positionToolbarAlertBanner === 'bottom' && positionToolbarActions === 'bottom' || positionToolbarAlertBanner === 'bottom' && !!renderToolbarCustomActions && positionToolbarActions === 'bottom';
|
|
1883
1901
|
return React.createElement(Toolbar, Object.assign({
|
|
1884
|
-
id: "mrt-" +
|
|
1902
|
+
id: "mrt-" + tableId + "-toolbar-bottom",
|
|
1885
1903
|
variant: "dense"
|
|
1886
1904
|
}, toolbarProps, {
|
|
1887
1905
|
sx: function sx(theme) {
|
|
@@ -1889,11 +1907,12 @@ var MRT_ToolbarBottom = function MRT_ToolbarBottom(_ref) {
|
|
|
1889
1907
|
theme: theme
|
|
1890
1908
|
}), {
|
|
1891
1909
|
bottom: isFullScreen ? '0' : undefined,
|
|
1892
|
-
|
|
1893
|
-
|
|
1910
|
+
boxShadow: "-3px 0 6px " + alpha(theme.palette.common.black, 0.1),
|
|
1911
|
+
position: isFullScreen ? 'fixed' : 'relative'
|
|
1894
1912
|
}, toolbarProps == null ? void 0 : toolbarProps.sx);
|
|
1895
1913
|
}
|
|
1896
1914
|
}), React.createElement(MRT_LinearProgressBar, {
|
|
1915
|
+
alignTo: 'top',
|
|
1897
1916
|
tableInstance: tableInstance
|
|
1898
1917
|
}), positionToolbarAlertBanner === 'bottom' && React.createElement(MRT_ToolbarAlertBanner, {
|
|
1899
1918
|
tableInstance: tableInstance
|
|
@@ -1924,7 +1943,7 @@ var MRT_FilterTextField = function MRT_FilterTextField(_ref) {
|
|
|
1924
1943
|
_tableInstance$option2 = _tableInstance$option.icons,
|
|
1925
1944
|
FilterListIcon = _tableInstance$option2.FilterListIcon,
|
|
1926
1945
|
CloseIcon = _tableInstance$option2.CloseIcon,
|
|
1927
|
-
|
|
1946
|
+
tableId = _tableInstance$option.tableId,
|
|
1928
1947
|
localization = _tableInstance$option.localization,
|
|
1929
1948
|
muiTableHeadCellFilterTextFieldProps = _tableInstance$option.muiTableHeadCellFilterTextFieldProps,
|
|
1930
1949
|
setCurrentFilterFns = tableInstance.setCurrentFilterFns;
|
|
@@ -2002,7 +2021,7 @@ var MRT_FilterTextField = function MRT_FilterTextField(_ref) {
|
|
|
2002
2021
|
}));
|
|
2003
2022
|
}
|
|
2004
2023
|
|
|
2005
|
-
var filterId = "mrt-" +
|
|
2024
|
+
var filterId = "mrt-" + tableId + "-" + header.id + "-filter-text-field" + (inputIndex != null ? inputIndex : '');
|
|
2006
2025
|
var filterFn = currentFilterFns == null ? void 0 : currentFilterFns[header.id];
|
|
2007
2026
|
var isSelectFilter = !!columnDef.filterSelectOptions;
|
|
2008
2027
|
var filterChipLabel = !(filterFn instanceof Function) && [MRT_FILTER_OPTION.EMPTY, MRT_FILTER_OPTION.NOT_EMPTY].includes(filterFn) ? //@ts-ignore
|
|
@@ -2205,6 +2224,7 @@ var MRT_TableHeadCellFilterLabel = function MRT_TableHeadCellFilterLabel(_ref) {
|
|
|
2205
2224
|
opacity: !!column.getFilterValue() || showFilters ? 0.8 : 0,
|
|
2206
2225
|
p: '2px',
|
|
2207
2226
|
transition: 'all 0.2s ease-in-out',
|
|
2227
|
+
transform: 'scale(0.66)',
|
|
2208
2228
|
'&:hover': {
|
|
2209
2229
|
backgroundColor: 'transparent',
|
|
2210
2230
|
opacity: 0.8
|
|
@@ -2560,11 +2580,11 @@ var MRT_EditCellTextField = function MRT_EditCellTextField(_ref) {
|
|
|
2560
2580
|
tableInstance = _ref.tableInstance;
|
|
2561
2581
|
var getState = tableInstance.getState,
|
|
2562
2582
|
_tableInstance$option = tableInstance.options,
|
|
2563
|
-
|
|
2583
|
+
tableId = _tableInstance$option.tableId,
|
|
2564
2584
|
enableEditing = _tableInstance$option.enableEditing,
|
|
2565
2585
|
muiTableBodyCellEditTextFieldProps = _tableInstance$option.muiTableBodyCellEditTextFieldProps,
|
|
2566
|
-
|
|
2567
|
-
|
|
2586
|
+
onMrtCellEditBlur = _tableInstance$option.onMrtCellEditBlur,
|
|
2587
|
+
onMrtCellEditChange = _tableInstance$option.onMrtCellEditChange,
|
|
2568
2588
|
setCurrentEditingCell = tableInstance.setCurrentEditingCell,
|
|
2569
2589
|
setCurrentEditingRow = tableInstance.setCurrentEditingRow;
|
|
2570
2590
|
|
|
@@ -2578,12 +2598,12 @@ var MRT_EditCellTextField = function MRT_EditCellTextField(_ref) {
|
|
|
2578
2598
|
|
|
2579
2599
|
var handleChange = function handleChange(event) {
|
|
2580
2600
|
setValue(event.target.value);
|
|
2581
|
-
columnDef.
|
|
2601
|
+
columnDef.onMrtCellEditChange == null ? void 0 : columnDef.onMrtCellEditChange({
|
|
2582
2602
|
event: event,
|
|
2583
2603
|
cell: cell,
|
|
2584
2604
|
tableInstance: tableInstance
|
|
2585
2605
|
});
|
|
2586
|
-
|
|
2606
|
+
onMrtCellEditChange == null ? void 0 : onMrtCellEditChange({
|
|
2587
2607
|
event: event,
|
|
2588
2608
|
cell: cell,
|
|
2589
2609
|
tableInstance: tableInstance
|
|
@@ -2598,12 +2618,12 @@ var MRT_EditCellTextField = function MRT_EditCellTextField(_ref) {
|
|
|
2598
2618
|
}
|
|
2599
2619
|
|
|
2600
2620
|
setCurrentEditingCell(null);
|
|
2601
|
-
columnDef.
|
|
2621
|
+
columnDef.onMrtCellEditBlur == null ? void 0 : columnDef.onMrtCellEditBlur({
|
|
2602
2622
|
event: event,
|
|
2603
2623
|
cell: cell,
|
|
2604
2624
|
tableInstance: tableInstance
|
|
2605
2625
|
});
|
|
2606
|
-
|
|
2626
|
+
onMrtCellEditBlur == null ? void 0 : onMrtCellEditBlur({
|
|
2607
2627
|
event: event,
|
|
2608
2628
|
cell: cell,
|
|
2609
2629
|
tableInstance: tableInstance
|
|
@@ -2629,7 +2649,7 @@ var MRT_EditCellTextField = function MRT_EditCellTextField(_ref) {
|
|
|
2629
2649
|
}
|
|
2630
2650
|
|
|
2631
2651
|
return React.createElement(TextField, Object.assign({
|
|
2632
|
-
id: "mrt-" +
|
|
2652
|
+
id: "mrt-" + tableId + "-edit-cell-text-field-" + cell.id,
|
|
2633
2653
|
margin: "dense",
|
|
2634
2654
|
onBlur: handleBlur,
|
|
2635
2655
|
onChange: handleChange,
|
|
@@ -2718,10 +2738,10 @@ var MRT_TableBodyCell = function MRT_TableBodyCell(_ref) {
|
|
|
2718
2738
|
enableClickToCopy = _tableInstance$option.enableClickToCopy,
|
|
2719
2739
|
enableColumnOrdering = _tableInstance$option.enableColumnOrdering,
|
|
2720
2740
|
enableEditing = _tableInstance$option.enableEditing,
|
|
2721
|
-
|
|
2741
|
+
tableId = _tableInstance$option.tableId,
|
|
2722
2742
|
muiTableBodyCellProps = _tableInstance$option.muiTableBodyCellProps,
|
|
2723
2743
|
muiTableBodyCellSkeletonProps = _tableInstance$option.muiTableBodyCellSkeletonProps,
|
|
2724
|
-
|
|
2744
|
+
onMrtCellClick = _tableInstance$option.onMrtCellClick,
|
|
2725
2745
|
setColumnOrder = tableInstance.setColumnOrder,
|
|
2726
2746
|
setCurrentEditingCell = tableInstance.setCurrentEditingCell;
|
|
2727
2747
|
|
|
@@ -2767,7 +2787,7 @@ var MRT_TableBodyCell = function MRT_TableBodyCell(_ref) {
|
|
|
2767
2787
|
if ((enableEditing || columnDef.enableEditing) && columnDef.enableEditing !== false && editingMode === 'cell') {
|
|
2768
2788
|
setCurrentEditingCell(cell);
|
|
2769
2789
|
setTimeout(function () {
|
|
2770
|
-
var textField = document.getElementById("mrt-" +
|
|
2790
|
+
var textField = document.getElementById("mrt-" + tableId + "-edit-cell-text-field-" + cell.id);
|
|
2771
2791
|
|
|
2772
2792
|
if (textField) {
|
|
2773
2793
|
textField.focus();
|
|
@@ -2791,7 +2811,7 @@ var MRT_TableBodyCell = function MRT_TableBodyCell(_ref) {
|
|
|
2791
2811
|
|
|
2792
2812
|
return React.createElement(TableCell, Object.assign({
|
|
2793
2813
|
onClick: function onClick(event) {
|
|
2794
|
-
return
|
|
2814
|
+
return onMrtCellClick == null ? void 0 : onMrtCellClick({
|
|
2795
2815
|
event: event,
|
|
2796
2816
|
cell: cell,
|
|
2797
2817
|
tableInstance: tableInstance
|
|
@@ -2814,7 +2834,7 @@ var MRT_TableBodyCell = function MRT_TableBodyCell(_ref) {
|
|
|
2814
2834
|
whiteSpace: isDensePadding ? 'nowrap' : 'normal',
|
|
2815
2835
|
zIndex: column.getIsPinned() ? 1 : undefined,
|
|
2816
2836
|
'&:hover': {
|
|
2817
|
-
backgroundColor: enableHover ? theme.palette.mode === 'dark' ? lighten(theme.palette.background["default"], 0.13) + " !important" : darken(theme.palette.background["default"], 0.07) + " !important" : undefined
|
|
2837
|
+
backgroundColor: enableHover && enableEditing && editingMode !== 'row' ? theme.palette.mode === 'dark' ? lighten(theme.palette.background["default"], 0.13) + " !important" : darken(theme.palette.background["default"], 0.07) + " !important" : undefined
|
|
2818
2838
|
}
|
|
2819
2839
|
}, tableCellProps == null ? void 0 : tableCellProps.sx);
|
|
2820
2840
|
},
|
|
@@ -2852,7 +2872,7 @@ var MRT_TableDetailPanel = function MRT_TableDetailPanel(_ref) {
|
|
|
2852
2872
|
_tableInstance$option = tableInstance.options,
|
|
2853
2873
|
muiTableBodyRowProps = _tableInstance$option.muiTableBodyRowProps,
|
|
2854
2874
|
muiTableDetailPanelProps = _tableInstance$option.muiTableDetailPanelProps,
|
|
2855
|
-
|
|
2875
|
+
onMrtDetailPanelClick = _tableInstance$option.onMrtDetailPanelClick,
|
|
2856
2876
|
renderDetailPanel = _tableInstance$option.renderDetailPanel;
|
|
2857
2877
|
var tableRowProps = muiTableBodyRowProps instanceof Function ? muiTableBodyRowProps({
|
|
2858
2878
|
row: row,
|
|
@@ -2865,7 +2885,7 @@ var MRT_TableDetailPanel = function MRT_TableDetailPanel(_ref) {
|
|
|
2865
2885
|
return React.createElement(TableRow, Object.assign({}, tableRowProps), React.createElement(TableCell, Object.assign({
|
|
2866
2886
|
colSpan: getVisibleFlatColumns().length + 10,
|
|
2867
2887
|
onClick: function onClick(event) {
|
|
2868
|
-
return
|
|
2888
|
+
return onMrtDetailPanelClick == null ? void 0 : onMrtDetailPanelClick({
|
|
2869
2889
|
event: event,
|
|
2870
2890
|
row: row,
|
|
2871
2891
|
tableInstance: tableInstance
|
|
@@ -2889,9 +2909,10 @@ var MRT_TableDetailPanel = function MRT_TableDetailPanel(_ref) {
|
|
|
2889
2909
|
var MRT_TableBodyRow = function MRT_TableBodyRow(_ref) {
|
|
2890
2910
|
var row = _ref.row,
|
|
2891
2911
|
tableInstance = _ref.tableInstance;
|
|
2892
|
-
var
|
|
2912
|
+
var getIsSomeColumnsPinned = tableInstance.getIsSomeColumnsPinned,
|
|
2913
|
+
_tableInstance$option = tableInstance.options,
|
|
2893
2914
|
muiTableBodyRowProps = _tableInstance$option.muiTableBodyRowProps,
|
|
2894
|
-
|
|
2915
|
+
onMrtRowClick = _tableInstance$option.onMrtRowClick,
|
|
2895
2916
|
renderDetailPanel = _tableInstance$option.renderDetailPanel;
|
|
2896
2917
|
var tableRowProps = muiTableBodyRowProps instanceof Function ? muiTableBodyRowProps({
|
|
2897
2918
|
row: row,
|
|
@@ -2900,7 +2921,7 @@ var MRT_TableBodyRow = function MRT_TableBodyRow(_ref) {
|
|
|
2900
2921
|
return React.createElement(React.Fragment, null, React.createElement(TableRow, Object.assign({
|
|
2901
2922
|
hover: true,
|
|
2902
2923
|
onClick: function onClick(event) {
|
|
2903
|
-
return
|
|
2924
|
+
return onMrtRowClick == null ? void 0 : onMrtRowClick({
|
|
2904
2925
|
event: event,
|
|
2905
2926
|
row: row,
|
|
2906
2927
|
tableInstance: tableInstance
|
|
@@ -2913,7 +2934,7 @@ var MRT_TableBodyRow = function MRT_TableBodyRow(_ref) {
|
|
|
2913
2934
|
backgroundColor: lighten(theme.palette.background["default"], 0.06),
|
|
2914
2935
|
transition: 'all 0.2s ease-in-out',
|
|
2915
2936
|
'&:hover td': {
|
|
2916
|
-
backgroundColor: (tableRowProps == null ? void 0 : tableRowProps.hover) !== false ? theme.palette.mode === 'dark' ? "" + lighten(theme.palette.background["default"], 0.12) : "" + darken(theme.palette.background["default"], 0.05) : undefined
|
|
2937
|
+
backgroundColor: (tableRowProps == null ? void 0 : tableRowProps.hover) !== false && getIsSomeColumnsPinned() ? theme.palette.mode === 'dark' ? "" + lighten(theme.palette.background["default"], 0.12) : "" + darken(theme.palette.background["default"], 0.05) : undefined
|
|
2917
2938
|
}
|
|
2918
2939
|
}, tableRowProps == null ? void 0 : tableRowProps.sx);
|
|
2919
2940
|
}
|
|
@@ -2931,23 +2952,47 @@ var MRT_TableBodyRow = function MRT_TableBodyRow(_ref) {
|
|
|
2931
2952
|
};
|
|
2932
2953
|
|
|
2933
2954
|
var MRT_TableBody = function MRT_TableBody(_ref) {
|
|
2934
|
-
var tableInstance = _ref.tableInstance
|
|
2955
|
+
var tableInstance = _ref.tableInstance,
|
|
2956
|
+
tableContainerRef = _ref.tableContainerRef;
|
|
2935
2957
|
var getPaginationRowModel = tableInstance.getPaginationRowModel,
|
|
2936
2958
|
getPrePaginationRowModel = tableInstance.getPrePaginationRowModel,
|
|
2959
|
+
getState = tableInstance.getState,
|
|
2937
2960
|
_tableInstance$option = tableInstance.options,
|
|
2938
2961
|
enablePagination = _tableInstance$option.enablePagination,
|
|
2962
|
+
enableRowVirtualization = _tableInstance$option.enableRowVirtualization,
|
|
2939
2963
|
muiTableBodyProps = _tableInstance$option.muiTableBodyProps;
|
|
2940
|
-
|
|
2964
|
+
|
|
2965
|
+
var _getState = getState(),
|
|
2966
|
+
isDensePadding = _getState.isDensePadding;
|
|
2967
|
+
|
|
2941
2968
|
var tableBodyProps = muiTableBodyProps instanceof Function ? muiTableBodyProps({
|
|
2942
2969
|
tableInstance: tableInstance
|
|
2943
2970
|
}) : muiTableBodyProps;
|
|
2944
|
-
|
|
2971
|
+
var rows = enablePagination ? getPaginationRowModel().rows : getPrePaginationRowModel().rows;
|
|
2972
|
+
var rowVirtualizer = useVirtual({
|
|
2973
|
+
overscan: isDensePadding ? 15 : 5,
|
|
2974
|
+
size: rows.length,
|
|
2975
|
+
parentRef: tableContainerRef
|
|
2976
|
+
});
|
|
2977
|
+
var virtualRows = rowVirtualizer.virtualItems;
|
|
2978
|
+
var paddingTop = virtualRows.length > 0 ? virtualRows[0].start : 0;
|
|
2979
|
+
var paddingBottom = virtualRows.length > 0 ? rowVirtualizer.totalSize - virtualRows[virtualRows.length - 1].end : 0;
|
|
2980
|
+
return React.createElement(TableBody, Object.assign({}, tableBodyProps), enableRowVirtualization && paddingTop > 0 && React.createElement("tr", null, React.createElement("td", {
|
|
2981
|
+
style: {
|
|
2982
|
+
height: paddingTop + "px"
|
|
2983
|
+
}
|
|
2984
|
+
})), (enableRowVirtualization ? virtualRows : rows).map(function (rowOrVirtualRow) {
|
|
2985
|
+
var row = enableRowVirtualization ? rows[rowOrVirtualRow.index] : rowOrVirtualRow;
|
|
2945
2986
|
return React.createElement(MRT_TableBodyRow, {
|
|
2946
2987
|
key: row.id,
|
|
2947
2988
|
row: row,
|
|
2948
2989
|
tableInstance: tableInstance
|
|
2949
2990
|
});
|
|
2950
|
-
})
|
|
2991
|
+
}), enableRowVirtualization && paddingBottom > 0 && React.createElement("tr", null, React.createElement("td", {
|
|
2992
|
+
style: {
|
|
2993
|
+
height: paddingBottom + "px"
|
|
2994
|
+
}
|
|
2995
|
+
})));
|
|
2951
2996
|
};
|
|
2952
2997
|
|
|
2953
2998
|
var MRT_TableFooterCell = function MRT_TableFooterCell(_ref) {
|
|
@@ -3041,7 +3086,8 @@ var MRT_TableFooter = function MRT_TableFooter(_ref) {
|
|
|
3041
3086
|
};
|
|
3042
3087
|
|
|
3043
3088
|
var MRT_Table = function MRT_Table(_ref) {
|
|
3044
|
-
var
|
|
3089
|
+
var tableContainerRef = _ref.tableContainerRef,
|
|
3090
|
+
tableInstance = _ref.tableInstance;
|
|
3045
3091
|
var _tableInstance$option = tableInstance.options,
|
|
3046
3092
|
enableStickyHeader = _tableInstance$option.enableStickyHeader,
|
|
3047
3093
|
enableTableFooter = _tableInstance$option.enableTableFooter,
|
|
@@ -3055,6 +3101,7 @@ var MRT_Table = function MRT_Table(_ref) {
|
|
|
3055
3101
|
}, tableProps), enableTableHead && React.createElement(MRT_TableHead, {
|
|
3056
3102
|
tableInstance: tableInstance
|
|
3057
3103
|
}), React.createElement(MRT_TableBody, {
|
|
3104
|
+
tableContainerRef: tableContainerRef,
|
|
3058
3105
|
tableInstance: tableInstance
|
|
3059
3106
|
}), enableTableFooter && React.createElement(MRT_TableFooter, {
|
|
3060
3107
|
tableInstance: tableInstance
|
|
@@ -3067,8 +3114,8 @@ var MRT_TableContainer = function MRT_TableContainer(_ref) {
|
|
|
3067
3114
|
var getState = tableInstance.getState,
|
|
3068
3115
|
_tableInstance$option = tableInstance.options,
|
|
3069
3116
|
enableStickyHeader = _tableInstance$option.enableStickyHeader,
|
|
3070
|
-
|
|
3071
|
-
|
|
3117
|
+
muiTableContainerProps = _tableInstance$option.muiTableContainerProps,
|
|
3118
|
+
tableId = _tableInstance$option.tableId;
|
|
3072
3119
|
|
|
3073
3120
|
var _getState = getState(),
|
|
3074
3121
|
isFullScreen = _getState.isFullScreen;
|
|
@@ -3083,11 +3130,13 @@ var MRT_TableContainer = function MRT_TableContainer(_ref) {
|
|
|
3083
3130
|
useIsomorphicLayoutEffect(function () {
|
|
3084
3131
|
var _document$getElementB, _document, _document$getElementB2, _document$getElementB3, _document2, _document2$getElement;
|
|
3085
3132
|
|
|
3086
|
-
var topToolbarHeight = typeof document !== 'undefined' ? (_document$getElementB = (_document = document) == null ? void 0 : (_document$getElementB2 = _document.getElementById("mrt-" +
|
|
3087
|
-
var bottomToolbarHeight = typeof document !== 'undefined' ? (_document$getElementB3 = (_document2 = document) == null ? void 0 : (_document2$getElement = _document2.getElementById("mrt-" +
|
|
3133
|
+
var topToolbarHeight = typeof document !== 'undefined' ? (_document$getElementB = (_document = document) == null ? void 0 : (_document$getElementB2 = _document.getElementById("mrt-" + tableId + "-toolbar-top")) == null ? void 0 : _document$getElementB2.offsetHeight) != null ? _document$getElementB : 0 : 0;
|
|
3134
|
+
var bottomToolbarHeight = typeof document !== 'undefined' ? (_document$getElementB3 = (_document2 = document) == null ? void 0 : (_document2$getElement = _document2.getElementById("mrt-" + tableId + "-toolbar-bottom")) == null ? void 0 : _document2$getElement.offsetHeight) != null ? _document$getElementB3 : 0 : 0;
|
|
3088
3135
|
setTotalToolbarHeight(topToolbarHeight + bottomToolbarHeight);
|
|
3089
3136
|
});
|
|
3137
|
+
var tableContainerRef = React.useRef(null);
|
|
3090
3138
|
return React.createElement(TableContainer, Object.assign({}, tableContainerProps, {
|
|
3139
|
+
ref: tableContainerRef,
|
|
3091
3140
|
sx: _extends({
|
|
3092
3141
|
maxWidth: '100%',
|
|
3093
3142
|
maxHeight: enableStickyHeader ? "clamp(350px, calc(100vh - " + totalToolbarHeight + "px), 2000px)" : undefined,
|
|
@@ -3097,6 +3146,7 @@ var MRT_TableContainer = function MRT_TableContainer(_ref) {
|
|
|
3097
3146
|
maxHeight: isFullScreen ? "calc(100vh - " + totalToolbarHeight + "px)" : undefined
|
|
3098
3147
|
}
|
|
3099
3148
|
}), React.createElement(MRT_Table, {
|
|
3149
|
+
tableContainerRef: tableContainerRef,
|
|
3100
3150
|
tableInstance: tableInstance
|
|
3101
3151
|
}));
|
|
3102
3152
|
};
|
|
@@ -3154,15 +3204,15 @@ var MRT_TablePaper = function MRT_TablePaper(_ref) {
|
|
|
3154
3204
|
var MRT_TableRoot = function MRT_TableRoot(props) {
|
|
3155
3205
|
var _initialState$current, _initialState$current2, _initialState$isDense, _initialState$isFullS, _initialState$showFil, _initialState$showGlo, _props$globalFilterFn, _props$state3, _props$state4;
|
|
3156
3206
|
|
|
3157
|
-
var _useState = useState(props.
|
|
3158
|
-
|
|
3207
|
+
var _useState = useState(props.tableId),
|
|
3208
|
+
tableId = _useState[0],
|
|
3159
3209
|
setIdPrefix = _useState[1];
|
|
3160
3210
|
|
|
3161
3211
|
useEffect(function () {
|
|
3162
|
-
var _props$
|
|
3212
|
+
var _props$tableId;
|
|
3163
3213
|
|
|
3164
|
-
return setIdPrefix((_props$
|
|
3165
|
-
}, [props.
|
|
3214
|
+
return setIdPrefix((_props$tableId = props.tableId) != null ? _props$tableId : Math.random().toString(36).substring(2, 9));
|
|
3215
|
+
}, [props.tableId]);
|
|
3166
3216
|
var showActionColumn = props.enableRowActions || props.enableEditing && props.editingMode === 'row';
|
|
3167
3217
|
var showExpandColumn = props.enableExpanding || props.enableGrouping;
|
|
3168
3218
|
var initialState = useMemo(function () {
|
|
@@ -3173,7 +3223,7 @@ var MRT_TableRoot = function MRT_TableRoot(props) {
|
|
|
3173
3223
|
return c.id;
|
|
3174
3224
|
})).filter(Boolean) : [];
|
|
3175
3225
|
|
|
3176
|
-
if (!props.enablePersistentState || !props.
|
|
3226
|
+
if (!props.enablePersistentState || !props.tableId) {
|
|
3177
3227
|
return initState;
|
|
3178
3228
|
}
|
|
3179
3229
|
|
|
@@ -3185,7 +3235,7 @@ var MRT_TableRoot = function MRT_TableRoot(props) {
|
|
|
3185
3235
|
return initState;
|
|
3186
3236
|
}
|
|
3187
3237
|
|
|
3188
|
-
var storedState = props.persistentStateMode === 'localStorage' ? localStorage.getItem("mrt-" +
|
|
3238
|
+
var storedState = props.persistentStateMode === 'localStorage' ? localStorage.getItem("mrt-" + tableId + "-table-state") : props.persistentStateMode === 'sessionStorage' ? sessionStorage.getItem("mrt-" + tableId + "-table-state") : '{}';
|
|
3189
3239
|
|
|
3190
3240
|
if (storedState) {
|
|
3191
3241
|
var parsedState = JSON.parse(storedState);
|
|
@@ -3251,7 +3301,7 @@ var MRT_TableRoot = function MRT_TableRoot(props) {
|
|
|
3251
3301
|
getSubRows: function getSubRows(row) {
|
|
3252
3302
|
return row == null ? void 0 : row.subRows;
|
|
3253
3303
|
},
|
|
3254
|
-
|
|
3304
|
+
tableId: tableId,
|
|
3255
3305
|
initialState: initialState
|
|
3256
3306
|
})
|
|
3257
3307
|
);
|
|
@@ -3375,12 +3425,12 @@ var MRT_TableRoot = function MRT_TableRoot(props) {
|
|
|
3375
3425
|
return;
|
|
3376
3426
|
}
|
|
3377
3427
|
|
|
3378
|
-
if (!props.
|
|
3379
|
-
console.warn('a unique
|
|
3428
|
+
if (!props.tableId && process.env.NODE_ENV !== 'production') {
|
|
3429
|
+
console.warn('a unique tableId prop is required for persistent table state to work');
|
|
3380
3430
|
return;
|
|
3381
3431
|
}
|
|
3382
3432
|
|
|
3383
|
-
var itemArgs = ["mrt-" +
|
|
3433
|
+
var itemArgs = ["mrt-" + tableId + "-table-state", JSON.stringify(tableInstance.getState())];
|
|
3384
3434
|
|
|
3385
3435
|
if (props.persistentStateMode === 'localStorage') {
|
|
3386
3436
|
var _localStorage;
|
|
@@ -3391,7 +3441,7 @@ var MRT_TableRoot = function MRT_TableRoot(props) {
|
|
|
3391
3441
|
|
|
3392
3442
|
(_sessionStorage = sessionStorage).setItem.apply(_sessionStorage, itemArgs);
|
|
3393
3443
|
}
|
|
3394
|
-
}, [props.enablePersistentState, props.
|
|
3444
|
+
}, [props.enablePersistentState, props.tableId, props.persistentStateMode, tableInstance]);
|
|
3395
3445
|
return React.createElement(React.Fragment, null, React.createElement(Dialog, {
|
|
3396
3446
|
PaperComponent: Box,
|
|
3397
3447
|
TransitionComponent: Grow,
|
|
@@ -3410,7 +3460,7 @@ var MRT_TableRoot = function MRT_TableRoot(props) {
|
|
|
3410
3460
|
}));
|
|
3411
3461
|
};
|
|
3412
3462
|
|
|
3413
|
-
var _excluded$5 = ["autoResetExpanded", "columnResizeMode", "defaultColumn", "editingMode", "enableColumnActions", "enableColumnFilters", "enableColumnOrdering", "enableColumnResizing", "enableDensePaddingToggle", "enableExpandAll", "enableFilters", "enableFullScreenToggle", "enableGlobalFilter", "enableGrouping", "enableHiding", "enableMultiRowSelection", "enablePagination", "enablePinning", "enableSelectAll", "enableSorting", "enableStickyHeader", "enableTableFooter", "enableTableHead", "enableToolbarBottom", "enableToolbarInternalActions", "enableToolbarTop", "icons", "localization", "persistentStateMode", "positionActionsColumn", "positionPagination", "positionToolbarActions", "positionToolbarAlertBanner", "selectAllMode"];
|
|
3463
|
+
var _excluded$5 = ["autoResetExpanded", "columnResizeMode", "defaultColumn", "editingMode", "enableColumnActions", "enableColumnFilters", "enableColumnOrdering", "enableColumnResizing", "enableDensePaddingToggle", "enableExpandAll", "enableFilters", "enableFullScreenToggle", "enableGlobalFilter", "enableGrouping", "enableHiding", "enableMultiRowSelection", "enablePagination", "enablePinning", "enableSelectAll", "enableSorting", "enableStickyHeader", "enableTableFooter", "enableTableHead", "enableToolbarBottom", "enableToolbarInternalActions", "enableToolbarTop", "icons", "localization", "persistentStateMode", "positionActionsColumn", "positionPagination", "positionGlobalFilter", "positionToolbarActions", "positionToolbarAlertBanner", "selectAllMode"];
|
|
3414
3464
|
var MaterialReactTable = (function (_ref) {
|
|
3415
3465
|
var _ref$autoResetExpande = _ref.autoResetExpanded,
|
|
3416
3466
|
autoResetExpanded = _ref$autoResetExpande === void 0 ? false : _ref$autoResetExpande,
|
|
@@ -3476,6 +3526,8 @@ var MaterialReactTable = (function (_ref) {
|
|
|
3476
3526
|
positionActionsColumn = _ref$positionActionsC === void 0 ? 'first' : _ref$positionActionsC,
|
|
3477
3527
|
_ref$positionPaginati = _ref.positionPagination,
|
|
3478
3528
|
positionPagination = _ref$positionPaginati === void 0 ? 'bottom' : _ref$positionPaginati,
|
|
3529
|
+
_ref$positionGlobalFi = _ref.positionGlobalFilter,
|
|
3530
|
+
positionGlobalFilter = _ref$positionGlobalFi === void 0 ? 'right' : _ref$positionGlobalFi,
|
|
3479
3531
|
_ref$positionToolbarA = _ref.positionToolbarActions,
|
|
3480
3532
|
positionToolbarActions = _ref$positionToolbarA === void 0 ? 'top' : _ref$positionToolbarA,
|
|
3481
3533
|
_ref$positionToolbarA2 = _ref.positionToolbarAlertBanner,
|
|
@@ -3515,6 +3567,7 @@ var MaterialReactTable = (function (_ref) {
|
|
|
3515
3567
|
localization: _extends({}, MRT_DefaultLocalization_EN, localization),
|
|
3516
3568
|
persistentStateMode: persistentStateMode,
|
|
3517
3569
|
positionActionsColumn: positionActionsColumn,
|
|
3570
|
+
positionGlobalFilter: positionGlobalFilter,
|
|
3518
3571
|
positionPagination: positionPagination,
|
|
3519
3572
|
positionToolbarActions: positionToolbarActions,
|
|
3520
3573
|
positionToolbarAlertBanner: positionToolbarAlertBanner,
|