material-react-table 0.8.13 → 0.9.0

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.
Files changed (40) hide show
  1. package/README.md +2 -1
  2. package/dist/MaterialReactTable.d.ts +42 -37
  3. package/dist/material-react-table.cjs.development.js +233 -186
  4. package/dist/material-react-table.cjs.development.js.map +1 -1
  5. package/dist/material-react-table.cjs.production.min.js +1 -1
  6. package/dist/material-react-table.cjs.production.min.js.map +1 -1
  7. package/dist/material-react-table.esm.js +234 -187
  8. package/dist/material-react-table.esm.js.map +1 -1
  9. package/dist/toolbar/MRT_LinearProgressBar.d.ts +1 -0
  10. package/dist/utils.d.ts +4 -3
  11. package/package.json +1 -1
  12. package/src/MaterialReactTable.tsx +59 -47
  13. package/src/body/MRT_TableBodyCell.tsx +19 -5
  14. package/src/body/MRT_TableBodyRow.tsx +2 -2
  15. package/src/body/MRT_TableDetailPanel.tsx +2 -2
  16. package/src/buttons/MRT_ColumnPinningButtons.tsx +1 -1
  17. package/src/buttons/MRT_EditActionButtons.tsx +2 -2
  18. package/src/buttons/MRT_ExpandButton.tsx +2 -2
  19. package/src/buttons/MRT_FullScreenToggleButton.tsx +2 -2
  20. package/src/buttons/MRT_ToggleDensePaddingButton.tsx +2 -2
  21. package/src/buttons/MRT_ToggleFiltersButton.tsx +2 -2
  22. package/src/buttons/MRT_ToggleGlobalFilterButton.tsx +4 -4
  23. package/src/footer/MRT_TableFooterCell.tsx +6 -6
  24. package/src/head/MRT_DraggableTableHeadCell.tsx +8 -16
  25. package/src/head/MRT_TableHeadCell.tsx +12 -10
  26. package/src/head/MRT_TableHeadCellFilterLabel.tsx +1 -0
  27. package/src/inputs/MRT_EditCellTextField.tsx +8 -8
  28. package/src/inputs/MRT_FilterTextField.tsx +2 -2
  29. package/src/inputs/MRT_SearchTextField.tsx +4 -4
  30. package/src/inputs/MRT_SelectCheckbox.tsx +10 -5
  31. package/src/menus/MRT_ColumnActionMenu.tsx +2 -2
  32. package/src/menus/MRT_ShowHideColumnsMenu.tsx +18 -5
  33. package/src/menus/MRT_ShowHideColumnsMenuItems.tsx +18 -18
  34. package/src/table/MRT_TableContainer.tsx +3 -3
  35. package/src/table/MRT_TableRoot.tsx +43 -25
  36. package/src/toolbar/MRT_LinearProgressBar.tsx +17 -2
  37. package/src/toolbar/MRT_ToolbarBottom.tsx +4 -4
  38. package/src/toolbar/MRT_ToolbarInternalButtons.tsx +2 -1
  39. package/src/toolbar/MRT_ToolbarTop.tsx +13 -6
  40. package/src/utils.ts +24 -2
@@ -1,6 +1,6 @@
1
1
  import React, { useMemo, forwardRef, useState, useCallback, Fragment, useLayoutEffect, useEffect } from 'react';
2
2
  import { ArrowRight, Cancel, CheckBox, ClearAll, Close, DensityMedium, DensitySmall, KeyboardDoubleArrowDown, DragHandle, DynamicFeed, Edit, ExpandLess, ExpandMore, FilterAlt, FilterAltOff, FilterList, FilterListOff, FullscreenExit, Fullscreen, MoreHoriz, MoreVert, PushPin, RestartAlt, Save, Search, SearchOff, Sort, ViewColumn, VisibilityOff } from '@mui/icons-material';
3
- import { createTable, useTableInstance, getCoreRowModel, getExpandedRowModel, getFacetedRowModel, getFilteredRowModel, getGroupedRowModel, getPaginationRowModel, getSortedRowModel } from '@tanstack/react-table';
3
+ import { createTable, getCoreRowModel, getExpandedRowModel, getFacetedRowModel, getFilteredRowModel, getGroupedRowModel, getPaginationRowModel, getSortedRowModel, useTableInstance } from '@tanstack/react-table';
4
4
  import { Tooltip, IconButton, Menu, MenuItem, Box, FormControlLabel, Switch, Button, Divider, ListItemIcon, Checkbox, debounce, Collapse, TextField, InputAdornment, TablePagination, Chip, Alert, LinearProgress, useMediaQuery, Toolbar, lighten, alpha, TableSortLabel, TableCell, TableRow, TableHead, darken, Skeleton, TableBody, TableFooter, Table, TableContainer, Paper, Dialog, Grow } from '@mui/material';
5
5
  import { rankItem, rankings } from '@tanstack/match-sorter-utils';
6
6
  import { useDrop, useDrag, DndProvider } from 'react-dnd';
