material-react-table 0.13.2 → 0.13.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -631,6 +631,17 @@ var reorderColumn = function reorderColumn(movingColumn, receivingColumn, column
631
631
  columnOrder.splice(columnOrder.indexOf(receivingColumn.id), 0, columnOrder.splice(columnOrder.indexOf(movingColumn.id), 1)[0]);
632
632
  setColumnOrder([].concat(columnOrder));
633
633
  };
634
+ var getLeadingDisplayColumnIds = function getLeadingDisplayColumnIds(props) {
635
+ return [(props.positionActionsColumn === 'first' && props.enableRowActions || props.enableEditing && props.editingMode === 'row') && 'mrt-row-actions', (props.enableExpanding || props.enableGrouping) && 'mrt-expand', props.enableRowSelection && 'mrt-select', props.enableRowNumbers && 'mrt-row-numbers'].filter(Boolean);
636
+ };
637
+ var getTrailingDisplayColumnIds = function getTrailingDisplayColumnIds(props) {
638
+ return [(props.positionActionsColumn === 'last' && props.enableRowActions || props.enableEditing && props.editingMode === 'row') && 'mrt-row-actions'];
639
+ };
640
+ var getDefaultColumnOrderIds = function getDefaultColumnOrderIds(props) {
641
+ return [].concat(getLeadingDisplayColumnIds(props), getAllLeafColumnDefs(props.columns).map(function (c) {
642
+ return c.id;
643
+ }), getTrailingDisplayColumnIds(props)).filter(Boolean);
644
+ };
634
645
 
