material-react-table 0.14.6 → 0.15.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.
@@ -168,7 +168,7 @@ var MRT_ExpandAllButton = function MRT_ExpandAllButton(_ref) {
168
168
  enterDelay: 1000,
169
169
  enterNextDelay: 1000,
170
170
  title: localization.expandAll
171
- }, React.createElement(IconButton, Object.assign({
171
+ }, React.createElement("span", null, React.createElement(IconButton, Object.assign({
172
172
  "aria-label": localization.expandAll,
173
173
  disabled: !getCanSomeRowsExpand() && !renderDetailPanel,
174
174
  onClick: function onClick() {
@@ -184,7 +184,7 @@ var MRT_ExpandAllButton = function MRT_ExpandAllButton(_ref) {
184
184
  transform: "rotate(" + (getIsAllRowsExpanded() ? -180 : getIsSomeRowsExpanded() ? -90 : 0) + "deg)",
185
185
  transition: 'transform 0.2s'
186
186
  }
187
- })));
187
+ }))));
188
188
  };
189
189
 
190
190
  var MRT_ExpandButton = function MRT_ExpandButton(_ref) {
@@ -220,7 +220,7 @@ var MRT_ExpandButton = function MRT_ExpandButton(_ref) {
220
220
  enterDelay: 1000,
221
221
  enterNextDelay: 1000,
222
222
  title: localization.expand
223
- }, React.createElement(IconButton, Object.assign({
223
+ }, React.createElement("span", null, React.createElement(IconButton, Object.assign({
224
224
  "aria-label": localization.expand,
225
225
  disabled: !row.getCanExpand() && !renderDetailPanel,
226
226
  onClick: handleToggleExpand
@@ -234,7 +234,7 @@ var MRT_ExpandButton = function MRT_ExpandButton(_ref) {
234
234
  transform: "rotate(" + (!row.getCanExpand() && !renderDetailPanel ? -90 : row.getIsExpanded() ? -180 : 0) + "deg)",
235
235
  transition: 'transform 0.2s'
236
236
  }
237
- })));
237
+ }))));
238
238
  };
239
239
 
240
240
  var fuzzy = function fuzzy(row, columnId, filterValue, addMeta) {
@@ -3045,6 +3045,28 @@ var MRT_TableBodyRow = function MRT_TableBodyRow(_ref) {
3045
3045
  }));
3046
3046
  };
3047
3047
 