@@ -187,7 +187,7 @@ var MRT_ExpandButton = function MRT_ExpandButton(_ref) {
187
187
  _tableInstance$option = tableInstance.options,
188
188
  ExpandMoreIcon = _tableInstance$option.icons.ExpandMoreIcon,
189
189
  localization = _tableInstance$option.localization,
190
- onRowExpandChange = _tableInstance$option.onRowExpandChange,
190
+ onMrtRowExpandChange = _tableInstance$option.onMrtRowExpandChange,
191
191
  renderDetailPanel = _tableInstance$option.renderDetailPanel;
192
192
 
193
193
  var _getState = getState(),
@@ -195,7 +195,7 @@ var MRT_ExpandButton = function MRT_ExpandButton(_ref) {
195
195
 
196
196
  var handleToggleExpand = function handleToggleExpand(event) {
197
197
  row.toggleExpanded();
198
- onRowExpandChange == null ? void 0 : onRowExpandChange({
198
+ onMrtRowExpandChange == null ? void 0 : onMrtRowExpandChange({
199
199
  event: event,
200
200
  row: row,
201
201
  tableInstance: tableInstance
@@ -503,7 +503,8 @@ var MRT_ColumnPinningButtons = function MRT_ColumnPinningButtons(_ref) {
503
503
 
504
504
  return React.createElement(Box, {
505
505
  sx: {
506
- mr: '4px'
506
+ minWidth: '70px',
507
+ textAlign: 'center'
507
508
  }
508
509
  }, column.getIsPinned() ? React.createElement(Tooltip, {
509
510
  arrow: true,
@@ -572,6 +573,62 @@ var MRT_GrabHandleButton = /*#__PURE__*/forwardRef(function (_ref, ref) {
572
573
  }, React.createElement(DragHandleIcon, null)));
573
574
  });
574
575
 
576
+ var getAllLeafColumnDefs = function getAllLeafColumnDefs(columns) {
577
+ var lowestLevelColumns = columns;
578
+ var currentCols = columns;
579
+
580
+ while (!!((_currentCols = currentCols) != null && _currentCols.length) && currentCols.some(function (col) {
581
+ return col.columns;
582
+ })) {
583
+ var _currentCols;
584
+
585
+ var nextCols = currentCols.filter(function (col) {
586
+ return !!col.columns;
587
+ }).map(function (col) {
588
+ return col.columns;
589
+ }).flat();
590
+
591
+ if (nextCols.every(function (col) {
592
+ return !(col != null && col.columns);
593
+ })) {
594
+ lowestLevelColumns = [].concat(lowestLevelColumns, nextCols);
595
+ }
596
+
597
+ currentCols = nextCols;
598
+ }
599
+
600
+ return lowestLevelColumns.filter(function (col) {
601
+ return !col.columns;
602
+ });
603
+ };
604
+ var createGroup = function createGroup(table, column, currentFilterFns) {
605
+ var _column$columns;
606
+
607
+ return table.createGroup(_extends({}, column, {
608
+ columns: column == null ? void 0 : (_column$columns = column.columns) == null ? void 0 : _column$columns.map == null ? void 0 : _column$columns.map(function (col) {
609
+ return col.columns ? createGroup(table, col, currentFilterFns) : createDataColumn(table, col, currentFilterFns);
610
+ })
611
+ }));
612
+ };
613
+ var createDataColumn = function createDataColumn(table, column, currentFilterFns) {
614
+ return (// @ts-ignore
615
+ table.createDataColumn(column.id, _extends({
616
+ filterFn: currentFilterFns[column.id] instanceof Function ? currentFilterFns[column.id] : defaultFilterFNs[currentFilterFns[column.id]]
617
+ }, column))
618
+ );
619
+ };
620
+ var createDisplayColumn = function createDisplayColumn(table, column) {
621
+ return table.createDisplayColumn(column);
622
+ };
623
+ var reorderColumn = function reorderColumn(movingColumn, receivingColumn, columnOrder, setColumnOrder) {
624
+ if (movingColumn.getCanPin()) {
625
+ movingColumn.pin(receivingColumn.getIsPinned());
626
+ }
627
+
628
+ columnOrder.splice(columnOrder.indexOf(receivingColumn.id), 0, columnOrder.splice(columnOrder.indexOf(movingColumn.id), 1)[0]);
629
+ setColumnOrder([].concat(columnOrder));
630
+ };
631
+
575
632
  var MRT_ShowHideColumnsMenuItems = function MRT_ShowHideColumnsMenuItems(_ref) {
576
633
  var _column$columns2;
577
634
 
@@ -582,7 +639,7 @@ var MRT_ShowHideColumnsMenuItems = function MRT_ShowHideColumnsMenuItems(_ref) {
582
639
  var getState = tableInstance.getState,
583
640
  _tableInstance$option = tableInstance.options,
584
641
  enableColumnOrdering = _tableInstance$option.enableColumnOrdering,
585
- onToggleColumnVisibility = _tableInstance$option.onToggleColumnVisibility,
642
+ onMrtToggleColumnVisibility = _tableInstance$option.onMrtToggleColumnVisibility,
586
643
  setColumnOrder = tableInstance.setColumnOrder;
587
644
 
588
645
  var _getState = getState(),
@@ -592,19 +649,10 @@ var MRT_ShowHideColumnsMenuItems = function MRT_ShowHideColumnsMenuItems(_ref) {
592
649
  var columnDef = column.columnDef,
593
650
  columnDefType = column.columnDefType;
594
651
 
595
- var reorder = function reorder(movingColumn, receivingColumn) {
596
- if (movingColumn.getCanPin()) {
597
- movingColumn.pin(receivingColumn.getIsPinned());
598
- }
599
-
600
- columnOrder.splice(columnOrder.indexOf(receivingColumn.id), 0, columnOrder.splice(columnOrder.indexOf(movingColumn.id), 1)[0]);
601
- setColumnOrder([].concat(columnOrder));
602
- };
603
-
604
652
  var _useDrop = useDrop({
605
653
  accept: 'column',
606
654
  drop: function drop(movingColumn) {
607
- return reorder(movingColumn, column);
655
+ return reorderColumn(movingColumn, column, columnOrder, setColumnOrder);
608
656
  }
609
657
  }),
610
658
  dropRef = _useDrop[1];
@@ -638,7 +686,7 @@ var MRT_ShowHideColumnsMenuItems = function MRT_ShowHideColumnsMenuItems(_ref) {
638
686
  column.toggleVisibility();
639
687
  }
640
688
 
641
- onToggleColumnVisibility == null ? void 0 : onToggleColumnVisibility({
689
+ onMrtToggleColumnVisibility == null ? void 0 : onMrtToggleColumnVisibility({
642
690
  column: column,
643
691
  columnVisibility: columnVisibility,
644
692
  tableInstance: tableInstance
@@ -658,7 +706,8 @@ var MRT_ShowHideColumnsMenuItems = function MRT_ShowHideColumnsMenuItems(_ref) {
658
706
  ref: previewRef,
659
707
  sx: {
660
708
  display: 'flex',
661
- flexWrap: 'nowrap'
709
+ flexWrap: 'nowrap',
710
+ gap: '8px'
662
711
  }
663
712
  }, columnDefType !== 'group' && enableColumnOrdering && columnDef.enableColumnOrdering !== false && !allColumns.some(function (col) {
664
713
  return col.columnDefType === 'group';
@@ -679,13 +728,10 @@ var MRT_ShowHideColumnsMenuItems = function MRT_ShowHideColumnsMenuItems(_ref) {
679
728
  },
680
729
  checked: switchChecked,
681
730
  control: React.createElement(Switch, null),
682
- disabled: isSubMenu && switchChecked || !column.getCanHide(),
731
+ disabled: isSubMenu && switchChecked || !column.getCanHide() || column.getIsGrouped(),
683
732
  label: columnDef.header,
684
733
  onChange: function onChange() {
685
734
  return handleToggleColumnHidden(column);
686
- },
687
- sx: {
688
- ml: '4px'
689
735
  }
690
736
  }))), (_column$columns2 = column.columns) == null ? void 0 : _column$columns2.map(function (c, i) {
691
737
  return React.createElement(MRT_ShowHideColumnsMenuItems, {
@@ -705,9 +751,12 @@ var MRT_ShowHideColumnsMenu = function MRT_ShowHideColumnsMenu(_ref) {
705
751
  tableInstance = _ref.tableInstance;
706
752
  var getAllColumns = tableInstance.getAllColumns,
707
753
  getAllLeafColumns = tableInstance.getAllLeafColumns,
754
+ getCenterLeafColumns = tableInstance.getCenterLeafColumns,
708
755
  getIsAllColumnsVisible = tableInstance.getIsAllColumnsVisible,
709
756
  getIsSomeColumnsPinned = tableInstance.getIsSomeColumnsPinned,
710
757
  getIsSomeColumnsVisible = tableInstance.getIsSomeColumnsVisible,
758
+ getLeftLeafColumns = tableInstance.getLeftLeafColumns,
759
+ getRightLeafColumns = tableInstance.getRightLeafColumns,
711
760
  getState = tableInstance.getState,
712
761
  toggleAllColumnsVisible = tableInstance.toggleAllColumnsVisible,
713
762
  _tableInstance$option = tableInstance.options,
@@ -734,17 +783,15 @@ var MRT_ShowHideColumnsMenu = function MRT_ShowHideColumnsMenu(_ref) {
734
783
  if (columnOrder.length > 0 && !columns.some(function (col) {
735
784
  return col.columnDefType === 'group';
736
785
  })) {
737
- var _columnOrder$map;
738
-
739
- return (_columnOrder$map = columnOrder.map(function (colId) {
740
- return columns.find(function (col) {
741
- return col.id === colId;
786
+ return [].concat(getLeftLeafColumns(), Array.from(new Set(columnOrder)).map(function (colId) {
787
+ return getCenterLeafColumns().find(function (col) {
788
+ return (col == null ? void 0 : col.id) === colId;
742
789
  });
743
- })) != null ? _columnOrder$map : columns;
790
+ }), getRightLeafColumns()).filter(Boolean);
744
791
  }
745
792
 
746
793
  return columns;
747
- }, [getAllColumns(), columnOrder, columnPinning]);
794
+ }, [columnOrder, columnPinning, getAllColumns(), getCenterLeafColumns(), getLeftLeafColumns(), getRightLeafColumns()]);
748
795
  return React.createElement(Menu, {
749
796
  anchorEl: anchorEl,
750
797
  open: !!anchorEl,
@@ -827,7 +874,7 @@ var MRT_ColumnActionMenu = function MRT_ColumnActionMenu(_ref) {
827
874
  SortIcon = _tableInstance$option2.SortIcon,
828
875
  RestartAltIcon = _tableInstance$option2.RestartAltIcon,
829
876
  VisibilityOffIcon = _tableInstance$option2.VisibilityOffIcon,
830
- idPrefix = _tableInstance$option.idPrefix,
877
+ tableId = _tableInstance$option.tableId,
831
878
  localization = _tableInstance$option.localization,
832
879
  setShowFilters = tableInstance.setShowFilters;
833
880
  var column = header.column;
@@ -895,7 +942,7 @@ var MRT_ColumnActionMenu = function MRT_ColumnActionMenu(_ref) {
895
942
  var _document$getElementB, _header$muiTableHeadC, _header$muiTableHeadC2;
896
943
 
897
944
  return (_document$getElementB = document.getElementById( // @ts-ignore
898
- (_header$muiTableHeadC = (_header$muiTableHeadC2 = header.muiTableHeadCellFilterTextFieldProps) == null ? void 0 : _header$muiTableHeadC2.id) != null ? _header$muiTableHeadC : "mrt-" + idPrefix + "-" + header.id + "-filter-text-field")) == null ? void 0 : _document$getElementB.focus();
945
+ (_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();
899
946
  }, 200);
900
947
  setAnchorEl(null);
901
948
  };
@@ -1108,7 +1155,7 @@ var MRT_EditActionButtons = function MRT_EditActionButtons(_ref) {
1108
1155
  CancelIcon = _tableInstance$option2.CancelIcon,
1109
1156
  SaveIcon = _tableInstance$option2.SaveIcon,
1110
1157
  localization = _tableInstance$option.localization,
1111
- onEditSubmit = _tableInstance$option.onEditSubmit,
1158
+ onMrtEditRowSubmit = _tableInstance$option.onMrtEditRowSubmit,
1112
1159
  setCurrentEditingRow = tableInstance.setCurrentEditingRow;
1113
1160
 
1114
1161
  var _getState = getState(),
@@ -1122,7 +1169,7 @@ var MRT_EditActionButtons = function MRT_EditActionButtons(_ref) {
1122
1169
  };
1123
1170
 
1124
1171
  var handleSave = function handleSave() {
1125
- onEditSubmit == null ? void 0 : onEditSubmit({
1172
+ onMrtEditRowSubmit == null ? void 0 : onMrtEditRowSubmit({
1126
1173
  row: currentEditingRow != null ? currentEditingRow : row,
1127
1174
  tableInstance: tableInstance
1128
1175
  });
@@ -1234,23 +1281,29 @@ var MRT_SelectCheckbox = function MRT_SelectCheckbox(_ref) {
1234
1281
  _tableInstance$option = tableInstance.options,
1235
1282
  localization = _tableInstance$option.localization,
1236
1283
  muiSelectCheckboxProps = _tableInstance$option.muiSelectCheckboxProps,
1237
- onSelectChange = _tableInstance$option.onSelectChange,
1238
- onSelectAllChange = _tableInstance$option.onSelectAllChange;
1284
+ onMrtSelectRowChange = _tableInstance$option.onMrtSelectRowChange,
1285
+ onMrtSelectAllChange = _tableInstance$option.onMrtSelectAllChange,
1286
+ selectAllMode = _tableInstance$option.selectAllMode;
1239
1287
 
1240
1288
  var _getState = getState(),
1241
1289
  isDensePadding = _getState.isDensePadding;
1242
1290
 
1243
1291
  var handleSelectChange = function handleSelectChange(event) {
1244
1292
  if (selectAll) {
1245
- tableInstance.getToggleAllRowsSelectedHandler()(event);
1246
- onSelectAllChange == null ? void 0 : onSelectAllChange({
1293
+ if (selectAllMode === 'all') {
1294
+ tableInstance.getToggleAllRowsSelectedHandler()(event);
1295
+ } else if (selectAllMode === 'page') {
1296
+ tableInstance.getToggleAllPageRowsSelectedHandler()(event);
1297
+ }
1298
+
1299
+ onMrtSelectAllChange == null ? void 0 : onMrtSelectAllChange({
1247
1300
  event: event,
1248
1301
  selectedRows: event.target.checked ? getRowModel().flatRows : [],
1249
1302
  tableInstance: tableInstance
1250
1303
  });
1251
1304
  } else if (row) {
1252
1305
  row == null ? void 0 : row.getToggleSelectedHandler()(event);
1253
- onSelectChange == null ? void 0 : onSelectChange({
1306
+ onMrtSelectRowChange == null ? void 0 : onMrtSelectRowChange({
1254
1307
  event: event,
1255
1308
  row: row,
1256
1309
  selectedRows: event.target.checked ? [].concat(getSelectedRowModel().flatRows, [row]) : getSelectedRowModel().flatRows.filter(function (selectedRow) {
@@ -1298,14 +1351,14 @@ var MRT_FullScreenToggleButton = function MRT_FullScreenToggleButton(_ref) {
1298
1351
  FullscreenExitIcon = _tableInstance$option2.FullscreenExitIcon,
1299
1352
  FullscreenIcon = _tableInstance$option2.FullscreenIcon,
1300
1353
  localization = _tableInstance$option.localization,
1301
- onToggleFullScreen = _tableInstance$option.onToggleFullScreen,
1354
+ onMrtToggleFullScreen = _tableInstance$option.onMrtToggleFullScreen,
1302
1355
  setIsFullScreen = tableInstance.setIsFullScreen;
1303
1356
 
1304
1357
  var _getState = getState(),
1305
1358
  isFullScreen = _getState.isFullScreen;
1306
1359
 
1307
1360
  var handleToggleFullScreen = function handleToggleFullScreen(event) {
1308
- onToggleFullScreen == null ? void 0 : onToggleFullScreen({
1361
+ onMrtToggleFullScreen == null ? void 0 : onMrtToggleFullScreen({
1309
1362
  event: event,
1310
1363
  isFullScreen: !isFullScreen,
1311
1364
  tableInstance: tableInstance
@@ -1363,14 +1416,14 @@ var MRT_ToggleDensePaddingButton = function MRT_ToggleDensePaddingButton(_ref) {
1363
1416
  DensityMediumIcon = _tableInstance$option2.DensityMediumIcon,
1364
1417
  DensitySmallIcon = _tableInstance$option2.DensitySmallIcon,
1365
1418
  localization = _tableInstance$option.localization,
1366
- onToggleDensePadding = _tableInstance$option.onToggleDensePadding,
1419
+ onMrtToggleDensePadding = _tableInstance$option.onMrtToggleDensePadding,
1367
1420
  setIsDensePadding = tableInstance.setIsDensePadding;
1368
1421
 
1369
1422
  var _getState = getState(),
1370
1423
  isDensePadding = _getState.isDensePadding;
1371
1424
 
1372
1425
  var handleToggleDensePadding = function handleToggleDensePadding(event) {
1373
- onToggleDensePadding == null ? void 0 : onToggleDensePadding({
1426
+ onMrtToggleDensePadding == null ? void 0 : onMrtToggleDensePadding({
1374
1427
  event: event,
1375
1428
  isDensePadding: !isDensePadding,
1376
1429
  tableInstance: tableInstance
@@ -1398,14 +1451,14 @@ var MRT_ToggleFiltersButton = function MRT_ToggleFiltersButton(_ref) {
1398
1451
  FilterListIcon = _tableInstance$option2.FilterListIcon,
1399
1452
  FilterListOffIcon = _tableInstance$option2.FilterListOffIcon,
1400
1453
  localization = _tableInstance$option.localization,
1401
- onToggleShowFilters = _tableInstance$option.onToggleShowFilters,
1454
+ onMrtToggleShowFilters = _tableInstance$option.onMrtToggleShowFilters,
1402
1455
  setShowFilters = tableInstance.setShowFilters;
1403
1456
 
1404
1457
  var _getState = getState(),
1405
1458
  showFilters = _getState.showFilters;
1406
1459
 
1407
1460
  var handleToggleShowFilters = function handleToggleShowFilters(event) {
1408
- onToggleShowFilters == null ? void 0 : onToggleShowFilters({
1461
+ onMrtToggleShowFilters == null ? void 0 : onMrtToggleShowFilters({
1409
1462
  event: event,
1410
1463
  showFilters: !showFilters,
1411
1464
  tableInstance: tableInstance
@@ -1432,10 +1485,10 @@ var MRT_ToggleGlobalFilterButton = function MRT_ToggleGlobalFilterButton(_ref) {
1432
1485
  _tableInstance$option2 = _tableInstance$option.icons,
1433
1486
  SearchIcon = _tableInstance$option2.SearchIcon,
1434
1487
  SearchOffIcon = _tableInstance$option2.SearchOffIcon,
1435
- idPrefix = _tableInstance$option.idPrefix,
1488
+ tableId = _tableInstance$option.tableId,
1436
1489
  localization = _tableInstance$option.localization,
1437
1490
  muiSearchTextFieldProps = _tableInstance$option.muiSearchTextFieldProps,
1438
- onToggleShowGlobalFilter = _tableInstance$option.onToggleShowGlobalFilter,
1491
+ onMrtToggleShowGlobalFilter = _tableInstance$option.onMrtToggleShowGlobalFilter,
1439
1492
  setShowGlobalFilter = tableInstance.setShowGlobalFilter;
1440
1493
 
1441
1494
  var _getState = getState(),
@@ -1446,7 +1499,7 @@ var MRT_ToggleGlobalFilterButton = function MRT_ToggleGlobalFilterButton(_ref) {
1446
1499
  }) : muiSearchTextFieldProps;
1447
1500
 
1448
1501
  var handleToggleSearch = function handleToggleSearch(event) {
1449
- onToggleShowGlobalFilter == null ? void 0 : onToggleShowGlobalFilter({
1502
+ onMrtToggleShowGlobalFilter == null ? void 0 : onMrtToggleShowGlobalFilter({
1450
1503
  event: event,
1451
1504
  showGlobalFilter: !showGlobalFilter,
1452
1505
  tableInstance: tableInstance
@@ -1455,7 +1508,7 @@ var MRT_ToggleGlobalFilterButton = function MRT_ToggleGlobalFilterButton(_ref) {
1455
1508
  setTimeout(function () {
1456
1509
  var _document$getElementB, _textFieldProps$id;
1457
1510
 
1458
- return (_document$getElementB = document.getElementById((_textFieldProps$id = textFieldProps == null ? void 0 : textFieldProps.id) != null ? _textFieldProps$id : "mrt-" + idPrefix + "-search-text-field")) == null ? void 0 : _document$getElementB.focus();
1511
+ 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();
1459
1512
  }, 200);
1460
1513
  };
1461
1514
 
@@ -1475,10 +1528,10 @@ var MRT_SearchTextField = function MRT_SearchTextField(_ref) {
1475
1528
  _tableInstance$option2 = _tableInstance$option.icons,
1476
1529
  SearchIcon = _tableInstance$option2.SearchIcon,
1477
1530
  CloseIcon = _tableInstance$option2.CloseIcon,
1478
- idPrefix = _tableInstance$option.idPrefix,
1531
+ tableId = _tableInstance$option.tableId,
1479
1532
  localization = _tableInstance$option.localization,
1480
1533
  muiSearchTextFieldProps = _tableInstance$option.muiSearchTextFieldProps,
1481
- onGlobalSearchFilterChange = _tableInstance$option.onGlobalSearchFilterChange;
1534
+ onMrtGlobalFilterValueChange = _tableInstance$option.onMrtGlobalFilterValueChange;
1482
1535
 
1483
1536
  var _getState = getState(),
1484
1537
  globalFilter = _getState.globalFilter,
@@ -1496,7 +1549,7 @@ var MRT_SearchTextField = function MRT_SearchTextField(_ref) {
1496
1549
  var _event$target$value;
1497
1550
 
1498
1551
  setGlobalFilter((_event$target$value = event.target.value) != null ? _event$target$value : undefined);
1499
- onGlobalSearchFilterChange == null ? void 0 : onGlobalSearchFilterChange({
1552
+ onMrtGlobalFilterValueChange == null ? void 0 : onMrtGlobalFilterValueChange({
1500
1553
  event: event,
1501
1554
  tableInstance: tableInstance
1502
1555
  });
@@ -1518,7 +1571,7 @@ var MRT_SearchTextField = function MRT_SearchTextField(_ref) {
1518
1571
  "in": showGlobalFilter,
1519
1572
  orientation: "horizontal"
1520
1573
  }, React.createElement(TextField, Object.assign({
1521
- id: "mrt-" + idPrefix + "-search-text-field",
1574
+ id: "mrt-" + tableId + "-search-text-field",
1522
1575
  placeholder: localization.search,
1523
1576
  onChange: function onChange(event) {
1524
1577
  setSearchValue(event.target.value);
@@ -1573,6 +1626,7 @@ var MRT_ToolbarInternalButtons = function MRT_ToolbarInternalButtons(_ref) {
1573
1626
  enableFullScreenToggle = _tableInstance$option.enableFullScreenToggle,
1574
1627
  enableGlobalFilter = _tableInstance$option.enableGlobalFilter,
1575
1628
  enableHiding = _tableInstance$option.enableHiding,
1629
+ positionGlobalFilter = _tableInstance$option.positionGlobalFilter,
1576
1630
  renderToolbarInternalActions = _tableInstance$option.renderToolbarInternalActions;
1577
1631
  return React.createElement(Box, {
1578
1632
  sx: {
@@ -1587,7 +1641,7 @@ var MRT_ToolbarInternalButtons = function MRT_ToolbarInternalButtons(_ref) {
1587
1641
  MRT_ToggleFiltersButton: MRT_ToggleFiltersButton,
1588
1642
  MRT_ToggleGlobalFilterButton: MRT_ToggleGlobalFilterButton,
1589
1643
  tableInstance: tableInstance
1590
- })) != null ? _renderToolbarInterna : React.createElement(React.Fragment, null, enableGlobalFilter && React.createElement(MRT_SearchTextField, {
1644
+ })) != null ? _renderToolbarInterna : React.createElement(React.Fragment, null, enableGlobalFilter && positionGlobalFilter === 'right' && React.createElement(MRT_SearchTextField, {
1591
1645
  tableInstance: tableInstance
1592
1646
  }), enableFilters && enableGlobalFilter && React.createElement(MRT_ToggleGlobalFilterButton, {
1593
1647
  tableInstance: tableInstance
@@ -1712,7 +1766,8 @@ var MRT_ToolbarAlertBanner = function MRT_ToolbarAlertBanner(_ref) {
1712
1766
  };
1713
1767
 
1714
1768
  var MRT_LinearProgressBar = function MRT_LinearProgressBar(_ref) {
1715
- var tableInstance = _ref.tableInstance;
1769
+ var alignTo = _ref.alignTo,
1770
+ tableInstance = _ref.tableInstance;
1716
1771
  var muiLinearProgressProps = tableInstance.options.muiLinearProgressProps,
1717
1772
  getState = tableInstance.getState;
1718
1773
 
@@ -1726,10 +1781,19 @@ var MRT_LinearProgressBar = function MRT_LinearProgressBar(_ref) {
1726
1781
  return React.createElement(Collapse, {
1727
1782
  "in": isLoading || showProgressBars,
1728
1783
  mountOnEnter: true,
1729
- unmountOnExit: true
1784
+ unmountOnExit: true,
1785
+ sx: {
1786
+ bottom: alignTo === 'bottom' ? 0 : undefined,
1787
+ position: 'absolute',
1788
+ top: alignTo === 'top' ? 0 : undefined,
1789
+ width: '100%'
1790
+ }
1730
1791
  }, React.createElement(LinearProgress, Object.assign({
1731
1792
  "aria-label": "Loading",
1732
- "aria-busy": "true"
1793
+ "aria-busy": "true",
1794
+ sx: {
1795
+ position: 'relative'
1796
+ }
1733
1797
  }, linearProgressProps)));
1734
1798
  };
1735
1799
 
@@ -1753,25 +1817,28 @@ var MRT_ToolbarTop = function MRT_ToolbarTop(_ref2) {
1753
1817
  var tableInstance = _ref2.tableInstance;
1754
1818
  var getState = tableInstance.getState,
1755
1819
  _tableInstance$option = tableInstance.options,
1820
+ enableGlobalFilter = _tableInstance$option.enableGlobalFilter,
1756
1821
  enablePagination = _tableInstance$option.enablePagination,
1757
1822
  enableToolbarInternalActions = _tableInstance$option.enableToolbarInternalActions,
1758
- idPrefix = _tableInstance$option.idPrefix,
1823
+ tableId = _tableInstance$option.tableId,
1759
1824
  muiTableToolbarTopProps = _tableInstance$option.muiTableToolbarTopProps,
1760
1825
  positionPagination = _tableInstance$option.positionPagination,
1826
+ positionGlobalFilter = _tableInstance$option.positionGlobalFilter,
1761
1827
  positionToolbarActions = _tableInstance$option.positionToolbarActions,
1762
1828
  positionToolbarAlertBanner = _tableInstance$option.positionToolbarAlertBanner,
1763
1829
  renderToolbarCustomActions = _tableInstance$option.renderToolbarCustomActions;
1764
1830
 
1765
1831
  var _getState = getState(),
1766
- isFullScreen = _getState.isFullScreen;
1832
+ isFullScreen = _getState.isFullScreen,
1833
+ showGlobalFilter = _getState.showGlobalFilter;
1767
1834
 
1768
1835
  var isMobile = useMediaQuery('(max-width:720px)');
1769
1836
  var toolbarProps = muiTableToolbarTopProps instanceof Function ? muiTableToolbarTopProps({
1770
1837
  tableInstance: tableInstance
1771
1838
  }) : muiTableToolbarTopProps;
1772
- var stackAlertBanner = isMobile || positionToolbarAlertBanner === 'top' && !!renderToolbarCustomActions;
1839
+ var stackAlertBanner = isMobile || positionToolbarAlertBanner === 'top' && (!!renderToolbarCustomActions || showGlobalFilter);
1773
1840
  return React.createElement(Toolbar, Object.assign({
1774
- id: "mrt-" + idPrefix + "-toolbar-top",
1841
+ id: "mrt-" + tableId + "-toolbar-top",
1775
1842
  variant: "dense"
1776
1843
  }, toolbarProps, {
1777
1844
  sx: function sx(theme) {
@@ -1793,15 +1860,18 @@ var MRT_ToolbarTop = function MRT_ToolbarTop(_ref2) {
1793
1860
  position: stackAlertBanner ? 'relative' : 'absolute',
1794
1861
  right: 0,
1795
1862
  top: 0,
1796
- width: 'calc(100% - 1rem)'
1863
+ width: renderToolbarCustomActions ? '100%' : undefined
1797
1864
  }
1798
- }, (_renderToolbarCustomA = renderToolbarCustomActions == null ? void 0 : renderToolbarCustomActions({
1865
+ }, enableGlobalFilter && positionGlobalFilter === 'left' && React.createElement(MRT_SearchTextField, {
1866
+ tableInstance: tableInstance
1867
+ }), (_renderToolbarCustomA = renderToolbarCustomActions == null ? void 0 : renderToolbarCustomActions({
1799
1868
  tableInstance: tableInstance
1800
1869
  })) != null ? _renderToolbarCustomA : React.createElement("span", null), enableToolbarInternalActions && positionToolbarActions === 'top' && React.createElement(MRT_ToolbarInternalButtons, {
1801
1870
  tableInstance: tableInstance
1802
1871
  })), React.createElement("div", null, enablePagination && ['top', 'both'].includes(positionPagination != null ? positionPagination : '') && React.createElement(MRT_TablePagination, {
1803
1872
  tableInstance: tableInstance
1804
1873
  })), React.createElement(MRT_LinearProgressBar, {
1874
+ alignTo: "bottom",
1805
1875
  tableInstance: tableInstance
1806
1876
  }));
1807
1877
  };
@@ -1811,7 +1881,7 @@ var MRT_ToolbarBottom = function MRT_ToolbarBottom(_ref) {
1811
1881
  var getState = tableInstance.getState,
1812
1882
  _tableInstance$option = tableInstance.options,
1813
1883
  enableToolbarInternalActions = _tableInstance$option.enableToolbarInternalActions,
1814
- idPrefix = _tableInstance$option.idPrefix,
1884
+ tableId = _tableInstance$option.tableId,
1815
1885
  enablePagination = _tableInstance$option.enablePagination,
1816
1886
  muiTableToolbarBottomProps = _tableInstance$option.muiTableToolbarBottomProps,
1817
1887
  positionPagination = _tableInstance$option.positionPagination,
@@ -1828,7 +1898,7 @@ var MRT_ToolbarBottom = function MRT_ToolbarBottom(_ref) {
1828
1898
  }) : muiTableToolbarBottomProps;
1829
1899
  var stackAlertBanner = isMobile || positionToolbarAlertBanner === 'bottom' && positionToolbarActions === 'bottom' || positionToolbarAlertBanner === 'bottom' && !!renderToolbarCustomActions && positionToolbarActions === 'bottom';
1830
1900
  return React.createElement(Toolbar, Object.assign({
1831
- id: "mrt-" + idPrefix + "-toolbar-bottom",
1901
+ id: "mrt-" + tableId + "-toolbar-bottom",
1832
1902
  variant: "dense"
1833
1903
  }, toolbarProps, {
1834
1904
  sx: function sx(theme) {
@@ -1836,11 +1906,12 @@ var MRT_ToolbarBottom = function MRT_ToolbarBottom(_ref) {
1836
1906
  theme: theme
1837
1907
  }), {
1838
1908
  bottom: isFullScreen ? '0' : undefined,
1839
- position: isFullScreen ? 'fixed' : undefined,
1840
- boxShadow: "-3px 0 6px " + alpha(theme.palette.common.black, 0.1)
1909
+ boxShadow: "-3px 0 6px " + alpha(theme.palette.common.black, 0.1),
1910
+ position: isFullScreen ? 'fixed' : 'relative'
1841
1911
  }, toolbarProps == null ? void 0 : toolbarProps.sx);
1842
1912
  }
1843
1913
  }), React.createElement(MRT_LinearProgressBar, {
1914
+ alignTo: 'top',
1844
1915
  tableInstance: tableInstance
1845
1916
  }), positionToolbarAlertBanner === 'bottom' && React.createElement(MRT_ToolbarAlertBanner, {
1846
1917
  tableInstance: tableInstance
@@ -1871,7 +1942,7 @@ var MRT_FilterTextField = function MRT_FilterTextField(_ref) {
1871
1942
  _tableInstance$option2 = _tableInstance$option.icons,
1872
1943
  FilterListIcon = _tableInstance$option2.FilterListIcon,
1873
1944
  CloseIcon = _tableInstance$option2.CloseIcon,
1874
- idPrefix = _tableInstance$option.idPrefix,
1945
+ tableId = _tableInstance$option.tableId,
1875
1946
  localization = _tableInstance$option.localization,
1876
1947
  muiTableHeadCellFilterTextFieldProps = _tableInstance$option.muiTableHeadCellFilterTextFieldProps,
1877
1948
  setCurrentFilterFns = tableInstance.setCurrentFilterFns;
@@ -1949,7 +2020,7 @@ var MRT_FilterTextField = function MRT_FilterTextField(_ref) {
1949
2020
  }));
1950
2021
  }
1951
2022
 
1952
- var filterId = "mrt-" + idPrefix + "-" + header.id + "-filter-text-field" + (inputIndex != null ? inputIndex : '');
2023
+ var filterId = "mrt-" + tableId + "-" + header.id + "-filter-text-field" + (inputIndex != null ? inputIndex : '');
1953
2024
  var filterFn = currentFilterFns == null ? void 0 : currentFilterFns[header.id];
1954
2025
  var isSelectFilter = !!columnDef.filterSelectOptions;
1955
2026
  var filterChipLabel = !(filterFn instanceof Function) && [MRT_FILTER_OPTION.EMPTY, MRT_FILTER_OPTION.NOT_EMPTY].includes(filterFn) ? //@ts-ignore
@@ -2152,6 +2223,7 @@ var MRT_TableHeadCellFilterLabel = function MRT_TableHeadCellFilterLabel(_ref) {
2152
2223
  opacity: !!column.getFilterValue() || showFilters ? 0.8 : 0,
2153
2224
  p: '2px',
2154
2225
  transition: 'all 0.2s ease-in-out',
2226
+ transform: 'scale(0.66)',
2155
2227
  '&:hover': {
2156
2228
  backgroundColor: 'transparent',
2157
2229
  opacity: 0.8
@@ -2283,7 +2355,7 @@ var MRT_ToggleColumnActionMenuButton = function MRT_ToggleColumnActionMenuButton
2283
2355
  };
2284
2356
 
2285
2357
  var MRT_TableHeadCell = function MRT_TableHeadCell(_ref) {
2286
- var _columnDef$Header, _columnDef$minSize, _columnDef$header$len, _columnDef$header;
2358
+ var _ref2, _ref3, _columnDef$minSize, _columnDef$header$len, _columnDef$header;
2287
2359
 
2288
2360
  var dragRef = _ref.dragRef,
2289
2361
  dropRef = _ref.dropRef,
@@ -2317,10 +2389,10 @@ var MRT_TableHeadCell = function MRT_TableHeadCell(_ref) {
2317
2389
 
2318
2390
  var tableCellProps = _extends({}, mTableHeadCellProps, mcTableHeadCellProps);
2319
2391
 
2320
- var headerElement = (columnDef == null ? void 0 : columnDef.Header) instanceof Function ? columnDef == null ? void 0 : columnDef.Header == null ? void 0 : columnDef.Header({
2392
+ var headerElement = (_ref2 = (_ref3 = (columnDef == null ? void 0 : columnDef.Header) instanceof Function ? columnDef == null ? void 0 : columnDef.Header == null ? void 0 : columnDef.Header({
2321
2393
  header: header,
2322
2394
  tableInstance: tableInstance
2323
- }) : (_columnDef$Header = columnDef == null ? void 0 : columnDef.Header) != null ? _columnDef$Header : header.renderHeader();
2395
+ }) : columnDef == null ? void 0 : columnDef.Header) != null ? _ref3 : header.renderHeader()) != null ? _ref2 : columnDef.header;
2324
2396
 
2325
2397
  var getIsLastLeftPinnedColumn = function getIsLastLeftPinnedColumn() {
2326
2398
  return column.getIsPinned() === 'left' && tableInstance.getLeftLeafHeaders().length - 1 === column.getPinnedIndex();
@@ -2338,7 +2410,7 @@ var MRT_TableHeadCell = function MRT_TableHeadCell(_ref) {
2338
2410
  align: columnDefType === 'group' ? 'center' : 'left',
2339
2411
  colSpan: header.colSpan
2340
2412
  }, tableCellProps, {
2341
- ref: columnDefType === 'data' ? dropRef : undefined,
2413
+ ref: columnDefType === 'data' && enableColumnOrdering ? dropRef : undefined,
2342
2414
  sx: function sx(theme) {
2343
2415
  return _extends({
2344
2416
  backgroundColor: column.getIsPinned() && columnDefType !== 'group' ? alpha(lighten(theme.palette.background["default"], 0.04), 0.95) : 'inherit',
@@ -2351,7 +2423,7 @@ var MRT_TableHeadCell = function MRT_TableHeadCell(_ref) {
2351
2423
  p: isDensePadding ? columnDefType === 'display' ? '0 0.5rem' : '0.5rem' : columnDefType === 'display' ? '0.5rem 0.75rem' : '1rem',
2352
2424
  pb: columnDefType === 'display' ? 0 : undefined,
2353
2425
  position: column.getIsPinned() && columnDefType !== 'group' ? 'sticky' : undefined,
2354
- pt: columnDefType !== 'data' ? 0 : isDensePadding ? '0.25' : '.5rem',
2426
+ pt: columnDefType !== 'data' ? 0 : isDensePadding ? '0.25' : '.75rem',
2355
2427
  right: column.getIsPinned() === 'right' ? getTotalRight() + "px" : undefined,
2356
2428
  transition: "all " + (enableColumnResizing ? 0 : '0.2s') + " ease-in-out",
2357
2429
  verticalAlign: 'text-top',
@@ -2420,19 +2492,12 @@ var MRT_DraggableTableHeadCell = function MRT_DraggableTableHeadCell(_ref) {
2420
2492
  var _getState = getState(),
2421
2493
  columnOrder = _getState.columnOrder;
2422
2494
 
2423
- var reorder = function reorder(movingHeader, receivingHeader) {
2424
- if (movingHeader.column.getCanPin()) {
2425
- movingHeader.column.pin(receivingHeader.column.getIsPinned());
2426
- }
2427
-
2428
- columnOrder.splice(receivingHeader.index, 0, columnOrder.splice(movingHeader.index, 1)[0]);
2429
- setColumnOrder([].concat(columnOrder));
2430
- };
2495
+ var column = header.column;
2431
2496
 
2432
2497
  var _useDrop = useDrop({
2433
- accept: 'header',
2434
- drop: function drop(movingHeader) {
2435
- return reorder(movingHeader, header);
2498
+ accept: 'column',
2499
+ drop: function drop(movingColumn) {
2500
+ return reorderColumn(movingColumn, column, columnOrder, setColumnOrder);
2436
2501
  }
2437
2502
  }),
2438
2503
  dropRef = _useDrop[1];
@@ -2444,9 +2509,9 @@ var MRT_DraggableTableHeadCell = function MRT_DraggableTableHeadCell(_ref) {
2444
2509
  };
2445
2510
  },
2446
2511
  item: function item() {
2447
- return header;
2512
+ return column;
2448
2513
  },
2449
- type: 'header'
2514
+ type: 'column'
2450
2515
  }),
2451
2516
  isDragging = _useDrag[0].isDragging,
2452
2517
  dragRef = _useDrag[1],
@@ -2514,11 +2579,11 @@ var MRT_EditCellTextField = function MRT_EditCellTextField(_ref) {
2514
2579
  tableInstance = _ref.tableInstance;
2515
2580
  var getState = tableInstance.getState,
2516
2581
  _tableInstance$option = tableInstance.options,
2517
- idPrefix = _tableInstance$option.idPrefix,
2582
+ tableId = _tableInstance$option.tableId,
2518
2583
  enableEditing = _tableInstance$option.enableEditing,
2519
2584
  muiTableBodyCellEditTextFieldProps = _tableInstance$option.muiTableBodyCellEditTextFieldProps,
2520
- onCellEditBlur = _tableInstance$option.onCellEditBlur,
2521
- onCellEditChange = _tableInstance$option.onCellEditChange,
2585
+ onMrtCellEditBlur = _tableInstance$option.onMrtCellEditBlur,
2586
+ onMrtCellEditChange = _tableInstance$option.onMrtCellEditChange,
2522
2587
  setCurrentEditingCell = tableInstance.setCurrentEditingCell,
2523
2588
  setCurrentEditingRow = tableInstance.setCurrentEditingRow;
2524
2589
 
@@ -2532,12 +2597,12 @@ var MRT_EditCellTextField = function MRT_EditCellTextField(_ref) {
2532
2597
 
2533
2598
  var handleChange = function handleChange(event) {
2534
2599
  setValue(event.target.value);
2535
- columnDef.onCellEditChange == null ? void 0 : columnDef.onCellEditChange({
2600
+ columnDef.onMrtCellEditChange == null ? void 0 : columnDef.onMrtCellEditChange({
2536
2601
  event: event,
2537
2602
  cell: cell,
2538
2603
  tableInstance: tableInstance
2539
2604
  });
2540
- onCellEditChange == null ? void 0 : onCellEditChange({
2605
+ onMrtCellEditChange == null ? void 0 : onMrtCellEditChange({
2541
2606
  event: event,
2542
2607
  cell: cell,
2543
2608
  tableInstance: tableInstance
@@ -2552,12 +2617,12 @@ var MRT_EditCellTextField = function MRT_EditCellTextField(_ref) {
2552
2617
  }
2553
2618
 
2554
2619
  setCurrentEditingCell(null);
2555
- columnDef.onCellEditBlur == null ? void 0 : columnDef.onCellEditBlur({
2620
+ columnDef.onMrtCellEditBlur == null ? void 0 : columnDef.onMrtCellEditBlur({
2556
2621
  event: event,
2557
2622
  cell: cell,
2558
2623
  tableInstance: tableInstance
2559
2624
  });
2560
- onCellEditBlur == null ? void 0 : onCellEditBlur({
2625
+ onMrtCellEditBlur == null ? void 0 : onMrtCellEditBlur({
2561
2626
  event: event,
2562
2627
  cell: cell,
2563
2628
  tableInstance: tableInstance
@@ -2583,7 +2648,7 @@ var MRT_EditCellTextField = function MRT_EditCellTextField(_ref) {
2583
2648
  }
2584
2649
 
2585
2650
  return React.createElement(TextField, Object.assign({
2586
- id: "mrt-" + idPrefix + "-edit-cell-text-field-" + cell.id,
2651
+ id: "mrt-" + tableId + "-edit-cell-text-field-" + cell.id,
2587
2652
  margin: "dense",
2588
2653
  onBlur: handleBlur,
2589
2654
  onChange: handleChange,
@@ -2670,14 +2735,17 @@ var MRT_TableBodyCell = function MRT_TableBodyCell(_ref) {
2670
2735
  _tableInstance$option = tableInstance.options,
2671
2736
  editingMode = _tableInstance$option.editingMode,
2672
2737
  enableClickToCopy = _tableInstance$option.enableClickToCopy,
2738
+ enableColumnOrdering = _tableInstance$option.enableColumnOrdering,
2673
2739
  enableEditing = _tableInstance$option.enableEditing,
2674
- idPrefix = _tableInstance$option.idPrefix,
2740
+ tableId = _tableInstance$option.tableId,
2675
2741
  muiTableBodyCellProps = _tableInstance$option.muiTableBodyCellProps,
2676
2742
  muiTableBodyCellSkeletonProps = _tableInstance$option.muiTableBodyCellSkeletonProps,
2677
- onCellClick = _tableInstance$option.onCellClick,
2743
+ onMrtCellClick = _tableInstance$option.onMrtCellClick,
2744
+ setColumnOrder = tableInstance.setColumnOrder,
2678
2745
  setCurrentEditingCell = tableInstance.setCurrentEditingCell;
2679
2746
 
2680
2747
  var _getState = getState(),
2748
+ columnOrder = _getState.columnOrder,
2681
2749
  currentEditingCell = _getState.currentEditingCell,
2682
2750
  currentEditingRow = _getState.currentEditingRow,
2683
2751
  isDensePadding = _getState.isDensePadding,
@@ -2688,6 +2756,15 @@ var MRT_TableBodyCell = function MRT_TableBodyCell(_ref) {
2688
2756
  row = cell.row;
2689
2757
  var columnDef = column.columnDef,
2690
2758
  columnDefType = column.columnDefType;
2759
+
2760
+ var _useDrop = useDrop({
2761
+ accept: 'column',
2762
+ drop: function drop(movingColumn) {
2763
+ return reorderColumn(movingColumn, column, columnOrder, setColumnOrder);
2764
+ }
2765
+ }),
2766
+ dropRef = _useDrop[1];
2767
+
2691
2768
  var mTableCellBodyProps = muiTableBodyCellProps instanceof Function ? muiTableBodyCellProps({
2692
2769
  cell: cell,
2693
2770
  tableInstance: tableInstance
@@ -2709,7 +2786,7 @@ var MRT_TableBodyCell = function MRT_TableBodyCell(_ref) {
2709
2786
  if ((enableEditing || columnDef.enableEditing) && columnDef.enableEditing !== false && editingMode === 'cell') {
2710
2787
  setCurrentEditingCell(cell);
2711
2788
  setTimeout(function () {
2712
- var textField = document.getElementById("mrt-" + idPrefix + "-edit-cell-text-field-" + cell.id);
2789
+ var textField = document.getElementById("mrt-" + tableId + "-edit-cell-text-field-" + cell.id);
2713
2790
 
2714
2791
  if (textField) {
2715
2792
  textField.focus();
@@ -2733,7 +2810,7 @@ var MRT_TableBodyCell = function MRT_TableBodyCell(_ref) {
2733
2810
 
2734
2811
  return React.createElement(TableCell, Object.assign({
2735
2812
  onClick: function onClick(event) {
2736
- return onCellClick == null ? void 0 : onCellClick({
2813
+ return onMrtCellClick == null ? void 0 : onMrtCellClick({
2737
2814
  event: event,
2738
2815
  cell: cell,
2739
2816
  tableInstance: tableInstance
@@ -2741,6 +2818,7 @@ var MRT_TableBodyCell = function MRT_TableBodyCell(_ref) {
2741
2818
  },
2742
2819
  onDoubleClick: handleDoubleClick
2743
2820
  }, tableCellProps, {
2821
+ ref: columnDefType === 'data' && enableColumnOrdering ? dropRef : undefined,
2744
2822
  sx: function sx(theme) {
2745
2823
  return _extends({
2746
2824
  backgroundColor: column.getIsPinned() ? alpha(lighten(theme.palette.background["default"], 0.04), 0.95) : undefined,
@@ -2793,7 +2871,7 @@ var MRT_TableDetailPanel = function MRT_TableDetailPanel(_ref) {
2793
2871
  _tableInstance$option = tableInstance.options,
2794
2872
  muiTableBodyRowProps = _tableInstance$option.muiTableBodyRowProps,
2795
2873
  muiTableDetailPanelProps = _tableInstance$option.muiTableDetailPanelProps,
2796
- onDetailPanelClick = _tableInstance$option.onDetailPanelClick,
2874
+ onMrtDetailPanelClick = _tableInstance$option.onMrtDetailPanelClick,
2797
2875
  renderDetailPanel = _tableInstance$option.renderDetailPanel;
2798
2876
  var tableRowProps = muiTableBodyRowProps instanceof Function ? muiTableBodyRowProps({
2799
2877
  row: row,
@@ -2806,7 +2884,7 @@ var MRT_TableDetailPanel = function MRT_TableDetailPanel(_ref) {
2806
2884
  return React.createElement(TableRow, Object.assign({}, tableRowProps), React.createElement(TableCell, Object.assign({
2807
2885
  colSpan: getVisibleFlatColumns().length + 10,
2808
2886
  onClick: function onClick(event) {
2809
- return onDetailPanelClick == null ? void 0 : onDetailPanelClick({
2887
+ return onMrtDetailPanelClick == null ? void 0 : onMrtDetailPanelClick({
2810
2888
  event: event,
2811
2889
  row: row,
2812
2890
  tableInstance: tableInstance
@@ -2832,7 +2910,7 @@ var MRT_TableBodyRow = function MRT_TableBodyRow(_ref) {
2832
2910
  tableInstance = _ref.tableInstance;
2833
2911
  var _tableInstance$option = tableInstance.options,
2834
2912
  muiTableBodyRowProps = _tableInstance$option.muiTableBodyRowProps,
2835
- onRowClick = _tableInstance$option.onRowClick,
2913
+ onMrtRowClick = _tableInstance$option.onMrtRowClick,
2836
2914
  renderDetailPanel = _tableInstance$option.renderDetailPanel;
2837
2915
  var tableRowProps = muiTableBodyRowProps instanceof Function ? muiTableBodyRowProps({
2838
2916
  row: row,
@@ -2841,7 +2919,7 @@ var MRT_TableBodyRow = function MRT_TableBodyRow(_ref) {
2841
2919
  return React.createElement(React.Fragment, null, React.createElement(TableRow, Object.assign({
2842
2920
  hover: true,
2843
2921
  onClick: function onClick(event) {
2844
- return onRowClick == null ? void 0 : onRowClick({
2922
+ return onMrtRowClick == null ? void 0 : onMrtRowClick({
2845
2923
  event: event,
2846
2924
  row: row,
2847
2925
  tableInstance: tableInstance
@@ -2892,7 +2970,7 @@ var MRT_TableBody = function MRT_TableBody(_ref) {
2892
2970
  };
2893
2971
 
2894
2972
  var MRT_TableFooterCell = function MRT_TableFooterCell(_ref) {
2895
- var _ref2, _ref3, _columnDef$Footer;
2973
+ var _ref2, _ref3, _ref4;
2896
2974
 
2897
2975
  var footer = _ref.footer,
2898
2976
  tableInstance = _ref.tableInstance;
@@ -2936,10 +3014,10 @@ var MRT_TableFooterCell = function MRT_TableFooterCell(_ref) {
2936
3014
  verticalAlign: 'text-top'
2937
3015
  }, tableCellProps == null ? void 0 : tableCellProps.sx);
2938
3016
  }
2939
- }), React.createElement(React.Fragment, null, footer.isPlaceholder ? null : columnDef.Footer instanceof Function ? columnDef.Footer == null ? void 0 : columnDef.Footer({
3017
+ }), React.createElement(React.Fragment, null, footer.isPlaceholder ? null : (_ref2 = (_ref3 = (_ref4 = columnDef.Footer instanceof Function ? columnDef.Footer == null ? void 0 : columnDef.Footer({
2940
3018
  footer: footer,
2941
3019
  tableInstance: tableInstance
2942
- }) : (_ref2 = (_ref3 = (_columnDef$Footer = columnDef.Footer) != null ? _columnDef$Footer : columnDef.footer) != null ? _ref3 : footer.renderFooter()) != null ? _ref2 : null));
3020
+ }) : columnDef.Footer) != null ? _ref4 : columnDef.footer) != null ? _ref3 : footer.renderFooter()) != null ? _ref2 : null));
2943
3021
  };
2944
3022
 
2945
3023
  var MRT_TableFooterRow = function MRT_TableFooterRow(_ref) {
@@ -3008,7 +3086,7 @@ var MRT_TableContainer = function MRT_TableContainer(_ref) {
3008
3086
  var getState = tableInstance.getState,
3009
3087
  _tableInstance$option = tableInstance.options,
3010
3088
  enableStickyHeader = _tableInstance$option.enableStickyHeader,
3011
- idPrefix = _tableInstance$option.idPrefix,
3089
+ tableId = _tableInstance$option.tableId,
3012
3090
  muiTableContainerProps = _tableInstance$option.muiTableContainerProps;
3013
3091
 
3014
3092
  var _getState = getState(),
@@ -3024,8 +3102,8 @@ var MRT_TableContainer = function MRT_TableContainer(_ref) {
3024
3102
  useIsomorphicLayoutEffect(function () {
3025
3103
  var _document$getElementB, _document, _document$getElementB2, _document$getElementB3, _document2, _document2$getElement;
3026
3104
 
3027
- var topToolbarHeight = typeof document !== 'undefined' ? (_document$getElementB = (_document = document) == null ? void 0 : (_document$getElementB2 = _document.getElementById("mrt-" + idPrefix + "-toolbar-top")) == null ? void 0 : _document$getElementB2.offsetHeight) != null ? _document$getElementB : 0 : 0;
3028
- var bottomToolbarHeight = typeof document !== 'undefined' ? (_document$getElementB3 = (_document2 = document) == null ? void 0 : (_document2$getElement = _document2.getElementById("mrt-" + idPrefix + "-toolbar-bottom")) == null ? void 0 : _document2$getElement.offsetHeight) != null ? _document$getElementB3 : 0 : 0;
3105
+ 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;
3106
+ 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;
3029
3107
  setTotalToolbarHeight(topToolbarHeight + bottomToolbarHeight);
3030
3108
  });
3031
3109
  return React.createElement(TableContainer, Object.assign({}, tableContainerProps, {
@@ -3092,77 +3170,29 @@ var MRT_TablePaper = function MRT_TablePaper(_ref) {
3092
3170
  })));
3093
3171
  };
3094
3172
 
3095
- var getAllLeafColumnDefs = function getAllLeafColumnDefs(columns) {
3096
- var lowestLevelColumns = columns;
3097
- var currentCols = columns;
3098
-
3099
- while (!!((_currentCols = currentCols) != null && _currentCols.length) && currentCols.some(function (col) {
3100
- return col.columns;
3101
- })) {
3102
- var _currentCols;
3103
-
3104
- var nextCols = currentCols.filter(function (col) {
3105
- return !!col.columns;
3106
- }).map(function (col) {
3107
- return col.columns;
3108
- }).flat();
3109
-
3110
- if (nextCols.every(function (col) {
3111
- return !(col != null && col.columns);
3112
- })) {
3113
- lowestLevelColumns = [].concat(lowestLevelColumns, nextCols);
3114
- }
3115
-
3116
- currentCols = nextCols;
3117
- }
3118
-
3119
- return lowestLevelColumns.filter(function (col) {
3120
- return !col.columns;
3121
- });
3122
- };
3123
- var createGroup = function createGroup(table, column, currentFilterFns) {
3124
- var _column$columns;
3125
-
3126
- return table.createGroup(_extends({}, column, {
3127
- columns: column == null ? void 0 : (_column$columns = column.columns) == null ? void 0 : _column$columns.map == null ? void 0 : _column$columns.map(function (col) {
3128
- return col.columns ? createGroup(table, col, currentFilterFns) : createDataColumn(table, col, currentFilterFns);
3129
- })
3130
- }));
3131
- };
3132
- var createDataColumn = function createDataColumn(table, column, currentFilterFns) {
3133
- return (// @ts-ignore
3134
- table.createDataColumn(column.id, _extends({
3135
- filterFn: currentFilterFns[column.id] instanceof Function ? currentFilterFns[column.id] : defaultFilterFNs[currentFilterFns[column.id]]
3136
- }, column))
3137
- );
3138
- };
3139
- var createDisplayColumn = function createDisplayColumn(table, column) {
3140
- return table.createDisplayColumn(column);
3141
- };
3142
-
3143
3173
  var MRT_TableRoot = function MRT_TableRoot(props) {
3144
3174
  var _initialState$current, _initialState$current2, _initialState$isDense, _initialState$isFullS, _initialState$showFil, _initialState$showGlo, _props$globalFilterFn, _props$state3, _props$state4;
3145
3175
 
3146
- var _useState = useState(props.idPrefix),
3147
- idPrefix = _useState[0],
3176
+ var _useState = useState(props.tableId),
3177
+ tableId = _useState[0],
3148
3178
  setIdPrefix = _useState[1];
3149
3179
 
3150
3180
  useEffect(function () {
3151
- var _props$idPrefix;
3181
+ var _props$tableId;
3152
3182
 
3153
- return setIdPrefix((_props$idPrefix = props.idPrefix) != null ? _props$idPrefix : Math.random().toString(36).substring(2, 9));
3154
- }, [props.idPrefix]);
3183
+ return setIdPrefix((_props$tableId = props.tableId) != null ? _props$tableId : Math.random().toString(36).substring(2, 9));
3184
+ }, [props.tableId]);
3155
3185
  var showActionColumn = props.enableRowActions || props.enableEditing && props.editingMode === 'row';
3156
3186
  var showExpandColumn = props.enableExpanding || props.enableGrouping;
3157
3187
  var initialState = useMemo(function () {
3158
3188
  var _props$initialState, _initState$columnOrde;
3159
3189
 
3160
3190
  var initState = (_props$initialState = props.initialState) != null ? _props$initialState : {};
3161
- initState.columnOrder = ((_initState$columnOrde = initState == null ? void 0 : initState.columnOrder) != null ? _initState$columnOrde : props.enableColumnOrdering) ? [showActionColumn && 'mrt-row-actions', showExpandColumn && 'mrt-expand', props.enableRowSelection && 'mrt-select', props.enableRowNumbers && 'mrt-row-numbers'].concat(getAllLeafColumnDefs(props.columns).map(function (c) {
3191
+ initState.columnOrder = ((_initState$columnOrde = initState == null ? void 0 : initState.columnOrder) != null ? _initState$columnOrde : props.enableColumnOrdering || props.enableGrouping) ? [showActionColumn && 'mrt-row-actions', showExpandColumn && 'mrt-expand', props.enableRowSelection && 'mrt-select', props.enableRowNumbers && 'mrt-row-numbers'].concat(getAllLeafColumnDefs(props.columns).map(function (c) {
3162
3192
  return c.id;
3163
3193
  })).filter(Boolean) : [];
3164
3194
 
3165
- if (!props.enablePersistentState || !props.idPrefix) {
3195
+ if (!props.enablePersistentState || !props.tableId) {
3166
3196
  return initState;
3167
3197
  }
3168
3198
 
@@ -3174,7 +3204,7 @@ var MRT_TableRoot = function MRT_TableRoot(props) {
3174
3204
  return initState;
3175
3205
  }
3176
3206
 
3177
- var storedState = props.persistentStateMode === 'localStorage' ? localStorage.getItem("mrt-" + idPrefix + "-table-state") : props.persistentStateMode === 'sessionStorage' ? sessionStorage.getItem("mrt-" + idPrefix + "-table-state") : '{}';
3207
+ var storedState = props.persistentStateMode === 'localStorage' ? localStorage.getItem("mrt-" + tableId + "-table-state") : props.persistentStateMode === 'sessionStorage' ? sessionStorage.getItem("mrt-" + tableId + "-table-state") : '{}';
3178
3208
 
3179
3209
  if (storedState) {
3180
3210
  var parsedState = JSON.parse(storedState);
@@ -3226,7 +3256,24 @@ var MRT_TableRoot = function MRT_TableRoot(props) {
3226
3256
  setCurrentGlobalFilterFn = _useState9[1];
3227
3257
 
3228
3258
  var table = useMemo(function () {
3229
- return createTable();
3259
+ return (// @ts-ignore
3260
+ createTable().setOptions({
3261
+ //@ts-ignore
3262
+ filterFns: defaultFilterFNs,
3263
+ getCoreRowModel: getCoreRowModel(),
3264
+ getExpandedRowModel: getExpandedRowModel(),
3265
+ getFacetedRowModel: getFacetedRowModel(),
3266
+ getFilteredRowModel: getFilteredRowModel(),
3267
+ getGroupedRowModel: getGroupedRowModel(),
3268
+ getPaginationRowModel: getPaginationRowModel(),
3269
+ getSortedRowModel: getSortedRowModel(),
3270
+ getSubRows: function getSubRows(row) {
3271
+ return row == null ? void 0 : row.subRows;
3272
+ },
3273
+ tableId: tableId,
3274
+ initialState: initialState
3275
+ })
3276
+ );
3230
3277
  }, []);
3231
3278
  var displayColumns = useMemo(function () {
3232
3279
  var _props$localization, _props$localization2, _props$localization3, _props$localization5;
@@ -3241,6 +3288,8 @@ var MRT_TableRoot = function MRT_TableRoot(props) {
3241
3288
  },
3242
3289
  header: (_props$localization = props.localization) == null ? void 0 : _props$localization.actions,
3243
3290
  id: 'mrt-row-actions',
3291
+ muiTableBodyCellProps: props.muiTableBodyCellProps,
3292
+ muiTableHeadCellProps: props.muiTableHeadCellProps,
3244
3293
  size: 60
3245
3294
  }), showExpandColumn && createDisplayColumn(table, {
3246
3295
  Cell: function Cell(_ref4) {
@@ -3257,6 +3306,8 @@ var MRT_TableRoot = function MRT_TableRoot(props) {
3257
3306
  },
3258
3307
  header: (_props$localization2 = props.localization) == null ? void 0 : _props$localization2.expand,
3259
3308
  id: 'mrt-expand',
3309
+ muiTableBodyCellProps: props.muiTableBodyCellProps,
3310
+ muiTableHeadCellProps: props.muiTableHeadCellProps,
3260
3311
  size: 50
3261
3312
  }), props.enableRowSelection && createDisplayColumn(table, {
3262
3313
  Cell: function Cell(_ref5) {
@@ -3274,6 +3325,8 @@ var MRT_TableRoot = function MRT_TableRoot(props) {
3274
3325
  },
3275
3326
  header: (_props$localization3 = props.localization) == null ? void 0 : _props$localization3.select,
3276
3327
  id: 'mrt-select',
3328
+ muiTableBodyCellProps: props.muiTableBodyCellProps,
3329
+ muiTableHeadCellProps: props.muiTableHeadCellProps,
3277
3330
  size: 50
3278
3331
  }), props.enableRowNumbers && createDisplayColumn(table, {
3279
3332
  Cell: function Cell(_ref6) {
@@ -3287,6 +3340,8 @@ var MRT_TableRoot = function MRT_TableRoot(props) {
3287
3340
  },
3288
3341
  header: (_props$localization5 = props.localization) == null ? void 0 : _props$localization5.rowNumbers,
3289
3342
  id: 'mrt-row-numbers',
3343
+ muiTableBodyCellProps: props.muiTableBodyCellProps,
3344
+ muiTableHeadCellProps: props.muiTableHeadCellProps,
3290
3345
  size: 50
3291
3346
  })].filter(Boolean);
3292
3347
  }, [props.editingMode, props.enableEditing, props.enableExpandAll, props.enableExpanding, props.enableGrouping, props.enableRowActions, props.enableRowNumbers, props.enableRowSelection, props.enableSelectAll, props.localization, table]);
@@ -3307,26 +3362,12 @@ var MRT_TableRoot = function MRT_TableRoot(props) {
3307
3362
  }) : props.data;
3308
3363
  }, [props.data, (_props$state3 = props.state) == null ? void 0 : _props$state3.isLoading, (_props$state4 = props.state) == null ? void 0 : _props$state4.showSkeletons]); //@ts-ignore
3309
3364
 
3310
- var tableInstance = _extends({}, useTableInstance(table, _extends({
3311
- filterFns: defaultFilterFNs,
3312
- getCoreRowModel: getCoreRowModel(),
3313
- getExpandedRowModel: getExpandedRowModel(),
3314
- getFacetedRowModel: getFacetedRowModel(),
3315
- getFilteredRowModel: getFilteredRowModel(),
3316
- getGroupedRowModel: getGroupedRowModel(),
3317
- getPaginationRowModel: getPaginationRowModel(),
3318
- getSortedRowModel: getSortedRowModel(),
3319
- getSubRows: function getSubRows(row) {
3320
- return row == null ? void 0 : row.subRows;
3321
- },
3322
- //@ts-ignore
3323
- globalFilterFn: currentGlobalFilterFn
3324
- }, props, {
3365
+ var tableInstance = _extends({}, useTableInstance(table, _extends({}, props, {
3325
3366
  //@ts-ignore
3326
3367
  columns: columns,
3327
3368
  data: data,
3328
- idPrefix: idPrefix,
3329
- initialState: initialState,
3369
+ //@ts-ignore
3370
+ globalFilterFn: currentGlobalFilterFn,
3330
3371
  state: _extends({
3331
3372
  currentEditingCell: currentEditingCell,
3332
3373
  currentEditingRow: currentEditingRow,
@@ -3353,12 +3394,12 @@ var MRT_TableRoot = function MRT_TableRoot(props) {
3353
3394
  return;
3354
3395
  }
3355
3396
 
3356
- if (!props.idPrefix && process.env.NODE_ENV !== 'production') {
3357
- console.warn('a unique idPrefix prop is required for persistent table state to work');
3397
+ if (!props.tableId && process.env.NODE_ENV !== 'production') {
3398
+ console.warn('a unique tableId prop is required for persistent table state to work');
3358
3399
  return;
3359
3400
  }
3360
3401
 
3361
- var itemArgs = ["mrt-" + idPrefix + "-table-state", JSON.stringify(tableInstance.getState())];
3402
+ var itemArgs = ["mrt-" + tableId + "-table-state", JSON.stringify(tableInstance.getState())];
3362
3403
 
3363
3404
  if (props.persistentStateMode === 'localStorage') {
3364
3405
  var _localStorage;
@@ -3369,7 +3410,7 @@ var MRT_TableRoot = function MRT_TableRoot(props) {
3369
3410
 
3370
3411
  (_sessionStorage = sessionStorage).setItem.apply(_sessionStorage, itemArgs);
3371
3412
  }
3372
- }, [props.enablePersistentState, props.idPrefix, props.persistentStateMode, tableInstance]);
3413
+ }, [props.enablePersistentState, props.tableId, props.persistentStateMode, tableInstance]);
3373
3414
  return React.createElement(React.Fragment, null, React.createElement(Dialog, {
3374
3415
  PaperComponent: Box,
3375
3416
  TransitionComponent: Grow,
@@ -3388,7 +3429,7 @@ var MRT_TableRoot = function MRT_TableRoot(props) {
3388
3429
  }));
3389
3430
  };
3390
3431
 
3391
- 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"];
3432
+ 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"];
3392
3433
  var MaterialReactTable = (function (_ref) {
3393
3434
  var _ref$autoResetExpande = _ref.autoResetExpanded,
3394
3435
  autoResetExpanded = _ref$autoResetExpande === void 0 ? false : _ref$autoResetExpande,
@@ -3454,10 +3495,14 @@ var MaterialReactTable = (function (_ref) {
3454
3495
  positionActionsColumn = _ref$positionActionsC === void 0 ? 'first' : _ref$positionActionsC,
3455
3496
  _ref$positionPaginati = _ref.positionPagination,
3456
3497
  positionPagination = _ref$positionPaginati === void 0 ? 'bottom' : _ref$positionPaginati,
3498
+ _ref$positionGlobalFi = _ref.positionGlobalFilter,
3499
+ positionGlobalFilter = _ref$positionGlobalFi === void 0 ? 'right' : _ref$positionGlobalFi,
3457
3500
  _ref$positionToolbarA = _ref.positionToolbarActions,
3458
3501
  positionToolbarActions = _ref$positionToolbarA === void 0 ? 'top' : _ref$positionToolbarA,
3459
3502
  _ref$positionToolbarA2 = _ref.positionToolbarAlertBanner,
3460
3503
  positionToolbarAlertBanner = _ref$positionToolbarA2 === void 0 ? 'top' : _ref$positionToolbarA2,
3504
+ _ref$selectAllMode = _ref.selectAllMode,
3505
+ selectAllMode = _ref$selectAllMode === void 0 ? 'all' : _ref$selectAllMode,
3461
3506
  rest = _objectWithoutPropertiesLoose(_ref, _excluded$5);
3462
3507
 
3463
3508
  return React.createElement(MRT_TableRoot, Object.assign({
@@ -3491,9 +3536,11 @@ var MaterialReactTable = (function (_ref) {
3491
3536
  localization: _extends({}, MRT_DefaultLocalization_EN, localization),
3492
3537
  persistentStateMode: persistentStateMode,
3493
3538
  positionActionsColumn: positionActionsColumn,
3539
+ positionGlobalFilter: positionGlobalFilter,
3494
3540
  positionPagination: positionPagination,
3495
3541
  positionToolbarActions: positionToolbarActions,
3496
- positionToolbarAlertBanner: positionToolbarAlertBanner
3542
+ positionToolbarAlertBanner: positionToolbarAlertBanner,
3543
+ selectAllMode: selectAllMode
3497
3544
  }, rest));
3498
3545
  });
3499
3546