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.
- package/dist/MaterialReactTable.d.ts +4 -2
- package/dist/material-react-table.cjs.development.js +53 -23
- package/dist/material-react-table.cjs.development.js.map +1 -1
- package/dist/material-react-table.cjs.production.min.js +1 -1
- package/dist/material-react-table.cjs.production.min.js.map +1 -1
- package/dist/material-react-table.esm.js +53 -23
- package/dist/material-react-table.esm.js.map +1 -1
- package/dist/sortingFns.d.ts +1 -0
- package/package.json +1 -1
- package/src/MaterialReactTable.tsx +7 -0
- package/src/body/MRT_TableBody.tsx +26 -6
- package/src/buttons/MRT_ExpandAllButton.tsx +25 -19
- package/src/buttons/MRT_ExpandButton.tsx +25 -23
- package/src/sortingFns.ts +4 -0
|
@@ -20,7 +20,7 @@ export interface MRT_RowModel<D extends Record<string, any> = {}> {
|
|
|
20
20
|
}
|
|
21
21
|
export declare type MRT_TableInstance<D extends Record<string, any> = {}> = Omit<TableInstance<Overwrite<Partial<TableGenerics>, {
|
|
22
22
|
Row: D;
|
|
23
|
-
}>>, 'getAllColumns' | 'getAllFlatColumns' | 'getAllLeafColumns' | 'getCenterLeafColumns' | 'getColumn' | 'getExpandedRowModel' | 'getFlatHeaders' | 'getLeftLeafColumns' | 'getPaginationRowModel' | 'getPrePaginationRowModel' | 'getRightLeafColumns' | 'getRowModel' | 'getSelectedRowModel' | 'getState' | 'options'> & {
|
|
23
|
+
}>>, 'getAllColumns' | 'getAllFlatColumns' | 'getAllLeafColumns' | 'getCenterLeafColumns' | 'getColumn' | 'getExpandedRowModel' | 'getFlatHeaders' | 'getLeftLeafColumns' | 'getPaginationRowModel' | 'getPreFilteredRowModel' | 'getPrePaginationRowModel' | 'getRightLeafColumns' | 'getRowModel' | 'getSelectedRowModel' | 'getState' | 'options'> & {
|
|
24
24
|
getAllColumns: () => MRT_Column<D>[];
|
|
25
25
|
getAllFlatColumns: () => MRT_Column<D>[];
|
|
26
26
|
getAllLeafColumns: () => MRT_Column<D>[];
|
|
@@ -30,6 +30,7 @@ export declare type MRT_TableInstance<D extends Record<string, any> = {}> = Omit
|
|
|
30
30
|
getFlatHeaders: () => MRT_Header<D>[];
|
|
31
31
|
getLeftLeafColumns: () => MRT_Column<D>[];
|
|
32
32
|
getPaginationRowModel: () => MRT_RowModel<D>;
|
|
33
|
+
getPreFilteredRowModel: () => MRT_RowModel<D>;
|
|
33
34
|
getPrePaginationRowModel: () => MRT_RowModel<D>;
|
|
34
35
|
getRightLeafColumns: () => MRT_Column<D>[];
|
|
35
36
|
getRowModel: () => MRT_RowModel<D>;
|
|
@@ -195,6 +196,7 @@ export declare type MaterialReactTableProps<D extends Record<string, any> = {}>
|
|
|
195
196
|
enableExpandAll?: boolean;
|
|
196
197
|
enableFullScreenToggle?: boolean;
|
|
197
198
|
enableGlobalFilterChangeMode?: boolean;
|
|
199
|
+
enableGlobalFilterRankedResults?: boolean;
|
|
198
200
|
enablePagination?: boolean;
|
|
199
201
|
enablePersistentState?: boolean;
|
|
200
202
|
enableRowActions?: boolean;
|
|
@@ -456,5 +458,5 @@ export declare type MaterialReactTableProps<D extends Record<string, any> = {}>
|
|
|
456
458
|
tableId?: string;
|
|
457
459
|
virtualizerProps?: Partial<VirtualizerOptions<HTMLDivElement>>;
|
|
458
460
|
};
|
|
459
|
-
declare const _default: <D extends Record<string, any> = {}>({ 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, ...rest }: MaterialReactTableProps<D>) => JSX.Element;
|
|
461
|
+
declare const _default: <D extends Record<string, any> = {}>({ 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, ...rest }: MaterialReactTableProps<D>) => JSX.Element;
|
|
460
462
|
export default _default;
|
|
@@ -173,7 +173,7 @@ var MRT_ExpandAllButton = function MRT_ExpandAllButton(_ref) {
|
|
|
173
173
|
enterDelay: 1000,
|
|
174
174
|
enterNextDelay: 1000,
|
|
175
175
|
title: localization.expandAll
|
|
176
|
-
}, React__default.createElement(material.IconButton, Object.assign({
|
|
176
|
+
}, React__default.createElement("span", null, React__default.createElement(material.IconButton, Object.assign({
|
|
177
177
|
"aria-label": localization.expandAll,
|
|
178
178
|
disabled: !getCanSomeRowsExpand() && !renderDetailPanel,
|
|
179
179
|
onClick: function onClick() {
|
|
@@ -189,7 +189,7 @@ var MRT_ExpandAllButton = function MRT_ExpandAllButton(_ref) {
|
|
|
189
189
|
transform: "rotate(" + (getIsAllRowsExpanded() ? -180 : getIsSomeRowsExpanded() ? -90 : 0) + "deg)",
|
|
190
190
|
transition: 'transform 0.2s'
|
|
191
191
|
}
|
|
192
|
-
})));
|
|
192
|
+
}))));
|
|
193
193
|
};
|
|
194
194
|
|
|
195
195
|
var MRT_ExpandButton = function MRT_ExpandButton(_ref) {
|
|
@@ -225,7 +225,7 @@ var MRT_ExpandButton = function MRT_ExpandButton(_ref) {
|
|
|
225
225
|
enterDelay: 1000,
|
|
226
226
|
enterNextDelay: 1000,
|
|
227
227
|
title: localization.expand
|
|
228
|
-
}, React__default.createElement(material.IconButton, Object.assign({
|
|
228
|
+
}, React__default.createElement("span", null, React__default.createElement(material.IconButton, Object.assign({
|
|
229
229
|
"aria-label": localization.expand,
|
|
230
230
|
disabled: !row.getCanExpand() && !renderDetailPanel,
|
|
231
231
|
onClick: handleToggleExpand
|
|
@@ -239,7 +239,7 @@ var MRT_ExpandButton = function MRT_ExpandButton(_ref) {
|
|
|
239
239
|
transform: "rotate(" + (!row.getCanExpand() && !renderDetailPanel ? -90 : row.getIsExpanded() ? -180 : 0) + "deg)",
|
|
240
240
|
transition: 'transform 0.2s'
|
|
241
241
|
}
|
|
242
|
-
})));
|
|
242
|
+
}))));
|
|
243
243
|
};
|
|
244
244
|
|
|
245
245
|
var fuzzy = function fuzzy(row, columnId, filterValue, addMeta) {
|
|
@@ -7289,6 +7289,28 @@ var MRT_TableBodyRow = function MRT_TableBodyRow(_ref) {
|
|
|
7289
7289
|
}));
|
|
7290
7290
|
};
|
|
7291
7291
|
|
|
7292
|
+
var fuzzy$1 = function fuzzy(rowA, rowB, columnId) {
|
|
7293
|
+
var dir = 0;
|
|
7294
|
+
|
|
7295
|
+
if (rowA.columnFiltersMeta[columnId]) {
|
|
7296
|
+
dir = matchSorterUtils.compareItems(rowA.columnFiltersMeta[columnId], rowB.columnFiltersMeta[columnId]);
|
|
7297
|
+
} // Provide a fallback for when the item ranks are equal
|
|
7298
|
+
|
|
7299
|
+
|
|
7300
|
+
return dir === 0 ? reactTable.sortingFns.alphanumeric(rowA, rowB, columnId) : dir;
|
|
7301
|
+
};
|
|
7302
|
+
|
|
7303
|
+
var MRT_SortingFns = {
|
|
7304
|
+
fuzzy: fuzzy$1
|
|
7305
|
+
};
|
|
7306
|
+
var rankGlobalFuzzy = function rankGlobalFuzzy(rowA, rowB) {
|
|
7307
|
+
return Math.max.apply(Math, Object.values(rowB.columnFiltersMeta).map(function (v) {
|
|
7308
|
+
return v.rank;
|
|
7309
|
+
})) - Math.max.apply(Math, Object.values(rowA.columnFiltersMeta).map(function (v) {
|
|
7310
|
+
return v.rank;
|
|
7311
|
+
}));
|
|
7312
|
+
};
|
|
7313
|
+
|
|
7292
7314
|
var MRT_TableBody = function MRT_TableBody(_ref) {
|
|
7293
7315
|
var instance = _ref.instance,
|
|
7294
7316
|
tableContainerRef = _ref.tableContainerRef;
|
|
@@ -7296,20 +7318,37 @@ var MRT_TableBody = function MRT_TableBody(_ref) {
|
|
|
7296
7318
|
getPrePaginationRowModel = instance.getPrePaginationRowModel,
|
|
7297
7319
|
getState = instance.getState,
|
|
7298
7320
|
_instance$options = instance.options,
|
|
7321
|
+
enableGlobalFilterRankedResults = _instance$options.enableGlobalFilterRankedResults,
|
|
7299
7322
|
enablePagination = _instance$options.enablePagination,
|
|
7300
7323
|
enableRowVirtualization = _instance$options.enableRowVirtualization,
|
|
7301
7324
|
muiTableBodyProps = _instance$options.muiTableBodyProps,
|
|
7302
7325
|
virtualizerProps = _instance$options.virtualizerProps;
|
|
7303
7326
|
|
|
7304
7327
|
var _getState = getState(),
|
|
7305
|
-
density = _getState.density
|
|
7328
|
+
density = _getState.density,
|
|
7329
|
+
globalFilter = _getState.globalFilter,
|
|
7330
|
+
pagination = _getState.pagination;
|
|
7306
7331
|
|
|
7307
7332
|
var tableBodyProps = muiTableBodyProps instanceof Function ? muiTableBodyProps({
|
|
7308
7333
|
instance: instance
|
|
7309
7334
|
}) : muiTableBodyProps;
|
|
7310
|
-
var rows =
|
|
7335
|
+
var rows = React.useMemo(function () {
|
|
7336
|
+
if (enableGlobalFilterRankedResults && globalFilter) {
|
|
7337
|
+
var rankedRows = getPrePaginationRowModel().rows.sort(function (a, b) {
|
|
7338
|
+
return rankGlobalFuzzy(a, b);
|
|
7339
|
+
});
|
|
7340
|
+
|
|
7341
|
+
if (enablePagination) {
|
|
7342
|
+
return rankedRows.slice(0, pagination.pageSize);
|
|
7343
|
+
}
|
|
7344
|
+
|
|
7345
|
+
return rankedRows;
|
|
7346
|
+
}
|
|
7347
|
+
|
|
7348
|
+
return enablePagination ? getPaginationRowModel().rows : getPrePaginationRowModel().rows;
|
|
7349
|
+
}, [enableGlobalFilterRankedResults, enableGlobalFilterRankedResults && globalFilter || !enablePagination ? getPrePaginationRowModel().rows : getPaginationRowModel().rows, globalFilter]);
|
|
7311
7350
|
var rowVirtualizer = enableRowVirtualization ? useVirtual(_extends({
|
|
7312
|
-
overscan: density === 'compact' ?
|
|
7351
|
+
overscan: density === 'compact' ? 20 : 10,
|
|
7313
7352
|
size: rows.length,
|
|
7314
7353
|
parentRef: tableContainerRef
|
|
7315
7354
|
}, virtualizerProps)) : {};
|
|
@@ -7550,21 +7589,6 @@ var MRT_TablePaper = function MRT_TablePaper(_ref) {
|
|
|
7550
7589
|
})));
|
|
7551
7590
|
};
|
|
7552
7591
|
|
|
7553
|
-
var fuzzy$1 = function fuzzy(rowA, rowB, columnId) {
|
|
7554
|
-
var dir = 0;
|
|
7555
|
-
|
|
7556
|
-
if (rowA.columnFiltersMeta[columnId]) {
|
|
7557
|
-
dir = matchSorterUtils.compareItems(rowA.columnFiltersMeta[columnId], rowB.columnFiltersMeta[columnId]);
|
|
7558
|
-
} // Provide a fallback for when the item ranks are equal
|
|
7559
|
-
|
|
7560
|
-
|
|
7561
|
-
return dir === 0 ? reactTable.sortingFns.alphanumeric(rowA, rowB, columnId) : dir;
|
|
7562
|
-
};
|
|
7563
|
-
|
|
7564
|
-
var MRT_SortingFns = {
|
|
7565
|
-
fuzzy: fuzzy$1
|
|
7566
|
-
};
|
|
7567
|
-
|
|
7568
7592
|
var MRT_TableRoot = function MRT_TableRoot(props) {
|
|
7569
7593
|
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;
|
|
7570
7594
|
|
|
@@ -7827,7 +7851,7 @@ var MRT_TableRoot = function MRT_TableRoot(props) {
|
|
|
7827
7851
|
}));
|
|
7828
7852
|
};
|
|
7829
7853
|
|
|
7830
|
-
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"];
|
|
7854
|
+
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"];
|
|
7831
7855
|
var MaterialReactTable = (function (_ref) {
|
|
7832
7856
|
var _ref$autoResetExpande = _ref.autoResetExpanded,
|
|
7833
7857
|
autoResetExpanded = _ref$autoResetExpande === void 0 ? false : _ref$autoResetExpande,
|
|
@@ -7863,12 +7887,16 @@ var MaterialReactTable = (function (_ref) {
|
|
|
7863
7887
|
enableGlobalFilter = _ref$enableGlobalFilt === void 0 ? true : _ref$enableGlobalFilt,
|
|
7864
7888
|
_ref$enableGlobalFilt2 = _ref.enableGlobalFilterChangeMode,
|
|
7865
7889
|
enableGlobalFilterChangeMode = _ref$enableGlobalFilt2 === void 0 ? true : _ref$enableGlobalFilt2,
|
|
7890
|
+
_ref$enableGlobalFilt3 = _ref.enableGlobalFilterRankedResults,
|
|
7891
|
+
enableGlobalFilterRankedResults = _ref$enableGlobalFilt3 === void 0 ? true : _ref$enableGlobalFilt3,
|
|
7866
7892
|
_ref$enableGrouping = _ref.enableGrouping,
|
|
7867
7893
|
enableGrouping = _ref$enableGrouping === void 0 ? false : _ref$enableGrouping,
|
|
7868
7894
|
_ref$enableHiding = _ref.enableHiding,
|
|
7869
7895
|
enableHiding = _ref$enableHiding === void 0 ? true : _ref$enableHiding,
|
|
7870
7896
|
_ref$enableMultiRowSe = _ref.enableMultiRowSelection,
|
|
7871
7897
|
enableMultiRowSelection = _ref$enableMultiRowSe === void 0 ? true : _ref$enableMultiRowSe,
|
|
7898
|
+
_ref$enableMultiSort = _ref.enableMultiSort,
|
|
7899
|
+
enableMultiSort = _ref$enableMultiSort === void 0 ? true : _ref$enableMultiSort,
|
|
7872
7900
|
_ref$enablePagination = _ref.enablePagination,
|
|
7873
7901
|
enablePagination = _ref$enablePagination === void 0 ? true : _ref$enablePagination,
|
|
7874
7902
|
_ref$enablePinning = _ref.enablePinning,
|
|
@@ -7925,9 +7953,11 @@ var MaterialReactTable = (function (_ref) {
|
|
|
7925
7953
|
enableFullScreenToggle: enableFullScreenToggle,
|
|
7926
7954
|
enableGlobalFilter: enableGlobalFilter,
|
|
7927
7955
|
enableGlobalFilterChangeMode: enableGlobalFilterChangeMode,
|
|
7956
|
+
enableGlobalFilterRankedResults: enableGlobalFilterRankedResults,
|
|
7928
7957
|
enableGrouping: enableGrouping,
|
|
7929
7958
|
enableHiding: enableHiding,
|
|
7930
7959
|
enableMultiRowSelection: enableMultiRowSelection,
|
|
7960
|
+
enableMultiSort: enableMultiSort,
|
|
7931
7961
|
enablePagination: enablePagination,
|
|
7932
7962
|
enablePinning: enablePinning,
|
|
7933
7963
|
enableRowSelection: enableRowSelection,
|