material-react-table 0.8.10 → 0.8.13

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 (33) hide show
  1. package/dist/MaterialReactTable.d.ts +5 -4
  2. package/dist/buttons/MRT_GrabHandleButton.d.ts +8 -0
  3. package/dist/localization.d.ts +1 -0
  4. package/dist/material-react-table.cjs.development.js +1879 -1835
  5. package/dist/material-react-table.cjs.development.js.map +1 -1
  6. package/dist/material-react-table.cjs.production.min.js +1 -1
  7. package/dist/material-react-table.cjs.production.min.js.map +1 -1
  8. package/dist/material-react-table.esm.js +202 -158
  9. package/dist/material-react-table.esm.js.map +1 -1
  10. package/dist/menus/MRT_ShowHideColumnsMenu.d.ts +1 -1
  11. package/dist/menus/MRT_ShowHideColumnsMenuItems.d.ts +1 -0
  12. package/dist/table/MRT_TableRoot.d.ts +0 -1
  13. package/dist/utils.d.ts +1 -1
  14. package/package.json +13 -13
  15. package/src/MaterialReactTable.tsx +5 -6
  16. package/src/body/MRT_TableBodyCell.tsx +8 -9
  17. package/src/buttons/MRT_ColumnPinningButtons.tsx +1 -1
  18. package/src/buttons/MRT_CopyButton.tsx +7 -3
  19. package/src/{head/MRT_TableHeadCellGrabHandle.tsx → buttons/MRT_GrabHandleButton.tsx} +2 -3
  20. package/src/buttons/MRT_ToggleColumnActionMenuButton.tsx +5 -4
  21. package/src/footer/MRT_TableFooterCell.tsx +2 -2
  22. package/src/footer/MRT_TableFooterRow.tsx +4 -4
  23. package/src/head/MRT_DraggableTableHeadCell.tsx +15 -9
  24. package/src/head/MRT_TableHeadCell.tsx +6 -12
  25. package/src/head/MRT_TableHeadCellFilterLabel.tsx +3 -1
  26. package/src/head/MRT_TableHeadCellResizeHandle.tsx +3 -2
  27. package/src/head/MRT_TableHeadCellSortLabel.tsx +4 -8
  28. package/src/inputs/MRT_FilterTextField.tsx +1 -1
  29. package/src/localization.ts +2 -0
  30. package/src/menus/MRT_ShowHideColumnsMenu.tsx +25 -38
  31. package/src/menus/MRT_ShowHideColumnsMenuItems.tsx +74 -21
  32. package/src/table/MRT_TableRoot.tsx +29 -28
  33. package/dist/head/MRT_TableHeadCellGrabHandle.d.ts +0 -9
@@ -1,6 +1,6 @@
1
- import React, { useMemo, useState, useCallback, Fragment, forwardRef, useLayoutEffect, useEffect } from 'react';
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, functionalUpdate } from '@tanstack/react-table';
3
+ import { createTable, useTableInstance, getCoreRowModel, getExpandedRowModel, getFacetedRowModel, getFilteredRowModel, getGroupedRowModel, getPaginationRowModel, getSortedRowModel } 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';
@@ -81,6 +81,7 @@ var MRT_DefaultLocalization_EN = {
81
81
  pinToLeft: 'Pin to left',
82
82
  pinToRight: 'Pin to right',
83
83
  resetColumnSize: 'Reset column size',
84
+ resetOrder: 'Reset order',
84
85
  rowActions: 'Row Actions',
85
86
  rowNumber: '#',
86
87
  rowNumbers: 'Row Numbers',
@@ -502,7 +503,7 @@ var MRT_ColumnPinningButtons = function MRT_ColumnPinningButtons(_ref) {
502
503
 
503
504
  return React.createElement(Box, {
504
505
  sx: {
505
- mr: '8px'
506
+ mr: '4px'
506
507
  }
507
508
  }, column.getIsPinned() ? React.createElement(Tooltip, {
508
509
  arrow: true,
@@ -539,24 +540,95 @@ var MRT_ColumnPinningButtons = function MRT_ColumnPinningButtons(_ref) {
539
540
  })))));
540
541
  };
541
542
 