635
646
  var MRT_ShowHideColumnsMenuItems = function MRT_ShowHideColumnsMenuItems(_ref) {
636
647
  var _column$columns2;
@@ -816,7 +827,7 @@ var MRT_ShowHideColumnsMenu = function MRT_ShowHideColumnsMenu(_ref) {
816
827
  onClick: hideAllColumns
817
828
  }, localization.hideAll), !isSubMenu && enableColumnOrdering && React.createElement(Button, {
818
829
  onClick: function onClick() {
819
- return instance.resetColumnOrder();
830
+ return instance.setColumnOrder(getDefaultColumnOrderIds(instance.options));
820
831
  }
821
832
  }, localization.resetOrder), !isSubMenu && enablePinning && React.createElement(Button, {
822
833
  disabled: !getIsSomeColumnsPinned(),
@@ -3276,7 +3287,7 @@ var MRT_TablePaper = function MRT_TablePaper(_ref) {
3276
3287
  };
3277
3288
 
3278
3289
  var MRT_TableRoot = function MRT_TableRoot(props) {
3279
- var _initialState$current, _initialState$current2, _initialState$density, _initialState$isFullS, _initialState$showFil, _initialState$showGlo, _props$globalFilterFn, _props$state3, _props$state4, _props$onCurrentEditi, _props$onCurrentEditi2, _props$onCurrentFilte, _props$onCurrentGloba, _props$onDensityChang, _props$onIsFullScreen, _props$onShowFiltersC, _props$onShowGlobalFi;
3290
+ var _initialState$columnO, _initialState$current, _initialState$current2, _initialState$density, _initialState$isFullS, _initialState$showFil, _initialState$showGlo, _props$globalFilterFn, _props$state3, _props$state4, _props$onCurrentEditi, _props$onCurrentEditi2, _props$onCurrentFilte, _props$onCurrentGloba, _props$onDensityChang, _props$onIsFullScreen, _props$onShowFiltersC, _props$onShowGlobalFi;
3280
3291
 
3281
3292
  var _useState = useState(props.tableId),
3282
3293
  tableId = _useState[0],
@@ -3287,15 +3298,11 @@ var MRT_TableRoot = function MRT_TableRoot(props) {
3287
3298
 
3288
3299
  return setIdPrefix((_props$tableId = props.tableId) != null ? _props$tableId : Math.random().toString(36).substring(2, 9));
3289
3300
  }, [props.tableId]);
3290
- var showActionColumn = props.enableRowActions || props.enableEditing && props.editingMode === 'row';
3291
- var showExpandColumn = props.enableExpanding || props.enableGrouping;
3292
3301
  var initialState = useMemo(function () {
3293
3302
  var _props$initialState, _initState$columnOrde;
3294
3303
 
3295
3304
  var initState = (_props$initialState = props.initialState) != null ? _props$initialState : {};
3296
- 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) {
3297
- return c.id;
3298
- })).filter(Boolean) : [];
3305
+ initState.columnOrder = (_initState$columnOrde = initState.columnOrder) != null ? _initState$columnOrde : getDefaultColumnOrderIds(props);
3299
3306
 
3300
3307
  if (!props.enablePersistentState || !props.tableId) {
3301
3308
  return initState;
@@ -3322,43 +3329,47 @@ var MRT_TableRoot = function MRT_TableRoot(props) {
3322
3329
  return initState;
3323
3330
  }, []);
3324
3331
 
3325
- var _useState2 = useState((_initialState$current = initialState == null ? void 0 : initialState.currentEditingCell) != null ? _initialState$current : null),
3326
- currentEditingCell = _useState2[0],
3327
- setCurrentEditingCell = _useState2[1];
3332
+ var _useState2 = useState((_initialState$columnO = initialState.columnOrder) != null ? _initialState$columnO : []),
3333
+ columnOrder = _useState2[0],
3334
+ setColumnOrder = _useState2[1];
3335
+
3336
+ var _useState3 = useState((_initialState$current = initialState == null ? void 0 : initialState.currentEditingCell) != null ? _initialState$current : null),
3337
+ currentEditingCell = _useState3[0],
3338
+ setCurrentEditingCell = _useState3[1];
3328
3339
 
3329
- var _useState3 = useState((_initialState$current2 = initialState == null ? void 0 : initialState.currentEditingRow) != null ? _initialState$current2 : null),
3330
- currentEditingRow = _useState3[0],
3331
- setCurrentEditingRow = _useState3[1];
3340
+ var _useState4 = useState((_initialState$current2 = initialState == null ? void 0 : initialState.currentEditingRow) != null ? _initialState$current2 : null),
3341
+ currentEditingRow = _useState4[0],
3342
+ setCurrentEditingRow = _useState4[1];
3332
3343
 
3333
- var _useState4 = useState((_initialState$density = initialState == null ? void 0 : initialState.density) != null ? _initialState$density : 'comfortable'),
3334
- density = _useState4[0],
3335
- setDensity = _useState4[1];
3344
+ var _useState5 = useState((_initialState$density = initialState == null ? void 0 : initialState.density) != null ? _initialState$density : 'comfortable'),
3345
+ density = _useState5[0],
3346
+ setDensity = _useState5[1];
3336
3347
 
3337
- var _useState5 = useState((_initialState$isFullS = initialState == null ? void 0 : initialState.isFullScreen) != null ? _initialState$isFullS : false),
3338
- isFullScreen = _useState5[0],
3339
- setIsFullScreen = _useState5[1];
3348
+ var _useState6 = useState((_initialState$isFullS = initialState == null ? void 0 : initialState.isFullScreen) != null ? _initialState$isFullS : false),
3349
+ isFullScreen = _useState6[0],
3350
+ setIsFullScreen = _useState6[1];
3340
3351
 
3341
- var _useState6 = useState((_initialState$showFil = initialState == null ? void 0 : initialState.showFilters) != null ? _initialState$showFil : false),
3342
- showFilters = _useState6[0],
3343
- setShowFilters = _useState6[1];
3352
+ var _useState7 = useState((_initialState$showFil = initialState == null ? void 0 : initialState.showFilters) != null ? _initialState$showFil : false),
3353
+ showFilters = _useState7[0],
3354
+ setShowFilters = _useState7[1];
3344
3355
 
3345
- var _useState7 = useState((_initialState$showGlo = initialState == null ? void 0 : initialState.showGlobalFilter) != null ? _initialState$showGlo : false),
3346
- showGlobalFilter = _useState7[0],
3347
- setShowGlobalFilter = _useState7[1];
3356
+ var _useState8 = useState((_initialState$showGlo = initialState == null ? void 0 : initialState.showGlobalFilter) != null ? _initialState$showGlo : false),
3357
+ showGlobalFilter = _useState8[0],
3358
+ setShowGlobalFilter = _useState8[1];
3348
3359
 
3349
- var _useState8 = useState(function () {
3360
+ var _useState9 = useState(function () {
3350
3361
  return Object.assign.apply(Object, [{}].concat(getAllLeafColumnDefs(props.columns).map(function (c) {
3351
3362
  var _ref, _c$filterFn, _initialState$current3, _c$filterSelectOption, _ref2;
3352
3363
 
3353
3364
  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) ? 'equals' : 'fuzzy', _ref2;
3354
3365
  })));
3355
3366
  }),
3356
- currentFilterFns = _useState8[0],
3357
- setCurrentFilterFns = _useState8[1];
3367
+ currentFilterFns = _useState9[0],
3368
+ setCurrentFilterFns = _useState9[1];
3358
3369
 
3359
- var _useState9 = useState((_props$globalFilterFn = props.globalFilterFn) != null ? _props$globalFilterFn : 'fuzzy'),
3360
- currentGlobalFilterFn = _useState9[0],
3361
- setCurrentGlobalFilterFn = _useState9[1];
3370
+ var _useState10 = useState((_props$globalFilterFn = props.globalFilterFn) != null ? _props$globalFilterFn : 'fuzzy'),
3371
+ currentGlobalFilterFn = _useState10[0],
3372
+ setCurrentGlobalFilterFn = _useState10[1];
3362
3373
 
3363
3374
  var table = useMemo(function () {
3364
3375
  return (// @ts-ignore
@@ -3375,16 +3386,14 @@ var MRT_TableRoot = function MRT_TableRoot(props) {
3375
3386
  getSubRows: function getSubRows(row) {
3376
3387
  return row == null ? void 0 : row.subRows;
3377
3388
  },
3378
- tableId: tableId,
3379
- initialState: initialState
3389
+ tableId: tableId
3380
3390
  })
3381
3391
  );
3382
3392
  }, []);
3383
-
3384
- var _useMemo = useMemo(function () {
3393
+ var displayColumns = useMemo(function () {
3385
3394
  var _props$localization, _props$localization2, _props$localization3, _props$localization5;
3386
3395
 
3387
- var leadingDisplayColumns = [showActionColumn && createDisplayColumn(table, {
3396
+ return [columnOrder.includes('mrt-row-actions') && createDisplayColumn(table, {
3388
3397
  Cell: function Cell(_ref3) {
3389
3398
  var cell = _ref3.cell;
3390
3399
  return React.createElement(MRT_ToggleRowActionMenuButton, {
@@ -3397,7 +3406,7 @@ var MRT_TableRoot = function MRT_TableRoot(props) {
3397
3406
  muiTableBodyCellProps: props.muiTableBodyCellProps,
3398
3407
  muiTableHeadCellProps: props.muiTableHeadCellProps,
3399
3408
  size: 70
3400
- }), showExpandColumn && createDisplayColumn(table, {
3409
+ }), columnOrder.includes('mrt-expand') && createDisplayColumn(table, {
3401
3410
  Cell: function Cell(_ref4) {
3402
3411
  var cell = _ref4.cell;
3403
3412
  return React.createElement(MRT_ExpandButton, {
@@ -3415,7 +3424,7 @@ var MRT_TableRoot = function MRT_TableRoot(props) {
3415
3424
  muiTableBodyCellProps: props.muiTableBodyCellProps,
3416
3425
  muiTableHeadCellProps: props.muiTableHeadCellProps,
3417
3426
  size: 50
3418
- }), props.enableRowSelection && createDisplayColumn(table, {
3427
+ }), columnOrder.includes('mrt-select') && createDisplayColumn(table, {
3419
3428
  Cell: function Cell(_ref5) {
3420
3429
  var cell = _ref5.cell;
3421
3430
  return React.createElement(MRT_SelectCheckbox, {
@@ -3434,7 +3443,7 @@ var MRT_TableRoot = function MRT_TableRoot(props) {
3434
3443
  muiTableBodyCellProps: props.muiTableBodyCellProps,
3435
3444
  muiTableHeadCellProps: props.muiTableHeadCellProps,
3436
3445
  size: 50
3437
- }), props.enableRowNumbers && createDisplayColumn(table, {
3446
+ }), columnOrder.includes('mrt-row-numbers') && createDisplayColumn(table, {
3438
3447
  Cell: function Cell(_ref6) {
3439
3448
  var cell = _ref6.cell;
3440
3449
  return cell.row.index + 1;
@@ -3450,23 +3459,11 @@ var MRT_TableRoot = function MRT_TableRoot(props) {
3450
3459
  muiTableHeadCellProps: props.muiTableHeadCellProps,
3451
3460
  size: 50
3452
3461
  })].filter(Boolean);
3453
- var trailingDisplayColumns = [];
3454
-
3455
- if (props.enableRowActions && props.positionActionsColumn === 'last') {
3456
- trailingDisplayColumns.push.apply(trailingDisplayColumns, leadingDisplayColumns.splice(leadingDisplayColumns.findIndex(function (col) {
3457
- return col.id === 'mrt-row-actions';
3458
- }), 1));
3459
- }
3460
-
3461
- return [leadingDisplayColumns, trailingDisplayColumns];
3462
- }, [props.editingMode, props.enableEditing, props.enableExpandAll, props.enableExpanding, props.enableGrouping, props.enableRowActions, props.enableRowNumbers, props.enableRowSelection, props.enableSelectAll, props.localization, props.muiTableBodyCellProps, props.muiTableHeadCellProps, props.positionActionsColumn, table]),
3463
- leadingDisplayColumns = _useMemo[0],
3464
- trailingDisplayColumns = _useMemo[1];
3465
-
3462
+ }, [columnOrder, props.editingMode, props.enableEditing, props.enableExpandAll, props.enableExpanding, props.enableGrouping, props.enableRowActions, props.enableRowNumbers, props.enableRowSelection, props.enableSelectAll, props.localization, props.muiTableBodyCellProps, props.muiTableHeadCellProps, props.positionActionsColumn, table]);
3466
3463
  var columns = useMemo(function () {
3467
- return [].concat(leadingDisplayColumns, props.columns.map(function (column) {
3464
+ return [].concat(displayColumns, props.columns.map(function (column) {
3468
3465
  return column.columns ? createGroup(table, column, currentFilterFns) : createDataColumn(table, column, currentFilterFns);
3469
- }), trailingDisplayColumns);
3466
+ }));
3470
3467
  }, [table, props.columns, currentFilterFns]);
3471
3468
  var data = useMemo(function () {
3472
3469
  var _props$state, _props$state2;
@@ -3480,13 +3477,17 @@ var MRT_TableRoot = function MRT_TableRoot(props) {
3480
3477
  }) : props.data;
3481
3478
  }, [props.data, (_props$state3 = props.state) == null ? void 0 : _props$state3.isLoading, (_props$state4 = props.state) == null ? void 0 : _props$state4.showSkeletons]); //@ts-ignore
3482
3479
 
3483
- var instance = _extends({}, useTableInstance(table, _extends({}, props, {
3480
+ var instance = _extends({}, useTableInstance(table, _extends({
3481
+ onColumnOrderChange: setColumnOrder
3482
+ }, props, {
3484
3483
  //@ts-ignore
3485
3484
  columns: columns,
3486
3485
  data: data,
3487
3486
  //@ts-ignore
3488
3487
  globalFilterFn: currentGlobalFilterFn,
3488
+ initialState: initialState,
3489
3489
  state: _extends({
3490
+ columnOrder: columnOrder,
3490
3491
  currentEditingCell: currentEditingCell,
3491
3492
  currentEditingRow: currentEditingRow,
3492
3493
  currentFilterFns: currentFilterFns,
@@ -3547,7 +3548,7 @@ var MRT_TableRoot = function MRT_TableRoot(props) {
3547
3548
  }));
3548
3549
  };
3549
3550
 
3550
- var _excluded$5 = ["autoResetExpanded", "columnResizeMode", "defaultColumn", "editingMode", "enableColumnActions", "enableColumnFilters", "enableColumnOrdering", "enableColumnResizing", "enableDensityToggle", "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", "rowNumberMode", "selectAllMode"];
3551
+ var _excluded$5 = ["autoResetExpanded", "columnResizeMode", "defaultColumn", "editingMode", "enableColumnActions", "enableColumnFilters", "enableColumnOrdering", "enableColumnResizing", "enableDensityToggle", "enableExpandAll", "enableFilters", "enableFullScreenToggle", "enableGlobalFilter", "enableGrouping", "enableHiding", "enableMultiRowSelection", "enablePagination", "enablePinning", "enableRowSelection", "enableSelectAll", "enableSorting", "enableStickyHeader", "enableTableFooter", "enableTableHead", "enableToolbarBottom", "enableToolbarInternalActions", "enableToolbarTop", "icons", "localization", "persistentStateMode", "positionActionsColumn", "positionGlobalFilter", "positionPagination", "positionToolbarActions", "positionToolbarAlertBanner", "rowNumberMode", "selectAllMode"];
3551
3552
  var MaterialReactTable = (function (_ref) {
3552
3553
  var _ref$autoResetExpande = _ref.autoResetExpanded,
3553
3554
  autoResetExpanded = _ref$autoResetExpande === void 0 ? false : _ref$autoResetExpande,
@@ -3589,6 +3590,8 @@ var MaterialReactTable = (function (_ref) {
3589
3590
  enablePagination = _ref$enablePagination === void 0 ? true : _ref$enablePagination,
3590
3591
  _ref$enablePinning = _ref.enablePinning,
3591
3592
  enablePinning = _ref$enablePinning === void 0 ? false : _ref$enablePinning,
3593
+ _ref$enableRowSelecti = _ref.enableRowSelection,
3594
+ enableRowSelection = _ref$enableRowSelecti === void 0 ? false : _ref$enableRowSelecti,
3592
3595
  _ref$enableSelectAll = _ref.enableSelectAll,
3593
3596
  enableSelectAll = _ref$enableSelectAll === void 0 ? true : _ref$enableSelectAll,
3594
3597
  _ref$enableSorting = _ref.enableSorting,
@@ -3611,10 +3614,10 @@ var MaterialReactTable = (function (_ref) {
3611
3614
  persistentStateMode = _ref$persistentStateM === void 0 ? 'sessionStorage' : _ref$persistentStateM,
3612
3615
  _ref$positionActionsC = _ref.positionActionsColumn,
3613
3616
  positionActionsColumn = _ref$positionActionsC === void 0 ? 'first' : _ref$positionActionsC,
3614
- _ref$positionPaginati = _ref.positionPagination,
3615
- positionPagination = _ref$positionPaginati === void 0 ? 'bottom' : _ref$positionPaginati,
3616
3617
  _ref$positionGlobalFi = _ref.positionGlobalFilter,
3617
3618
  positionGlobalFilter = _ref$positionGlobalFi === void 0 ? 'right' : _ref$positionGlobalFi,
3619
+ _ref$positionPaginati = _ref.positionPagination,
3620
+ positionPagination = _ref$positionPaginati === void 0 ? 'bottom' : _ref$positionPaginati,
3618
3621
  _ref$positionToolbarA = _ref.positionToolbarActions,
3619
3622
  positionToolbarActions = _ref$positionToolbarA === void 0 ? 'top' : _ref$positionToolbarA,
3620
3623
  _ref$positionToolbarA2 = _ref.positionToolbarAlertBanner,
@@ -3644,6 +3647,7 @@ var MaterialReactTable = (function (_ref) {
3644
3647
  enableMultiRowSelection: enableMultiRowSelection,
3645
3648
  enablePagination: enablePagination,
3646
3649
  enablePinning: enablePinning,
3650
+ enableRowSelection: enableRowSelection,
3647
3651
  enableSelectAll: enableSelectAll,
3648
3652
  enableSorting: enableSorting,
3649
3653
  enableStickyHeader: enableStickyHeader,