3048
+ var fuzzy$1 = function fuzzy(rowA, rowB, columnId) {
3049
+ var dir = 0;
3050
+
3051
+ if (rowA.columnFiltersMeta[columnId]) {
3052
+ dir = compareItems(rowA.columnFiltersMeta[columnId], rowB.columnFiltersMeta[columnId]);
3053
+ } // Provide a fallback for when the item ranks are equal
3054
+
3055
+
3056
+ return dir === 0 ? sortingFns.alphanumeric(rowA, rowB, columnId) : dir;
3057
+ };
3058
+
3059
+ var MRT_SortingFns = {
3060
+ fuzzy: fuzzy$1
3061
+ };
3062
+ var rankGlobalFuzzy = function rankGlobalFuzzy(rowA, rowB) {
3063
+ return Math.max.apply(Math, Object.values(rowB.columnFiltersMeta).map(function (v) {
3064
+ return v.rank;
3065
+ })) - Math.max.apply(Math, Object.values(rowA.columnFiltersMeta).map(function (v) {
3066
+ return v.rank;
3067
+ }));
3068
+ };
3069
+
3048
3070
  var MRT_TableBody = function MRT_TableBody(_ref) {
3049
3071
  var instance = _ref.instance,
3050
3072
  tableContainerRef = _ref.tableContainerRef;
@@ -3052,20 +3074,37 @@ var MRT_TableBody = function MRT_TableBody(_ref) {
3052
3074
  getPrePaginationRowModel = instance.getPrePaginationRowModel,
3053
3075
  getState = instance.getState,
3054
3076
  _instance$options = instance.options,
3077
+ enableGlobalFilterRankedResults = _instance$options.enableGlobalFilterRankedResults,
3055
3078
  enablePagination = _instance$options.enablePagination,
3056
3079
  enableRowVirtualization = _instance$options.enableRowVirtualization,
3057
3080
  muiTableBodyProps = _instance$options.muiTableBodyProps,
3058
3081
  virtualizerProps = _instance$options.virtualizerProps;
3059
3082
 
3060
3083
  var _getState = getState(),
3061
- density = _getState.density;
3084
+ density = _getState.density,
3085
+ globalFilter = _getState.globalFilter,
3086
+ pagination = _getState.pagination;
3062
3087
 
3063
3088
  var tableBodyProps = muiTableBodyProps instanceof Function ? muiTableBodyProps({
3064
3089
  instance: instance
3065
3090
  }) : muiTableBodyProps;
3066
- var rows = enablePagination ? getPaginationRowModel().rows : getPrePaginationRowModel().rows;
3091
+ var rows = useMemo(function () {
3092
+ if (enableGlobalFilterRankedResults && globalFilter) {
3093
+ var rankedRows = getPrePaginationRowModel().rows.sort(function (a, b) {
3094
+ return rankGlobalFuzzy(a, b);
3095
+ });
3096
+
3097
+ if (enablePagination) {
3098
+ return rankedRows.slice(0, pagination.pageSize);
3099
+ }
3100
+
3101
+ return rankedRows;
3102
+ }
3103
+
3104
+ return enablePagination ? getPaginationRowModel().rows : getPrePaginationRowModel().rows;
3105
+ }, [enableGlobalFilterRankedResults, enableGlobalFilterRankedResults && globalFilter || !enablePagination ? getPrePaginationRowModel().rows : getPaginationRowModel().rows, globalFilter]);
3067
3106
  var rowVirtualizer = enableRowVirtualization ? useVirtual(_extends({
3068
- overscan: density === 'compact' ? 15 : 5,
3107
+ overscan: density === 'compact' ? 20 : 10,
3069
3108
  size: rows.length,
3070
3109
  parentRef: tableContainerRef
3071
3110
  }, virtualizerProps)) : {};
@@ -3306,21 +3345,6 @@ var MRT_TablePaper = function MRT_TablePaper(_ref) {
3306
3345
  })));
3307
3346
  };
3308
3347
 
3309
- var fuzzy$1 = function fuzzy(rowA, rowB, columnId) {
3310
- var dir = 0;
3311
-
3312
- if (rowA.columnFiltersMeta[columnId]) {
3313
- dir = compareItems(rowA.columnFiltersMeta[columnId], rowB.columnFiltersMeta[columnId]);
3314
- } // Provide a fallback for when the item ranks are equal
3315
-
3316
-
3317
- return dir === 0 ? sortingFns.alphanumeric(rowA, rowB, columnId) : dir;
3318
- };
3319
-
3320
- var MRT_SortingFns = {
3321
- fuzzy: fuzzy$1
3322
- };
3323
-
3324
3348
  var MRT_TableRoot = function MRT_TableRoot(props) {
3325
3349
  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;
3326
3350
 
@@ -3583,7 +3607,7 @@ var MRT_TableRoot = function MRT_TableRoot(props) {
3583
3607
  }));
3584
3608
  };
3585
3609
 
