material-react-table 0.5.4 → 0.5.5
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/icons.d.ts +3 -0
- package/dist/localization.d.ts +4 -0
- package/dist/material-react-table.cjs.development.js +115 -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 +116 -60
- package/dist/material-react-table.esm.js.map +1 -1
- package/dist/menus/{MRT_FilterMenu.d.ts → MRT_FilterTypeMenu.d.ts} +1 -1
- package/package.json +1 -1
- package/src/buttons/MRT_ShowHideColumnsButton.tsx +34 -31
- package/src/footer/MRT_TableFooterCell.tsx +1 -1
- package/src/head/MRT_TableHeadCell.tsx +47 -1
- package/src/{icons.tsx → icons.ts} +9 -0
- package/src/inputs/MRT_FilterTextField.tsx +11 -7
- package/src/localization.ts +11 -3
- package/src/menus/MRT_ColumnActionMenu.tsx +40 -13
- package/src/menus/{MRT_FilterMenu.tsx → MRT_FilterTypeMenu.tsx} +17 -19
- package/src/menus/MRT_RowActionMenu.tsx +20 -9
- package/src/menus/MRT_ShowHideColumnsMenu.tsx +1 -1
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import React, { useState, useMemo, useContext, createContext, Fragment, useRef, useEffect } from 'react';
|
|
2
2
|
import { useTable, useFilters, useGlobalFilter, useGroupBy, useSortBy, useExpanded, usePagination, useRowSelect, useResizeColumns, useFlexLayout, useAsyncDebounce } from 'react-table';
|
|
3
3
|
import { matchSorter } from 'match-sorter';
|
|
4
|
-
import { Menu,
|
|
4
|
+
import { Menu, MenuList, MenuItem, TextField, InputAdornment, Tooltip, IconButton, Chip, ListItemIcon, ListItemText, TableCell, Box, TableSortLabel, Divider, Collapse, Checkbox, TableRow, TableHead, alpha, TableBody, TableFooter, Table, FormControlLabel, Switch, Button, TablePagination, useMediaQuery, Alert, Toolbar, TableContainer, Paper, LinearProgress } from '@mui/material';
|
|
5
5
|
import ArrowRightIcon from '@mui/icons-material/ArrowRight';
|
|
6
6
|
import CancelIcon from '@mui/icons-material/Cancel';
|
|
7
7
|
import ClearAllIcon from '@mui/icons-material/ClearAll';
|
|
@@ -13,6 +13,8 @@ import DynamicFeedIcon from '@mui/icons-material/DynamicFeed';
|
|
|
13
13
|
import EditIcon from '@mui/icons-material/Edit';
|
|
14
14
|
import ExpandLessIcon from '@mui/icons-material/ExpandLess';
|
|
15
15
|
import ExpandMoreIcon from '@mui/icons-material/ExpandMore';
|
|
16
|
+
import FilterAltIcon from '@mui/icons-material/FilterAlt';
|
|
17
|
+
import FilterAltOff from '@mui/icons-material/FilterAltOff';
|
|
16
18
|
import FilterListIcon from '@mui/icons-material/FilterList';
|
|
17
19
|
import FilterListOffIcon from '@mui/icons-material/FilterListOff';
|
|
18
20
|
import FullscreenExitIcon from '@mui/icons-material/FullscreenExit';
|
|
@@ -296,7 +298,7 @@ var useMRT = function useMRT() {
|
|
|
296
298
|
return useContext(MaterialReactTableContext);
|
|
297
299
|
};
|
|
298
300
|
|
|
299
|
-
var
|
|
301
|
+
var MRT_FilterTypeMenu = function MRT_FilterTypeMenu(_ref) {
|
|
300
302
|
var anchorEl = _ref.anchorEl,
|
|
301
303
|
column = _ref.column,
|
|
302
304
|
onSelect = _ref.onSelect,
|
|
@@ -343,7 +345,7 @@ var MRT_FilterMenu = function MRT_FilterMenu(_ref) {
|
|
|
343
345
|
}];
|
|
344
346
|
}, []);
|
|
345
347
|
|
|
346
|
-
var
|
|
348
|
+
var handleSelectFilterType = function handleSelectFilterType(value) {
|
|
347
349
|
setAnchorEl(null);
|
|
348
350
|
setCurrentFilterTypes(function (prev) {
|
|
349
351
|
var _extends2;
|
|
@@ -361,21 +363,18 @@ var MRT_FilterMenu = function MRT_FilterMenu(_ref) {
|
|
|
361
363
|
var filterType = tableInstance.state.currentFilterTypes[column.id];
|
|
362
364
|
return React.createElement(Menu, {
|
|
363
365
|
anchorEl: anchorEl,
|
|
364
|
-
open: !!anchorEl,
|
|
365
366
|
anchorOrigin: {
|
|
366
367
|
vertical: 'center',
|
|
367
368
|
horizontal: 'right'
|
|
368
369
|
},
|
|
369
370
|
onClose: function onClose() {
|
|
370
371
|
return setAnchorEl(null);
|
|
371
|
-
}
|
|
372
|
-
|
|
373
|
-
|
|
374
|
-
|
|
375
|
-
|
|
376
|
-
|
|
377
|
-
}
|
|
378
|
-
}, localization.filterMenuTitle), React.createElement(Divider, null), filterTypes.map(function (_ref2) {
|
|
372
|
+
},
|
|
373
|
+
open: !!anchorEl
|
|
374
|
+
}, React.createElement(MenuList, {
|
|
375
|
+
dense: tableInstance.state.densePadding,
|
|
376
|
+
disablePadding: true
|
|
377
|
+
}, filterTypes.map(function (_ref2) {
|
|
379
378
|
var type = _ref2.type,
|
|
380
379
|
label = _ref2.label,
|
|
381
380
|
divider = _ref2.divider;
|
|
@@ -383,12 +382,12 @@ var MRT_FilterMenu = function MRT_FilterMenu(_ref) {
|
|
|
383
382
|
divider: divider,
|
|
384
383
|
key: type,
|
|
385
384
|
onClick: function onClick() {
|
|
386
|
-
return
|
|
385
|
+
return handleSelectFilterType(type);
|
|
387
386
|
},
|
|
388
387
|
selected: type === filterType,
|
|
389
388
|
value: type
|
|
390
389
|
}, label);
|
|
391
|
-
}));
|
|
390
|
+
})));
|
|
392
391
|
};
|
|
393
392
|
|
|
394
393
|
var MRT_FilterTextField = function MRT_FilterTextField(_ref) {
|
|
@@ -451,19 +450,21 @@ var MRT_FilterTextField = function MRT_FilterTextField(_ref) {
|
|
|
451
450
|
}
|
|
452
451
|
|
|
453
452
|
var filterType = tableInstance.state.currentFilterTypes[column.id];
|
|
454
|
-
var
|
|
453
|
+
var filterChipLabel = ['empty', 'notEmpty'].includes(filterType);
|
|
455
454
|
var filterPlaceholder = (_localization$filterT = localization.filterTextFieldPlaceholder) == null ? void 0 : _localization$filterT.replace('{column}', String(column.Header));
|
|
456
455
|
return React.createElement(React.Fragment, null, React.createElement(TextField, Object.assign({
|
|
457
456
|
fullWidth: true,
|
|
458
457
|
id: "mrt-" + idPrefix + "-" + column.id + "-filter-text-field",
|
|
459
458
|
inputProps: {
|
|
459
|
+
disabled: !!filterChipLabel,
|
|
460
460
|
sx: {
|
|
461
|
-
textOverflow: 'ellipsis'
|
|
461
|
+
textOverflow: 'ellipsis',
|
|
462
|
+
width: filterChipLabel ? 0 : 'auto'
|
|
462
463
|
},
|
|
463
464
|
title: filterPlaceholder
|
|
464
465
|
},
|
|
465
466
|
margin: "none",
|
|
466
|
-
placeholder:
|
|
467
|
+
placeholder: filterChipLabel ? '' : filterPlaceholder,
|
|
467
468
|
onChange: function onChange(e) {
|
|
468
469
|
setFilterValue(e.target.value);
|
|
469
470
|
handleChange(e.target.value);
|
|
@@ -486,11 +487,11 @@ var MRT_FilterTextField = function MRT_FilterTextField(_ref) {
|
|
|
486
487
|
height: '1.75rem',
|
|
487
488
|
width: '1.75rem'
|
|
488
489
|
}
|
|
489
|
-
}, React.createElement(FilterListIcon, null))),
|
|
490
|
+
}, React.createElement(FilterListIcon, null))), filterChipLabel && React.createElement(Chip, {
|
|
490
491
|
onDelete: handleClearFilterChip,
|
|
491
492
|
label: filterType
|
|
492
493
|
})),
|
|
493
|
-
endAdornment: !
|
|
494
|
+
endAdornment: !filterChipLabel && React.createElement(InputAdornment, {
|
|
494
495
|
position: "end"
|
|
495
496
|
}, React.createElement(Tooltip, {
|
|
496
497
|
arrow: true,
|
|
@@ -511,15 +512,21 @@ var MRT_FilterTextField = function MRT_FilterTextField(_ref) {
|
|
|
511
512
|
}
|
|
512
513
|
}, textFieldProps, {
|
|
513
514
|
sx: _extends({
|
|
514
|
-
|
|
515
|
+
m: '0 -0.25rem',
|
|
516
|
+
minWidth: !filterChipLabel ? '5rem' : 'auto',
|
|
517
|
+
width: 'calc(100% + 0.5rem)'
|
|
515
518
|
}, textFieldProps == null ? void 0 : textFieldProps.sx)
|
|
516
|
-
})), React.createElement(
|
|
519
|
+
})), React.createElement(MRT_FilterTypeMenu, {
|
|
517
520
|
anchorEl: anchorEl,
|
|
518
521
|
column: column,
|
|
519
522
|
setAnchorEl: setAnchorEl
|
|
520
523
|
}));
|
|
521
524
|
};
|
|
522
525
|
|
|
526
|
+
var commonMenuItemStyles = {
|
|
527
|
+
display: 'flex',
|
|
528
|
+
alignItems: 'center'
|
|
529
|
+
};
|
|
523
530
|
var MRT_ColumnActionMenu = function MRT_ColumnActionMenu(_ref) {
|
|
524
531
|
var _localization$columnA, _localization$columnA2, _localization$filterT, _localization, _localization$columnA3;
|
|
525
532
|
|
|
@@ -533,6 +540,7 @@ var MRT_ColumnActionMenu = function MRT_ColumnActionMenu(_ref) {
|
|
|
533
540
|
disableSortBy = _useMRT.disableSortBy,
|
|
534
541
|
enableColumnGrouping = _useMRT.enableColumnGrouping,
|
|
535
542
|
_useMRT$icons = _useMRT.icons,
|
|
543
|
+
ArrowRightIcon = _useMRT$icons.ArrowRightIcon,
|
|
536
544
|
ClearAllIcon = _useMRT$icons.ClearAllIcon,
|
|
537
545
|
DynamicFeedIcon = _useMRT$icons.DynamicFeedIcon,
|
|
538
546
|
FilterListIcon = _useMRT$icons.FilterListIcon,
|
|
@@ -540,7 +548,8 @@ var MRT_ColumnActionMenu = function MRT_ColumnActionMenu(_ref) {
|
|
|
540
548
|
VisibilityOffIcon = _useMRT$icons.VisibilityOffIcon,
|
|
541
549
|
idPrefix = _useMRT.idPrefix,
|
|
542
550
|
localization = _useMRT.localization,
|
|
543
|
-
setShowFilters = _useMRT.setShowFilters
|
|
551
|
+
setShowFilters = _useMRT.setShowFilters,
|
|
552
|
+
tableInstance = _useMRT.tableInstance;
|
|
544
553
|
|
|
545
554
|
var _useState = useState(null),
|
|
546
555
|
filterMenuAnchorEl = _useState[0],
|
|
@@ -593,46 +602,56 @@ var MRT_ColumnActionMenu = function MRT_ColumnActionMenu(_ref) {
|
|
|
593
602
|
onClose: function onClose() {
|
|
594
603
|
return setAnchorEl(null);
|
|
595
604
|
}
|
|
596
|
-
}, React.createElement(MenuList,
|
|
605
|
+
}, React.createElement(MenuList, {
|
|
606
|
+
dense: tableInstance.state.densePadding,
|
|
607
|
+
disablePadding: true
|
|
608
|
+
}, !disableSortBy && column.canSort && [React.createElement(MenuItem, {
|
|
597
609
|
key: 1,
|
|
598
610
|
disabled: !column.isSorted,
|
|
599
|
-
onClick: handleClearSort
|
|
611
|
+
onClick: handleClearSort,
|
|
612
|
+
sx: commonMenuItemStyles
|
|
600
613
|
}, React.createElement(ListItemIcon, null, React.createElement(ClearAllIcon, null)), React.createElement(ListItemText, null, localization.columnActionMenuItemClearSort)), React.createElement(MenuItem, {
|
|
601
|
-
key: 2,
|
|
602
614
|
disabled: column.isSorted && !column.isSortedDesc,
|
|
603
|
-
|
|
615
|
+
key: 2,
|
|
616
|
+
onClick: handleSortAsc,
|
|
617
|
+
sx: commonMenuItemStyles
|
|
604
618
|
}, React.createElement(ListItemIcon, null, React.createElement(SortIcon, null)), React.createElement(ListItemText, null, (_localization$columnA = localization.columnActionMenuItemSortAsc) == null ? void 0 : _localization$columnA.replace('{column}', String(column.Header)))), React.createElement(MenuItem, {
|
|
619
|
+
divider: !disableFilters || enableColumnGrouping || !disableColumnHiding,
|
|
605
620
|
key: 3,
|
|
606
621
|
disabled: column.isSorted && column.isSortedDesc,
|
|
607
|
-
onClick: handleSortDesc
|
|
622
|
+
onClick: handleSortDesc,
|
|
623
|
+
sx: commonMenuItemStyles
|
|
608
624
|
}, React.createElement(ListItemIcon, null, React.createElement(SortIcon, {
|
|
609
625
|
style: {
|
|
610
626
|
transform: 'rotate(180deg) scaleX(-1)'
|
|
611
627
|
}
|
|
612
|
-
})), React.createElement(ListItemText, null, (_localization$columnA2 = localization.columnActionMenuItemSortDesc) == null ? void 0 : _localization$columnA2.replace('{column}', String(column.Header))))], !disableFilters && column.canFilter && [React.createElement(
|
|
613
|
-
|
|
614
|
-
}), React.createElement(MenuItem, {
|
|
628
|
+
})), React.createElement(ListItemText, null, (_localization$columnA2 = localization.columnActionMenuItemSortDesc) == null ? void 0 : _localization$columnA2.replace('{column}', String(column.Header))))], !disableFilters && column.canFilter && [React.createElement(MenuItem, {
|
|
629
|
+
divider: enableColumnGrouping || !disableColumnHiding,
|
|
615
630
|
key: 1,
|
|
616
|
-
onClick: handleFilterByColumn
|
|
631
|
+
onClick: handleFilterByColumn,
|
|
632
|
+
sx: commonMenuItemStyles
|
|
617
633
|
}, React.createElement(ListItemIcon, null, React.createElement(FilterListIcon, null)), React.createElement(ListItemText, null, (_localization$filterT = localization.filterTextFieldPlaceholder) == null ? void 0 : _localization$filterT.replace('{column}', String(column.Header))), React.createElement(IconButton, {
|
|
634
|
+
onClick: handleOpenFilterModeMenu,
|
|
635
|
+
onMouseEnter: handleOpenFilterModeMenu,
|
|
618
636
|
size: "small",
|
|
619
|
-
|
|
620
|
-
|
|
637
|
+
sx: {
|
|
638
|
+
p: 0
|
|
639
|
+
}
|
|
640
|
+
}, React.createElement(ArrowRightIcon, null))), React.createElement(MRT_FilterTypeMenu, {
|
|
621
641
|
anchorEl: filterMenuAnchorEl,
|
|
622
642
|
column: column,
|
|
623
643
|
key: 2,
|
|
624
644
|
setAnchorEl: setFilterMenuAnchorEl,
|
|
625
645
|
onSelect: handleFilterByColumn
|
|
626
|
-
})], enableColumnGrouping && column.canGroupBy && [React.createElement(
|
|
627
|
-
|
|
628
|
-
}), React.createElement(MenuItem, {
|
|
646
|
+
})], enableColumnGrouping && column.canGroupBy && [React.createElement(MenuItem, {
|
|
647
|
+
divider: !disableColumnHiding,
|
|
629
648
|
key: 2,
|
|
630
|
-
onClick: handleGroupByColumn
|
|
631
|
-
|
|
632
|
-
|
|
633
|
-
}), React.createElement(MenuItem, {
|
|
649
|
+
onClick: handleGroupByColumn,
|
|
650
|
+
sx: commonMenuItemStyles
|
|
651
|
+
}, React.createElement(ListItemIcon, null, React.createElement(DynamicFeedIcon, null)), React.createElement(ListItemText, null, (_localization = localization[column.isGrouped ? 'columnActionMenuItemUnGroupBy' : 'columnActionMenuItemGroupBy']) == null ? void 0 : _localization.replace('{column}', String(column.Header))))], !disableColumnHiding && [React.createElement(MenuItem, {
|
|
634
652
|
key: 1,
|
|
635
|
-
onClick: handleHideColumn
|
|
653
|
+
onClick: handleHideColumn,
|
|
654
|
+
sx: commonMenuItemStyles
|
|
636
655
|
}, React.createElement(ListItemIcon, null, React.createElement(VisibilityOffIcon, null)), React.createElement(ListItemText, null, (_localization$columnA3 = localization.columnActionMenuItemHideColumn) == null ? void 0 : _localization$columnA3.replace('{column}', String(column.Header))))]));
|
|
637
656
|
};
|
|
638
657
|
|
|
@@ -691,7 +710,7 @@ var commonTableHeadCellStyles = function commonTableHeadCellStyles(densePadding,
|
|
|
691
710
|
};
|
|
692
711
|
};
|
|
693
712
|
var MRT_TableHeadCell = function MRT_TableHeadCell(_ref) {
|
|
694
|
-
var _column$columns
|
|
713
|
+
var _column$columns, _localization$columnA, _localization$columnA2;
|
|
695
714
|
|
|
696
715
|
var column = _ref.column;
|
|
697
716
|
|
|
@@ -699,11 +718,15 @@ var MRT_TableHeadCell = function MRT_TableHeadCell(_ref) {
|
|
|
699
718
|
disableColumnActions = _useMRT.disableColumnActions,
|
|
700
719
|
disableFilters = _useMRT.disableFilters,
|
|
701
720
|
enableColumnResizing = _useMRT.enableColumnResizing,
|
|
721
|
+
_useMRT$icons = _useMRT.icons,
|
|
722
|
+
FilterAltIcon = _useMRT$icons.FilterAltIcon,
|
|
723
|
+
FilterAltOff = _useMRT$icons.FilterAltOff,
|
|
702
724
|
localization = _useMRT.localization,
|
|
703
725
|
muiTableHeadCellProps = _useMRT.muiTableHeadCellProps,
|
|
726
|
+
setShowFilters = _useMRT.setShowFilters,
|
|
704
727
|
tableInstance = _useMRT.tableInstance;
|
|
705
728
|
|
|
706
|
-
var isParentHeader = (
|
|
729
|
+
var isParentHeader = !!(column != null && (_column$columns = column.columns) != null && _column$columns.length);
|
|
707
730
|
var mTableHeadCellProps = muiTableHeadCellProps instanceof Function ? muiTableHeadCellProps(column) : muiTableHeadCellProps;
|
|
708
731
|
var mcTableHeadCellProps = column.muiTableHeadCellProps instanceof Function ? column.muiTableHeadCellProps(column) : column.muiTableHeadCellProps;
|
|
709
732
|
|
|
@@ -712,6 +735,8 @@ var MRT_TableHeadCell = function MRT_TableHeadCell(_ref) {
|
|
|
712
735
|
});
|
|
713
736
|
|
|
714
737
|
var sortTooltip = column.isSorted ? column.isSortedDesc ? localization.columnActionMenuItemClearSort : (_localization$columnA = localization.columnActionMenuItemSortDesc) == null ? void 0 : _localization$columnA.replace('{column}', column.Header) : (_localization$columnA2 = localization.columnActionMenuItemSortAsc) == null ? void 0 : _localization$columnA2.replace('{column}', column.Header);
|
|
738
|
+
var filterTooltip = !!column.filterValue ? localization.filterApplied.replace('{column}', String(column.Header)).replace('{filterType}', // @ts-ignore
|
|
739
|
+
localization["filterMenuItem" + (tableInstance.state.currentFilterTypes[column.id].charAt(0).toUpperCase() + tableInstance.state.currentFilterTypes[column.id].slice(1))]) : localization.toggleFilterButtonTitle;
|
|
715
740
|
var columnHeader = column.render('Header');
|
|
716
741
|
return React.createElement(TableCell, Object.assign({
|
|
717
742
|
align: isParentHeader ? 'center' : 'left'
|
|
@@ -739,7 +764,29 @@ var MRT_TableHeadCell = function MRT_TableHeadCell(_ref) {
|
|
|
739
764
|
"aria-label": sortTooltip,
|
|
740
765
|
active: column.isSorted,
|
|
741
766
|
direction: column.isSortedDesc ? 'desc' : 'asc'
|
|
742
|
-
}))
|
|
767
|
+
})), !isParentHeader && !!column.canFilter && React.createElement(Tooltip, {
|
|
768
|
+
arrow: true,
|
|
769
|
+
title: filterTooltip
|
|
770
|
+
}, React.createElement(IconButton, {
|
|
771
|
+
onClick: function onClick(event) {
|
|
772
|
+
event.stopPropagation();
|
|
773
|
+
setShowFilters(!tableInstance.state.showFilters);
|
|
774
|
+
},
|
|
775
|
+
size: "small",
|
|
776
|
+
sx: {
|
|
777
|
+
opacity: !!column.filterValue ? 0.8 : 0,
|
|
778
|
+
p: '2px',
|
|
779
|
+
m: 0,
|
|
780
|
+
transition: 'all 0.2s ease-in-out',
|
|
781
|
+
'&:hover': {
|
|
782
|
+
opacity: 0.8
|
|
783
|
+
}
|
|
784
|
+
}
|
|
785
|
+
}, tableInstance.state.showFilters && !column.filterValue ? React.createElement(FilterAltOff, {
|
|
786
|
+
fontSize: "small"
|
|
787
|
+
}) : React.createElement(FilterAltIcon, {
|
|
788
|
+
fontSize: "small"
|
|
789
|
+
})))), React.createElement(Box, {
|
|
743
790
|
sx: {
|
|
744
791
|
alignItems: 'center',
|
|
745
792
|
display: 'flex',
|
|
@@ -1085,15 +1132,14 @@ var MRT_RowActionMenu = function MRT_RowActionMenu(_ref) {
|
|
|
1085
1132
|
onClose: function onClose() {
|
|
1086
1133
|
return setAnchorEl(null);
|
|
1087
1134
|
}
|
|
1135
|
+
}, React.createElement(MenuList, {
|
|
1136
|
+
dense: tableInstance.state.densePadding,
|
|
1137
|
+
disablePadding: true
|
|
1088
1138
|
}, enableRowEditing && React.createElement(MenuItem, {
|
|
1089
|
-
sx: {
|
|
1090
|
-
display: 'flex',
|
|
1091
|
-
gap: '0.75rem'
|
|
1092
|
-
},
|
|
1093
1139
|
onClick: handleEdit
|
|
1094
|
-
}, React.createElement(EditIcon, null),
|
|
1140
|
+
}, React.createElement(ListItemIcon, null, React.createElement(EditIcon, null)), React.createElement(ListItemText, null, localization.rowActionMenuItemEdit)), (_renderRowActionMenuI = renderRowActionMenuItems == null ? void 0 : renderRowActionMenuItems(row, tableInstance, function () {
|
|
1095
1141
|
return setAnchorEl(null);
|
|
1096
|
-
})) != null ? _renderRowActionMenuI : null);
|
|
1142
|
+
})) != null ? _renderRowActionMenuI : null));
|
|
1097
1143
|
};
|
|
1098
1144
|
|
|
1099
1145
|
function createCommonjsModule(fn, module) {
|
|
@@ -2068,7 +2114,7 @@ var MRT_TableBody = function MRT_TableBody() {
|
|
|
2068
2114
|
};
|
|
2069
2115
|
|
|
2070
2116
|
var MRT_TableFooterCell = function MRT_TableFooterCell(_ref) {
|
|
2071
|
-
var _column$columns
|
|
2117
|
+
var _column$columns;
|
|
2072
2118
|
|
|
2073
2119
|
var column = _ref.column;
|
|
2074
2120
|
|
|
@@ -2077,7 +2123,7 @@ var MRT_TableFooterCell = function MRT_TableFooterCell(_ref) {
|
|
|
2077
2123
|
enableColumnResizing = _useMRT.enableColumnResizing,
|
|
2078
2124
|
densePadding = _useMRT.tableInstance.state.densePadding;
|
|
2079
2125
|
|
|
2080
|
-
var isParentHeader = (
|
|
2126
|
+
var isParentHeader = !!(column != null && (_column$columns = column.columns) != null && _column$columns.length);
|
|
2081
2127
|
var mTableFooterCellProps = muiTableFooterCellProps instanceof Function ? muiTableFooterCellProps(column) : muiTableFooterCellProps;
|
|
2082
2128
|
var mcTableFooterCellProps = column.muiTableFooterCellProps instanceof Function ? column.muiTableFooterCellProps(column) : column.muiTableFooterCellProps;
|
|
2083
2129
|
|
|
@@ -2253,10 +2299,10 @@ var MRT_FullScreenToggleButton = function MRT_FullScreenToggleButton(_ref) {
|
|
|
2253
2299
|
};
|
|
2254
2300
|
|
|
2255
2301
|
var MRT_ShowHideColumnsMenu = function MRT_ShowHideColumnsMenu(_ref) {
|
|
2256
|
-
var _column$columns
|
|
2302
|
+
var _column$columns, _column$columns2, _column$isVisible, _column$columns4;
|
|
2257
2303
|
|
|
2258
2304
|
var column = _ref.column;
|
|
2259
|
-
var isParentHeader = (
|
|
2305
|
+
var isParentHeader = !!(column != null && (_column$columns = column.columns) != null && _column$columns.length);
|
|
2260
2306
|
var allChildColumnsVisible = isParentHeader && !!((_column$columns2 = column.columns) != null && _column$columns2.every(function (childColumn) {
|
|
2261
2307
|
return childColumn.isVisible;
|
|
2262
2308
|
}));
|
|
@@ -2297,9 +2343,9 @@ var MRT_ShowHideColumnsButton = function MRT_ShowHideColumnsButton(_ref) {
|
|
|
2297
2343
|
var rest = _extends({}, _ref);
|
|
2298
2344
|
|
|
2299
2345
|
var _useMRT = useMRT(),
|
|
2300
|
-
|
|
2346
|
+
ViewColumnIcon = _useMRT.icons.ViewColumnIcon,
|
|
2301
2347
|
localization = _useMRT.localization,
|
|
2302
|
-
|
|
2348
|
+
tableInstance = _useMRT.tableInstance;
|
|
2303
2349
|
|
|
2304
2350
|
var _useState = useState(null),
|
|
2305
2351
|
anchorEl = _useState[0],
|
|
@@ -2322,6 +2368,9 @@ var MRT_ShowHideColumnsButton = function MRT_ShowHideColumnsButton(_ref) {
|
|
|
2322
2368
|
onClose: function onClose() {
|
|
2323
2369
|
return setAnchorEl(null);
|
|
2324
2370
|
}
|
|
2371
|
+
}, React.createElement(MenuList, {
|
|
2372
|
+
dense: tableInstance.state.densePadding,
|
|
2373
|
+
disablePadding: true
|
|
2325
2374
|
}, React.createElement(Box, {
|
|
2326
2375
|
sx: {
|
|
2327
2376
|
display: 'flex',
|
|
@@ -2343,7 +2392,7 @@ var MRT_ShowHideColumnsButton = function MRT_ShowHideColumnsButton(_ref) {
|
|
|
2343
2392
|
key: index + "-" + column.id,
|
|
2344
2393
|
column: column
|
|
2345
2394
|
});
|
|
2346
|
-
})));
|
|
2395
|
+
}))));
|
|
2347
2396
|
};
|
|
2348
2397
|
|
|
2349
2398
|
var MRT_ToggleDensePaddingButton = function MRT_ToggleDensePaddingButton(_ref) {
|
|
@@ -2691,15 +2740,19 @@ var MRT_DefaultLocalization_EN = {
|
|
|
2691
2740
|
columnShowHideMenuShowAll: 'Show all',
|
|
2692
2741
|
expandAllButtonTitle: 'Expand all',
|
|
2693
2742
|
expandButtonTitle: 'Expand',
|
|
2743
|
+
filterApplied: 'Filtering by {column} - ({filterType})',
|
|
2694
2744
|
filterMenuItemContains: 'Contains Exact',
|
|
2695
2745
|
filterMenuItemEmpty: 'Empty',
|
|
2696
2746
|
filterMenuItemEndsWith: 'Ends With',
|
|
2697
2747
|
filterMenuItemEquals: 'Equals',
|
|
2698
|
-
filterMenuItemFuzzy: 'Fuzzy Match',
|
|
2748
|
+
filterMenuItemFuzzy: 'Fuzzy Match (Default)',
|
|
2699
2749
|
filterMenuItemNotEmpty: 'Not Empty',
|
|
2700
2750
|
filterMenuItemNotEquals: 'Not Equals',
|
|
2701
2751
|
filterMenuItemStartsWith: 'Starts With',
|
|
2702
2752
|
filterMenuTitle: 'Filter Mode',
|
|
2753
|
+
filterTextFieldChangeFilterButtonTitle: 'Change Filter Mode',
|
|
2754
|
+
filterTextFieldChipLabelEmpty: 'Empty',
|
|
2755
|
+
filterTextFieldChipLabelNotEmpty: 'Not Empty',
|
|
2703
2756
|
filterTextFieldClearButtonTitle: 'Clear filter',
|
|
2704
2757
|
filterTextFieldPlaceholder: 'Filter by {column}',
|
|
2705
2758
|
rowActionButtonCancel: 'Cancel',
|
|
@@ -2713,15 +2766,16 @@ var MRT_DefaultLocalization_EN = {
|
|
|
2713
2766
|
selectCheckboxTitle: 'Toggle select row',
|
|
2714
2767
|
showHideColumnsButtonTitle: 'Show/Hide columns',
|
|
2715
2768
|
toggleDensePaddingSwitchTitle: 'Toggle dense padding',
|
|
2716
|
-
toggleFilterButtonTitle: '
|
|
2769
|
+
toggleFilterButtonTitle: 'Show/Hide filters',
|
|
2717
2770
|
toggleFullScreenButtonTitle: 'Toggle full screen',
|
|
2718
|
-
toggleSearchButtonTitle: '
|
|
2771
|
+
toggleSearchButtonTitle: 'Show/Hide search',
|
|
2719
2772
|
toolbarAlertGroupedByMessage: 'Grouped by ',
|
|
2720
2773
|
toolbarAlertGroupedThenByMessage: ', then by ',
|
|
2721
2774
|
toolbarAlertSelectionMessage: '{selectedCount} of {rowCount} row(s) selected'
|
|
2722
2775
|
};
|
|
2723
2776
|
|
|
2724
2777
|
var MRT_Default_Icons = {
|
|
2778
|
+
ArrowRightIcon: ArrowRightIcon,
|
|
2725
2779
|
CancelIcon: CancelIcon,
|
|
2726
2780
|
ClearAllIcon: ClearAllIcon,
|
|
2727
2781
|
CloseIcon: CloseIcon,
|
|
@@ -2732,6 +2786,8 @@ var MRT_Default_Icons = {
|
|
|
2732
2786
|
EditIcon: EditIcon,
|
|
2733
2787
|
ExpandLessIcon: ExpandLessIcon,
|
|
2734
2788
|
ExpandMoreIcon: ExpandMoreIcon,
|
|
2789
|
+
FilterAltIcon: FilterAltIcon,
|
|
2790
|
+
FilterAltOff: FilterAltOff,
|
|
2735
2791
|
FilterListIcon: FilterListIcon,
|
|
2736
2792
|
FilterListOffIcon: FilterListOffIcon,
|
|
2737
2793
|
FullscreenExitIcon: FullscreenExitIcon,
|