material-react-table 0.14.3 → 0.14.6
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 +12 -7
- package/dist/{filtersFNs.d.ts → filtersFns.d.ts} +1 -1
- package/dist/head/MRT_TableHeadCell.d.ts +1 -1
- package/dist/inputs/{MRT_SearchTextField.d.ts → MRT_GlobalFilterTextField.d.ts} +1 -1
- package/dist/material-react-table.cjs.development.js +80 -59
- 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 +83 -62
- package/dist/material-react-table.esm.js.map +1 -1
- package/dist/sortingFns.d.ts +4 -0
- package/dist/utils.d.ts +1 -1
- package/package.json +5 -5
- package/src/MaterialReactTable.tsx +21 -12
- package/src/{filtersFNs.ts → filtersFns.ts} +1 -1
- package/src/head/MRT_TableHeadCell.tsx +14 -14
- package/src/head/MRT_TableHeadCellFilterLabel.tsx +55 -57
- package/src/inputs/MRT_FilterTextField.tsx +12 -4
- package/src/inputs/{MRT_SearchTextField.tsx → MRT_GlobalFilterTextField.tsx} +18 -12
- package/src/menus/MRT_FilterOptionMenu.tsx +1 -1
- package/src/sortingFns.ts +21 -0
- package/src/table/MRT_TableRoot.tsx +17 -14
- package/src/toolbar/MRT_ToolbarInternalButtons.tsx +2 -2
- package/src/toolbar/MRT_ToolbarTop.tsx +3 -3
- package/src/utils.ts +2 -2
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import React, { useMemo, forwardRef, useState, useCallback, Fragment, useLayoutEffect, useEffect } from 'react';
|
|
2
2
|
import { ArrowRight, Cancel, CheckBox, ClearAll, Close, DensityLarge, DensityMedium, DensitySmall, DragHandle, DynamicFeed, Edit, ExpandLess, ExpandMore, FilterAlt, FilterAltOff, FilterList, FilterListOff, FullscreenExit, Fullscreen, KeyboardDoubleArrowDown, MoreHoriz, MoreVert, PushPin, RestartAlt, Save, Search, SearchOff, Sort, ViewColumn, VisibilityOff } from '@mui/icons-material';
|
|
3
|
-
import { createTable, getCoreRowModel, getExpandedRowModel, getFacetedRowModel, getFilteredRowModel, getGroupedRowModel, getPaginationRowModel, getSortedRowModel, useTableInstance } from '@tanstack/react-table';
|
|
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
|
|
5
|
-
import { rankItem, rankings } from '@tanstack/match-sorter-utils';
|
|
3
|
+
import { sortingFns, createTable, filterFns, getCoreRowModel, getExpandedRowModel, getFacetedRowModel, getFilteredRowModel, getGroupedRowModel, getPaginationRowModel, getSortedRowModel, useTableInstance } from '@tanstack/react-table';
|
|
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, Grow, TableSortLabel, TableCell, TableRow, TableHead, darken, Skeleton, TableBody, TableFooter, Table, TableContainer, Paper, Dialog } from '@mui/material';
|
|
5
|
+
import { rankItem, rankings, compareItems } from '@tanstack/match-sorter-utils';
|
|
6
6
|
import { useDrop, useDrag, DndProvider } from 'react-dnd';
|
|
7
7
|
import { HTML5Backend } from 'react-dnd-html5-backend';
|
|
8
8
|
import { useVirtual } from 'react-virtual';
|
|
@@ -329,7 +329,7 @@ notEmpty.autoRemove = function (val) {
|
|
|
329
329
|
return !val;
|
|
330
330
|
};
|
|
331
331
|
|
|
332
|
-
var
|
|
332
|
+
var MRT_FilterFns = {
|
|
333
333
|
between: between,
|
|
334
334
|
contains: contains,
|
|
335
335
|
empty: empty,
|
|
@@ -616,7 +616,7 @@ var createDataColumn = function createDataColumn(table, column, currentFilterFns
|
|
|
616
616
|
return (// @ts-ignore
|
|
617
617
|
table.createDataColumn(column.id, _extends({
|
|
618
618
|
filterFn: currentFilterFns[column.id] instanceof Function ? currentFilterFns[column.id] : // @ts-ignore
|
|
619
|
-
|
|
619
|
+
MRT_FilterFns[currentFilterFns[column.id]]
|
|
620
620
|
}, column))
|
|
621
621
|
);
|
|
622
622
|
};
|
|
@@ -1539,19 +1539,22 @@ var MRT_ToggleGlobalFilterButton = function MRT_ToggleGlobalFilterButton(_ref) {
|
|
|
1539
1539
|
}, rest), showGlobalFilter ? React.createElement(SearchOffIcon, null) : React.createElement(SearchIcon, null)));
|
|
1540
1540
|
};
|
|
1541
1541
|
|
|
1542
|
-
var
|
|
1542
|
+
var MRT_GlobalFilterTextField = function MRT_GlobalFilterTextField(_ref) {
|
|
1543
|
+
var _localization$clearSe;
|
|
1544
|
+
|
|
1543
1545
|
var instance = _ref.instance;
|
|
1544
1546
|
var getState = instance.getState,
|
|
1545
1547
|
setGlobalFilter = instance.setGlobalFilter,
|
|
1546
1548
|
_instance$options = instance.options,
|
|
1549
|
+
enableGlobalFilterChangeMode = _instance$options.enableGlobalFilterChangeMode,
|
|
1547
1550
|
_instance$options$ico = _instance$options.icons,
|
|
1548
1551
|
SearchIcon = _instance$options$ico.SearchIcon,
|
|
1549
1552
|
CloseIcon = _instance$options$ico.CloseIcon,
|
|
1550
|
-
tableId = _instance$options.tableId,
|
|
1551
1553
|
localization = _instance$options.localization,
|
|
1552
1554
|
muiSearchTextFieldProps = _instance$options.muiSearchTextFieldProps,
|
|
1553
1555
|
onGlobalFilterValueChanged = _instance$options.onGlobalFilterValueChanged,
|
|
1554
|
-
onGlobalFilterValueChangedDebounced = _instance$options.onGlobalFilterValueChangedDebounced
|
|
1556
|
+
onGlobalFilterValueChangedDebounced = _instance$options.onGlobalFilterValueChangedDebounced,
|
|
1557
|
+
tableId = _instance$options.tableId;
|
|
1555
1558
|
|
|
1556
1559
|
var _getState = getState(),
|
|
1557
1560
|
globalFilter = _getState.globalFilter,
|
|
@@ -1606,7 +1609,7 @@ var MRT_SearchTextField = function MRT_SearchTextField(_ref) {
|
|
|
1606
1609
|
value: searchValue != null ? searchValue : '',
|
|
1607
1610
|
variant: "standard",
|
|
1608
1611
|
InputProps: {
|
|
1609
|
-
startAdornment: React.createElement(InputAdornment, {
|
|
1612
|
+
startAdornment: enableGlobalFilterChangeMode ? React.createElement(InputAdornment, {
|
|
1610
1613
|
position: "start"
|
|
1611
1614
|
}, React.createElement(Tooltip, {
|
|
1612
1615
|
arrow: true,
|
|
@@ -1619,16 +1622,18 @@ var MRT_SearchTextField = function MRT_SearchTextField(_ref) {
|
|
|
1619
1622
|
height: '1.75rem',
|
|
1620
1623
|
width: '1.75rem'
|
|
1621
1624
|
}
|
|
1622
|
-
}, React.createElement(SearchIcon, null)))),
|
|
1625
|
+
}, React.createElement(SearchIcon, null)))) : React.createElement(SearchIcon, null),
|
|
1623
1626
|
endAdornment: React.createElement(InputAdornment, {
|
|
1624
1627
|
position: "end"
|
|
1625
|
-
}, React.createElement(
|
|
1628
|
+
}, React.createElement(Tooltip, {
|
|
1629
|
+
arrow: true,
|
|
1630
|
+
title: (_localization$clearSe = localization.clearSearch) != null ? _localization$clearSe : ''
|
|
1631
|
+
}, React.createElement("span", null, React.createElement(IconButton, {
|
|
1626
1632
|
"aria-label": localization.clearSearch,
|
|
1627
|
-
disabled: (searchValue
|
|
1633
|
+
disabled: !(searchValue != null && searchValue.length),
|
|
1628
1634
|
onClick: handleClear,
|
|
1629
|
-
size: "small"
|
|
1630
|
-
|
|
1631
|
-
}, React.createElement(CloseIcon, null)))
|
|
1635
|
+
size: "small"
|
|
1636
|
+
}, React.createElement(CloseIcon, null)))))
|
|
1632
1637
|
}
|
|
1633
1638
|
}, textFieldProps)), React.createElement(MRT_FilterOptionMenu, {
|
|
1634
1639
|
anchorEl: anchorEl,
|
|
@@ -1663,7 +1668,7 @@ var MRT_ToolbarInternalButtons = function MRT_ToolbarInternalButtons(_ref) {
|
|
|
1663
1668
|
MRT_ToggleFiltersButton: MRT_ToggleFiltersButton,
|
|
1664
1669
|
MRT_ToggleGlobalFilterButton: MRT_ToggleGlobalFilterButton,
|
|
1665
1670
|
instance: instance
|
|
1666
|
-
})) != null ? _renderToolbarInterna : React.createElement(React.Fragment, null, enableGlobalFilter && positionGlobalFilter === 'right' && React.createElement(
|
|
1671
|
+
})) != null ? _renderToolbarInterna : React.createElement(React.Fragment, null, enableGlobalFilter && positionGlobalFilter === 'right' && React.createElement(MRT_GlobalFilterTextField, {
|
|
1667
1672
|
instance: instance
|
|
1668
1673
|
}), enableFilters && enableGlobalFilter && React.createElement(MRT_ToggleGlobalFilterButton, {
|
|
1669
1674
|
instance: instance
|
|
@@ -1889,13 +1894,13 @@ var MRT_ToolbarTop = function MRT_ToolbarTop(_ref2) {
|
|
|
1889
1894
|
top: 0,
|
|
1890
1895
|
width: '100%'
|
|
1891
1896
|
}
|
|
1892
|
-
}, enableGlobalFilter && positionGlobalFilter === 'left' && React.createElement(
|
|
1897
|
+
}, enableGlobalFilter && positionGlobalFilter === 'left' && React.createElement(MRT_GlobalFilterTextField, {
|
|
1893
1898
|
instance: instance
|
|
1894
1899
|
}), (_renderToolbarTopCust = renderToolbarTopCustomActions == null ? void 0 : renderToolbarTopCustomActions({
|
|
1895
1900
|
instance: instance
|
|
1896
1901
|
})) != null ? _renderToolbarTopCust : React.createElement("span", null), enableToolbarInternalActions ? React.createElement(MRT_ToolbarInternalButtons, {
|
|
1897
1902
|
instance: instance
|
|
1898
|
-
}) : enableGlobalFilter && positionGlobalFilter === 'right' && React.createElement(
|
|
1903
|
+
}) : enableGlobalFilter && positionGlobalFilter === 'right' && React.createElement(MRT_GlobalFilterTextField, {
|
|
1899
1904
|
instance: instance
|
|
1900
1905
|
})), enablePagination && ['top', 'both'].includes(positionPagination != null ? positionPagination : '') && React.createElement(MRT_TablePagination, {
|
|
1901
1906
|
instance: instance,
|
|
@@ -1972,13 +1977,14 @@ var MRT_ToolbarBottom = function MRT_ToolbarBottom(_ref) {
|
|
|
1972
1977
|
};
|
|
1973
1978
|
|
|
1974
1979
|
var MRT_FilterTextField = function MRT_FilterTextField(_ref) {
|
|
1975
|
-
var _localization$filterB, _columnDef$enabledCol, _allowedColumnFilterO, _localization$filterM, _localization$,
|
|
1980
|
+
var _localization$filterB, _columnDef$enabledCol, _allowedColumnFilterO, _localization$filterM, _localization$, _localization$clearFi, _columnDef$filterSele;
|
|
1976
1981
|
|
|
1977
1982
|
var header = _ref.header,
|
|
1978
1983
|
inputIndex = _ref.inputIndex,
|
|
1979
1984
|
instance = _ref.instance;
|
|
1980
1985
|
var getState = instance.getState,
|
|
1981
1986
|
_instance$options = instance.options,
|
|
1987
|
+
enableColumnFilterChangeMode = _instance$options.enableColumnFilterChangeMode,
|
|
1982
1988
|
enabledColumnFilterOptions = _instance$options.enabledColumnFilterOptions,
|
|
1983
1989
|
_instance$options$ico = _instance$options.icons,
|
|
1984
1990
|
FilterListIcon = _instance$options$ico.FilterListIcon,
|
|
@@ -2104,6 +2110,7 @@ var MRT_FilterTextField = function MRT_FilterTextField(_ref) {
|
|
|
2104
2110
|
localization["filter" + (filterFn.charAt(0).toUpperCase() + filterFn.slice(1))] : '';
|
|
2105
2111
|
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 : '';
|
|
2106
2112
|
var allowedColumnFilterOptions = (_columnDef$enabledCol = columnDef == null ? void 0 : columnDef.enabledColumnFilterOptions) != null ? _columnDef$enabledCol : enabledColumnFilterOptions;
|
|
2113
|
+
var allowColumnChangeMode = enableColumnFilterChangeMode && columnDef.enableColumnFilterChangeMode !== false;
|
|
2107
2114
|
return React.createElement(React.Fragment, null, React.createElement(TextField, Object.assign({
|
|
2108
2115
|
fullWidth: true,
|
|
2109
2116
|
id: filterId,
|
|
@@ -2115,7 +2122,7 @@ var MRT_FilterTextField = function MRT_FilterTextField(_ref) {
|
|
|
2115
2122
|
},
|
|
2116
2123
|
title: filterPlaceholder
|
|
2117
2124
|
},
|
|
2118
|
-
helperText: !inputIndex && (allowedColumnFilterOptions === undefined || ((_allowedColumnFilterO = allowedColumnFilterOptions == null ? void 0 : allowedColumnFilterOptions.length) != null ? _allowedColumnFilterO : 0) > 0) ? React.createElement("label", {
|
|
2125
|
+
helperText: allowColumnChangeMode && !inputIndex && (allowedColumnFilterOptions === undefined || ((_allowedColumnFilterO = allowedColumnFilterOptions == null ? void 0 : allowedColumnFilterOptions.length) != null ? _allowedColumnFilterO : 0) > 0) ? React.createElement("label", {
|
|
2119
2126
|
htmlFor: filterId
|
|
2120
2127
|
}, filterFn instanceof Function ? (_localization$filterM = localization.filterMode.replace('{filterType}', // @ts-ignore
|
|
2121
2128
|
(_localization$ = localization["filter" + (filterFn.name.charAt(0).toUpperCase() + filterFn.name.slice(1))]) != null ? _localization$ : '')) != null ? _localization$filterM : '' : localization.filterMode.replace('{filterType}', // @ts-ignore
|
|
@@ -2127,7 +2134,6 @@ var MRT_FilterTextField = function MRT_FilterTextField(_ref) {
|
|
|
2127
2134
|
whiteSpace: 'nowrap'
|
|
2128
2135
|
}
|
|
2129
2136
|
},
|
|
2130
|
-
label: isSelectFilter && !filterValue ? filterPlaceholder : undefined,
|
|
2131
2137
|
margin: "none",
|
|
2132
2138
|
placeholder: filterChipLabel || isSelectFilter ? undefined : filterPlaceholder,
|
|
2133
2139
|
onChange: handleChange,
|
|
@@ -2138,7 +2144,7 @@ var MRT_FilterTextField = function MRT_FilterTextField(_ref) {
|
|
|
2138
2144
|
value: filterValue != null ? filterValue : '',
|
|
2139
2145
|
variant: "standard",
|
|
2140
2146
|
InputProps: {
|
|
2141
|
-
startAdornment: !isSelectFilter && !inputIndex && (allowedColumnFilterOptions === undefined || (
|
|
2147
|
+
startAdornment: allowColumnChangeMode && !isSelectFilter && !inputIndex && (allowedColumnFilterOptions === undefined || !!(allowedColumnFilterOptions != null && allowedColumnFilterOptions.length)) ? React.createElement(InputAdornment, {
|
|
2142
2148
|
position: "start"
|
|
2143
2149
|
}, React.createElement(Tooltip, {
|
|
2144
2150
|
arrow: true,
|
|
@@ -2154,7 +2160,7 @@ var MRT_FilterTextField = function MRT_FilterTextField(_ref) {
|
|
|
2154
2160
|
}, React.createElement(FilterListIcon, null)))), filterChipLabel && React.createElement(Chip, {
|
|
2155
2161
|
onDelete: handleClearFilterChip,
|
|
2156
2162
|
label: filterChipLabel
|
|
2157
|
-
})),
|
|
2163
|
+
})) : React.createElement(FilterListIcon, null),
|
|
2158
2164
|
endAdornment: !filterChipLabel && React.createElement(InputAdornment, {
|
|
2159
2165
|
position: "end"
|
|
2160
2166
|
}, React.createElement(Tooltip, {
|
|
@@ -2179,7 +2185,6 @@ var MRT_FilterTextField = function MRT_FilterTextField(_ref) {
|
|
|
2179
2185
|
p: 0,
|
|
2180
2186
|
minWidth: !filterChipLabel ? '8rem' : 'auto',
|
|
2181
2187
|
width: 'calc(100% + 0.5rem)',
|
|
2182
|
-
mt: isSelectFilter && !filterValue ? '-1rem' : undefined,
|
|
2183
2188
|
'& .MuiSelect-icon': {
|
|
2184
2189
|
mr: '1.5rem'
|
|
2185
2190
|
}
|
|
@@ -2262,27 +2267,28 @@ var MRT_TableHeadCellFilterContainer = function MRT_TableHeadCellFilterContainer
|
|
|
2262
2267
|
};
|
|
2263
2268
|
|
|
2264
2269
|
var MRT_TableHeadCellFilterLabel = function MRT_TableHeadCellFilterLabel(_ref) {
|
|
2265
|
-
var
|
|
2270
|
+
var _column$getFilterValu, _column$getFilterValu2;
|
|
2266
2271
|
|
|
2267
2272
|
var header = _ref.header,
|
|
2268
2273
|
instance = _ref.instance;
|
|
2269
2274
|
var getState = instance.getState,
|
|
2270
2275
|
_instance$options = instance.options,
|
|
2271
|
-
|
|
2272
|
-
|
|
2273
|
-
FilterAltOffIcon = _instance$options$ico.FilterAltOffIcon,
|
|
2274
|
-
localization = _instance$options.localization,
|
|
2275
|
-
setShowFilters = instance.setShowFilters;
|
|
2276
|
+
FilterAltIcon = _instance$options.icons.FilterAltIcon,
|
|
2277
|
+
localization = _instance$options.localization;
|
|
2276
2278
|
|
|
2277
2279
|
var _getState = getState(),
|
|
2278
|
-
|
|
2280
|
+
currentFilterFns = _getState.currentFilterFns;
|
|
2279
2281
|
|
|
2280
2282
|
var column = header.column;
|
|
2281
2283
|
var columnDef = column.columnDef;
|
|
2282
|
-
var filterFn =
|
|
2283
|
-
var filterTooltip =
|
|
2284
|
-
localization["filter" + (filterFn.charAt(0).toUpperCase() + filterFn.slice(1))]).replace('{filterValue}', "\"" + (Array.isArray(column.getFilterValue()) ? column.getFilterValue().join("\" " + localization.and + " \"") : column.getFilterValue()) + "\"").replace('" "', '')
|
|
2285
|
-
return React.createElement(
|
|
2284
|
+
var filterFn = currentFilterFns == null ? void 0 : currentFilterFns[header.id];
|
|
2285
|
+
var filterTooltip = localization.filteringByColumn.replace('{column}', String(columnDef.header)).replace('{filterType}', filterFn instanceof Function ? '' : // @ts-ignore
|
|
2286
|
+
localization["filter" + (filterFn.charAt(0).toUpperCase() + filterFn.slice(1))]).replace('{filterValue}', "\"" + (Array.isArray(column.getFilterValue()) ? column.getFilterValue().join("\" " + localization.and + " \"") : column.getFilterValue()) + "\"").replace('" "', '');
|
|
2287
|
+
return React.createElement(Grow, {
|
|
2288
|
+
unmountOnExit: true,
|
|
2289
|
+
"in": !!column.getFilterValue() && filterFn !== 'between' || filterFn === 'between' && ( // @ts-ignore
|
|
2290
|
+
!!((_column$getFilterValu = column.getFilterValue()) != null && _column$getFilterValu[0]) || !!((_column$getFilterValu2 = column.getFilterValue()) != null && _column$getFilterValu2[1]))
|
|
2291
|
+
}, React.createElement("span", null, React.createElement(Tooltip, {
|
|
2286
2292
|
arrow: true,
|
|
2287
2293
|
placement: "top",
|
|
2288
2294
|
title: filterTooltip
|
|
@@ -2290,22 +2296,16 @@ var MRT_TableHeadCellFilterLabel = function MRT_TableHeadCellFilterLabel(_ref) {
|
|
|
2290
2296
|
disableRipple: true,
|
|
2291
2297
|
onClick: function onClick(event) {
|
|
2292
2298
|
event.stopPropagation();
|
|
2293
|
-
setShowFilters(!showFilters);
|
|
2294
2299
|
},
|
|
2295
2300
|
size: "small",
|
|
2296
2301
|
sx: {
|
|
2297
2302
|
m: 0,
|
|
2298
|
-
opacity:
|
|
2303
|
+
opacity: 0.8,
|
|
2299
2304
|
p: '2px',
|
|
2300
|
-
transition: 'all 0.2s ease-in-out',
|
|
2301
2305
|
transform: 'scale(0.66)',
|
|
2302
|
-
'&:hover': {
|
|
2303
|
-
backgroundColor: 'transparent',
|
|
2304
|
-
opacity: 0.8
|
|
2305
|
-
},
|
|
2306
2306
|
width: '1.5ch'
|
|
2307
2307
|
}
|
|
2308
|
-
},
|
|
2308
|
+
}, React.createElement(FilterAltIcon, null)))));
|
|
2309
2309
|
};
|
|
2310
2310
|
|
|
2311
2311
|
var MRT_TableHeadCellResizeHandle = function MRT_TableHeadCellResizeHandle(_ref) {
|
|
@@ -2440,20 +2440,21 @@ var MRT_TableHeadCell = function MRT_TableHeadCell(_ref) {
|
|
|
2440
2440
|
var dragRef = _ref.dragRef,
|
|
2441
2441
|
dropRef = _ref.dropRef,
|
|
2442
2442
|
header = _ref.header,
|
|
2443
|
+
instance = _ref.instance,
|
|
2443
2444
|
isDragging = _ref.isDragging,
|
|
2444
|
-
previewRef = _ref.previewRef
|
|
2445
|
-
instance = _ref.instance;
|
|
2445
|
+
previewRef = _ref.previewRef;
|
|
2446
2446
|
var getState = instance.getState,
|
|
2447
2447
|
_instance$options = instance.options,
|
|
2448
2448
|
enableColumnActions = _instance$options.enableColumnActions,
|
|
2449
|
-
enableColumnFilters = _instance$options.enableColumnFilters,
|
|
2450
2449
|
enableColumnOrdering = _instance$options.enableColumnOrdering,
|
|
2451
2450
|
enableColumnResizing = _instance$options.enableColumnResizing,
|
|
2452
2451
|
enableGrouping = _instance$options.enableGrouping,
|
|
2452
|
+
enableMultiSort = _instance$options.enableMultiSort,
|
|
2453
2453
|
muiTableHeadCellProps = _instance$options.muiTableHeadCellProps;
|
|
2454
2454
|
|
|
2455
2455
|
var _getState = getState(),
|
|
2456
|
-
density = _getState.density
|
|
2456
|
+
density = _getState.density,
|
|
2457
|
+
showFilters = _getState.showFilters;
|
|
2457
2458
|
|
|
2458
2459
|
var column = header.column;
|
|
2459
2460
|
var columnDef = column.columnDef,
|
|
@@ -2508,7 +2509,8 @@ var MRT_TableHeadCell = function MRT_TableHeadCell(_ref) {
|
|
|
2508
2509
|
pt: columnDefType !== 'data' ? 0 : density === 'compact' ? '0.25' : density === 'comfortable' ? '.75rem' : '1.25rem',
|
|
2509
2510
|
right: column.getIsPinned() === 'right' ? getTotalRight() + "px" : undefined,
|
|
2510
2511
|
transition: "all " + (enableColumnResizing ? 0 : '0.2s') + " ease-in-out",
|
|
2511
|
-
|
|
2512
|
+
userSelect: enableMultiSort ? 'none' : undefined,
|
|
2513
|
+
verticalAlign: columnDefType === 'display' && showFilters ? 'center' : 'text-top',
|
|
2512
2514
|
zIndex: column.getIsResizing() ? 3 : column.getIsPinned() && columnDefType !== 'group' ? 2 : 1
|
|
2513
2515
|
}, tableCellProps == null ? void 0 : tableCellProps.sx, {
|
|
2514
2516
|
maxWidth: "min(" + column.getSize() + "px, fit-content)",
|
|
@@ -2527,9 +2529,7 @@ var MRT_TableHeadCell = function MRT_TableHeadCell(_ref) {
|
|
|
2527
2529
|
width: '100%'
|
|
2528
2530
|
}
|
|
2529
2531
|
}, React.createElement(Box, {
|
|
2530
|
-
onClick:
|
|
2531
|
-
return column.toggleSorting();
|
|
2532
|
-
},
|
|
2532
|
+
onClick: column.getToggleSortingHandler(),
|
|
2533
2533
|
sx: {
|
|
2534
2534
|
alignItems: 'center',
|
|
2535
2535
|
cursor: column.getCanSort() && columnDefType !== 'group' ? 'pointer' : undefined,
|
|
@@ -2540,7 +2540,7 @@ var MRT_TableHeadCell = function MRT_TableHeadCell(_ref) {
|
|
|
2540
2540
|
}, headerElement, columnDefType === 'data' && column.getCanSort() && React.createElement(MRT_TableHeadCellSortLabel, {
|
|
2541
2541
|
header: header,
|
|
2542
2542
|
instance: instance
|
|
2543
|
-
}), columnDefType === 'data' &&
|
|
2543
|
+
}), columnDefType === 'data' && column.getCanFilter() && React.createElement(MRT_TableHeadCellFilterLabel, {
|
|
2544
2544
|
header: header,
|
|
2545
2545
|
instance: instance
|
|
2546
2546
|
})), React.createElement(Box, {
|
|
@@ -3306,6 +3306,21 @@ var MRT_TablePaper = function MRT_TablePaper(_ref) {
|
|
|
3306
3306
|
})));
|
|
3307
3307
|
};
|
|
3308
3308
|
|
|
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
|
+
|
|
3309
3324
|
var MRT_TableRoot = function MRT_TableRoot(props) {
|
|
3310
3325
|
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;
|
|
3311
3326
|
|
|
@@ -3394,8 +3409,7 @@ var MRT_TableRoot = function MRT_TableRoot(props) {
|
|
|
3394
3409
|
var table = useMemo(function () {
|
|
3395
3410
|
return (// @ts-ignore
|
|
3396
3411
|
createTable().setOptions({
|
|
3397
|
-
|
|
3398
|
-
filterFns: defaultFilterFNs,
|
|
3412
|
+
filterFns: _extends({}, filterFns, MRT_FilterFns, props.filterFns),
|
|
3399
3413
|
getCoreRowModel: getCoreRowModel(),
|
|
3400
3414
|
getExpandedRowModel: getExpandedRowModel(),
|
|
3401
3415
|
getFacetedRowModel: getFacetedRowModel(),
|
|
@@ -3403,10 +3417,7 @@ var MRT_TableRoot = function MRT_TableRoot(props) {
|
|
|
3403
3417
|
getGroupedRowModel: getGroupedRowModel(),
|
|
3404
3418
|
getPaginationRowModel: getPaginationRowModel(),
|
|
3405
3419
|
getSortedRowModel: getSortedRowModel(),
|
|
3406
|
-
|
|
3407
|
-
return row == null ? void 0 : row.subRows;
|
|
3408
|
-
},
|
|
3409
|
-
tableId: tableId
|
|
3420
|
+
sortingFns: _extends({}, sortingFns, MRT_SortingFns, props.sortingFns)
|
|
3410
3421
|
})
|
|
3411
3422
|
);
|
|
3412
3423
|
}, []);
|
|
@@ -3503,6 +3514,9 @@ var MRT_TableRoot = function MRT_TableRoot(props) {
|
|
|
3503
3514
|
//@ts-ignore
|
|
3504
3515
|
columns: columns,
|
|
3505
3516
|
data: data,
|
|
3517
|
+
getSubRows: function getSubRows(row) {
|
|
3518
|
+
return row == null ? void 0 : row.subRows;
|
|
3519
|
+
},
|
|
3506
3520
|
//@ts-ignore
|
|
3507
3521
|
globalFilterFn: currentGlobalFilterFn,
|
|
3508
3522
|
initialState: initialState,
|
|
@@ -3516,7 +3530,8 @@ var MRT_TableRoot = function MRT_TableRoot(props) {
|
|
|
3516
3530
|
isFullScreen: isFullScreen,
|
|
3517
3531
|
showFilters: showFilters,
|
|
3518
3532
|
showGlobalFilter: showGlobalFilter
|
|
3519
|
-
}, props.state)
|
|
3533
|
+
}, props.state),
|
|
3534
|
+
tableId: tableId
|
|
3520
3535
|
})), {
|
|
3521
3536
|
setCurrentEditingCell: (_props$onCurrentEditi = props.onCurrentEditingCellChange) != null ? _props$onCurrentEditi : setCurrentEditingCell,
|
|
3522
3537
|
setCurrentEditingRow: (_props$onCurrentEditi2 = props.onCurrentEditingRowChange) != null ? _props$onCurrentEditi2 : setCurrentEditingRow,
|
|
@@ -3568,7 +3583,7 @@ var MRT_TableRoot = function MRT_TableRoot(props) {
|
|
|
3568
3583
|
}));
|
|
3569
3584
|
};
|
|
3570
3585
|
|
|
3571
|
-
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", "positionToolbarAlertBanner", "rowNumberMode", "selectAllMode"];
|
|
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"];
|
|
3572
3587
|
var MaterialReactTable = (function (_ref) {
|
|
3573
3588
|
var _ref$autoResetExpande = _ref.autoResetExpanded,
|
|
3574
3589
|
autoResetExpanded = _ref$autoResetExpande === void 0 ? false : _ref$autoResetExpande,
|
|
@@ -3584,8 +3599,10 @@ var MaterialReactTable = (function (_ref) {
|
|
|
3584
3599
|
editingMode = _ref$editingMode === void 0 ? 'row' : _ref$editingMode,
|
|
3585
3600
|
_ref$enableColumnActi = _ref.enableColumnActions,
|
|
3586
3601
|
enableColumnActions = _ref$enableColumnActi === void 0 ? true : _ref$enableColumnActi,
|
|
3587
|
-
_ref$enableColumnFilt = _ref.
|
|
3588
|
-
|
|
3602
|
+
_ref$enableColumnFilt = _ref.enableColumnFilterChangeMode,
|
|
3603
|
+
enableColumnFilterChangeMode = _ref$enableColumnFilt === void 0 ? true : _ref$enableColumnFilt,
|
|
3604
|
+
_ref$enableColumnFilt2 = _ref.enableColumnFilters,
|
|
3605
|
+
enableColumnFilters = _ref$enableColumnFilt2 === void 0 ? true : _ref$enableColumnFilt2,
|
|
3589
3606
|
_ref$enableColumnOrde = _ref.enableColumnOrdering,
|
|
3590
3607
|
enableColumnOrdering = _ref$enableColumnOrde === void 0 ? false : _ref$enableColumnOrde,
|
|
3591
3608
|
_ref$enableColumnResi = _ref.enableColumnResizing,
|
|
@@ -3600,6 +3617,8 @@ var MaterialReactTable = (function (_ref) {
|
|
|
3600
3617
|
enableFullScreenToggle = _ref$enableFullScreen === void 0 ? true : _ref$enableFullScreen,
|
|
3601
3618
|
_ref$enableGlobalFilt = _ref.enableGlobalFilter,
|
|
3602
3619
|
enableGlobalFilter = _ref$enableGlobalFilt === void 0 ? true : _ref$enableGlobalFilt,
|
|
3620
|
+
_ref$enableGlobalFilt2 = _ref.enableGlobalFilterChangeMode,
|
|
3621
|
+
enableGlobalFilterChangeMode = _ref$enableGlobalFilt2 === void 0 ? true : _ref$enableGlobalFilt2,
|
|
3603
3622
|
_ref$enableGrouping = _ref.enableGrouping,
|
|
3604
3623
|
enableGrouping = _ref$enableGrouping === void 0 ? false : _ref$enableGrouping,
|
|
3605
3624
|
_ref$enableHiding = _ref.enableHiding,
|
|
@@ -3652,6 +3671,7 @@ var MaterialReactTable = (function (_ref) {
|
|
|
3652
3671
|
defaultColumn: defaultColumn,
|
|
3653
3672
|
editingMode: editingMode,
|
|
3654
3673
|
enableColumnActions: enableColumnActions,
|
|
3674
|
+
enableColumnFilterChangeMode: enableColumnFilterChangeMode,
|
|
3655
3675
|
enableColumnFilters: enableColumnFilters,
|
|
3656
3676
|
enableColumnOrdering: enableColumnOrdering,
|
|
3657
3677
|
enableColumnResizing: enableColumnResizing,
|
|
@@ -3660,6 +3680,7 @@ var MaterialReactTable = (function (_ref) {
|
|
|
3660
3680
|
enableFilters: enableFilters,
|
|
3661
3681
|
enableFullScreenToggle: enableFullScreenToggle,
|
|
3662
3682
|
enableGlobalFilter: enableGlobalFilter,
|
|
3683
|
+
enableGlobalFilterChangeMode: enableGlobalFilterChangeMode,
|
|
3663
3684
|
enableGrouping: enableGrouping,
|
|
3664
3685
|
enableHiding: enableHiding,
|
|
3665
3686
|
enableMultiRowSelection: enableMultiRowSelection,
|