material-react-table 0.6.7 → 0.6.10
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 -3
- package/dist/enums.d.ts +2 -1
- package/dist/filtersFNs.d.ts +13 -5
- package/dist/localization.d.ts +3 -1
- package/dist/material-react-table.cjs.development.js +339 -248
- 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 +340 -249
- package/dist/material-react-table.esm.js.map +1 -1
- package/dist/menus/MRT_FilterTypeMenu.d.ts +1 -1
- package/dist/useMRT.d.ts +1 -0
- package/dist/utils.d.ts +2 -2
- package/package.json +1 -1
- package/src/MaterialReactTable.tsx +29 -4
- package/src/body/MRT_TableBodyCell.tsx +8 -2
- package/src/body/MRT_TableBodyRow.tsx +30 -7
- package/src/buttons/MRT_CopyButton.tsx +24 -6
- package/src/buttons/MRT_ExpandAllButton.tsx +13 -20
- package/src/buttons/MRT_ExpandButton.tsx +20 -33
- package/src/buttons/MRT_ToggleColumnActionMenuButton.tsx +19 -1
- package/src/enums.ts +2 -1
- package/src/filtersFNs.ts +17 -3
- package/src/head/MRT_TableHeadCell.tsx +6 -3
- package/src/head/MRT_TableHeadRow.tsx +38 -15
- package/src/inputs/MRT_EditCellTextField.tsx +0 -6
- package/src/inputs/MRT_FilterTextField.tsx +1 -12
- package/src/inputs/MRT_SearchTextField.tsx +27 -3
- package/src/inputs/MRT_SelectCheckbox.tsx +58 -31
- package/src/localization.ts +7 -3
- package/src/menus/MRT_ColumnActionMenu.tsx +6 -1
- package/src/menus/MRT_FilterTypeMenu.tsx +44 -18
- package/src/menus/MRT_ShowHideColumnsMenu.tsx +12 -1
- package/src/menus/MRT_ShowHideColumnsMenuItems.tsx +1 -1
- package/src/table/MRT_TableSpacerCell.tsx +1 -8
- package/src/useMRT.tsx +12 -1
- package/src/utils.ts +8 -4
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import React, { useState, useCallback, useMemo, useContext, createContext, Fragment, useEffect } from 'react';
|
|
2
2
|
import { useTable, useFilters, useGlobalFilter, useGroupBy, useSortBy, useExpanded, usePagination, useRowSelect, useResizeColumns, useFlexLayout, useAsyncDebounce } from 'react-table';
|
|
3
|
-
import { Menu, MenuItem, TextField, InputAdornment, Tooltip, IconButton, Chip, FormControlLabel, Switch, Box, Button, Divider, ListItemIcon, TableCell, TableSortLabel, Collapse,
|
|
3
|
+
import { Menu, MenuItem, TextField, InputAdornment, Tooltip, IconButton, Chip, FormControlLabel, Switch, Box, Button, Divider, ListItemIcon, TableCell, TableSortLabel, Collapse, Checkbox, TableRow, TableHead, Skeleton, TableBody, TableFooter, Table, TablePagination, useMediaQuery, Alert, LinearProgress, Toolbar, alpha, TableContainer, Paper } from '@mui/material';
|
|
4
4
|
import { matchSorter } from 'match-sorter';
|
|
5
5
|
import ArrowRightIcon from '@mui/icons-material/ArrowRight';
|
|
6
6
|
import CancelIcon from '@mui/icons-material/Cancel';
|
|
@@ -99,6 +99,22 @@ function _objectWithoutPropertiesLoose(source, excluded) {
|
|
|
99
99
|
return target;
|
|
100
100
|
}
|
|
101
101
|
|
|
102
|
+
var MRT_FILTER_TYPE;
|
|
103
|
+
|
|
104
|
+
(function (MRT_FILTER_TYPE) {
|
|
105
|
+
MRT_FILTER_TYPE["BEST_MATCH"] = "bestMatch";
|
|
106
|
+
MRT_FILTER_TYPE["BEST_MATCH_FIRST"] = "bestMatchFirst";
|
|
107
|
+
MRT_FILTER_TYPE["CONTAINS"] = "contains";
|
|
108
|
+
MRT_FILTER_TYPE["EMPTY"] = "empty";
|
|
109
|
+
MRT_FILTER_TYPE["ENDS_WITH"] = "endsWith";
|
|
110
|
+
MRT_FILTER_TYPE["EQUALS"] = "equals";
|
|
111
|
+
MRT_FILTER_TYPE["GREATER_THAN"] = "greaterThan";
|
|
112
|
+
MRT_FILTER_TYPE["LESS_THAN"] = "lessThan";
|
|
113
|
+
MRT_FILTER_TYPE["NOT_EMPTY"] = "notEmpty";
|
|
114
|
+
MRT_FILTER_TYPE["NOT_EQUALS"] = "notEquals";
|
|
115
|
+
MRT_FILTER_TYPE["STARTS_WITH"] = "startsWith";
|
|
116
|
+
})(MRT_FILTER_TYPE || (MRT_FILTER_TYPE = {}));
|
|
117
|
+
|
|
102
118
|
var findLowestLevelCols = function findLowestLevelCols(columns) {
|
|
103
119
|
var lowestLevelColumns = columns;
|
|
104
120
|
var currentCols = columns;
|
|
@@ -160,14 +176,18 @@ var MaterialReactTableProvider = function MaterialReactTableProvider(props) {
|
|
|
160
176
|
|
|
161
177
|
var _useState6 = useState(function () {
|
|
162
178
|
return Object.assign.apply(Object, [{}].concat(findLowestLevelCols(props.columns).map(function (c) {
|
|
163
|
-
var _ref, _c$filter, _props$initialState5, _props$initialState5$, _ref2;
|
|
179
|
+
var _ref, _c$filter, _props$initialState5, _props$initialState5$, _c$filterSelectOption, _ref2;
|
|
164
180
|
|
|
165
|
-
return _ref2 = {}, _ref2[c.accessor] = (_ref = (_c$filter = c.filter) != null ? _c$filter : props == null ? void 0 : (_props$initialState5 = props.initialState) == null ? void 0 : (_props$initialState5$ = _props$initialState5.filters) == null ? void 0 : _props$initialState5$[c.accessor]) != null ? _ref : !!c.filterSelectOptions ?
|
|
181
|
+
return _ref2 = {}, _ref2[c.accessor] = (_ref = (_c$filter = c.filter) != null ? _c$filter : props == null ? void 0 : (_props$initialState5 = props.initialState) == null ? void 0 : (_props$initialState5$ = _props$initialState5.filters) == null ? void 0 : _props$initialState5$[c.accessor]) != null ? _ref : !!((_c$filterSelectOption = c.filterSelectOptions) != null && _c$filterSelectOption.length) ? MRT_FILTER_TYPE.EQUALS : MRT_FILTER_TYPE.BEST_MATCH, _ref2;
|
|
166
182
|
})));
|
|
167
183
|
}),
|
|
168
184
|
currentFilterTypes = _useState6[0],
|
|
169
185
|
setCurrentFilterTypes = _useState6[1];
|
|
170
186
|
|
|
187
|
+
var _useState7 = useState(props.globalFilter),
|
|
188
|
+
currentGlobalFilterType = _useState7[0],
|
|
189
|
+
setCurrentGlobalFilterType = _useState7[1];
|
|
190
|
+
|
|
171
191
|
var applyFiltersToColumns = useCallback(function (cols) {
|
|
172
192
|
return cols.map(function (column) {
|
|
173
193
|
if (column.columns) {
|
|
@@ -198,17 +218,19 @@ var MaterialReactTableProvider = function MaterialReactTableProvider(props) {
|
|
|
198
218
|
// @ts-ignore
|
|
199
219
|
columns: columns,
|
|
200
220
|
data: data,
|
|
221
|
+
globalFilter: currentGlobalFilterType,
|
|
201
222
|
useControlledState: function useControlledState(state) {
|
|
202
223
|
return useMemo(function () {
|
|
203
224
|
return _extends({}, state, {
|
|
204
225
|
currentEditingRow: currentEditingRow,
|
|
205
226
|
currentFilterTypes: currentFilterTypes,
|
|
227
|
+
currentGlobalFilterType: currentGlobalFilterType,
|
|
206
228
|
densePadding: densePadding,
|
|
207
229
|
fullScreen: fullScreen,
|
|
208
230
|
showFilters: showFilters,
|
|
209
231
|
showSearch: showSearch
|
|
210
232
|
}, props == null ? void 0 : props.useControlledState == null ? void 0 : props.useControlledState(state));
|
|
211
|
-
}, [currentEditingRow, currentFilterTypes, densePadding, fullScreen, showFilters, showSearch, state]);
|
|
233
|
+
}, [currentEditingRow, currentFilterTypes, currentGlobalFilterType, densePadding, fullScreen, showFilters, showSearch, state]);
|
|
212
234
|
}
|
|
213
235
|
})].concat(hooks));
|
|
214
236
|
var idPrefix = useMemo(function () {
|
|
@@ -234,6 +256,7 @@ var MaterialReactTableProvider = function MaterialReactTableProvider(props) {
|
|
|
234
256
|
//@ts-ignore
|
|
235
257
|
setCurrentEditingRow: setCurrentEditingRow,
|
|
236
258
|
setCurrentFilterTypes: setCurrentFilterTypes,
|
|
259
|
+
setCurrentGlobalFilterType: setCurrentGlobalFilterType,
|
|
237
260
|
setDensePadding: setDensePadding,
|
|
238
261
|
setFullScreen: setFullScreen,
|
|
239
262
|
setShowFilters: setShowFilters,
|
|
@@ -247,22 +270,19 @@ var useMRT = function useMRT() {
|
|
|
247
270
|
return useContext(MaterialReactTableContext);
|
|
248
271
|
};
|
|
249
272
|
|
|
250
|
-
var
|
|
273
|
+
var bestMatchFirst = function bestMatchFirst(rows, columnIds, filterValue) {
|
|
274
|
+
return matchSorter(rows, filterValue.toString().trim(), {
|
|
275
|
+
keys: Array.isArray(columnIds) ? columnIds.map(function (c) {
|
|
276
|
+
return "values." + c;
|
|
277
|
+
}) : ["values." + columnIds]
|
|
278
|
+
});
|
|
279
|
+
};
|
|
251
280
|
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
MRT_FILTER_TYPE["ENDS_WITH"] = "endsWith";
|
|
256
|
-
MRT_FILTER_TYPE["EQUALS"] = "equals";
|
|
257
|
-
MRT_FILTER_TYPE["FUZZY"] = "fuzzy";
|
|
258
|
-
MRT_FILTER_TYPE["GREATER_THAN"] = "greaterThan";
|
|
259
|
-
MRT_FILTER_TYPE["LESS_THAN"] = "lessThan";
|
|
260
|
-
MRT_FILTER_TYPE["NOT_EMPTY"] = "notEmpty";
|
|
261
|
-
MRT_FILTER_TYPE["NOT_EQUALS"] = "notEquals";
|
|
262
|
-
MRT_FILTER_TYPE["STARTS_WITH"] = "startsWith";
|
|
263
|
-
})(MRT_FILTER_TYPE || (MRT_FILTER_TYPE = {}));
|
|
281
|
+
bestMatchFirst.autoRemove = function (val) {
|
|
282
|
+
return !val;
|
|
283
|
+
};
|
|
264
284
|
|
|
265
|
-
var
|
|
285
|
+
var bestMatch = function bestMatch(rows, columnIds, filterValue) {
|
|
266
286
|
return matchSorter(rows, filterValue.toString().trim(), {
|
|
267
287
|
keys: Array.isArray(columnIds) ? columnIds.map(function (c) {
|
|
268
288
|
return "values." + c;
|
|
@@ -273,7 +293,7 @@ var fuzzy = function fuzzy(rows, columnIds, filterValue) {
|
|
|
273
293
|
});
|
|
274
294
|
};
|
|
275
295
|
|
|
276
|
-
|
|
296
|
+
bestMatch.autoRemove = function (val) {
|
|
277
297
|
return !val;
|
|
278
298
|
};
|
|
279
299
|
|
|
@@ -368,11 +388,12 @@ notEmpty.autoRemove = function (val) {
|
|
|
368
388
|
};
|
|
369
389
|
|
|
370
390
|
var defaultFilterFNs = {
|
|
391
|
+
bestMatch: bestMatch,
|
|
392
|
+
bestMatchFirst: bestMatchFirst,
|
|
371
393
|
contains: contains,
|
|
372
394
|
empty: empty,
|
|
373
395
|
endsWith: endsWith,
|
|
374
396
|
equals: equals,
|
|
375
|
-
fuzzy: fuzzy,
|
|
376
397
|
greaterThan: greaterThan,
|
|
377
398
|
lessThan: lessThan,
|
|
378
399
|
notEmpty: notEmpty,
|
|
@@ -392,20 +413,27 @@ var MRT_FilterTypeMenu = function MRT_FilterTypeMenu(_ref) {
|
|
|
392
413
|
setAnchorEl = _ref.setAnchorEl;
|
|
393
414
|
|
|
394
415
|
var _useMRT = useMRT(),
|
|
416
|
+
enabledGlobalFilterTypes = _useMRT.enabledGlobalFilterTypes,
|
|
395
417
|
localization = _useMRT.localization,
|
|
396
418
|
setCurrentFilterTypes = _useMRT.setCurrentFilterTypes,
|
|
419
|
+
setCurrentGlobalFilterType = _useMRT.setCurrentGlobalFilterType,
|
|
397
420
|
tableInstance = _useMRT.tableInstance;
|
|
398
421
|
|
|
399
422
|
var filterTypes = useMemo(function () {
|
|
400
423
|
return [{
|
|
401
|
-
type: MRT_FILTER_TYPE.
|
|
402
|
-
label: localization.
|
|
424
|
+
type: MRT_FILTER_TYPE.BEST_MATCH_FIRST,
|
|
425
|
+
label: localization.filterBestMatchFirst,
|
|
403
426
|
divider: false,
|
|
404
|
-
fn:
|
|
427
|
+
fn: bestMatchFirst
|
|
428
|
+
}, {
|
|
429
|
+
type: MRT_FILTER_TYPE.BEST_MATCH,
|
|
430
|
+
label: localization.filterBestMatch,
|
|
431
|
+
divider: !!column,
|
|
432
|
+
fn: bestMatch
|
|
405
433
|
}, {
|
|
406
434
|
type: MRT_FILTER_TYPE.CONTAINS,
|
|
407
435
|
label: localization.filterContains,
|
|
408
|
-
divider:
|
|
436
|
+
divider: false,
|
|
409
437
|
fn: contains
|
|
410
438
|
}, {
|
|
411
439
|
type: MRT_FILTER_TYPE.STARTS_WITH,
|
|
@@ -448,26 +476,30 @@ var MRT_FilterTypeMenu = function MRT_FilterTypeMenu(_ref) {
|
|
|
448
476
|
divider: false,
|
|
449
477
|
fn: notEmpty
|
|
450
478
|
}].filter(function (filterType) {
|
|
451
|
-
return !column.
|
|
479
|
+
return column ? !column.enabledFilterTypes || column.enabledFilterTypes.includes(filterType.type) : (!enabledGlobalFilterTypes || enabledGlobalFilterTypes.includes(filterType.type)) && [MRT_FILTER_TYPE.BEST_MATCH_FIRST, MRT_FILTER_TYPE.BEST_MATCH].includes(filterType.type);
|
|
452
480
|
});
|
|
453
481
|
}, []);
|
|
454
482
|
|
|
455
483
|
var handleSelectFilterType = function handleSelectFilterType(value) {
|
|
456
|
-
|
|
457
|
-
|
|
458
|
-
|
|
484
|
+
if (column) {
|
|
485
|
+
setCurrentFilterTypes(function (prev) {
|
|
486
|
+
var _extends2;
|
|
459
487
|
|
|
460
|
-
|
|
461
|
-
|
|
488
|
+
return _extends({}, prev, (_extends2 = {}, _extends2[column.id] = value, _extends2));
|
|
489
|
+
});
|
|
462
490
|
|
|
463
|
-
|
|
464
|
-
|
|
491
|
+
if ([MRT_FILTER_TYPE.EMPTY, MRT_FILTER_TYPE.NOT_EMPTY].includes(value)) {
|
|
492
|
+
column.setFilter(' ');
|
|
493
|
+
}
|
|
494
|
+
} else {
|
|
495
|
+
setCurrentGlobalFilterType(value);
|
|
465
496
|
}
|
|
466
497
|
|
|
498
|
+
setAnchorEl(null);
|
|
467
499
|
onSelect == null ? void 0 : onSelect();
|
|
468
500
|
};
|
|
469
501
|
|
|
470
|
-
var filterType = tableInstance.state.currentFilterTypes[column.id];
|
|
502
|
+
var filterType = column ? tableInstance.state.currentFilterTypes[column.id] : tableInstance.state.currentGlobalFilterType;
|
|
471
503
|
return React.createElement(Menu, {
|
|
472
504
|
anchorEl: anchorEl,
|
|
473
505
|
anchorOrigin: {
|
|
@@ -521,9 +553,7 @@ var MRT_FilterTextField = function MRT_FilterTextField(_ref) {
|
|
|
521
553
|
var mTableHeadCellFilterTextFieldProps = muiTableHeadCellFilterTextFieldProps instanceof Function ? muiTableHeadCellFilterTextFieldProps(column) : muiTableHeadCellFilterTextFieldProps;
|
|
522
554
|
var mcTableHeadCellFilterTextFieldProps = column.muiTableHeadCellFilterTextFieldProps instanceof Function ? column.muiTableHeadCellFilterTextFieldProps(column) : column.muiTableHeadCellFilterTextFieldProps;
|
|
523
555
|
|
|
524
|
-
var textFieldProps = _extends({}, mTableHeadCellFilterTextFieldProps, mcTableHeadCellFilterTextFieldProps
|
|
525
|
-
style: _extends({}, mTableHeadCellFilterTextFieldProps == null ? void 0 : mTableHeadCellFilterTextFieldProps.style, mcTableHeadCellFilterTextFieldProps == null ? void 0 : mcTableHeadCellFilterTextFieldProps.style)
|
|
526
|
-
});
|
|
556
|
+
var textFieldProps = _extends({}, mTableHeadCellFilterTextFieldProps, mcTableHeadCellFilterTextFieldProps);
|
|
527
557
|
|
|
528
558
|
var _useState2 = useState(''),
|
|
529
559
|
filterValue = _useState2[0],
|
|
@@ -548,7 +578,7 @@ var MRT_FilterTextField = function MRT_FilterTextField(_ref) {
|
|
|
548
578
|
setCurrentFilterTypes(function (prev) {
|
|
549
579
|
var _extends2;
|
|
550
580
|
|
|
551
|
-
return _extends({}, prev, (_extends2 = {}, _extends2[column.id] = MRT_FILTER_TYPE.
|
|
581
|
+
return _extends({}, prev, (_extends2 = {}, _extends2[column.id] = MRT_FILTER_TYPE.BEST_MATCH, _extends2));
|
|
552
582
|
});
|
|
553
583
|
};
|
|
554
584
|
|
|
@@ -587,13 +617,6 @@ var MRT_FilterTextField = function MRT_FilterTextField(_ref) {
|
|
|
587
617
|
}
|
|
588
618
|
},
|
|
589
619
|
label: isSelectFilter && !filterValue ? filterPlaceholder : undefined,
|
|
590
|
-
InputLabelProps: {
|
|
591
|
-
shrink: false,
|
|
592
|
-
sx: {
|
|
593
|
-
maxWidth: 'calc(100% - 2.5rem)'
|
|
594
|
-
},
|
|
595
|
-
title: filterPlaceholder
|
|
596
|
-
},
|
|
597
620
|
margin: "none",
|
|
598
621
|
placeholder: filterChipLabel || isSelectFilter ? undefined : filterPlaceholder,
|
|
599
622
|
onChange: function onChange(e) {
|
|
@@ -726,7 +749,7 @@ var MRT_ShowHideColumnsMenuItems = function MRT_ShowHideColumnsMenuItems(_ref) {
|
|
|
726
749
|
},
|
|
727
750
|
checked: switchChecked,
|
|
728
751
|
control: React.createElement(Switch, null),
|
|
729
|
-
disabled: isSubMenu && switchChecked,
|
|
752
|
+
disabled: isSubMenu && switchChecked || column.disableColumnHiding,
|
|
730
753
|
label: column.Header,
|
|
731
754
|
onChange: function onChange() {
|
|
732
755
|
return handleToggleColumnHidden(column);
|
|
@@ -749,6 +772,14 @@ var MRT_ShowHideColumnsMenu = function MRT_ShowHideColumnsMenu(_ref) {
|
|
|
749
772
|
localization = _useMRT.localization,
|
|
750
773
|
tableInstance = _useMRT.tableInstance;
|
|
751
774
|
|
|
775
|
+
var hideAllColumns = function hideAllColumns() {
|
|
776
|
+
findLowestLevelCols(tableInstance.columns).filter(function (col) {
|
|
777
|
+
return !col.disableColumnHiding;
|
|
778
|
+
}).forEach(function (col) {
|
|
779
|
+
return col.toggleHidden(true);
|
|
780
|
+
});
|
|
781
|
+
};
|
|
782
|
+
|
|
752
783
|
return React.createElement(Menu, {
|
|
753
784
|
anchorEl: anchorEl,
|
|
754
785
|
open: !!anchorEl,
|
|
@@ -767,9 +798,7 @@ var MRT_ShowHideColumnsMenu = function MRT_ShowHideColumnsMenu(_ref) {
|
|
|
767
798
|
}
|
|
768
799
|
}, !isSubMenu && React.createElement(Button, {
|
|
769
800
|
disabled: !tableInstance.getToggleHideAllColumnsProps().checked && !tableInstance.getToggleHideAllColumnsProps().indeterminate,
|
|
770
|
-
onClick:
|
|
771
|
-
return tableInstance.toggleHideAllColumns(true);
|
|
772
|
-
}
|
|
801
|
+
onClick: hideAllColumns
|
|
773
802
|
}, localization.hideAll), React.createElement(Button, {
|
|
774
803
|
disabled: tableInstance.getToggleHideAllColumnsProps().checked,
|
|
775
804
|
onClick: function onClick() {
|
|
@@ -954,6 +983,7 @@ var MRT_ColumnActionMenu = function MRT_ColumnActionMenu(_ref) {
|
|
|
954
983
|
}, React.createElement(Box, {
|
|
955
984
|
sx: commonListItemStyles
|
|
956
985
|
}, React.createElement(ListItemIcon, null, React.createElement(DynamicFeedIcon, null)), (_localization = localization[column.isGrouped ? 'ungroupByColumn' : 'groupByColumn']) == null ? void 0 : _localization.replace('{column}', String(column.Header))))], !disableColumnHiding && [React.createElement(MenuItem, {
|
|
986
|
+
disabled: column.disableColumnHiding,
|
|
957
987
|
key: 0,
|
|
958
988
|
onClick: handleHideColumn,
|
|
959
989
|
sx: commonMenuItemStyles$1
|
|
@@ -985,8 +1015,9 @@ var MRT_ToggleColumnActionMenuButton = function MRT_ToggleColumnActionMenuButton
|
|
|
985
1015
|
var column = _ref.column;
|
|
986
1016
|
|
|
987
1017
|
var _useMRT = useMRT(),
|
|
1018
|
+
MoreVertIcon = _useMRT.icons.MoreVertIcon,
|
|
988
1019
|
localization = _useMRT.localization,
|
|
989
|
-
|
|
1020
|
+
muiTableHeadCellColumnActionsButtonProps = _useMRT.muiTableHeadCellColumnActionsButtonProps;
|
|
990
1021
|
|
|
991
1022
|
var _useState = useState(null),
|
|
992
1023
|
anchorEl = _useState[0],
|
|
@@ -998,17 +1029,23 @@ var MRT_ToggleColumnActionMenuButton = function MRT_ToggleColumnActionMenuButton
|
|
|
998
1029
|
setAnchorEl(event.currentTarget);
|
|
999
1030
|
};
|
|
1000
1031
|
|
|
1032
|
+
var mTableHeadCellColumnActionsButtonProps = muiTableHeadCellColumnActionsButtonProps instanceof Function ? muiTableHeadCellColumnActionsButtonProps(column) : muiTableHeadCellColumnActionsButtonProps;
|
|
1033
|
+
var mcTableHeadCellColumnActionsButtonProps = column.muiTableHeadCellColumnActionsButtonProps instanceof Function ? column.muiTableHeadCellColumnActionsButtonProps(column) : column.muiTableHeadCellColumnActionsButtonProps;
|
|
1034
|
+
|
|
1035
|
+
var iconButtonProps = _extends({}, mTableHeadCellColumnActionsButtonProps, mcTableHeadCellColumnActionsButtonProps);
|
|
1036
|
+
|
|
1001
1037
|
return React.createElement(React.Fragment, null, React.createElement(Tooltip, {
|
|
1002
1038
|
arrow: true,
|
|
1003
1039
|
enterDelay: 1000,
|
|
1004
1040
|
enterNextDelay: 1000,
|
|
1005
1041
|
placement: "top",
|
|
1006
1042
|
title: localization.columnActions
|
|
1007
|
-
}, React.createElement(IconButton, {
|
|
1043
|
+
}, React.createElement(IconButton, Object.assign({
|
|
1008
1044
|
"aria-label": localization.columnActions,
|
|
1009
1045
|
onClick: handleClick,
|
|
1010
|
-
size: "small"
|
|
1011
|
-
|
|
1046
|
+
size: "small"
|
|
1047
|
+
}, iconButtonProps, {
|
|
1048
|
+
sx: _extends({
|
|
1012
1049
|
height: '2rem',
|
|
1013
1050
|
mr: '2px',
|
|
1014
1051
|
mt: '-0.2rem',
|
|
@@ -1018,8 +1055,8 @@ var MRT_ToggleColumnActionMenuButton = function MRT_ToggleColumnActionMenuButton
|
|
|
1018
1055
|
'&:hover': {
|
|
1019
1056
|
opacity: 1
|
|
1020
1057
|
}
|
|
1021
|
-
}
|
|
1022
|
-
}, React.createElement(MoreVertIcon, null))), React.createElement(MRT_ColumnActionMenu, {
|
|
1058
|
+
}, iconButtonProps.sx)
|
|
1059
|
+
}), React.createElement(MoreVertIcon, null))), React.createElement(MRT_ColumnActionMenu, {
|
|
1023
1060
|
anchorEl: anchorEl,
|
|
1024
1061
|
column: column,
|
|
1025
1062
|
setAnchorEl: setAnchorEl
|
|
@@ -1064,7 +1101,7 @@ var MRT_TableHeadCell = function MRT_TableHeadCell(_ref) {
|
|
|
1064
1101
|
var sortTooltip = column.isSorted ? column.isSortedDesc ? localization.clearSort : (_localization$sortByC = localization.sortByColumnDesc) == null ? void 0 : _localization$sortByC.replace('{column}', column.Header) : (_localization$sortByC2 = localization.sortByColumnAsc) == null ? void 0 : _localization$sortByC2.replace('{column}', column.Header);
|
|
1065
1102
|
var filterType = tableInstance.state.currentFilterTypes[column.id];
|
|
1066
1103
|
var filterTooltip = !!column.filterValue ? localization.filteringByColumn.replace('{column}', String(column.Header)).replace('{filterType}', filterType instanceof Function ? '' : // @ts-ignore
|
|
1067
|
-
localization["filter" + (filterType.charAt(0).toUpperCase() + filterType.slice(1))]).replace('{filterValue}', column.filterValue) : localization.showHideFilters;
|
|
1104
|
+
localization["filter" + (filterType.charAt(0).toUpperCase() + filterType.slice(1))]).replace('{filterValue}', column.filterValue).replace('" "', '') : localization.showHideFilters;
|
|
1068
1105
|
var columnHeader = column.render('Header');
|
|
1069
1106
|
return React.createElement(TableCell, Object.assign({
|
|
1070
1107
|
align: isParentHeader ? 'center' : 'left'
|
|
@@ -1128,7 +1165,7 @@ var MRT_TableHeadCell = function MRT_TableHeadCell(_ref) {
|
|
|
1128
1165
|
display: 'flex',
|
|
1129
1166
|
flexWrap: 'nowrap'
|
|
1130
1167
|
}
|
|
1131
|
-
}, !disableColumnActions && !isParentHeader && React.createElement(MRT_ToggleColumnActionMenuButton, {
|
|
1168
|
+
}, !disableColumnActions && !column.disableColumnActions && !isParentHeader && React.createElement(MRT_ToggleColumnActionMenuButton, {
|
|
1132
1169
|
column: column
|
|
1133
1170
|
}), enableColumnResizing && !isParentHeader && React.createElement(Divider, Object.assign({
|
|
1134
1171
|
flexItem: true,
|
|
@@ -1149,174 +1186,42 @@ var MRT_TableHeadCell = function MRT_TableHeadCell(_ref) {
|
|
|
1149
1186
|
})));
|
|
1150
1187
|
};
|
|
1151
1188
|
|
|
1152
|
-
var MRT_EditCellTextField = function MRT_EditCellTextField(_ref) {
|
|
1153
|
-
var _cell$column$muiTable;
|
|
1154
|
-
|
|
1155
|
-
var cell = _ref.cell;
|
|
1156
|
-
|
|
1157
|
-
var _useMRT = useMRT(),
|
|
1158
|
-
muiTableBodyCellEditTextFieldProps = _useMRT.muiTableBodyCellEditTextFieldProps,
|
|
1159
|
-
setCurrentEditingRow = _useMRT.setCurrentEditingRow,
|
|
1160
|
-
currentEditingRow = _useMRT.tableInstance.state.currentEditingRow;
|
|
1161
|
-
|
|
1162
|
-
var handleChange = function handleChange(event) {
|
|
1163
|
-
if (currentEditingRow) {
|
|
1164
|
-
cell.row.values[cell.column.id] = event.target.value;
|
|
1165
|
-
setCurrentEditingRow(_extends({}, currentEditingRow));
|
|
1166
|
-
}
|
|
1167
|
-
|
|
1168
|
-
cell.column.onCellEditChange == null ? void 0 : cell.column.onCellEditChange(event, cell);
|
|
1169
|
-
};
|
|
1170
|
-
|
|
1171
|
-
var mTableBodyCellEditTextFieldProps = muiTableBodyCellEditTextFieldProps instanceof Function ? muiTableBodyCellEditTextFieldProps(cell) : muiTableBodyCellEditTextFieldProps;
|
|
1172
|
-
var mcTableBodyCellEditTextFieldProps = cell.column.muiTableBodyCellEditTextFieldProps instanceof Function ? cell.column.muiTableBodyCellEditTextFieldProps(cell) : cell.column.muiTableBodyCellEditTextFieldProps;
|
|
1173
|
-
|
|
1174
|
-
var textFieldProps = _extends({}, mTableBodyCellEditTextFieldProps, mcTableBodyCellEditTextFieldProps, {
|
|
1175
|
-
style: _extends({}, muiTableBodyCellEditTextFieldProps == null ? void 0 : muiTableBodyCellEditTextFieldProps.style, (_cell$column$muiTable = cell.column.muiTableBodyCellEditTextFieldProps) == null ? void 0 : _cell$column$muiTable.style)
|
|
1176
|
-
});
|
|
1177
|
-
|
|
1178
|
-
if (!cell.column.disableEditing && cell.column.Edit) {
|
|
1179
|
-
return React.createElement(React.Fragment, null, cell.column.Edit(_extends({}, textFieldProps, {
|
|
1180
|
-
cell: cell
|
|
1181
|
-
})));
|
|
1182
|
-
}
|
|
1183
|
-
|
|
1184
|
-
return React.createElement(TextField, Object.assign({
|
|
1185
|
-
margin: "dense",
|
|
1186
|
-
onChange: handleChange,
|
|
1187
|
-
onClick: function onClick(e) {
|
|
1188
|
-
return e.stopPropagation();
|
|
1189
|
-
},
|
|
1190
|
-
placeholder: cell.column.Header,
|
|
1191
|
-
value: cell.value,
|
|
1192
|
-
variant: "standard"
|
|
1193
|
-
}, textFieldProps));
|
|
1194
|
-
};
|
|
1195
|
-
|
|
1196
|
-
var MRT_CopyButton = function MRT_CopyButton(_ref) {
|
|
1197
|
-
var cell = _ref.cell;
|
|
1198
|
-
|
|
1199
|
-
var _useMRT = useMRT(),
|
|
1200
|
-
localization = _useMRT.localization;
|
|
1201
|
-
|
|
1202
|
-
var _useState = useState(false),
|
|
1203
|
-
copied = _useState[0],
|
|
1204
|
-
setCopied = _useState[1];
|
|
1205
|
-
|
|
1206
|
-
var handleCopy = function handleCopy(text) {
|
|
1207
|
-
navigator.clipboard.writeText(text);
|
|
1208
|
-
setCopied(true);
|
|
1209
|
-
setTimeout(function () {
|
|
1210
|
-
return setCopied(false);
|
|
1211
|
-
}, 4000);
|
|
1212
|
-
};
|
|
1213
|
-
|
|
1214
|
-
return React.createElement(Tooltip, {
|
|
1215
|
-
arrow: true,
|
|
1216
|
-
enterDelay: 1000,
|
|
1217
|
-
enterNextDelay: 1000,
|
|
1218
|
-
placement: "top",
|
|
1219
|
-
title: copied ? localization.copiedToClipboard : localization.clickToCopy
|
|
1220
|
-
}, React.createElement(Button, {
|
|
1221
|
-
"aria-label": localization.clickToCopy,
|
|
1222
|
-
onClick: function onClick() {
|
|
1223
|
-
return handleCopy(cell.value);
|
|
1224
|
-
},
|
|
1225
|
-
size: "small",
|
|
1226
|
-
sx: {
|
|
1227
|
-
backgroundColor: 'transparent',
|
|
1228
|
-
color: 'inherit',
|
|
1229
|
-
letterSpacing: 'inherit',
|
|
1230
|
-
fontFamily: 'inherit',
|
|
1231
|
-
fontSize: 'inherit',
|
|
1232
|
-
m: '-0.25rem',
|
|
1233
|
-
textTransform: 'inherit',
|
|
1234
|
-
textAlign: 'inherit',
|
|
1235
|
-
minWidth: 'unset'
|
|
1236
|
-
},
|
|
1237
|
-
variant: "text"
|
|
1238
|
-
}, cell.render('Cell')));
|
|
1239
|
-
};
|
|
1240
|
-
|
|
1241
|
-
var commonTableBodyCellStyles = function commonTableBodyCellStyles(densePadding) {
|
|
1242
|
-
return {
|
|
1243
|
-
p: densePadding ? '0.5rem' : '1rem',
|
|
1244
|
-
transition: 'all 0.2s ease-in-out',
|
|
1245
|
-
whiteSpace: densePadding ? 'nowrap' : 'normal'
|
|
1246
|
-
};
|
|
1247
|
-
};
|
|
1248
|
-
var commonTableBodyButtonCellStyles = function commonTableBodyButtonCellStyles(densePadding) {
|
|
1249
|
-
return {
|
|
1250
|
-
p: densePadding ? '1px' : '0.6rem',
|
|
1251
|
-
textAlign: 'center',
|
|
1252
|
-
transition: 'all 0.2s ease-in-out'
|
|
1253
|
-
};
|
|
1254
|
-
};
|
|
1255
|
-
var MRT_TableBodyCell = function MRT_TableBodyCell(_ref) {
|
|
1256
|
-
var cell = _ref.cell;
|
|
1257
|
-
|
|
1258
|
-
var _useMRT = useMRT(),
|
|
1259
|
-
enableClickToCopy = _useMRT.enableClickToCopy,
|
|
1260
|
-
isLoading = _useMRT.isLoading,
|
|
1261
|
-
muiTableBodyCellProps = _useMRT.muiTableBodyCellProps,
|
|
1262
|
-
muiTableBodyCellSkeletonProps = _useMRT.muiTableBodyCellSkeletonProps,
|
|
1263
|
-
onCellClick = _useMRT.onCellClick,
|
|
1264
|
-
_useMRT$tableInstance = _useMRT.tableInstance.state,
|
|
1265
|
-
currentEditingRow = _useMRT$tableInstance.currentEditingRow,
|
|
1266
|
-
densePadding = _useMRT$tableInstance.densePadding;
|
|
1267
|
-
|
|
1268
|
-
var mTableCellBodyProps = muiTableBodyCellProps instanceof Function ? muiTableBodyCellProps(cell) : muiTableBodyCellProps;
|
|
1269
|
-
var mcTableCellBodyProps = cell.column.muiTableBodyCellProps instanceof Function ? cell.column.muiTableBodyCellProps(cell) : cell.column.muiTableBodyCellProps;
|
|
1270
|
-
|
|
1271
|
-
var tableCellProps = _extends({}, mTableCellBodyProps, mcTableCellBodyProps, cell.getCellProps(), {
|
|
1272
|
-
style: _extends({}, cell.getCellProps().style, mTableCellBodyProps == null ? void 0 : mTableCellBodyProps.style, mcTableCellBodyProps == null ? void 0 : mcTableCellBodyProps.style)
|
|
1273
|
-
});
|
|
1274
|
-
|
|
1275
|
-
return React.createElement(TableCell, Object.assign({
|
|
1276
|
-
onClick: function onClick(event) {
|
|
1277
|
-
return onCellClick == null ? void 0 : onCellClick(event, cell);
|
|
1278
|
-
}
|
|
1279
|
-
}, tableCellProps, {
|
|
1280
|
-
sx: _extends({}, commonTableBodyCellStyles(densePadding), tableCellProps == null ? void 0 : tableCellProps.sx)
|
|
1281
|
-
}), isLoading ? React.createElement(Skeleton, Object.assign({
|
|
1282
|
-
animation: "wave",
|
|
1283
|
-
height: 20,
|
|
1284
|
-
width: Math.random() * (120 - 60) + 60
|
|
1285
|
-
}, muiTableBodyCellSkeletonProps)) : !cell.column.disableEditing && (currentEditingRow == null ? void 0 : currentEditingRow.id) === cell.row.id ? React.createElement(MRT_EditCellTextField, {
|
|
1286
|
-
cell: cell
|
|
1287
|
-
}) : cell.isPlaceholder ? null : cell.isAggregated ? cell.render('Aggregated') : cell.isGrouped ? React.createElement("span", null, cell.render('Cell'), " (", cell.row.subRows.length, ")") : enableClickToCopy && !cell.column.disableClickToCopy ? React.createElement(MRT_CopyButton, {
|
|
1288
|
-
cell: cell
|
|
1289
|
-
}) : cell.render('Cell'));
|
|
1290
|
-
};
|
|
1291
|
-
|
|
1292
1189
|
var MRT_SelectCheckbox = function MRT_SelectCheckbox(_ref) {
|
|
1293
1190
|
var row = _ref.row,
|
|
1294
1191
|
selectAll = _ref.selectAll;
|
|
1295
1192
|
|
|
1296
1193
|
var _useMRT = useMRT(),
|
|
1297
1194
|
localization = _useMRT.localization,
|
|
1298
|
-
|
|
1195
|
+
muiSelectCheckboxProps = _useMRT.muiSelectCheckboxProps,
|
|
1196
|
+
onSelectChange = _useMRT.onSelectChange,
|
|
1299
1197
|
onSelectAllChange = _useMRT.onSelectAllChange,
|
|
1300
|
-
tableInstance = _useMRT.tableInstance
|
|
1198
|
+
tableInstance = _useMRT.tableInstance,
|
|
1199
|
+
densePadding = _useMRT.tableInstance.state.densePadding;
|
|
1301
1200
|
|
|
1302
|
-
var
|
|
1201
|
+
var handleSelectChange = function handleSelectChange(event) {
|
|
1303
1202
|
if (selectAll) {
|
|
1304
1203
|
var _tableInstance$getTog;
|
|
1305
1204
|
|
|
1306
1205
|
tableInstance == null ? void 0 : tableInstance.getToggleAllRowsSelectedProps == null ? void 0 : (_tableInstance$getTog = tableInstance.getToggleAllRowsSelectedProps()) == null ? void 0 : _tableInstance$getTog.onChange == null ? void 0 : _tableInstance$getTog.onChange(event);
|
|
1307
|
-
onSelectAllChange == null ? void 0 : onSelectAllChange(event, tableInstance.
|
|
1206
|
+
onSelectAllChange == null ? void 0 : onSelectAllChange(event, event.target.checked ? tableInstance.rows : []);
|
|
1308
1207
|
} else if (row) {
|
|
1309
1208
|
var _row$getToggleRowSele;
|
|
1310
1209
|
|
|
1311
1210
|
row == null ? void 0 : (_row$getToggleRowSele = row.getToggleRowSelectedProps()) == null ? void 0 : _row$getToggleRowSele.onChange == null ? void 0 : _row$getToggleRowSele.onChange(event);
|
|
1312
|
-
|
|
1211
|
+
onSelectChange == null ? void 0 : onSelectChange(event, row, event.target.checked ? [].concat(tableInstance.selectedFlatRows, [row]) : tableInstance.selectedFlatRows.filter(function (selectedRow) {
|
|
1212
|
+
return selectedRow.id !== row.id;
|
|
1213
|
+
}));
|
|
1313
1214
|
}
|
|
1314
1215
|
};
|
|
1315
1216
|
|
|
1316
|
-
var
|
|
1317
|
-
|
|
1318
|
-
|
|
1319
|
-
},
|
|
1217
|
+
var mTableBodyRowSelectCheckboxProps = muiSelectCheckboxProps instanceof Function ? muiSelectCheckboxProps(selectAll, row, tableInstance) : muiSelectCheckboxProps;
|
|
1218
|
+
var rtSelectCheckboxProps = selectAll ? tableInstance.getToggleAllRowsSelectedProps() : row == null ? void 0 : row.getToggleRowSelectedProps();
|
|
1219
|
+
|
|
1220
|
+
var checkboxProps = _extends({}, mTableBodyRowSelectCheckboxProps, rtSelectCheckboxProps, {
|
|
1221
|
+
style: _extends({}, rtSelectCheckboxProps == null ? void 0 : rtSelectCheckboxProps.style, mTableBodyRowSelectCheckboxProps == null ? void 0 : mTableBodyRowSelectCheckboxProps.style)
|
|
1222
|
+
});
|
|
1223
|
+
|
|
1224
|
+
return React.createElement(Tooltip, {
|
|
1320
1225
|
arrow: true,
|
|
1321
1226
|
enterDelay: 1000,
|
|
1322
1227
|
enterNextDelay: 1000,
|
|
@@ -1325,10 +1230,11 @@ var MRT_SelectCheckbox = function MRT_SelectCheckbox(_ref) {
|
|
|
1325
1230
|
inputProps: {
|
|
1326
1231
|
'aria-label': selectAll ? localization.toggleSelectAll : localization.toggleSelectRow
|
|
1327
1232
|
},
|
|
1328
|
-
|
|
1233
|
+
size: densePadding ? 'small' : 'medium'
|
|
1329
1234
|
}, checkboxProps, {
|
|
1235
|
+
onChange: handleSelectChange,
|
|
1330
1236
|
title: undefined
|
|
1331
|
-
})))
|
|
1237
|
+
})));
|
|
1332
1238
|
};
|
|
1333
1239
|
|
|
1334
1240
|
var MRT_ExpandAllButton = function MRT_ExpandAllButton() {
|
|
@@ -1338,11 +1244,7 @@ var MRT_ExpandAllButton = function MRT_ExpandAllButton() {
|
|
|
1338
1244
|
localization = _useMRT.localization,
|
|
1339
1245
|
tableInstance = _useMRT.tableInstance;
|
|
1340
1246
|
|
|
1341
|
-
return React.createElement(
|
|
1342
|
-
size: "small"
|
|
1343
|
-
}, tableInstance.getToggleAllRowsExpandedProps(), {
|
|
1344
|
-
sx: commonTableBodyButtonCellStyles(tableInstance.state.densePadding)
|
|
1345
|
-
}), React.createElement(IconButton, {
|
|
1247
|
+
return React.createElement(IconButton, {
|
|
1346
1248
|
"aria-label": localization.expandAll,
|
|
1347
1249
|
title: localization.expandAll
|
|
1348
1250
|
}, React.createElement(DoubleArrowDownIcon, {
|
|
@@ -1350,7 +1252,7 @@ var MRT_ExpandAllButton = function MRT_ExpandAllButton() {
|
|
|
1350
1252
|
transform: "rotate(" + (tableInstance.isAllRowsExpanded ? -180 : anyRowsExpanded ? -90 : 0) + "deg)",
|
|
1351
1253
|
transition: 'transform 0.2s'
|
|
1352
1254
|
}
|
|
1353
|
-
}))
|
|
1255
|
+
}));
|
|
1354
1256
|
};
|
|
1355
1257
|
|
|
1356
1258
|
var MRT_TableSpacerCell = function MRT_TableSpacerCell(_ref) {
|
|
@@ -1359,12 +1261,7 @@ var MRT_TableSpacerCell = function MRT_TableSpacerCell(_ref) {
|
|
|
1359
1261
|
var _useMRT = useMRT(),
|
|
1360
1262
|
muiTableBodyCellProps = _useMRT.muiTableBodyCellProps;
|
|
1361
1263
|
|
|
1362
|
-
var
|
|
1363
|
-
|
|
1364
|
-
var tableCellProps = _extends({}, mTableBodyCellrops, {
|
|
1365
|
-
style: _extends({}, mTableBodyCellrops == null ? void 0 : mTableBodyCellrops.style)
|
|
1366
|
-
});
|
|
1367
|
-
|
|
1264
|
+
var tableCellProps = muiTableBodyCellProps instanceof Function ? muiTableBodyCellProps() : muiTableBodyCellProps;
|
|
1368
1265
|
return React.createElement(TableCell, Object.assign({}, tableCellProps, {
|
|
1369
1266
|
sx: _extends({
|
|
1370
1267
|
width: width
|
|
@@ -1395,6 +1292,7 @@ var MRT_TableHeadRow = function MRT_TableHeadRow(_ref) {
|
|
|
1395
1292
|
var _useMRT = useMRT(),
|
|
1396
1293
|
anyRowsCanExpand = _useMRT.anyRowsCanExpand,
|
|
1397
1294
|
disableExpandAll = _useMRT.disableExpandAll,
|
|
1295
|
+
disableSelectAll = _useMRT.disableSelectAll,
|
|
1398
1296
|
enableRowActions = _useMRT.enableRowActions,
|
|
1399
1297
|
enableRowEditing = _useMRT.enableRowEditing,
|
|
1400
1298
|
enableRowNumbers = _useMRT.enableRowNumbers,
|
|
@@ -1417,15 +1315,32 @@ var MRT_TableHeadRow = function MRT_TableHeadRow(_ref) {
|
|
|
1417
1315
|
style: _extends({}, headerGroup.getHeaderGroupProps().style, mTableHeadRowProps == null ? void 0 : mTableHeadRowProps.style)
|
|
1418
1316
|
});
|
|
1419
1317
|
|
|
1420
|
-
return React.createElement(TableRow, Object.assign({}, tableRowProps),
|
|
1421
|
-
|
|
1422
|
-
},
|
|
1318
|
+
return React.createElement(TableRow, Object.assign({}, tableRowProps), (enableRowActions || enableRowEditing) && positionActionsColumn === 'first' && (isParentHeader ? React.createElement(MRT_TableSpacerCell, null) : React.createElement(MRT_TableHeadCellActions, null)), anyRowsCanExpand || renderDetailPanel ? !disableExpandAll && !isParentHeader ? React.createElement(TableCell, Object.assign({
|
|
1319
|
+
size: "small"
|
|
1320
|
+
}, tableInstance.getToggleAllRowsExpandedProps(), {
|
|
1321
|
+
sx: _extends({}, commonTableHeadCellStyles(tableInstance.state.densePadding), {
|
|
1322
|
+
width: '3rem',
|
|
1323
|
+
maxWidth: '3rem',
|
|
1324
|
+
textAlign: 'center'
|
|
1325
|
+
})
|
|
1326
|
+
}), React.createElement(MRT_ExpandAllButton, null)) : React.createElement(MRT_TableSpacerCell, {
|
|
1423
1327
|
width: (renderDetailPanel ? 2 : tableInstance.expandedDepth + 0.5) + "rem"
|
|
1424
|
-
}) : null, enableSelection ? !isParentHeader ? React.createElement(
|
|
1328
|
+
}) : null, enableSelection ? !isParentHeader && !disableSelectAll ? React.createElement(TableCell, {
|
|
1329
|
+
sx: _extends({}, commonTableHeadCellStyles(tableInstance.state.densePadding), {
|
|
1330
|
+
maxWidth: '3rem',
|
|
1331
|
+
width: '3rem',
|
|
1332
|
+
textAlign: 'center'
|
|
1333
|
+
})
|
|
1334
|
+
}, React.createElement(MRT_SelectCheckbox, {
|
|
1425
1335
|
selectAll: true
|
|
1426
|
-
}) : React.createElement(MRT_TableSpacerCell, {
|
|
1336
|
+
})) : React.createElement(MRT_TableSpacerCell, {
|
|
1427
1337
|
width: "1rem"
|
|
1428
|
-
}) : null,
|
|
1338
|
+
}) : null, enableRowNumbers && (isParentHeader ? React.createElement(MRT_TableSpacerCell, null) : React.createElement(TableCell, {
|
|
1339
|
+
sx: _extends({}, commonTableHeadCellStyles(tableInstance.state.densePadding), {
|
|
1340
|
+
width: '2rem',
|
|
1341
|
+
maxWidth: '2rem'
|
|
1342
|
+
})
|
|
1343
|
+
}, "#")), headerGroup.headers.map(function (column) {
|
|
1429
1344
|
return React.createElement(MRT_TableHeadCell, {
|
|
1430
1345
|
key: column.getHeaderProps().key,
|
|
1431
1346
|
column: column
|
|
@@ -1447,6 +1362,153 @@ var MRT_TableHead = function MRT_TableHead() {
|
|
|
1447
1362
|
}));
|
|
1448
1363
|
};
|
|
1449
1364
|
|
|
1365
|
+
var MRT_EditCellTextField = function MRT_EditCellTextField(_ref) {
|
|
1366
|
+
var cell = _ref.cell;
|
|
1367
|
+
|
|
1368
|
+
var _useMRT = useMRT(),
|
|
1369
|
+
muiTableBodyCellEditTextFieldProps = _useMRT.muiTableBodyCellEditTextFieldProps,
|
|
1370
|
+
setCurrentEditingRow = _useMRT.setCurrentEditingRow,
|
|
1371
|
+
currentEditingRow = _useMRT.tableInstance.state.currentEditingRow;
|
|
1372
|
+
|
|
1373
|
+
var handleChange = function handleChange(event) {
|
|
1374
|
+
if (currentEditingRow) {
|
|
1375
|
+
cell.row.values[cell.column.id] = event.target.value;
|
|
1376
|
+
setCurrentEditingRow(_extends({}, currentEditingRow));
|
|
1377
|
+
}
|
|
1378
|
+
|
|
1379
|
+
cell.column.onCellEditChange == null ? void 0 : cell.column.onCellEditChange(event, cell);
|
|
1380
|
+
};
|
|
1381
|
+
|
|
1382
|
+
var mTableBodyCellEditTextFieldProps = muiTableBodyCellEditTextFieldProps instanceof Function ? muiTableBodyCellEditTextFieldProps(cell) : muiTableBodyCellEditTextFieldProps;
|
|
1383
|
+
var mcTableBodyCellEditTextFieldProps = cell.column.muiTableBodyCellEditTextFieldProps instanceof Function ? cell.column.muiTableBodyCellEditTextFieldProps(cell) : cell.column.muiTableBodyCellEditTextFieldProps;
|
|
1384
|
+
|
|
1385
|
+
var textFieldProps = _extends({}, mTableBodyCellEditTextFieldProps, mcTableBodyCellEditTextFieldProps);
|
|
1386
|
+
|
|
1387
|
+
if (!cell.column.disableEditing && cell.column.Edit) {
|
|
1388
|
+
return React.createElement(React.Fragment, null, cell.column.Edit(_extends({}, textFieldProps, {
|
|
1389
|
+
cell: cell
|
|
1390
|
+
})));
|
|
1391
|
+
}
|
|
1392
|
+
|
|
1393
|
+
return React.createElement(TextField, Object.assign({
|
|
1394
|
+
margin: "dense",
|
|
1395
|
+
onChange: handleChange,
|
|
1396
|
+
onClick: function onClick(e) {
|
|
1397
|
+
return e.stopPropagation();
|
|
1398
|
+
},
|
|
1399
|
+
placeholder: cell.column.Header,
|
|
1400
|
+
value: cell.value,
|
|
1401
|
+
variant: "standard"
|
|
1402
|
+
}, textFieldProps));
|
|
1403
|
+
};
|
|
1404
|
+
|
|
1405
|
+
var MRT_CopyButton = function MRT_CopyButton(_ref) {
|
|
1406
|
+
var cell = _ref.cell,
|
|
1407
|
+
children = _ref.children;
|
|
1408
|
+
|
|
1409
|
+
var _useMRT = useMRT(),
|
|
1410
|
+
localization = _useMRT.localization,
|
|
1411
|
+
muiTableBodyCellCopyButtonProps = _useMRT.muiTableBodyCellCopyButtonProps;
|
|
1412
|
+
|
|
1413
|
+
var _useState = useState(false),
|
|
1414
|
+
copied = _useState[0],
|
|
1415
|
+
setCopied = _useState[1];
|
|
1416
|
+
|
|
1417
|
+
var handleCopy = function handleCopy(text) {
|
|
1418
|
+
navigator.clipboard.writeText(text);
|
|
1419
|
+
setCopied(true);
|
|
1420
|
+
setTimeout(function () {
|
|
1421
|
+
return setCopied(false);
|
|
1422
|
+
}, 4000);
|
|
1423
|
+
};
|
|
1424
|
+
|
|
1425
|
+
var mTableBodyCellCopyButtonProps = muiTableBodyCellCopyButtonProps instanceof Function ? muiTableBodyCellCopyButtonProps(cell) : muiTableBodyCellCopyButtonProps;
|
|
1426
|
+
var mcTableBodyCellCopyButtonProps = cell.column.muiTableBodyCellCopyButtonProps instanceof Function ? cell.column.muiTableBodyCellCopyButtonProps(cell) : cell.column.muiTableBodyCellCopyButtonProps;
|
|
1427
|
+
|
|
1428
|
+
var buttonProps = _extends({}, mTableBodyCellCopyButtonProps, mcTableBodyCellCopyButtonProps);
|
|
1429
|
+
|
|
1430
|
+
return React.createElement(Tooltip, {
|
|
1431
|
+
arrow: true,
|
|
1432
|
+
enterDelay: 1000,
|
|
1433
|
+
enterNextDelay: 1000,
|
|
1434
|
+
placement: "top",
|
|
1435
|
+
title: copied ? localization.copiedToClipboard : localization.clickToCopy
|
|
1436
|
+
}, React.createElement(Button, Object.assign({
|
|
1437
|
+
"aria-label": localization.clickToCopy,
|
|
1438
|
+
onClick: function onClick() {
|
|
1439
|
+
return handleCopy(cell.value);
|
|
1440
|
+
},
|
|
1441
|
+
size: "small"
|
|
1442
|
+
}, buttonProps, {
|
|
1443
|
+
sx: _extends({
|
|
1444
|
+
backgroundColor: 'transparent',
|
|
1445
|
+
border: 'none',
|
|
1446
|
+
color: 'inherit',
|
|
1447
|
+
fontFamily: 'inherit',
|
|
1448
|
+
fontSize: 'inherit',
|
|
1449
|
+
letterSpacing: 'inherit',
|
|
1450
|
+
m: '-0.25rem',
|
|
1451
|
+
minWidth: 'unset',
|
|
1452
|
+
textAlign: 'inherit',
|
|
1453
|
+
textTransform: 'inherit'
|
|
1454
|
+
}, buttonProps == null ? void 0 : buttonProps.sx),
|
|
1455
|
+
variant: "text"
|
|
1456
|
+
}), children));
|
|
1457
|
+
};
|
|
1458
|
+
|
|
1459
|
+
var commonTableBodyCellStyles = function commonTableBodyCellStyles(densePadding) {
|
|
1460
|
+
return {
|
|
1461
|
+
p: densePadding ? '0.5rem' : '1rem',
|
|
1462
|
+
transition: 'all 0.2s ease-in-out',
|
|
1463
|
+
whiteSpace: densePadding ? 'nowrap' : 'normal'
|
|
1464
|
+
};
|
|
1465
|
+
};
|
|
1466
|
+
var commonTableBodyButtonCellStyles = function commonTableBodyButtonCellStyles(densePadding) {
|
|
1467
|
+
return {
|
|
1468
|
+
p: densePadding ? '1px' : '0.6rem',
|
|
1469
|
+
textAlign: 'center',
|
|
1470
|
+
transition: 'all 0.2s ease-in-out'
|
|
1471
|
+
};
|
|
1472
|
+
};
|
|
1473
|
+
var MRT_TableBodyCell = function MRT_TableBodyCell(_ref) {
|
|
1474
|
+
var cell = _ref.cell;
|
|
1475
|
+
|
|
1476
|
+
var _useMRT = useMRT(),
|
|
1477
|
+
enableClickToCopy = _useMRT.enableClickToCopy,
|
|
1478
|
+
isLoading = _useMRT.isLoading,
|
|
1479
|
+
muiTableBodyCellProps = _useMRT.muiTableBodyCellProps,
|
|
1480
|
+
muiTableBodyCellSkeletonProps = _useMRT.muiTableBodyCellSkeletonProps,
|
|
1481
|
+
onCellClick = _useMRT.onCellClick,
|
|
1482
|
+
_useMRT$tableInstance = _useMRT.tableInstance.state,
|
|
1483
|
+
currentEditingRow = _useMRT$tableInstance.currentEditingRow,
|
|
1484
|
+
densePadding = _useMRT$tableInstance.densePadding;
|
|
1485
|
+
|
|
1486
|
+
var mTableCellBodyProps = muiTableBodyCellProps instanceof Function ? muiTableBodyCellProps(cell) : muiTableBodyCellProps;
|
|
1487
|
+
var mcTableCellBodyProps = cell.column.muiTableBodyCellProps instanceof Function ? cell.column.muiTableBodyCellProps(cell) : cell.column.muiTableBodyCellProps;
|
|
1488
|
+
|
|
1489
|
+
var tableCellProps = _extends({}, mTableCellBodyProps, mcTableCellBodyProps, cell.getCellProps(), {
|
|
1490
|
+
style: _extends({}, cell.getCellProps().style, mTableCellBodyProps == null ? void 0 : mTableCellBodyProps.style, mcTableCellBodyProps == null ? void 0 : mcTableCellBodyProps.style)
|
|
1491
|
+
});
|
|
1492
|
+
|
|
1493
|
+
return React.createElement(TableCell, Object.assign({
|
|
1494
|
+
onClick: function onClick(event) {
|
|
1495
|
+
return onCellClick == null ? void 0 : onCellClick(event, cell);
|
|
1496
|
+
}
|
|
1497
|
+
}, tableCellProps, {
|
|
1498
|
+
sx: _extends({}, commonTableBodyCellStyles(densePadding), tableCellProps == null ? void 0 : tableCellProps.sx)
|
|
1499
|
+
}), isLoading ? React.createElement(Skeleton, Object.assign({
|
|
1500
|
+
animation: "wave",
|
|
1501
|
+
height: 20,
|
|
1502
|
+
width: Math.random() * (120 - 60) + 60
|
|
1503
|
+
}, muiTableBodyCellSkeletonProps)) : !cell.column.disableEditing && (currentEditingRow == null ? void 0 : currentEditingRow.id) === cell.row.id ? React.createElement(MRT_EditCellTextField, {
|
|
1504
|
+
cell: cell
|
|
1505
|
+
}) : cell.isPlaceholder ? null : cell.isAggregated ? enableClickToCopy && !cell.column.disableClickToCopy ? React.createElement(MRT_CopyButton, {
|
|
1506
|
+
cell: cell
|
|
1507
|
+
}, cell.render('Aggregated')) : cell.render('Aggregated') : cell.isGrouped ? React.createElement("span", null, cell.render('Cell'), " (", cell.row.subRows.length, ")") : enableClickToCopy && !cell.column.disableClickToCopy ? React.createElement(MRT_CopyButton, {
|
|
1508
|
+
cell: cell
|
|
1509
|
+
}, cell.render('Cell')) : cell.render('Cell'));
|
|
1510
|
+
};
|
|
1511
|
+
|
|
1450
1512
|
var MRT_TableDetailPanel = function MRT_TableDetailPanel(_ref) {
|
|
1451
1513
|
var row = _ref.row;
|
|
1452
1514
|
|
|
@@ -1483,8 +1545,7 @@ var MRT_ExpandButton = function MRT_ExpandButton(_ref) {
|
|
|
1483
1545
|
ExpandMoreIcon = _useMRT.icons.ExpandMoreIcon,
|
|
1484
1546
|
localization = _useMRT.localization,
|
|
1485
1547
|
onRowExpandChange = _useMRT.onRowExpandChange,
|
|
1486
|
-
renderDetailPanel = _useMRT.renderDetailPanel
|
|
1487
|
-
densePadding = _useMRT.tableInstance.state.densePadding;
|
|
1548
|
+
renderDetailPanel = _useMRT.renderDetailPanel;
|
|
1488
1549
|
|
|
1489
1550
|
var handleToggleExpand = function handleToggleExpand(event) {
|
|
1490
1551
|
var _row$getToggleRowExpa;
|
|
@@ -1494,13 +1555,7 @@ var MRT_ExpandButton = function MRT_ExpandButton(_ref) {
|
|
|
1494
1555
|
onRowExpandChange == null ? void 0 : onRowExpandChange(event, row);
|
|
1495
1556
|
};
|
|
1496
1557
|
|
|
1497
|
-
return React.createElement(
|
|
1498
|
-
size: "small",
|
|
1499
|
-
sx: _extends({}, commonTableBodyButtonCellStyles(densePadding), {
|
|
1500
|
-
pl: row.depth + 0.5 + "rem",
|
|
1501
|
-
textAlign: 'left'
|
|
1502
|
-
})
|
|
1503
|
-
}, React.createElement(IconButton, Object.assign({
|
|
1558
|
+
return React.createElement(IconButton, Object.assign({
|
|
1504
1559
|
"aria-label": localization.expand,
|
|
1505
1560
|
disabled: !row.canExpand && !renderDetailPanel,
|
|
1506
1561
|
title: localization.expand
|
|
@@ -1511,7 +1566,7 @@ var MRT_ExpandButton = function MRT_ExpandButton(_ref) {
|
|
|
1511
1566
|
transform: "rotate(" + (!row.canExpand && !renderDetailPanel ? -90 : row.isExpanded ? -180 : 0) + "deg)",
|
|
1512
1567
|
transition: 'transform 0.2s'
|
|
1513
1568
|
}
|
|
1514
|
-
}))
|
|
1569
|
+
}));
|
|
1515
1570
|
};
|
|
1516
1571
|
|
|
1517
1572
|
var MRT_RowActionMenu = function MRT_RowActionMenu(_ref) {
|
|
@@ -2454,6 +2509,7 @@ var MRT_TableBodyRow = function MRT_TableBodyRow(_ref) {
|
|
|
2454
2509
|
onRowClick = _useMRT.onRowClick,
|
|
2455
2510
|
positionActionsColumn = _useMRT.positionActionsColumn,
|
|
2456
2511
|
renderDetailPanel = _useMRT.renderDetailPanel,
|
|
2512
|
+
tableInstance = _useMRT.tableInstance,
|
|
2457
2513
|
densePadding = _useMRT.tableInstance.state.densePadding;
|
|
2458
2514
|
|
|
2459
2515
|
var mTableBodyRowProps = muiTableBodyRowProps instanceof Function ? muiTableBodyRowProps(row) : muiTableBodyRowProps;
|
|
@@ -2468,15 +2524,26 @@ var MRT_TableBodyRow = function MRT_TableBodyRow(_ref) {
|
|
|
2468
2524
|
return onRowClick == null ? void 0 : onRowClick(event, row);
|
|
2469
2525
|
},
|
|
2470
2526
|
selected: row.isSelected
|
|
2471
|
-
}, tableRowProps),
|
|
2472
|
-
sx: _extends({}, commonTableBodyCellStyles(densePadding))
|
|
2473
|
-
}, row.index + 1), (enableRowActions || enableRowEditing) && positionActionsColumn === 'first' && React.createElement(MRT_ToggleRowActionMenuButton, {
|
|
2527
|
+
}, tableRowProps), (enableRowActions || enableRowEditing) && positionActionsColumn === 'first' && React.createElement(MRT_ToggleRowActionMenuButton, {
|
|
2474
2528
|
row: row
|
|
2475
|
-
}), (anyRowsCanExpand || renderDetailPanel) && React.createElement(
|
|
2529
|
+
}), (anyRowsCanExpand || renderDetailPanel) && React.createElement(TableCell, {
|
|
2530
|
+
size: "small",
|
|
2531
|
+
sx: _extends({}, commonTableBodyButtonCellStyles(densePadding), {
|
|
2532
|
+
pl: row.depth + 0.5 + "rem",
|
|
2533
|
+
textAlign: 'left'
|
|
2534
|
+
})
|
|
2535
|
+
}, React.createElement(MRT_ExpandButton, {
|
|
2476
2536
|
row: row
|
|
2477
|
-
}), enableSelection && React.createElement(
|
|
2537
|
+
})), enableSelection && React.createElement(TableCell, {
|
|
2538
|
+
sx: _extends({}, commonTableBodyButtonCellStyles(tableInstance.state.densePadding), {
|
|
2539
|
+
maxWidth: '3rem',
|
|
2540
|
+
width: '3rem'
|
|
2541
|
+
})
|
|
2542
|
+
}, React.createElement(MRT_SelectCheckbox, {
|
|
2478
2543
|
row: row
|
|
2479
|
-
}),
|
|
2544
|
+
})), enableRowNumbers && React.createElement(TableCell, {
|
|
2545
|
+
sx: _extends({}, commonTableBodyCellStyles(densePadding))
|
|
2546
|
+
}, row.index + 1), row.cells.map(function (cell) {
|
|
2480
2547
|
return React.createElement(MRT_TableBodyCell, {
|
|
2481
2548
|
key: cell.getCellProps().key,
|
|
2482
2549
|
cell: cell
|
|
@@ -2621,9 +2688,13 @@ var MRT_SearchTextField = function MRT_SearchTextField() {
|
|
|
2621
2688
|
onGlobalFilterChange = _useMRT.onGlobalFilterChange,
|
|
2622
2689
|
tableInstance = _useMRT.tableInstance;
|
|
2623
2690
|
|
|
2624
|
-
var _useState = useState(
|
|
2625
|
-
|
|
2626
|
-
|
|
2691
|
+
var _useState = useState(null),
|
|
2692
|
+
anchorEl = _useState[0],
|
|
2693
|
+
setAnchorEl = _useState[1];
|
|
2694
|
+
|
|
2695
|
+
var _useState2 = useState(''),
|
|
2696
|
+
searchValue = _useState2[0],
|
|
2697
|
+
setSearchValue = _useState2[1];
|
|
2627
2698
|
|
|
2628
2699
|
var handleChange = useAsyncDebounce(function (event) {
|
|
2629
2700
|
var _event$target$value;
|
|
@@ -2632,6 +2703,10 @@ var MRT_SearchTextField = function MRT_SearchTextField() {
|
|
|
2632
2703
|
onGlobalFilterChange == null ? void 0 : onGlobalFilterChange(event);
|
|
2633
2704
|
}, 200);
|
|
2634
2705
|
|
|
2706
|
+
var handleGlobalFilterMenuOpen = function handleGlobalFilterMenuOpen(event) {
|
|
2707
|
+
setAnchorEl(event.currentTarget);
|
|
2708
|
+
};
|
|
2709
|
+
|
|
2635
2710
|
var handleClear = function handleClear() {
|
|
2636
2711
|
setSearchValue('');
|
|
2637
2712
|
tableInstance.setGlobalFilter(undefined);
|
|
@@ -2652,9 +2727,20 @@ var MRT_SearchTextField = function MRT_SearchTextField() {
|
|
|
2652
2727
|
InputProps: {
|
|
2653
2728
|
startAdornment: React.createElement(InputAdornment, {
|
|
2654
2729
|
position: "start"
|
|
2730
|
+
}, React.createElement(Tooltip, {
|
|
2731
|
+
arrow: true,
|
|
2732
|
+
title: localization.changeSearchMode
|
|
2733
|
+
}, React.createElement("span", null, React.createElement(IconButton, {
|
|
2734
|
+
"aria-label": localization.changeSearchMode,
|
|
2735
|
+
onClick: handleGlobalFilterMenuOpen,
|
|
2736
|
+
size: "small",
|
|
2737
|
+
sx: {
|
|
2738
|
+
height: '1.75rem',
|
|
2739
|
+
width: '1.75rem'
|
|
2740
|
+
}
|
|
2655
2741
|
}, React.createElement(SearchIcon, {
|
|
2656
2742
|
fontSize: "small"
|
|
2657
|
-
})),
|
|
2743
|
+
}))))),
|
|
2658
2744
|
endAdornment: React.createElement(InputAdornment, {
|
|
2659
2745
|
position: "end"
|
|
2660
2746
|
}, React.createElement(IconButton, {
|
|
@@ -2671,7 +2757,10 @@ var MRT_SearchTextField = function MRT_SearchTextField() {
|
|
|
2671
2757
|
sx: _extends({
|
|
2672
2758
|
justifySelf: 'end'
|
|
2673
2759
|
}, muiSearchTextFieldProps == null ? void 0 : muiSearchTextFieldProps.sx)
|
|
2674
|
-
}))
|
|
2760
|
+
})), React.createElement(MRT_FilterTypeMenu, {
|
|
2761
|
+
anchorEl: anchorEl,
|
|
2762
|
+
setAnchorEl: setAnchorEl
|
|
2763
|
+
}));
|
|
2675
2764
|
};
|
|
2676
2765
|
|
|
2677
2766
|
var MRT_FullScreenToggleButton = function MRT_FullScreenToggleButton(_ref) {
|
|
@@ -3067,6 +3156,7 @@ var MRT_DefaultLocalization_EN = {
|
|
|
3067
3156
|
actions: 'Actions',
|
|
3068
3157
|
cancel: 'Cancel',
|
|
3069
3158
|
changeFilterMode: 'Change filter mode',
|
|
3159
|
+
changeSearchMode: 'Change search mode',
|
|
3070
3160
|
clearFilter: 'Clear filter',
|
|
3071
3161
|
clearSearch: 'Clear search',
|
|
3072
3162
|
clearSort: 'Clear sort',
|
|
@@ -3076,12 +3166,13 @@ var MRT_DefaultLocalization_EN = {
|
|
|
3076
3166
|
edit: 'Edit',
|
|
3077
3167
|
expand: 'Expand',
|
|
3078
3168
|
expandAll: 'Expand all',
|
|
3169
|
+
filterBestMatch: 'Best Match',
|
|
3170
|
+
filterBestMatchFirst: 'Best Match First',
|
|
3079
3171
|
filterByColumn: 'Filter by {column}',
|
|
3080
|
-
filterContains: 'Contains
|
|
3172
|
+
filterContains: 'Contains',
|
|
3081
3173
|
filterEmpty: 'Empty',
|
|
3082
3174
|
filterEndsWith: 'Ends With',
|
|
3083
3175
|
filterEquals: 'Equals',
|
|
3084
|
-
filterFuzzy: 'Fuzzy Match',
|
|
3085
3176
|
filterGreaterThan: 'Greater Than',
|
|
3086
3177
|
filterLessThan: 'Less Than',
|
|
3087
3178
|
filterMode: 'Filter Mode: {filterType}',
|
|
@@ -3151,7 +3242,7 @@ var MaterialReactTable = (function (_ref) {
|
|
|
3151
3242
|
} : _ref$defaultColumn,
|
|
3152
3243
|
filterTypes = _ref.filterTypes,
|
|
3153
3244
|
_ref$globalFilter = _ref.globalFilter,
|
|
3154
|
-
globalFilter = _ref$globalFilter === void 0 ?
|
|
3245
|
+
globalFilter = _ref$globalFilter === void 0 ? MRT_FILTER_TYPE.BEST_MATCH_FIRST : _ref$globalFilter,
|
|
3155
3246
|
icons = _ref.icons,
|
|
3156
3247
|
localization = _ref.localization,
|
|
3157
3248
|
_ref$positionActionsC = _ref.positionActionsColumn,
|