material-react-table 0.7.0-alpha.11 → 0.7.0-alpha.12
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 +29 -9
- package/dist/buttons/{MRT_ToggleSearchButton.d.ts → MRT_ToggleGlobalFilterButton.d.ts} +1 -1
- package/dist/material-react-table.cjs.development.js +56 -26
- 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 +56 -26
- package/dist/material-react-table.esm.js.map +1 -1
- package/package.json +1 -1
- package/src/MaterialReactTable.tsx +49 -13
- package/src/buttons/MRT_FullScreenToggleButton.tsx +12 -2
- package/src/buttons/MRT_ToggleDensePaddingButton.tsx +12 -2
- package/src/buttons/MRT_ToggleFiltersButton.tsx +12 -2
- package/src/buttons/{MRT_ToggleSearchButton.tsx → MRT_ToggleGlobalFilterButton.tsx} +13 -7
- package/src/inputs/MRT_SearchTextField.tsx +2 -2
- package/src/menus/MRT_ShowHideColumnsMenuItems.tsx +2 -2
- package/src/table/MRT_TableRoot.tsx +4 -4
- package/src/toolbar/MRT_ToolbarInternalButtons.tsx +3 -3
|
@@ -45,7 +45,7 @@ export declare type MRT_TableInstance<D extends Record<string, any> = {}> = Omit
|
|
|
45
45
|
setIsDensePadding: Dispatch<SetStateAction<boolean>>;
|
|
46
46
|
setIsFullScreen: Dispatch<SetStateAction<boolean>>;
|
|
47
47
|
setShowFilters: Dispatch<SetStateAction<boolean>>;
|
|
48
|
-
|
|
48
|
+
setShowGlobalFilter: Dispatch<SetStateAction<boolean>>;
|
|
49
49
|
};
|
|
50
50
|
export declare type MRT_TableState<D extends Record<string, any> = {}> = Omit<TableState, 'pagination'> & {
|
|
51
51
|
currentEditingRow: MRT_Row<D> | null;
|
|
@@ -54,7 +54,7 @@ export declare type MRT_TableState<D extends Record<string, any> = {}> = Omit<Ta
|
|
|
54
54
|
isDensePadding: boolean;
|
|
55
55
|
isFullScreen: boolean;
|
|
56
56
|
showFilters: boolean;
|
|
57
|
-
|
|
57
|
+
showGlobalFilter: boolean;
|
|
58
58
|
pagination: Partial<PaginationState>;
|
|
59
59
|
};
|
|
60
60
|
export declare type MRT_ColumnInterface<D extends Record<string, any> = {}> = Omit<ColumnDef<D>, 'header' | 'footer' | 'columns'> & {
|
|
@@ -277,11 +277,6 @@ export declare type MaterialReactTableProps<D extends Record<string, any> = {}>
|
|
|
277
277
|
tableInstance: MRT_TableInstance<D>;
|
|
278
278
|
event: MouseEvent<HTMLTableCellElement>;
|
|
279
279
|
}) => void;
|
|
280
|
-
onColumnHide?: ({ column, columnVisibility, tableInstance, }: {
|
|
281
|
-
column: MRT_ColumnInstance<D>;
|
|
282
|
-
columnVisibility: VisibilityState;
|
|
283
|
-
tableInstance: MRT_TableInstance<D>;
|
|
284
|
-
}) => void;
|
|
285
280
|
onDetailPanelClick?: ({ event, row, tableInstance, }: {
|
|
286
281
|
event: MouseEvent<HTMLTableCellElement>;
|
|
287
282
|
row: MRT_Row<D>;
|
|
@@ -316,6 +311,31 @@ export declare type MaterialReactTableProps<D extends Record<string, any> = {}>
|
|
|
316
311
|
selectedRows: MRT_Row<D>[];
|
|
317
312
|
tableInstance: MRT_TableInstance<D>;
|
|
318
313
|
}) => void;
|
|
314
|
+
onToggleColumnVisibility?: ({ column, columnVisibility, tableInstance, }: {
|
|
315
|
+
column: MRT_ColumnInstance<D>;
|
|
316
|
+
columnVisibility: VisibilityState;
|
|
317
|
+
tableInstance: MRT_TableInstance<D>;
|
|
318
|
+
}) => void;
|
|
319
|
+
onToggleDensePadding?: ({ event, isDensePadding, tableInstance, }: {
|
|
320
|
+
event: MouseEvent<HTMLButtonElement>;
|
|
321
|
+
isDensePadding: boolean;
|
|
322
|
+
tableInstance: MRT_TableInstance<D>;
|
|
323
|
+
}) => void;
|
|
324
|
+
onToggleFullScreen?: ({ event, isFullScreen, tableInstance, }: {
|
|
325
|
+
event: MouseEvent<HTMLButtonElement>;
|
|
326
|
+
isFullScreen: boolean;
|
|
327
|
+
tableInstance: MRT_TableInstance<D>;
|
|
328
|
+
}) => void;
|
|
329
|
+
onToggleShowFilters?: ({ event, showFilters, tableInstance, }: {
|
|
330
|
+
event: MouseEvent<HTMLButtonElement>;
|
|
331
|
+
showFilters: boolean;
|
|
332
|
+
tableInstance: MRT_TableInstance<D>;
|
|
333
|
+
}) => void;
|
|
334
|
+
onToggleShowGlobalFilter?: ({ event, showGlobalFilter, tableInstance, }: {
|
|
335
|
+
event: MouseEvent<HTMLButtonElement>;
|
|
336
|
+
showGlobalFilter: boolean;
|
|
337
|
+
tableInstance: MRT_TableInstance<D>;
|
|
338
|
+
}) => void;
|
|
319
339
|
positionActionsColumn?: 'first' | 'last';
|
|
320
340
|
positionPagination?: 'bottom' | 'top' | 'both';
|
|
321
341
|
positionToolbarActions?: 'bottom' | 'top';
|
|
@@ -336,9 +356,9 @@ export declare type MaterialReactTableProps<D extends Record<string, any> = {}>
|
|
|
336
356
|
renderToolbarCustomActions?: ({ tableInstance, }: {
|
|
337
357
|
tableInstance: MRT_TableInstance<D>;
|
|
338
358
|
}) => ReactNode;
|
|
339
|
-
renderToolbarInternalActions?: ({ tableInstance,
|
|
359
|
+
renderToolbarInternalActions?: ({ tableInstance, MRT_ToggleGlobalFilterButton, MRT_ToggleFiltersButton, MRT_ShowHideColumnsButton, MRT_ToggleDensePaddingButton, MRT_FullScreenToggleButton, }: {
|
|
340
360
|
tableInstance: MRT_TableInstance<D>;
|
|
341
|
-
|
|
361
|
+
MRT_ToggleGlobalFilterButton: FC<IconButtonProps & {
|
|
342
362
|
tableInstance: MRT_TableInstance<D>;
|
|
343
363
|
}>;
|
|
344
364
|
MRT_ToggleFiltersButton: FC<IconButtonProps & {
|
|
@@ -518,7 +518,7 @@ var MRT_ShowHideColumnsMenuItems = function MRT_ShowHideColumnsMenuItems(_ref) {
|
|
|
518
518
|
isSubMenu = _ref.isSubMenu,
|
|
519
519
|
tableInstance = _ref.tableInstance;
|
|
520
520
|
var getState = tableInstance.getState,
|
|
521
|
-
|
|
521
|
+
onToggleColumnVisibility = tableInstance.options.onToggleColumnVisibility;
|
|
522
522
|
|
|
523
523
|
var _getState = getState(),
|
|
524
524
|
columnVisibility = _getState.columnVisibility;
|
|
@@ -538,7 +538,7 @@ var MRT_ShowHideColumnsMenuItems = function MRT_ShowHideColumnsMenuItems(_ref) {
|
|
|
538
538
|
column.toggleVisibility();
|
|
539
539
|
}
|
|
540
540
|
|
|
541
|
-
|
|
541
|
+
onToggleColumnVisibility == null ? void 0 : onToggleColumnVisibility({
|
|
542
542
|
column: column,
|
|
543
543
|
columnVisibility: columnVisibility,
|
|
544
544
|
tableInstance: tableInstance
|
|
@@ -1163,7 +1163,7 @@ var MRT_SearchTextField = function MRT_SearchTextField(_ref) {
|
|
|
1163
1163
|
|
|
1164
1164
|
var _getState = getState(),
|
|
1165
1165
|
globalFilter = _getState.globalFilter,
|
|
1166
|
-
|
|
1166
|
+
showGlobalFilter = _getState.showGlobalFilter;
|
|
1167
1167
|
|
|
1168
1168
|
var _useState = React.useState(null),
|
|
1169
1169
|
anchorEl = _useState[0],
|
|
@@ -1196,7 +1196,7 @@ var MRT_SearchTextField = function MRT_SearchTextField(_ref) {
|
|
|
1196
1196
|
tableInstance: tableInstance
|
|
1197
1197
|
}) : muiSearchTextFieldProps;
|
|
1198
1198
|
return React__default.createElement(material.Collapse, {
|
|
1199
|
-
"in":
|
|
1199
|
+
"in": showGlobalFilter,
|
|
1200
1200
|
orientation: "horizontal"
|
|
1201
1201
|
}, React__default.createElement(material.TextField, Object.assign({
|
|
1202
1202
|
id: "mrt-" + idPrefix + "-search-text-field",
|
|
@@ -1258,19 +1258,27 @@ var MRT_FullScreenToggleButton = function MRT_FullScreenToggleButton(_ref) {
|
|
|
1258
1258
|
FullscreenExitIcon = _tableInstance$option2.FullscreenExitIcon,
|
|
1259
1259
|
FullscreenIcon = _tableInstance$option2.FullscreenIcon,
|
|
1260
1260
|
localization = _tableInstance$option.localization,
|
|
1261
|
+
onToggleFullScreen = _tableInstance$option.onToggleFullScreen,
|
|
1261
1262
|
setIsFullScreen = tableInstance.setIsFullScreen;
|
|
1262
1263
|
|
|
1263
1264
|
var _getState = getState(),
|
|
1264
1265
|
isFullScreen = _getState.isFullScreen;
|
|
1265
1266
|
|
|
1267
|
+
var handleToggleFullScreen = function handleToggleFullScreen(event) {
|
|
1268
|
+
onToggleFullScreen == null ? void 0 : onToggleFullScreen({
|
|
1269
|
+
event: event,
|
|
1270
|
+
isFullScreen: !isFullScreen,
|
|
1271
|
+
tableInstance: tableInstance
|
|
1272
|
+
});
|
|
1273
|
+
setIsFullScreen(!isFullScreen);
|
|
1274
|
+
};
|
|
1275
|
+
|
|
1266
1276
|
return React__default.createElement(material.Tooltip, {
|
|
1267
1277
|
arrow: true,
|
|
1268
1278
|
title: localization.toggleFullScreen
|
|
1269
1279
|
}, React__default.createElement(material.IconButton, Object.assign({
|
|
1270
1280
|
"aria-label": localization.showHideFilters,
|
|
1271
|
-
onClick:
|
|
1272
|
-
return setIsFullScreen(!isFullScreen);
|
|
1273
|
-
},
|
|
1281
|
+
onClick: handleToggleFullScreen,
|
|
1274
1282
|
size: "small"
|
|
1275
1283
|
}, rest), isFullScreen ? React__default.createElement(FullscreenExitIcon, null) : React__default.createElement(FullscreenIcon, null)));
|
|
1276
1284
|
};
|
|
@@ -1317,19 +1325,27 @@ var MRT_ToggleDensePaddingButton = function MRT_ToggleDensePaddingButton(_ref) {
|
|
|
1317
1325
|
DensityMediumIcon = _tableInstance$option2.DensityMediumIcon,
|
|
1318
1326
|
DensitySmallIcon = _tableInstance$option2.DensitySmallIcon,
|
|
1319
1327
|
localization = _tableInstance$option.localization,
|
|
1328
|
+
onToggleDensePadding = _tableInstance$option.onToggleDensePadding,
|
|
1320
1329
|
setIsDensePadding = tableInstance.setIsDensePadding;
|
|
1321
1330
|
|
|
1322
1331
|
var _getState = getState(),
|
|
1323
1332
|
isDensePadding = _getState.isDensePadding;
|
|
1324
1333
|
|
|
1334
|
+
var handleToggleDensePadding = function handleToggleDensePadding(event) {
|
|
1335
|
+
onToggleDensePadding == null ? void 0 : onToggleDensePadding({
|
|
1336
|
+
event: event,
|
|
1337
|
+
isDensePadding: !isDensePadding,
|
|
1338
|
+
tableInstance: tableInstance
|
|
1339
|
+
});
|
|
1340
|
+
setIsDensePadding(!isDensePadding);
|
|
1341
|
+
};
|
|
1342
|
+
|
|
1325
1343
|
return React__default.createElement(material.Tooltip, {
|
|
1326
1344
|
arrow: true,
|
|
1327
1345
|
title: localization.toggleDensePadding
|
|
1328
1346
|
}, React__default.createElement(material.IconButton, Object.assign({
|
|
1329
1347
|
"aria-label": localization.toggleDensePadding,
|
|
1330
|
-
onClick:
|
|
1331
|
-
return setIsDensePadding(!isDensePadding);
|
|
1332
|
-
},
|
|
1348
|
+
onClick: handleToggleDensePadding,
|
|
1333
1349
|
size: "small"
|
|
1334
1350
|
}, rest), isDensePadding ? React__default.createElement(DensitySmallIcon, null) : React__default.createElement(DensityMediumIcon, null)));
|
|
1335
1351
|
};
|
|
@@ -1345,25 +1361,33 @@ var MRT_ToggleFiltersButton = function MRT_ToggleFiltersButton(_ref) {
|
|
|
1345
1361
|
FilterListIcon = _tableInstance$option2.FilterListIcon,
|
|
1346
1362
|
FilterListOffIcon = _tableInstance$option2.FilterListOffIcon,
|
|
1347
1363
|
localization = _tableInstance$option.localization,
|
|
1364
|
+
onToggleShowFilters = _tableInstance$option.onToggleShowFilters,
|
|
1348
1365
|
setShowFilters = tableInstance.setShowFilters;
|
|
1349
1366
|
|
|
1350
1367
|
var _getState = getState(),
|
|
1351
1368
|
showFilters = _getState.showFilters;
|
|
1352
1369
|
|
|
1370
|
+
var handleToggleShowFilters = function handleToggleShowFilters(event) {
|
|
1371
|
+
onToggleShowFilters == null ? void 0 : onToggleShowFilters({
|
|
1372
|
+
event: event,
|
|
1373
|
+
showFilters: !showFilters,
|
|
1374
|
+
tableInstance: tableInstance
|
|
1375
|
+
});
|
|
1376
|
+
setShowFilters(!showFilters);
|
|
1377
|
+
};
|
|
1378
|
+
|
|
1353
1379
|
return React__default.createElement(material.Tooltip, {
|
|
1354
1380
|
arrow: true,
|
|
1355
1381
|
title: localization.showHideFilters
|
|
1356
1382
|
}, React__default.createElement(material.IconButton, Object.assign({
|
|
1357
1383
|
"aria-label": localization.showHideFilters,
|
|
1358
|
-
onClick:
|
|
1359
|
-
return setShowFilters(!showFilters);
|
|
1360
|
-
},
|
|
1384
|
+
onClick: handleToggleShowFilters,
|
|
1361
1385
|
size: "small"
|
|
1362
1386
|
}, rest), showFilters ? React__default.createElement(FilterListOffIcon, null) : React__default.createElement(FilterListIcon, null)));
|
|
1363
1387
|
};
|
|
1364
1388
|
|
|
1365
1389
|
var _excluded$4 = ["tableInstance"];
|
|
1366
|
-
var
|
|
1390
|
+
var MRT_ToggleGlobalFilterButton = function MRT_ToggleGlobalFilterButton(_ref) {
|
|
1367
1391
|
var tableInstance = _ref.tableInstance,
|
|
1368
1392
|
rest = _objectWithoutPropertiesLoose(_ref, _excluded$4);
|
|
1369
1393
|
|
|
@@ -1375,17 +1399,23 @@ var MRT_ToggleSearchButton = function MRT_ToggleSearchButton(_ref) {
|
|
|
1375
1399
|
idPrefix = _tableInstance$option.idPrefix,
|
|
1376
1400
|
localization = _tableInstance$option.localization,
|
|
1377
1401
|
muiSearchTextFieldProps = _tableInstance$option.muiSearchTextFieldProps,
|
|
1378
|
-
|
|
1402
|
+
onToggleShowGlobalFilter = _tableInstance$option.onToggleShowGlobalFilter,
|
|
1403
|
+
setShowGlobalFilter = tableInstance.setShowGlobalFilter;
|
|
1379
1404
|
|
|
1380
1405
|
var _getState = getState(),
|
|
1381
|
-
|
|
1406
|
+
showGlobalFilter = _getState.showGlobalFilter;
|
|
1382
1407
|
|
|
1383
1408
|
var textFieldProps = muiSearchTextFieldProps instanceof Function ? muiSearchTextFieldProps({
|
|
1384
1409
|
tableInstance: tableInstance
|
|
1385
1410
|
}) : muiSearchTextFieldProps;
|
|
1386
1411
|
|
|
1387
|
-
var handleToggleSearch = function handleToggleSearch() {
|
|
1388
|
-
|
|
1412
|
+
var handleToggleSearch = function handleToggleSearch(event) {
|
|
1413
|
+
onToggleShowGlobalFilter == null ? void 0 : onToggleShowGlobalFilter({
|
|
1414
|
+
event: event,
|
|
1415
|
+
showGlobalFilter: !showGlobalFilter,
|
|
1416
|
+
tableInstance: tableInstance
|
|
1417
|
+
});
|
|
1418
|
+
setShowGlobalFilter(!showGlobalFilter);
|
|
1389
1419
|
setTimeout(function () {
|
|
1390
1420
|
var _document$getElementB, _textFieldProps$id;
|
|
1391
1421
|
|
|
@@ -1399,7 +1429,7 @@ var MRT_ToggleSearchButton = function MRT_ToggleSearchButton(_ref) {
|
|
|
1399
1429
|
}, React__default.createElement(material.IconButton, Object.assign({
|
|
1400
1430
|
size: "small",
|
|
1401
1431
|
onClick: handleToggleSearch
|
|
1402
|
-
}, rest),
|
|
1432
|
+
}, rest), showGlobalFilter ? React__default.createElement(SearchOffIcon, null) : React__default.createElement(SearchIcon, null)));
|
|
1403
1433
|
};
|
|
1404
1434
|
|
|
1405
1435
|
var MRT_ToolbarInternalButtons = function MRT_ToolbarInternalButtons(_ref) {
|
|
@@ -1419,7 +1449,7 @@ var MRT_ToolbarInternalButtons = function MRT_ToolbarInternalButtons(_ref) {
|
|
|
1419
1449
|
MRT_ShowHideColumnsButton: MRT_ShowHideColumnsButton,
|
|
1420
1450
|
MRT_ToggleDensePaddingButton: MRT_ToggleDensePaddingButton,
|
|
1421
1451
|
MRT_ToggleFiltersButton: MRT_ToggleFiltersButton,
|
|
1422
|
-
|
|
1452
|
+
MRT_ToggleGlobalFilterButton: MRT_ToggleGlobalFilterButton,
|
|
1423
1453
|
tableInstance: tableInstance
|
|
1424
1454
|
}));
|
|
1425
1455
|
}
|
|
@@ -1431,7 +1461,7 @@ var MRT_ToolbarInternalButtons = function MRT_ToolbarInternalButtons(_ref) {
|
|
|
1431
1461
|
alignItems: 'center',
|
|
1432
1462
|
p: '0 0.5rem'
|
|
1433
1463
|
}
|
|
1434
|
-
}, enableFilters && enableGlobalFilter && React__default.createElement(
|
|
1464
|
+
}, enableFilters && enableGlobalFilter && React__default.createElement(MRT_ToggleGlobalFilterButton, {
|
|
1435
1465
|
tableInstance: tableInstance
|
|
1436
1466
|
}), enableFilters && enableColumnFilters && React__default.createElement(MRT_ToggleFiltersButton, {
|
|
1437
1467
|
tableInstance: tableInstance
|
|
@@ -2818,9 +2848,9 @@ var MRT_TableRoot = function MRT_TableRoot(props) {
|
|
|
2818
2848
|
showFilters = _useState4[0],
|
|
2819
2849
|
setShowFilters = _useState4[1];
|
|
2820
2850
|
|
|
2821
|
-
var _useState5 = React.useState((_props$initialState$s2 = (_props$initialState4 = props.initialState) == null ? void 0 : _props$initialState4.
|
|
2822
|
-
|
|
2823
|
-
|
|
2851
|
+
var _useState5 = React.useState((_props$initialState$s2 = (_props$initialState4 = props.initialState) == null ? void 0 : _props$initialState4.showGlobalFilter) != null ? _props$initialState$s2 : false),
|
|
2852
|
+
showGlobalFilter = _useState5[0],
|
|
2853
|
+
setShowGlobalFilter = _useState5[1];
|
|
2824
2854
|
|
|
2825
2855
|
var _useState6 = React.useState({
|
|
2826
2856
|
pageIndex: (_props$initialState$p = (_props$initialState5 = props.initialState) == null ? void 0 : (_props$initialState5$ = _props$initialState5.pagination) == null ? void 0 : _props$initialState5$.pageIndex) != null ? _props$initialState$p : 0,
|
|
@@ -2961,7 +2991,7 @@ var MRT_TableRoot = function MRT_TableRoot(props) {
|
|
|
2961
2991
|
//@ts-ignore
|
|
2962
2992
|
pagination: pagination,
|
|
2963
2993
|
showFilters: showFilters,
|
|
2964
|
-
|
|
2994
|
+
showGlobalFilter: showGlobalFilter
|
|
2965
2995
|
}, props.state)
|
|
2966
2996
|
})), {
|
|
2967
2997
|
setCurrentEditingRow: setCurrentEditingRow,
|
|
@@ -2970,7 +3000,7 @@ var MRT_TableRoot = function MRT_TableRoot(props) {
|
|
|
2970
3000
|
setIsDensePadding: setIsDensePadding,
|
|
2971
3001
|
setIsFullScreen: setIsFullScreen,
|
|
2972
3002
|
setShowFilters: setShowFilters,
|
|
2973
|
-
|
|
3003
|
+
setShowGlobalFilter: setShowGlobalFilter
|
|
2974
3004
|
});
|
|
2975
3005
|
|
|
2976
3006
|
return React__default.createElement(MRT_TablePaper, {
|