3586
- var _excluded$5 = ["autoResetExpanded", "columnResizeMode", "defaultColumn", "editingMode", "enableColumnActions", "enableColumnFilterChangeMode", "enableColumnFilters", "enableColumnOrdering", "enableColumnResizing", "enableDensityToggle", "enableExpandAll", "enableFilters", "enableFullScreenToggle", "enableGlobalFilter", "enableGlobalFilterChangeMode", "enableGrouping", "enableHiding", "enableMultiRowSelection", "enablePagination", "enablePinning", "enableRowSelection", "enableSelectAll", "enableSorting", "enableStickyHeader", "enableTableFooter", "enableTableHead", "enableToolbarBottom", "enableToolbarInternalActions", "enableToolbarTop", "icons", "localization", "persistentStateMode", "positionActionsColumn", "positionGlobalFilter", "positionPagination", "positionToolbarAlertBanner", "rowNumberMode", "selectAllMode"];
3610
+ var _excluded$5 = ["autoResetExpanded", "columnResizeMode", "defaultColumn", "editingMode", "enableColumnActions", "enableColumnFilterChangeMode", "enableColumnFilters", "enableColumnOrdering", "enableColumnResizing", "enableDensityToggle", "enableExpandAll", "enableFilters", "enableFullScreenToggle", "enableGlobalFilter", "enableGlobalFilterChangeMode", "enableGlobalFilterRankedResults", "enableGrouping", "enableHiding", "enableMultiRowSelection", "enableMultiSort", "enablePagination", "enablePinning", "enableRowSelection", "enableSelectAll", "enableSorting", "enableStickyHeader", "enableTableFooter", "enableTableHead", "enableToolbarBottom", "enableToolbarInternalActions", "enableToolbarTop", "icons", "localization", "persistentStateMode", "positionActionsColumn", "positionGlobalFilter", "positionPagination", "positionToolbarAlertBanner", "rowNumberMode", "selectAllMode"];
3587
3611
  var MaterialReactTable = (function (_ref) {
3588
3612
  var _ref$autoResetExpande = _ref.autoResetExpanded,
3589
3613
  autoResetExpanded = _ref$autoResetExpande === void 0 ? false : _ref$autoResetExpande,
@@ -3619,12 +3643,16 @@ var MaterialReactTable = (function (_ref) {
3619
3643
  enableGlobalFilter = _ref$enableGlobalFilt === void 0 ? true : _ref$enableGlobalFilt,
3620
3644
  _ref$enableGlobalFilt2 = _ref.enableGlobalFilterChangeMode,
3621
3645
  enableGlobalFilterChangeMode = _ref$enableGlobalFilt2 === void 0 ? true : _ref$enableGlobalFilt2,
3646
+ _ref$enableGlobalFilt3 = _ref.enableGlobalFilterRankedResults,
3647
+ enableGlobalFilterRankedResults = _ref$enableGlobalFilt3 === void 0 ? true : _ref$enableGlobalFilt3,
3622
3648
  _ref$enableGrouping = _ref.enableGrouping,
3623
3649
  enableGrouping = _ref$enableGrouping === void 0 ? false : _ref$enableGrouping,
3624
3650
  _ref$enableHiding = _ref.enableHiding,
3625
3651
  enableHiding = _ref$enableHiding === void 0 ? true : _ref$enableHiding,
3626
3652
  _ref$enableMultiRowSe = _ref.enableMultiRowSelection,
3627
3653
  enableMultiRowSelection = _ref$enableMultiRowSe === void 0 ? true : _ref$enableMultiRowSe,
3654
+ _ref$enableMultiSort = _ref.enableMultiSort,
3655
+ enableMultiSort = _ref$enableMultiSort === void 0 ? true : _ref$enableMultiSort,
3628
3656
  _ref$enablePagination = _ref.enablePagination,
3629
3657
  enablePagination = _ref$enablePagination === void 0 ? true : _ref$enablePagination,
3630
3658
  _ref$enablePinning = _ref.enablePinning,
@@ -3681,9 +3709,11 @@ var MaterialReactTable = (function (_ref) {
3681
3709
  enableFullScreenToggle: enableFullScreenToggle,
3682
3710
  enableGlobalFilter: enableGlobalFilter,
3683
3711
  enableGlobalFilterChangeMode: enableGlobalFilterChangeMode,
3712
+ enableGlobalFilterRankedResults: enableGlobalFilterRankedResults,
3684
3713
  enableGrouping: enableGrouping,
3685
3714
  enableHiding: enableHiding,
3686
3715
  enableMultiRowSelection: enableMultiRowSelection,
3716
+ enableMultiSort: enableMultiSort,
3687
3717
  enablePagination: enablePagination,
3688
3718
  enablePinning: enablePinning,
3689
3719
  enableRowSelection: enableRowSelection,