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.
@@ -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
- setShowSearch: Dispatch<SetStateAction<boolean>>;
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
- showSearch: boolean;
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, MRT_ToggleSearchButton, MRT_ToggleFiltersButton, MRT_ShowHideColumnsButton, MRT_ToggleDensePaddingButton, MRT_FullScreenToggleButton, }: {
359
+ renderToolbarInternalActions?: ({ tableInstance, MRT_ToggleGlobalFilterButton, MRT_ToggleFiltersButton, MRT_ShowHideColumnsButton, MRT_ToggleDensePaddingButton, MRT_FullScreenToggleButton, }: {
340
360
  tableInstance: MRT_TableInstance<D>;
341
- MRT_ToggleSearchButton: FC<IconButtonProps & {
361
+ MRT_ToggleGlobalFilterButton: FC<IconButtonProps & {
342
362
  tableInstance: MRT_TableInstance<D>;
343
363
  }>;
344
364
  MRT_ToggleFiltersButton: FC<IconButtonProps & {
@@ -4,5 +4,5 @@ import { MRT_TableInstance } from '..';
4
4
  interface Props extends IconButtonProps {
5
5
  tableInstance: MRT_TableInstance;
6
6
  }
7
- export declare const MRT_ToggleSearchButton: FC<Props>;
7
+ export declare const MRT_ToggleGlobalFilterButton: FC<Props>;
8
8
  export {};
@@ -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
- onColumnHide = tableInstance.options.onColumnHide;
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
- onColumnHide == null ? void 0 : onColumnHide({
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
- showSearch = _getState.showSearch;
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": showSearch,
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: function 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: function 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: function 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 MRT_ToggleSearchButton = function MRT_ToggleSearchButton(_ref) {
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
- setShowSearch = tableInstance.setShowSearch;
1402
+ onToggleShowGlobalFilter = _tableInstance$option.onToggleShowGlobalFilter,
1403
+ setShowGlobalFilter = tableInstance.setShowGlobalFilter;
1379
1404
 
1380
1405
  var _getState = getState(),
1381
- showSearch = _getState.showSearch;
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
- setShowSearch(!showSearch);
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), showSearch ? React__default.createElement(SearchOffIcon, null) : React__default.createElement(SearchIcon, null)));
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
- MRT_ToggleSearchButton: MRT_ToggleSearchButton,
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(MRT_ToggleSearchButton, {
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.showSearch) != null ? _props$initialState$s2 : false),
2822
- showSearch = _useState5[0],
2823
- setShowSearch = _useState5[1];
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
- showSearch: showSearch
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
- setShowSearch: setShowSearch
3003
+ setShowGlobalFilter: setShowGlobalFilter
2974
3004
  });
2975
3005
 
2976
3006
  return React__default.createElement(MRT_TablePaper, {