543
+ var MRT_GrabHandleButton = /*#__PURE__*/forwardRef(function (_ref, ref) {
544
+ var tableInstance = _ref.tableInstance;
545
+ var _tableInstance$option = tableInstance.options,
546
+ DragHandleIcon = _tableInstance$option.icons.DragHandleIcon,
547
+ localization = _tableInstance$option.localization;
548
+ return React.createElement(Tooltip, {
549
+ arrow: true,
550
+ enterDelay: 1000,
551
+ enterNextDelay: 1000,
552
+ placement: "top",
553
+ title: localization.grab
554
+ }, React.createElement(IconButton, {
555
+ disableRipple: true,
556
+ ref: ref,
557
+ size: "small",
558
+ sx: {
559
+ cursor: 'grab',
560
+ m: 0,
561
+ opacity: 0.5,
562
+ p: '2px',
563
+ transition: 'all 0.2s ease-in-out',
564
+ '&:hover': {
565
+ backgroundColor: 'transparent',
566
+ opacity: 1
567
+ },
568
+ '&:active': {
569
+ cursor: 'grabbing'
570
+ }
571
+ }
572
+ }, React.createElement(DragHandleIcon, null)));
573
+ });
574
+
542
575
  var MRT_ShowHideColumnsMenuItems = function MRT_ShowHideColumnsMenuItems(_ref) {
543
576
  var _column$columns2;
544
577
 
545
- var column = _ref.column,
578
+ var allColumns = _ref.allColumns,
579
+ column = _ref.column,
546
580
  isSubMenu = _ref.isSubMenu,
547
581
  tableInstance = _ref.tableInstance;
548
582
  var getState = tableInstance.getState,
549
- onToggleColumnVisibility = tableInstance.options.onToggleColumnVisibility;
583
+ _tableInstance$option = tableInstance.options,
584
+ enableColumnOrdering = _tableInstance$option.enableColumnOrdering,
585
+ onToggleColumnVisibility = _tableInstance$option.onToggleColumnVisibility,
586
+ setColumnOrder = tableInstance.setColumnOrder;
550
587
 
551
588
  var _getState = getState(),
589
+ columnOrder = _getState.columnOrder,
552
590
  columnVisibility = _getState.columnVisibility;
553
591
 
554
- var switchChecked = column.columnDefType !== 'group' && column.getIsVisible() || column.columnDefType === 'group' && column.getLeafColumns().some(function (col) {
592
+ var columnDef = column.columnDef,
593
+ columnDefType = column.columnDefType;
594
+
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
+ var _useDrop = useDrop({
605
+ accept: 'column',
606
+ drop: function drop(movingColumn) {
607
+ return reorder(movingColumn, column);
608
+ }
609
+ }),
610
+ dropRef = _useDrop[1];
611
+
612
+ var _useDrag = useDrag({
613
+ collect: function collect(monitor) {
614
+ return {
615
+ isDragging: monitor.isDragging()
616
+ };
617
+ },
618
+ item: function item() {
619
+ return column;
620
+ },
621
+ type: 'column'
622
+ }),
623
+ dragRef = _useDrag[1],
624
+ previewRef = _useDrag[2];
625
+
626
+ var switchChecked = columnDefType !== 'group' && column.getIsVisible() || columnDefType === 'group' && column.getLeafColumns().some(function (col) {
555
627
  return col.getIsVisible();
556
628
  });
557
629
 
558
630
  var handleToggleColumnHidden = function handleToggleColumnHidden(column) {
559
- if (column.columnDefType === 'group') {
631
+ if (columnDefType === 'group') {
560
632
  var _column$columns;
561
633
 
562
634
  column == null ? void 0 : (_column$columns = column.columns) == null ? void 0 : _column$columns.forEach == null ? void 0 : _column$columns.forEach(function (childColumn) {
@@ -574,6 +646,7 @@ var MRT_ShowHideColumnsMenuItems = function MRT_ShowHideColumnsMenuItems(_ref) {
574
646
  };
575
647
 
576
648
  return React.createElement(React.Fragment, null, React.createElement(MenuItem, {
649
+ ref: columnDefType === 'data' ? dropRef : undefined,
577
650
  sx: {
578
651
  alignItems: 'center',
579
652
  justifyContent: 'flex-start',
@@ -581,26 +654,42 @@ var MRT_ShowHideColumnsMenuItems = function MRT_ShowHideColumnsMenuItems(_ref) {
581
654
  pl: (column.depth + 0.5) * 2 + "rem",
582
655
  py: '6px'
583
656
  }
584
- }, !isSubMenu && column.getCanPin() && React.createElement(MRT_ColumnPinningButtons, {
657
+ }, React.createElement(Box, {
658
+ ref: previewRef,
659
+ sx: {
660
+ display: 'flex',
661
+ flexWrap: 'nowrap'
662
+ }
663
+ }, columnDefType !== 'group' && enableColumnOrdering && columnDef.enableColumnOrdering !== false && !allColumns.some(function (col) {
664
+ return col.columnDefType === 'group';
665
+ }) && React.createElement(MRT_GrabHandleButton, {
666
+ ref: dragRef,
667
+ tableInstance: tableInstance
668
+ }), !isSubMenu && column.getCanPin() && React.createElement(MRT_ColumnPinningButtons, {
585
669
  column: column,
586
670
  tableInstance: tableInstance
587
671
  }), React.createElement(FormControlLabel, {
588
672
  componentsProps: {
589
673
  typography: {
590
674
  sx: {
591
- marginBottom: 0
675
+ mb: 0,
676
+ opacity: columnDefType !== 'display' ? 1 : 0.5
592
677
  }
593
678
  }
594
679
  },
595
680
  checked: switchChecked,
596
681
  control: React.createElement(Switch, null),
597
682
  disabled: isSubMenu && switchChecked || !column.getCanHide(),
598
- label: column.columnDef.header,
683
+ label: columnDef.header,
599
684
  onChange: function onChange() {
600
685
  return handleToggleColumnHidden(column);
686
+ },
687
+ sx: {
688
+ ml: '4px'
601
689
  }
602
- })), (_column$columns2 = column.columns) == null ? void 0 : _column$columns2.map(function (c, i) {
690
+ }))), (_column$columns2 = column.columns) == null ? void 0 : _column$columns2.map(function (c, i) {
603
691
  return React.createElement(MRT_ShowHideColumnsMenuItems, {
692
+ allColumns: allColumns,
604
693
  key: i + "-" + c.id,
605
694
  column: c,
606
695
  isSubMenu: isSubMenu,
@@ -615,18 +704,21 @@ var MRT_ShowHideColumnsMenu = function MRT_ShowHideColumnsMenu(_ref) {
615
704
  setAnchorEl = _ref.setAnchorEl,
616
705
  tableInstance = _ref.tableInstance;
617
706
  var getAllColumns = tableInstance.getAllColumns,
707
+ getAllLeafColumns = tableInstance.getAllLeafColumns,
618
708
  getIsAllColumnsVisible = tableInstance.getIsAllColumnsVisible,
619
- getIsSomeColumnsVisible = tableInstance.getIsSomeColumnsVisible,
620
709
  getIsSomeColumnsPinned = tableInstance.getIsSomeColumnsPinned,
710
+ getIsSomeColumnsVisible = tableInstance.getIsSomeColumnsVisible,
621
711
  getState = tableInstance.getState,
622
712
  toggleAllColumnsVisible = tableInstance.toggleAllColumnsVisible,
623
- getAllLeafColumns = tableInstance.getAllLeafColumns,
624
713
  _tableInstance$option = tableInstance.options,
625
714
  localization = _tableInstance$option.localization,
626
- enablePinning = _tableInstance$option.enablePinning;
715
+ enablePinning = _tableInstance$option.enablePinning,
716
+ enableColumnOrdering = _tableInstance$option.enableColumnOrdering;
627
717
 
628
718
  var _getState = getState(),
629
- isDensePadding = _getState.isDensePadding;
719
+ isDensePadding = _getState.isDensePadding,
720
+ columnOrder = _getState.columnOrder,
721
+ columnPinning = _getState.columnPinning;
630
722
 
631
723
  var hideAllColumns = function hideAllColumns() {
632
724
  getAllLeafColumns().filter(function (col) {
@@ -636,23 +728,23 @@ var MRT_ShowHideColumnsMenu = function MRT_ShowHideColumnsMenu(_ref) {
636
728
  });
637
729
  };
638
730
 
639
- var allDisplayColumns = useMemo(function () {
640
- return getAllColumns().filter(function (col) {
641
- return col.columnDefType === 'display';
642
- });
643
- }, [getAllColumns()]);
644
- var allDataColumns = useMemo(function () {
645
- var dataColumns = getAllColumns().filter(function (col) {
646
- return col.columnDefType !== 'display';
647
- });
648
- return getIsSomeColumnsPinned() ? [].concat(dataColumns.filter(function (c) {
649
- return c.getIsPinned() === 'left';
650
- }), [null], dataColumns.filter(function (c) {
651
- return c.getIsPinned() === false;
652
- }), [null], dataColumns.filter(function (c) {
653
- return c.getIsPinned() === 'right';
654
- })) : dataColumns;
655
- }, [getAllColumns(), getState().columnPinning, getIsSomeColumnsPinned()]);
731
+ var allColumns = useMemo(function () {
732
+ var columns = getAllColumns();
733
+
734
+ if (columnOrder.length > 0 && !columns.some(function (col) {
735
+ return col.columnDefType === 'group';
736
+ })) {
737
+ var _columnOrder$map;
738
+
739
+ return (_columnOrder$map = columnOrder.map(function (colId) {
740
+ return columns.find(function (col) {
741
+ return col.id === colId;
742
+ });
743
+ })) != null ? _columnOrder$map : columns;
744
+ }
745
+
746
+ return columns;
747
+ }, [getAllColumns(), columnOrder, columnPinning]);
656
748
  return React.createElement(Menu, {
657
749
  anchorEl: anchorEl,
658
750
  open: !!anchorEl,
@@ -672,7 +764,11 @@ var MRT_ShowHideColumnsMenu = function MRT_ShowHideColumnsMenu(_ref) {
672
764
  }, !isSubMenu && React.createElement(Button, {
673
765
  disabled: !getIsSomeColumnsVisible(),
674
766
  onClick: hideAllColumns
675
- }, localization.hideAll), !isSubMenu && enablePinning && React.createElement(Button, {
767
+ }, localization.hideAll), !isSubMenu && enableColumnOrdering && React.createElement(Button, {
768
+ onClick: function onClick() {
769
+ return tableInstance.resetColumnOrder();
770
+ }
771
+ }, localization.resetOrder), !isSubMenu && enablePinning && React.createElement(Button, {
676
772
  disabled: !getIsSomeColumnsPinned(),
677
773
  onClick: function onClick() {
678
774
  return tableInstance.resetColumnPinning(true);
@@ -682,22 +778,14 @@ var MRT_ShowHideColumnsMenu = function MRT_ShowHideColumnsMenu(_ref) {
682
778
  onClick: function onClick() {
683
779
  return toggleAllColumnsVisible(true);
684
780
  }
685
- }, localization.showAll)), React.createElement(Divider, null), allDisplayColumns.map(function (column, index) {
781
+ }, localization.showAll)), React.createElement(Divider, null), allColumns.map(function (column, index) {
686
782
  return React.createElement(MRT_ShowHideColumnsMenuItems, {
783
+ allColumns: allColumns,
687
784
  column: column,
688
785
  isSubMenu: isSubMenu,
689
786
  key: index + "-" + column.id,
690
787
  tableInstance: tableInstance
691
788
  });
692
- }), React.createElement(Divider, null), allDataColumns.map(function (column, index) {
693
- return column ? React.createElement(MRT_ShowHideColumnsMenuItems, {
694
- column: column,
695
- isSubMenu: isSubMenu,
696
- key: index + "-" + column.id,
697
- tableInstance: tableInstance
698
- }) : React.createElement(Divider, {
699
- key: index + "-divider"
700
- });
701
789
  }));
702
790
  };
703
791
 
@@ -1867,9 +1955,6 @@ var MRT_FilterTextField = function MRT_FilterTextField(_ref) {
1867
1955
  var filterChipLabel = !(filterFn instanceof Function) && [MRT_FILTER_OPTION.EMPTY, MRT_FILTER_OPTION.NOT_EMPTY].includes(filterFn) ? //@ts-ignore
1868
1956
  localization["filter" + (filterFn.charAt(0).toUpperCase() + filterFn.slice(1))] : '';
1869
1957
  var filterPlaceholder = inputIndex === undefined ? (_localization$filterB = localization.filterByColumn) == null ? void 0 : _localization$filterB.replace('{column}', String(columnDef.header)) : inputIndex === 0 ? localization.min : inputIndex === 1 ? localization.max : '';
1870
- console.log({
1871
- textFieldProps: textFieldProps
1872
- });
1873
1958
  return React.createElement(React.Fragment, null, React.createElement(TextField, Object.assign({
1874
1959
  fullWidth: true,
1875
1960
  id: filterId,
@@ -2047,8 +2132,9 @@ var MRT_TableHeadCellFilterLabel = function MRT_TableHeadCellFilterLabel(_ref) {
2047
2132
  showFilters = _getState.showFilters;
2048
2133
 
2049
2134
  var column = header.column;
2135
+ var columnDef = column.columnDef;
2050
2136
  var filterFn = (_getState2 = getState()) == null ? void 0 : (_getState2$currentFil = _getState2.currentFilterFns) == null ? void 0 : _getState2$currentFil[header.id];
2051
- var filterTooltip = !!column.getFilterValue() ? localization.filteringByColumn.replace('{column}', String(column.columnDef.header)).replace('{filterType}', filterFn instanceof Function ? '' : // @ts-ignore
2137
+ var filterTooltip = !!column.getFilterValue() ? localization.filteringByColumn.replace('{column}', String(columnDef.header)).replace('{filterType}', filterFn instanceof Function ? '' : // @ts-ignore
2052
2138
  localization["filter" + (filterFn.charAt(0).toUpperCase() + filterFn.slice(1))]).replace('{filterValue}', "\"" + (Array.isArray(column.getFilterValue()) ? column.getFilterValue().join("\" " + localization.and + " \"") : column.getFilterValue()) + "\"").replace('" "', '') : localization.showHideFilters;
2053
2139
  return React.createElement(Tooltip, {
2054
2140
  arrow: true,
@@ -2074,38 +2160,6 @@ var MRT_TableHeadCellFilterLabel = function MRT_TableHeadCellFilterLabel(_ref) {
2074
2160
  }, showFilters && !column.getFilterValue() ? React.createElement(FilterAltOffIcon, null) : React.createElement(FilterAltIcon, null)));
2075
2161
  };
2076
2162
 
2077
- var MRT_TableHeadCellGrabHandle = /*#__PURE__*/forwardRef(function (_ref, ref) {
2078
- var tableInstance = _ref.tableInstance;
2079
- var _tableInstance$option = tableInstance.options,
2080
- DragHandleIcon = _tableInstance$option.icons.DragHandleIcon,
2081
- localization = _tableInstance$option.localization;
2082
- return React.createElement(Tooltip, {
2083
- arrow: true,
2084
- enterDelay: 1000,
2085
- enterNextDelay: 1000,
2086
- placement: "top",
2087
- title: localization.grab
2088
- }, React.createElement(IconButton, {
2089
- disableRipple: true,
2090
- ref: ref,
2091
- size: "small",
2092
- sx: {
2093
- cursor: 'grab',
2094
- m: 0,
2095
- opacity: 0.5,
2096
- p: '2px',
2097
- transition: 'all 0.2s ease-in-out',
2098
- '&:hover': {
2099
- backgroundColor: 'transparent',
2100
- opacity: 1
2101
- },
2102
- '&:active': {
2103
- cursor: 'grabbing'
2104
- }
2105
- }
2106
- }, React.createElement(DragHandleIcon, null)));
2107
- });
2108
-
2109
2163
  var MRT_TableHeadCellResizeHandle = function MRT_TableHeadCellResizeHandle(_ref) {
2110
2164
  var header = _ref.header,
2111
2165
  tableInstance = _ref.tableInstance;
@@ -2115,6 +2169,7 @@ var MRT_TableHeadCellResizeHandle = function MRT_TableHeadCellResizeHandle(_ref)
2115
2169
  showFilters = _getState.showFilters;
2116
2170
 
2117
2171
  var column = header.column;
2172
+ var columnDefType = column.columnDefType;
2118
2173
  return React.createElement(Divider, {
2119
2174
  flexItem: true,
2120
2175
  orientation: "vertical",
@@ -2126,7 +2181,7 @@ var MRT_TableHeadCellResizeHandle = function MRT_TableHeadCellResizeHandle(_ref)
2126
2181
  borderRadius: '2px',
2127
2182
  borderRightWidth: '2px',
2128
2183
  cursor: 'col-resize',
2129
- height: showFilters && column.columnDefType === 'data' ? '4rem' : '2rem',
2184
+ height: showFilters && columnDefType === 'data' ? '4rem' : '2rem',
2130
2185
  opacity: 0.8,
2131
2186
  position: 'absolute',
2132
2187
  right: '1px',
@@ -2153,7 +2208,8 @@ var MRT_TableHeadCellSortLabel = function MRT_TableHeadCellSortLabel(_ref) {
2153
2208
  tableInstance = _ref.tableInstance;
2154
2209
  var localization = tableInstance.options.localization;
2155
2210
  var column = header.column;
2156
- var sortTooltip = !!column.getIsSorted() ? column.getIsSorted() === 'desc' ? localization.sortedByColumnDesc.replace('{column}', column.columnDef.header) : localization.sortedByColumnAsc.replace('{column}', column.columnDef.header) : localization.unsorted;
2211
+ var columnDef = column.columnDef;
2212
+ var sortTooltip = !!column.getIsSorted() ? column.getIsSorted() === 'desc' ? localization.sortedByColumnDesc.replace('{column}', columnDef.header) : localization.sortedByColumnAsc.replace('{column}', columnDef.header) : localization.unsorted;
2157
2213
  return React.createElement(Tooltip, {
2158
2214
  arrow: true,
2159
2215
  placement: "top",
@@ -2173,6 +2229,7 @@ var MRT_ToggleColumnActionMenuButton = function MRT_ToggleColumnActionMenuButton
2173
2229
  localization = _tableInstance$option.localization,
2174
2230
  muiTableHeadCellColumnActionsButtonProps = _tableInstance$option.muiTableHeadCellColumnActionsButtonProps;
2175
2231
  var column = header.column;
2232
+ var columnDef = column.columnDef;
2176
2233
 
2177
2234
  var _useState = useState(null),
2178
2235
  anchorEl = _useState[0],
@@ -2188,10 +2245,10 @@ var MRT_ToggleColumnActionMenuButton = function MRT_ToggleColumnActionMenuButton
2188
2245
  column: column,
2189
2246
  tableInstance: tableInstance
2190
2247
  }) : muiTableHeadCellColumnActionsButtonProps;
2191
- var mcTableHeadCellColumnActionsButtonProps = column.columnDef.muiTableHeadCellColumnActionsButtonProps instanceof Function ? column.columnDef.muiTableHeadCellColumnActionsButtonProps({
2248
+ var mcTableHeadCellColumnActionsButtonProps = columnDef.muiTableHeadCellColumnActionsButtonProps instanceof Function ? columnDef.muiTableHeadCellColumnActionsButtonProps({
2192
2249
  column: column,
2193
2250
  tableInstance: tableInstance
2194
- }) : column.columnDef.muiTableHeadCellColumnActionsButtonProps;
2251
+ }) : columnDef.muiTableHeadCellColumnActionsButtonProps;
2195
2252
 
2196
2253
  var iconButtonProps = _extends({}, mTableHeadCellColumnActionsButtonProps, mcTableHeadCellColumnActionsButtonProps);
2197
2254
 
@@ -2226,7 +2283,7 @@ var MRT_ToggleColumnActionMenuButton = function MRT_ToggleColumnActionMenuButton
2226
2283
  };
2227
2284
 
2228
2285
  var MRT_TableHeadCell = function MRT_TableHeadCell(_ref) {
2229
- var _column$columnDef, _column$columnDef2, _column$columnDef$Hea, _column$columnDef3, _columnDef$minSize, _columnDef$header$len, _columnDef$header;
2286
+ var _columnDef$Header, _columnDef$minSize, _columnDef$header$len, _columnDef$header;
2230
2287
 
2231
2288
  var dragRef = _ref.dragRef,
2232
2289
  dropRef = _ref.dropRef,
@@ -2260,10 +2317,10 @@ var MRT_TableHeadCell = function MRT_TableHeadCell(_ref) {
2260
2317
 
2261
2318
  var tableCellProps = _extends({}, mTableHeadCellProps, mcTableHeadCellProps);
2262
2319
 
2263
- var headerElement = ((_column$columnDef = column.columnDef) == null ? void 0 : _column$columnDef.Header) instanceof Function ? (_column$columnDef2 = column.columnDef) == null ? void 0 : _column$columnDef2.Header == null ? void 0 : _column$columnDef2.Header({
2320
+ var headerElement = (columnDef == null ? void 0 : columnDef.Header) instanceof Function ? columnDef == null ? void 0 : columnDef.Header == null ? void 0 : columnDef.Header({
2264
2321
  header: header,
2265
2322
  tableInstance: tableInstance
2266
- }) : (_column$columnDef$Hea = (_column$columnDef3 = column.columnDef) == null ? void 0 : _column$columnDef3.Header) != null ? _column$columnDef$Hea : header.renderHeader();
2323
+ }) : (_columnDef$Header = columnDef == null ? void 0 : columnDef.Header) != null ? _columnDef$Header : header.renderHeader();
2267
2324
 
2268
2325
  var getIsLastLeftPinnedColumn = function getIsLastLeftPinnedColumn() {
2269
2326
  return column.getIsPinned() === 'left' && tableInstance.getLeftLeafHeaders().length - 1 === column.getPinnedIndex();
@@ -2294,7 +2351,7 @@ var MRT_TableHeadCell = function MRT_TableHeadCell(_ref) {
2294
2351
  p: isDensePadding ? columnDefType === 'display' ? '0 0.5rem' : '0.5rem' : columnDefType === 'display' ? '0.5rem 0.75rem' : '1rem',
2295
2352
  pb: columnDefType === 'display' ? 0 : undefined,
2296
2353
  position: column.getIsPinned() && columnDefType !== 'group' ? 'sticky' : undefined,
2297
- pt: columnDefType === 'display' ? 0 : isDensePadding ? '0.75rem' : '1.25rem',
2354
+ pt: columnDefType !== 'data' ? 0 : isDensePadding ? '0.25' : '.5rem',
2298
2355
  right: column.getIsPinned() === 'right' ? getTotalRight() + "px" : undefined,
2299
2356
  transition: "all " + (enableColumnResizing ? 0 : '0.2s') + " ease-in-out",
2300
2357
  verticalAlign: 'text-top',
@@ -2336,8 +2393,7 @@ var MRT_TableHeadCell = function MRT_TableHeadCell(_ref) {
2336
2393
  sx: {
2337
2394
  whiteSpace: 'nowrap'
2338
2395
  }
2339
- }, columnDefType === 'data' && (enableColumnOrdering && columnDef.enableColumnOrdering !== false || enableGrouping && columnDef.enableGrouping !== false) && React.createElement(MRT_TableHeadCellGrabHandle, {
2340
- header: header,
2396
+ }, columnDefType === 'data' && (enableColumnOrdering && columnDef.enableColumnOrdering !== false || enableGrouping && columnDef.enableGrouping !== false) && React.createElement(MRT_GrabHandleButton, {
2341
2397
  ref: dragRef,
2342
2398
  tableInstance: tableInstance
2343
2399
  }), (enableColumnActions || columnDef.enableColumnActions) && columnDef.enableColumnActions !== false && columnDefType !== 'group' && React.createElement(MRT_ToggleColumnActionMenuButton, {
@@ -2364,19 +2420,22 @@ var MRT_DraggableTableHeadCell = function MRT_DraggableTableHeadCell(_ref) {
2364
2420
  var _getState = getState(),
2365
2421
  columnOrder = _getState.columnOrder;
2366
2422
 
2367
- var reorder = function reorder(item, newIndex) {
2368
- var currentIndex = item.index;
2369
- columnOrder.splice(newIndex, 0, columnOrder.splice(currentIndex, 1)[0]);
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]);
2370
2429
  setColumnOrder([].concat(columnOrder));
2371
2430
  };
2372
2431
 
2373
2432
  var _useDrop = useDrop({
2374
2433
  accept: 'header',
2375
- drop: function drop(item) {
2376
- return reorder(item, header.index);
2434
+ drop: function drop(movingHeader) {
2435
+ return reorder(movingHeader, header);
2377
2436
  }
2378
2437
  }),
2379
- drop = _useDrop[1];
2438
+ dropRef = _useDrop[1];
2380
2439
 
2381
2440
  var _useDrag = useDrag({
2382
2441
  collect: function collect(monitor) {
@@ -2390,15 +2449,15 @@ var MRT_DraggableTableHeadCell = function MRT_DraggableTableHeadCell(_ref) {
2390
2449
  type: 'header'
2391
2450
  }),
2392
2451
  isDragging = _useDrag[0].isDragging,
2393
- drag = _useDrag[1],
2394
- preview = _useDrag[2];
2452
+ dragRef = _useDrag[1],
2453
+ previewRef = _useDrag[2];
2395
2454
 
2396
2455
  return React.createElement(MRT_TableHeadCell, {
2397
- dragRef: drag,
2398
- dropRef: drop,
2456
+ dragRef: dragRef,
2457
+ dropRef: dropRef,
2399
2458
  header: header,
2400
2459
  isDragging: isDragging,
2401
- previewRef: preview,
2460
+ previewRef: previewRef,
2402
2461
  tableInstance: tableInstance
2403
2462
  });
2404
2463
  };
@@ -2544,6 +2603,8 @@ var MRT_CopyButton = function MRT_CopyButton(_ref) {
2544
2603
  var _tableInstance$option = tableInstance.options,
2545
2604
  localization = _tableInstance$option.localization,
2546
2605
  muiTableBodyCellCopyButtonProps = _tableInstance$option.muiTableBodyCellCopyButtonProps;
2606
+ var column = cell.column;
2607
+ var columnDef = column.columnDef;
2547
2608
 
2548
2609
  var _useState = useState(false),
2549
2610
  copied = _useState[0],
@@ -2561,10 +2622,10 @@ var MRT_CopyButton = function MRT_CopyButton(_ref) {
2561
2622
  cell: cell,
2562
2623
  tableInstance: tableInstance
2563
2624
  }) : muiTableBodyCellCopyButtonProps;
2564
- var mcTableBodyCellCopyButtonProps = cell.column.columnDef.muiTableBodyCellCopyButtonProps instanceof Function ? cell.column.columnDef.muiTableBodyCellCopyButtonProps({
2625
+ var mcTableBodyCellCopyButtonProps = columnDef.muiTableBodyCellCopyButtonProps instanceof Function ? columnDef.muiTableBodyCellCopyButtonProps({
2565
2626
  cell: cell,
2566
2627
  tableInstance: tableInstance
2567
- }) : cell.column.columnDef.muiTableBodyCellCopyButtonProps;
2628
+ }) : columnDef.muiTableBodyCellCopyButtonProps;
2568
2629
 
2569
2630
  var buttonProps = _extends({}, mTableBodyCellCopyButtonProps, mcTableBodyCellCopyButtonProps);
2570
2631
 
@@ -2600,7 +2661,7 @@ var MRT_CopyButton = function MRT_CopyButton(_ref) {
2600
2661
  };
2601
2662
 
2602
2663
  var MRT_TableBodyCell = function MRT_TableBodyCell(_ref) {
2603
- var _columnDef$minSize, _cell$column$columnDe, _cell$column$columnDe2, _row$subRows, _cell$column$columnDe3, _cell$column$columnDe4, _row$subRows$length, _row$subRows2;
2664
+ var _columnDef$minSize, _columnDef$Cell, _row$subRows, _columnDef$Cell2, _row$subRows$length, _row$subRows2;
2604
2665
 
2605
2666
  var cell = _ref.cell,
2606
2667
  enableHover = _ref.enableHover,
@@ -2625,7 +2686,8 @@ var MRT_TableBodyCell = function MRT_TableBodyCell(_ref) {
2625
2686
 
2626
2687
  var column = cell.column,
2627
2688
  row = cell.row;
2628
- var columnDef = column.columnDef;
2689
+ var columnDef = column.columnDef,
2690
+ columnDefType = column.columnDefType;
2629
2691
  var mTableCellBodyProps = muiTableBodyCellProps instanceof Function ? muiTableBodyCellProps({
2630
2692
  cell: cell,
2631
2693
  tableInstance: tableInstance
@@ -2638,8 +2700,8 @@ var MRT_TableBodyCell = function MRT_TableBodyCell(_ref) {
2638
2700
  var tableCellProps = _extends({}, mTableCellBodyProps, mcTableCellBodyProps);
2639
2701
 
2640
2702
  var skeletonWidth = useMemo(function () {
2641
- return column.columnDefType === 'display' ? column.getSize() / 2 : Math.random() * (column.getSize() - column.getSize() / 3) + column.getSize() / 3;
2642
- }, [column.columnDefType, column.getSize()]);
2703
+ return columnDefType === 'display' ? column.getSize() / 2 : Math.random() * (column.getSize() - column.getSize() / 3) + column.getSize() / 3;
2704
+ }, [columnDefType, column.getSize()]);
2643
2705
  var isEditable = (enableEditing || columnDef.enableEditing) && columnDef.enableEditing !== false;
2644
2706
  var isEditing = isEditable && (editingMode === 'table' || (currentEditingRow == null ? void 0 : currentEditingRow.id) === row.id || (currentEditingCell == null ? void 0 : currentEditingCell.id) === cell.id);
2645
2707
 
@@ -2685,7 +2747,7 @@ var MRT_TableBodyCell = function MRT_TableBodyCell(_ref) {
2685
2747
  boxShadow: getIsLastLeftPinnedColumn() ? "4px 0 4px -2px " + alpha(theme.palette.common.black, 0.1) : getIsFirstRightPinnedColumn() ? "-4px 0 4px -2px " + alpha(theme.palette.common.black, 0.1) : undefined,
2686
2748
  cursor: isEditable && editingMode === 'cell' ? 'pointer' : 'text',
2687
2749
  left: column.getIsPinned() === 'left' ? column.getStart('left') + "px" : undefined,
2688
- p: isDensePadding ? column.columnDefType === 'display' ? '0 0.5rem' : '0.5rem' : column.columnDefType === 'display' ? '0.5rem 0.75rem' : '1rem',
2750
+ p: isDensePadding ? columnDefType === 'display' ? '0 0.5rem' : '0.5rem' : columnDefType === 'display' ? '0.5rem 0.75rem' : '1rem',
2689
2751
  pl: column.id === 'mrt-expand' ? row.depth + (isDensePadding ? 0.5 : 0.75) + "rem" : undefined,
2690
2752
  position: column.getIsPinned() ? 'sticky' : 'relative',
2691
2753
  right: column.getIsPinned() === 'right' ? getTotalRight() + "px" : undefined,
@@ -2706,7 +2768,7 @@ var MRT_TableBodyCell = function MRT_TableBodyCell(_ref) {
2706
2768
  animation: "wave",
2707
2769
  height: 20,
2708
2770
  width: skeletonWidth
2709
- }, muiTableBodyCellSkeletonProps)) : column.columnDefType === 'display' ? columnDef.Cell == null ? void 0 : columnDef.Cell({
2771
+ }, muiTableBodyCellSkeletonProps)) : columnDefType === 'display' ? columnDef.Cell == null ? void 0 : columnDef.Cell({
2710
2772
  cell: cell,
2711
2773
  tableInstance: tableInstance
2712
2774
  }) : cell.getIsPlaceholder() || row.getIsGrouped() && column.id !== row.groupingColumnId ? null : cell.getIsAggregated() ? cell.renderAggregatedCell() : isEditing ? React.createElement(MRT_EditCellTextField, {
@@ -2715,13 +2777,13 @@ var MRT_TableBodyCell = function MRT_TableBodyCell(_ref) {
2715
2777
  }) : (enableClickToCopy || columnDef.enableClickToCopy) && columnDef.enableClickToCopy !== false ? React.createElement(React.Fragment, null, React.createElement(MRT_CopyButton, {
2716
2778
  cell: cell,
2717
2779
  tableInstance: tableInstance
2718
- }, React.createElement(React.Fragment, null, (_cell$column$columnDe = (_cell$column$columnDe2 = cell.column.columnDef) == null ? void 0 : _cell$column$columnDe2.Cell == null ? void 0 : _cell$column$columnDe2.Cell({
2780
+ }, React.createElement(React.Fragment, null, (_columnDef$Cell = columnDef == null ? void 0 : columnDef.Cell == null ? void 0 : columnDef.Cell({
2719
2781
  cell: cell,
2720
2782
  tableInstance: tableInstance
2721
- })) != null ? _cell$column$columnDe : cell.renderCell())), row.getIsGrouped() && React.createElement(React.Fragment, null, " (", (_row$subRows = row.subRows) == null ? void 0 : _row$subRows.length, ")")) : React.createElement(React.Fragment, null, (_cell$column$columnDe3 = (_cell$column$columnDe4 = cell.column.columnDef) == null ? void 0 : _cell$column$columnDe4.Cell == null ? void 0 : _cell$column$columnDe4.Cell({
2783
+ })) != null ? _columnDef$Cell : cell.renderCell())), row.getIsGrouped() && React.createElement(React.Fragment, null, " (", (_row$subRows = row.subRows) == null ? void 0 : _row$subRows.length, ")")) : React.createElement(React.Fragment, null, (_columnDef$Cell2 = columnDef == null ? void 0 : columnDef.Cell == null ? void 0 : columnDef.Cell({
2722
2784
  cell: cell,
2723
2785
  tableInstance: tableInstance
2724
- })) != null ? _cell$column$columnDe3 : cell.renderCell(), row.getIsGrouped() && React.createElement(React.Fragment, null, " (", (_row$subRows$length = (_row$subRows2 = row.subRows) == null ? void 0 : _row$subRows2.length) != null ? _row$subRows$length : '', ")"))));
2786
+ })) != null ? _columnDef$Cell2 : cell.renderCell(), row.getIsGrouped() && React.createElement(React.Fragment, null, " (", (_row$subRows$length = (_row$subRows2 = row.subRows) == null ? void 0 : _row$subRows2.length) != null ? _row$subRows$length : '', ")"))));
2725
2787
  };
2726
2788
 
2727
2789
  var MRT_TableDetailPanel = function MRT_TableDetailPanel(_ref) {
@@ -2843,7 +2905,8 @@ var MRT_TableFooterCell = function MRT_TableFooterCell(_ref) {
2843
2905
  isDensePadding = _getState.isDensePadding;
2844
2906
 
2845
2907
  var column = footer.column;
2846
- var columnDef = column.columnDef;
2908
+ var columnDef = column.columnDef,
2909
+ columnDefType = column.columnDefType;
2847
2910
  var mTableFooterCellProps = muiTableFooterCellProps instanceof Function ? muiTableFooterCellProps({
2848
2911
  column: column,
2849
2912
  tableInstance: tableInstance
@@ -2856,7 +2919,7 @@ var MRT_TableFooterCell = function MRT_TableFooterCell(_ref) {
2856
2919
  var tableCellProps = _extends({}, mTableFooterCellProps, mcTableFooterCellProps);
2857
2920
 
2858
2921
  return React.createElement(TableCell, Object.assign({
2859
- align: column.columnDefType === 'group' ? 'center' : 'left',
2922
+ align: columnDefType === 'group' ? 'center' : 'left',
2860
2923
  colSpan: footer.colSpan,
2861
2924
  variant: "head"
2862
2925
  }, tableCellProps, {
@@ -2886,8 +2949,8 @@ var MRT_TableFooterRow = function MRT_TableFooterRow(_ref) {
2886
2949
  tableInstance = _ref.tableInstance;
2887
2950
  var muiTableFooterRowProps = tableInstance.options.muiTableFooterRowProps; // if no content in row, skip row
2888
2951
 
2889
- if (!((_footerGroup$headers = footerGroup.headers) != null && _footerGroup$headers.some(function (h) {
2890
- return typeof h.column.columnDef.footer === 'string' && !!h.column.columnDef.footer || h.column.columnDef.Footer;
2952
+ if (!((_footerGroup$headers = footerGroup.headers) != null && _footerGroup$headers.some(function (header) {
2953
+ return typeof header.column.columnDef.footer === 'string' && !!header.column.columnDef.footer || header.column.columnDef.Footer;
2891
2954
  }))) return null;
2892
2955
  var tableRowProps = muiTableFooterRowProps instanceof Function ? muiTableFooterRowProps({
2893
2956
  footerGroup: footerGroup,
@@ -3078,7 +3141,7 @@ var createDisplayColumn = function createDisplayColumn(table, column) {
3078
3141
  };
3079
3142
 
3080
3143
  var MRT_TableRoot = function MRT_TableRoot(props) {
3081
- var _initialState$current, _initialState$current2, _initialState$isDense, _initialState$isFullS, _initialState$showFil, _initialState$showGlo, _initialState$paginat, _initialState$paginat2, _initialState$paginat3, _initialState$paginat4, _initialState$paginat5, _props$globalFilterFn, _props$state3, _props$state4;
3144
+ var _initialState$current, _initialState$current2, _initialState$isDense, _initialState$isFullS, _initialState$showFil, _initialState$showGlo, _props$globalFilterFn, _props$state3, _props$state4;
3082
3145
 
3083
3146
  var _useState = useState(props.idPrefix),
3084
3147
  idPrefix = _useState[0],
@@ -3089,9 +3152,18 @@ var MRT_TableRoot = function MRT_TableRoot(props) {
3089
3152
 
3090
3153
  return setIdPrefix((_props$idPrefix = props.idPrefix) != null ? _props$idPrefix : Math.random().toString(36).substring(2, 9));
3091
3154
  }, [props.idPrefix]);
3155
+ var showActionColumn = props.enableRowActions || props.enableEditing && props.editingMode === 'row';
3156
+ var showExpandColumn = props.enableExpanding || props.enableGrouping;
3092
3157
  var initialState = useMemo(function () {
3158
+ var _props$initialState, _initState$columnOrde;
3159
+
3160
+ 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) {
3162
+ return c.id;
3163
+ })).filter(Boolean) : [];
3164
+
3093
3165
  if (!props.enablePersistentState || !props.idPrefix) {
3094
- return props.initialState;
3166
+ return initState;
3095
3167
  }
3096
3168
 
3097
3169
  if (typeof window === 'undefined') {
@@ -3099,7 +3171,7 @@ var MRT_TableRoot = function MRT_TableRoot(props) {
3099
3171
  console.error('The MRT Persistent Table State feature is not supported if using SSR, but you can wrap your <MaterialReactTable /> in a MUI <NoSsr> tags to let it work');
3100
3172
  }
3101
3173
 
3102
- return props.initialState;
3174
+ return initState;
3103
3175
  }
3104
3176
 
3105
3177
  var storedState = props.persistentStateMode === 'localStorage' ? localStorage.getItem("mrt-" + idPrefix + "-table-state") : props.persistentStateMode === 'sessionStorage' ? sessionStorage.getItem("mrt-" + idPrefix + "-table-state") : '{}';
@@ -3108,11 +3180,11 @@ var MRT_TableRoot = function MRT_TableRoot(props) {
3108
3180
  var parsedState = JSON.parse(storedState);
3109
3181
 
3110
3182
  if (parsedState) {
3111
- return _extends({}, props.initialState, parsedState);
3183
+ return _extends({}, initState, parsedState);
3112
3184
  }
3113
3185
  }
3114
3186
 
3115
- return props.initialState;
3187
+ return initState;
3116
3188
  }, []);
3117
3189
 
3118
3190
  var _useState2 = useState((_initialState$current = initialState == null ? void 0 : initialState.currentEditingCell) != null ? _initialState$current : null),
@@ -3139,27 +3211,19 @@ var MRT_TableRoot = function MRT_TableRoot(props) {
3139
3211
  showGlobalFilter = _useState7[0],
3140
3212
  setShowGlobalFilter = _useState7[1];
3141
3213
 
3142
- var _useState8 = useState({
3143
- pageIndex: (_initialState$paginat = initialState == null ? void 0 : (_initialState$paginat2 = initialState.pagination) == null ? void 0 : _initialState$paginat2.pageIndex) != null ? _initialState$paginat : 0,
3144
- pageSize: (_initialState$paginat3 = initialState == null ? void 0 : (_initialState$paginat4 = initialState.pagination) == null ? void 0 : _initialState$paginat4.pageSize) != null ? _initialState$paginat3 : 10,
3145
- pageCount: initialState == null ? void 0 : (_initialState$paginat5 = initialState.pagination) == null ? void 0 : _initialState$paginat5.pageCount
3146
- }),
3147
- pagination = _useState8[0],
3148
- setPagination = _useState8[1];
3149
-
3150
- var _useState9 = useState(function () {
3214
+ var _useState8 = useState(function () {
3151
3215
  return Object.assign.apply(Object, [{}].concat(getAllLeafColumnDefs(props.columns).map(function (c) {
3152
3216
  var _ref, _c$filterFn, _initialState$current3, _c$filterSelectOption, _ref2;
3153
3217
 
3154
3218
  return _ref2 = {}, _ref2[c.id] = (_ref = (_c$filterFn = c.filterFn) != null ? _c$filterFn : initialState == null ? void 0 : (_initialState$current3 = initialState.currentFilterFns) == null ? void 0 : _initialState$current3[c.id]) != null ? _ref : !!((_c$filterSelectOption = c.filterSelectOptions) != null && _c$filterSelectOption.length) ? MRT_FILTER_OPTION.EQUALS : MRT_FILTER_OPTION.FUZZY, _ref2;
3155
3219
  })));
3156
3220
  }),
3157
- currentFilterFns = _useState9[0],
3158
- setCurrentFilterFns = _useState9[1];
3221
+ currentFilterFns = _useState8[0],
3222
+ setCurrentFilterFns = _useState8[1];
3159
3223
 
3160
- var _useState10 = useState((_props$globalFilterFn = props.globalFilterFn) != null ? _props$globalFilterFn : MRT_FILTER_OPTION.FUZZY),
3161
- currentGlobalFilterFn = _useState10[0],
3162
- setCurrentGlobalFilterFn = _useState10[1];
3224
+ var _useState9 = useState((_props$globalFilterFn = props.globalFilterFn) != null ? _props$globalFilterFn : MRT_FILTER_OPTION.FUZZY),
3225
+ currentGlobalFilterFn = _useState9[0],
3226
+ setCurrentGlobalFilterFn = _useState9[1];
3163
3227
 
3164
3228
  var table = useMemo(function () {
3165
3229
  return createTable();
@@ -3167,7 +3231,7 @@ var MRT_TableRoot = function MRT_TableRoot(props) {
3167
3231
  var displayColumns = useMemo(function () {
3168
3232
  var _props$localization, _props$localization2, _props$localization3, _props$localization5;
3169
3233
 
3170
- return [(props.enableRowActions || props.enableEditing && props.editingMode === 'row') && createDisplayColumn(table, {
3234
+ return [showActionColumn && createDisplayColumn(table, {
3171
3235
  Cell: function Cell(_ref3) {
3172
3236
  var cell = _ref3.cell;
3173
3237
  return React.createElement(MRT_ToggleRowActionMenuButton, {
@@ -3178,7 +3242,7 @@ var MRT_TableRoot = function MRT_TableRoot(props) {
3178
3242
  header: (_props$localization = props.localization) == null ? void 0 : _props$localization.actions,
3179
3243
  id: 'mrt-row-actions',
3180
3244
  size: 60
3181
- }), (props.enableExpanding || props.enableGrouping) && createDisplayColumn(table, {
3245
+ }), showExpandColumn && createDisplayColumn(table, {
3182
3246
  Cell: function Cell(_ref4) {
3183
3247
  var cell = _ref4.cell;
3184
3248
  return React.createElement(MRT_ExpandButton, {
@@ -3241,18 +3305,7 @@ var MRT_TableRoot = function MRT_TableRoot(props) {
3241
3305
  return _ref7 = {}, _ref7[c.id] = null, _ref7;
3242
3306
  })));
3243
3307
  }) : props.data;
3244
- }, [props.data, (_props$state3 = props.state) == null ? void 0 : _props$state3.isLoading, (_props$state4 = props.state) == null ? void 0 : _props$state4.showSkeletons]);
3245
-
3246
- var _useState11 = useState(function () {
3247
- var _initialState$columnO;
3248
-
3249
- return ((_initialState$columnO = initialState == null ? void 0 : initialState.columnOrder) != null ? _initialState$columnO : props.enableColumnOrdering) ? getAllLeafColumnDefs(columns).map(function (c) {
3250
- return c.id;
3251
- }) : [];
3252
- }),
3253
- columnOrder = _useState11[0],
3254
- setColumnOrder = _useState11[1]; //@ts-ignore
3255
-
3308
+ }, [props.data, (_props$state3 = props.state) == null ? void 0 : _props$state3.isLoading, (_props$state4 = props.state) == null ? void 0 : _props$state4.showSkeletons]); //@ts-ignore
3256
3309
 
3257
3310
  var tableInstance = _extends({}, useTableInstance(table, _extends({
3258
3311
  filterFns: defaultFilterFNs,
@@ -3267,13 +3320,7 @@ var MRT_TableRoot = function MRT_TableRoot(props) {
3267
3320
  return row == null ? void 0 : row.subRows;
3268
3321
  },
3269
3322
  //@ts-ignore
3270
- globalFilterFn: currentGlobalFilterFn,
3271
- onColumnOrderChange: setColumnOrder,
3272
- onPaginationChange: function onPaginationChange(updater) {
3273
- return setPagination(function (old) {
3274
- return functionalUpdate(updater, old);
3275
- });
3276
- }
3323
+ globalFilterFn: currentGlobalFilterFn
3277
3324
  }, props, {
3278
3325
  //@ts-ignore
3279
3326
  columns: columns,
@@ -3281,15 +3328,12 @@ var MRT_TableRoot = function MRT_TableRoot(props) {
3281
3328
  idPrefix: idPrefix,
3282
3329
  initialState: initialState,
3283
3330
  state: _extends({
3284
- columnOrder: columnOrder,
3285
3331
  currentEditingCell: currentEditingCell,
3286
3332
  currentEditingRow: currentEditingRow,
3287
3333
  currentFilterFns: currentFilterFns,
3288
3334
  currentGlobalFilterFn: currentGlobalFilterFn,
3289
3335
  isDensePadding: isDensePadding,
3290
3336
  isFullScreen: isFullScreen,
3291
- //@ts-ignore
3292
- pagination: pagination,
3293
3337
  showFilters: showFilters,
3294
3338
  showGlobalFilter: showGlobalFilter
3295
3339
  }, props.state)