material-react-table 1.6.1 → 1.6.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.
package/dist/cjs/index.js CHANGED
@@ -1126,11 +1126,12 @@ const MRT_SelectCheckbox = ({ row, selectAll, table }) => {
1126
1126
  : muiSelectCheckboxProps instanceof Function
1127
1127
  ? muiSelectCheckboxProps({ row, table })
1128
1128
  : muiSelectCheckboxProps;
1129
- const commonProps = Object.assign(Object.assign({ checked: selectAll
1130
- ? selectAllMode === 'page'
1131
- ? table.getIsAllPageRowsSelected()
1132
- : table.getIsAllRowsSelected()
1133
- : row === null || row === void 0 ? void 0 : row.getIsSelected(), disabled: isLoading, inputProps: {
1129
+ const allRowsSelected = selectAll
1130
+ ? selectAllMode === 'page'
1131
+ ? table.getIsAllPageRowsSelected()
1132
+ : table.getIsAllRowsSelected()
1133
+ : undefined;
1134
+ const commonProps = Object.assign(Object.assign({ checked: selectAll ? allRowsSelected : row === null || row === void 0 ? void 0 : row.getIsSelected(), disabled: isLoading || (row && !row.getCanSelect()), inputProps: {
1134
1135
  'aria-label': selectAll
1135
1136
  ? localization.toggleSelectAll
1136
1137
  : localization.toggleSelectRow,
@@ -1148,10 +1149,7 @@ const MRT_SelectCheckbox = ({ row, selectAll, table }) => {
1148
1149
  return (React__default["default"].createElement(Tooltip__default["default"], { arrow: true, enterDelay: 1000, enterNextDelay: 1000, title: (_a = checkboxProps === null || checkboxProps === void 0 ? void 0 : checkboxProps.title) !== null && _a !== void 0 ? _a : (selectAll
1149
1150
  ? localization.toggleSelectAll
1150
1151
  : localization.toggleSelectRow) }, enableMultiRowSelection === false ? (React__default["default"].createElement(Radio__default["default"], Object.assign({}, commonProps))) : (React__default["default"].createElement(Checkbox__default["default"], Object.assign({ indeterminate: selectAll
1151
- ? table.getIsSomeRowsSelected() &&
1152
- !(selectAllMode === 'page'
1153
- ? table.getIsAllPageRowsSelected()
1154
- : table.getIsAllRowsSelected())
1152
+ ? table.getIsSomeRowsSelected() && !allRowsSelected
1155
1153
  : row === null || row === void 0 ? void 0 : row.getIsSomeSelected() }, commonProps)))));
1156
1154
  };
1157
1155
 
@@ -2506,8 +2504,8 @@ const Memo_MRT_TableBodyRow = React.memo(MRT_TableBodyRow, (prev, next) => prev.
2506
2504
 
2507
2505
  const MRT_TableBody = ({ columnVirtualizer, table, virtualColumns, virtualPaddingLeft, virtualPaddingRight, }) => {
2508
2506
  var _a, _b, _c;
2509
- const { getRowModel, getPrePaginationRowModel, getState, options: { enableGlobalFilterRankedResults, enablePagination, enableRowVirtualization, layoutMode, localization, manualFiltering, manualPagination, manualSorting, memoMode, muiTableBodyProps, rowVirtualizerInstanceRef, rowVirtualizerProps, virtualizerInstanceRef, virtualizerProps, }, refs: { tableContainerRef, tablePaperRef }, } = table;
2510
- const { columnFilters, density, globalFilter, pagination, sorting } = getState();
2507
+ const { getRowModel, getPrePaginationRowModel, getState, options: { enableGlobalFilterRankedResults, enablePagination, enableRowVirtualization, layoutMode, localization, manualExpanding, manualFiltering, manualGrouping, manualPagination, manualSorting, memoMode, muiTableBodyProps, rowVirtualizerInstanceRef, rowVirtualizerProps, virtualizerInstanceRef, virtualizerProps, }, refs: { tableContainerRef, tablePaperRef }, } = table;
2508
+ const { columnFilters, density, expanded, globalFilter, globalFilterFn, pagination, sorting, } = getState();
2511
2509
  const tableBodyProps = muiTableBodyProps instanceof Function
2512
2510
  ? muiTableBodyProps({ table })
2513
2511
  : muiTableBodyProps;
@@ -2517,26 +2515,37 @@ const MRT_TableBody = ({ columnVirtualizer, table, virtualColumns, virtualPaddin
2517
2515
  const vProps = rowVirtualizerProps instanceof Function
2518
2516
  ? rowVirtualizerProps({ table })
2519
2517
  : rowVirtualizerProps;
2518
+ const shouldRankResults = React.useMemo(() => !manualExpanding &&
2519
+ !manualFiltering &&
2520
+ !manualGrouping &&
2521
+ !manualSorting &&
2522
+ enableGlobalFilterRankedResults &&
2523
+ globalFilter &&
2524
+ globalFilterFn === 'fuzzy' &&
2525
+ expanded !== true &&
2526
+ !Object.values(sorting).some(Boolean) &&
2527
+ !Object.values(expanded).some(Boolean), [
2528
+ enableGlobalFilterRankedResults,
2529
+ expanded,
2530
+ globalFilter,
2531
+ manualExpanding,
2532
+ manualFiltering,
2533
+ manualGrouping,
2534
+ manualSorting,
2535
+ sorting,
2536
+ ]);
2520
2537
  const rows = React.useMemo(() => {
2521
- if (enableGlobalFilterRankedResults &&
2522
- globalFilter &&
2523
- !manualFiltering &&
2524
- !manualSorting &&
2525
- !Object.values(sorting).some(Boolean)) {
2526
- const rankedRows = getPrePaginationRowModel().rows.sort((a, b) => rankGlobalFuzzy(a, b));
2527
- if (enablePagination && !manualPagination) {
2528
- const start = pagination.pageIndex * pagination.pageSize;
2529
- return rankedRows.slice(start, start + pagination.pageSize);
2530
- }
2531
- return rankedRows;
2538
+ if (!shouldRankResults)
2539
+ return getRowModel().rows;
2540
+ const rankedRows = getPrePaginationRowModel().rows.sort((a, b) => rankGlobalFuzzy(a, b));
2541
+ if (enablePagination && !manualPagination) {
2542
+ const start = pagination.pageIndex * pagination.pageSize;
2543
+ return rankedRows.slice(start, start + pagination.pageSize);
2532
2544
  }
2533
- return getRowModel().rows;
2545
+ return rankedRows;
2534
2546
  }, [
2535
- enableGlobalFilterRankedResults,
2536
- (enableGlobalFilterRankedResults && globalFilter) || !enablePagination
2537
- ? getPrePaginationRowModel().rows
2538
- : getRowModel().rows,
2539
- globalFilter,
2547
+ shouldRankResults,
2548
+ shouldRankResults ? getPrePaginationRowModel().rows : getRowModel().rows,
2540
2549
  pagination.pageIndex,
2541
2550
  pagination.pageSize,
2542
2551
  ]);