material-react-table 0.8.15 → 0.9.2

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.
Files changed (41) hide show
  1. package/README.md +1 -1
  2. package/dist/MaterialReactTable.d.ts +38 -36
  3. package/dist/body/MRT_TableBody.d.ts +2 -1
  4. package/dist/material-react-table.cjs.development.js +630 -86
  5. package/dist/material-react-table.cjs.development.js.map +1 -1
  6. package/dist/material-react-table.cjs.production.min.js +1 -1
  7. package/dist/material-react-table.cjs.production.min.js.map +1 -1
  8. package/dist/material-react-table.esm.js +137 -84
  9. package/dist/material-react-table.esm.js.map +1 -1
  10. package/dist/table/MRT_Table.d.ts +2 -1
  11. package/dist/table/MRT_TableRoot.d.ts +1 -0
  12. package/dist/toolbar/MRT_LinearProgressBar.d.ts +1 -0
  13. package/dist/utils.d.ts +1 -1
  14. package/package.json +11 -10
  15. package/src/MaterialReactTable.tsx +51 -47
  16. package/src/body/MRT_TableBody.tsx +53 -14
  17. package/src/body/MRT_TableBodyCell.tsx +13 -9
  18. package/src/body/MRT_TableBodyRow.tsx +4 -3
  19. package/src/body/MRT_TableDetailPanel.tsx +2 -2
  20. package/src/buttons/MRT_EditActionButtons.tsx +2 -2
  21. package/src/buttons/MRT_ExpandButton.tsx +2 -2
  22. package/src/buttons/MRT_FullScreenToggleButton.tsx +2 -2
  23. package/src/buttons/MRT_ToggleDensePaddingButton.tsx +2 -2
  24. package/src/buttons/MRT_ToggleFiltersButton.tsx +2 -2
  25. package/src/buttons/MRT_ToggleGlobalFilterButton.tsx +4 -4
  26. package/src/head/MRT_TableHeadCellFilterLabel.tsx +1 -0
  27. package/src/inputs/MRT_EditCellTextField.tsx +8 -8
  28. package/src/inputs/MRT_FilterTextField.tsx +2 -2
  29. package/src/inputs/MRT_SearchTextField.tsx +4 -4
  30. package/src/inputs/MRT_SelectCheckbox.tsx +4 -4
  31. package/src/menus/MRT_ColumnActionMenu.tsx +2 -2
  32. package/src/menus/MRT_ShowHideColumnsMenu.tsx +1 -1
  33. package/src/menus/MRT_ShowHideColumnsMenuItems.tsx +2 -2
  34. package/src/table/MRT_Table.tsx +10 -3
  35. package/src/table/MRT_TableContainer.tsx +10 -4
  36. package/src/table/MRT_TableRoot.tsx +11 -11
  37. package/src/toolbar/MRT_LinearProgressBar.tsx +17 -2
  38. package/src/toolbar/MRT_ToolbarBottom.tsx +4 -4
  39. package/src/toolbar/MRT_ToolbarInternalButtons.tsx +2 -1
  40. package/src/toolbar/MRT_ToolbarTop.tsx +13 -6
  41. package/src/utils.ts +1 -1
@@ -193,7 +193,7 @@ var MRT_ExpandButton = function MRT_ExpandButton(_ref) {
193
193
  _tableInstance$option = tableInstance.options,
194
194
  ExpandMoreIcon = _tableInstance$option.icons.ExpandMoreIcon,
195
195
  localization = _tableInstance$option.localization,
196
- onRowExpandChange = _tableInstance$option.onRowExpandChange,
196
+ onMrtRowExpandChange = _tableInstance$option.onMrtRowExpandChange,
197
197
  renderDetailPanel = _tableInstance$option.renderDetailPanel;
198
198
 
199
199
  var _getState = getState(),
@@ -201,7 +201,7 @@ var MRT_ExpandButton = function MRT_ExpandButton(_ref) {
201
201
 
202
202
  var handleToggleExpand = function handleToggleExpand(event) {
203
203
  row.toggleExpanded();
204
- onRowExpandChange == null ? void 0 : onRowExpandChange({
204
+ onMrtRowExpandChange == null ? void 0 : onMrtRowExpandChange({
205
205
  event: event,
206
206
  row: row,
207
207
  tableInstance: tableInstance
@@ -3421,7 +3421,7 @@ var MRT_ShowHideColumnsMenuItems = function MRT_ShowHideColumnsMenuItems(_ref) {
3421
3421
  var getState = tableInstance.getState,
3422
3422
  _tableInstance$option = tableInstance.options,
3423
3423
  enableColumnOrdering = _tableInstance$option.enableColumnOrdering,
3424
- onToggleColumnVisibility = _tableInstance$option.onToggleColumnVisibility,
3424
+ onMrtToggleColumnVisibility = _tableInstance$option.onMrtToggleColumnVisibility,
3425
3425
  setColumnOrder = tableInstance.setColumnOrder;
3426
3426
 
3427
3427
  var _getState = getState(),
@@ -3468,7 +3468,7 @@ var MRT_ShowHideColumnsMenuItems = function MRT_ShowHideColumnsMenuItems(_ref) {
3468
3468
  column.toggleVisibility();
3469
3469
  }
3470
3470
 
3471
- onToggleColumnVisibility == null ? void 0 : onToggleColumnVisibility({
3471
+ onMrtToggleColumnVisibility == null ? void 0 : onMrtToggleColumnVisibility({
3472
3472
  column: column,
3473
3473
  columnVisibility: columnVisibility,
3474
3474
  tableInstance: tableInstance
@@ -3565,7 +3565,7 @@ var MRT_ShowHideColumnsMenu = function MRT_ShowHideColumnsMenu(_ref) {
3565
3565
  if (columnOrder.length > 0 && !columns.some(function (col) {
3566
3566
  return col.columnDefType === 'group';
3567
3567
  })) {
3568
- return [].concat(getLeftLeafColumns(), [].concat(new Set(columnOrder)).map(function (colId) {
3568
+ return [].concat(getLeftLeafColumns(), Array.from(new Set(columnOrder)).map(function (colId) {
3569
3569
  return getCenterLeafColumns().find(function (col) {
3570
3570
  return (col == null ? void 0 : col.id) === colId;
3571
3571
  });
@@ -3656,7 +3656,7 @@ var MRT_ColumnActionMenu = function MRT_ColumnActionMenu(_ref) {
3656
3656
  SortIcon = _tableInstance$option2.SortIcon,
3657
3657
  RestartAltIcon = _tableInstance$option2.RestartAltIcon,
3658
3658
  VisibilityOffIcon = _tableInstance$option2.VisibilityOffIcon,
3659
- idPrefix = _tableInstance$option.idPrefix,
3659
+ tableId = _tableInstance$option.tableId,
3660
3660
  localization = _tableInstance$option.localization,
3661
3661
  setShowFilters = tableInstance.setShowFilters;
3662
3662
  var column = header.column;
@@ -3724,7 +3724,7 @@ var MRT_ColumnActionMenu = function MRT_ColumnActionMenu(_ref) {
3724
3724
  var _document$getElementB, _header$muiTableHeadC, _header$muiTableHeadC2;
3725
3725
 
3726
3726
  return (_document$getElementB = document.getElementById( // @ts-ignore
3727
- (_header$muiTableHeadC = (_header$muiTableHeadC2 = header.muiTableHeadCellFilterTextFieldProps) == null ? void 0 : _header$muiTableHeadC2.id) != null ? _header$muiTableHeadC : "mrt-" + idPrefix + "-" + header.id + "-filter-text-field")) == null ? void 0 : _document$getElementB.focus();
3727
+ (_header$muiTableHeadC = (_header$muiTableHeadC2 = header.muiTableHeadCellFilterTextFieldProps) == null ? void 0 : _header$muiTableHeadC2.id) != null ? _header$muiTableHeadC : "mrt-" + tableId + "-" + header.id + "-filter-text-field")) == null ? void 0 : _document$getElementB.focus();
3728
3728
  }, 200);
3729
3729
  setAnchorEl(null);
3730
3730
  };
@@ -3937,7 +3937,7 @@ var MRT_EditActionButtons = function MRT_EditActionButtons(_ref) {
3937
3937
  CancelIcon = _tableInstance$option2.CancelIcon,
3938
3938
  SaveIcon = _tableInstance$option2.SaveIcon,
3939
3939
  localization = _tableInstance$option.localization,
3940
- onEditSubmit = _tableInstance$option.onEditSubmit,
3940
+ onMrtEditRowSubmit = _tableInstance$option.onMrtEditRowSubmit,
3941
3941
  setCurrentEditingRow = tableInstance.setCurrentEditingRow;
3942
3942
 
3943
3943
  var _getState = getState(),
@@ -3951,7 +3951,7 @@ var MRT_EditActionButtons = function MRT_EditActionButtons(_ref) {
3951
3951
  };
3952
3952
 
3953
3953
  var handleSave = function handleSave() {
3954
- onEditSubmit == null ? void 0 : onEditSubmit({
3954
+ onMrtEditRowSubmit == null ? void 0 : onMrtEditRowSubmit({
3955
3955
  row: currentEditingRow != null ? currentEditingRow : row,
3956
3956
  tableInstance: tableInstance
3957
3957
  });
@@ -4063,8 +4063,8 @@ var MRT_SelectCheckbox = function MRT_SelectCheckbox(_ref) {
4063
4063
  _tableInstance$option = tableInstance.options,
4064
4064
  localization = _tableInstance$option.localization,
4065
4065
  muiSelectCheckboxProps = _tableInstance$option.muiSelectCheckboxProps,
4066
- onSelectChange = _tableInstance$option.onSelectChange,
4067
- onSelectAllChange = _tableInstance$option.onSelectAllChange,
4066
+ onMrtSelectRowChange = _tableInstance$option.onMrtSelectRowChange,
4067
+ onMrtSelectAllChange = _tableInstance$option.onMrtSelectAllChange,
4068
4068
  selectAllMode = _tableInstance$option.selectAllMode;
4069
4069
 
4070
4070
  var _getState = getState(),
@@ -4078,14 +4078,14 @@ var MRT_SelectCheckbox = function MRT_SelectCheckbox(_ref) {
4078
4078
  tableInstance.getToggleAllPageRowsSelectedHandler()(event);
4079
4079
  }
4080
4080
 
4081
- onSelectAllChange == null ? void 0 : onSelectAllChange({
4081
+ onMrtSelectAllChange == null ? void 0 : onMrtSelectAllChange({
4082
4082
  event: event,
4083
4083
  selectedRows: event.target.checked ? getRowModel().flatRows : [],
4084
4084
  tableInstance: tableInstance
4085
4085
  });
4086
4086
  } else if (row) {
4087
4087
  row == null ? void 0 : row.getToggleSelectedHandler()(event);
4088
- onSelectChange == null ? void 0 : onSelectChange({
4088
+ onMrtSelectRowChange == null ? void 0 : onMrtSelectRowChange({
4089
4089
  event: event,
4090
4090
  row: row,
4091
4091
  selectedRows: event.target.checked ? [].concat(getSelectedRowModel().flatRows, [row]) : getSelectedRowModel().flatRows.filter(function (selectedRow) {
@@ -5104,14 +5104,14 @@ var MRT_FullScreenToggleButton = function MRT_FullScreenToggleButton(_ref) {
5104
5104
  FullscreenExitIcon = _tableInstance$option2.FullscreenExitIcon,
5105
5105
  FullscreenIcon = _tableInstance$option2.FullscreenIcon,
5106
5106
  localization = _tableInstance$option.localization,
5107
- onToggleFullScreen = _tableInstance$option.onToggleFullScreen,
5107
+ onMrtToggleFullScreen = _tableInstance$option.onMrtToggleFullScreen,
5108
5108
  setIsFullScreen = tableInstance.setIsFullScreen;
5109
5109
 
5110
5110
  var _getState = getState(),
5111
5111
  isFullScreen = _getState.isFullScreen;
5112
5112
 
5113
5113
  var handleToggleFullScreen = function handleToggleFullScreen(event) {
5114
- onToggleFullScreen == null ? void 0 : onToggleFullScreen({
5114
+ onMrtToggleFullScreen == null ? void 0 : onMrtToggleFullScreen({
5115
5115
  event: event,
5116
5116
  isFullScreen: !isFullScreen,
5117
5117
  tableInstance: tableInstance
@@ -5169,14 +5169,14 @@ var MRT_ToggleDensePaddingButton = function MRT_ToggleDensePaddingButton(_ref) {
5169
5169
  DensityMediumIcon = _tableInstance$option2.DensityMediumIcon,
5170
5170
  DensitySmallIcon = _tableInstance$option2.DensitySmallIcon,
5171
5171
  localization = _tableInstance$option.localization,
5172
- onToggleDensePadding = _tableInstance$option.onToggleDensePadding,
5172
+ onMrtToggleDensePadding = _tableInstance$option.onMrtToggleDensePadding,
5173
5173
  setIsDensePadding = tableInstance.setIsDensePadding;
5174
5174
 
5175
5175
  var _getState = getState(),
5176
5176
  isDensePadding = _getState.isDensePadding;
5177
5177
 
5178
5178
  var handleToggleDensePadding = function handleToggleDensePadding(event) {
5179
- onToggleDensePadding == null ? void 0 : onToggleDensePadding({
5179
+ onMrtToggleDensePadding == null ? void 0 : onMrtToggleDensePadding({
5180
5180
  event: event,
5181
5181
  isDensePadding: !isDensePadding,
5182
5182
  tableInstance: tableInstance
@@ -5204,14 +5204,14 @@ var MRT_ToggleFiltersButton = function MRT_ToggleFiltersButton(_ref) {
5204
5204
  FilterListIcon = _tableInstance$option2.FilterListIcon,
5205
5205
  FilterListOffIcon = _tableInstance$option2.FilterListOffIcon,
5206
5206
  localization = _tableInstance$option.localization,
5207
- onToggleShowFilters = _tableInstance$option.onToggleShowFilters,
5207
+ onMrtToggleShowFilters = _tableInstance$option.onMrtToggleShowFilters,
5208
5208
  setShowFilters = tableInstance.setShowFilters;
5209
5209
 
5210
5210
  var _getState = getState(),
5211
5211
  showFilters = _getState.showFilters;
5212
5212
 
5213
5213
  var handleToggleShowFilters = function handleToggleShowFilters(event) {
5214
- onToggleShowFilters == null ? void 0 : onToggleShowFilters({
5214
+ onMrtToggleShowFilters == null ? void 0 : onMrtToggleShowFilters({
5215
5215
  event: event,
5216
5216
  showFilters: !showFilters,
5217
5217
  tableInstance: tableInstance
@@ -5238,10 +5238,10 @@ var MRT_ToggleGlobalFilterButton = function MRT_ToggleGlobalFilterButton(_ref) {
5238
5238
  _tableInstance$option2 = _tableInstance$option.icons,
5239
5239
  SearchIcon = _tableInstance$option2.SearchIcon,
5240
5240
  SearchOffIcon = _tableInstance$option2.SearchOffIcon,
5241
- idPrefix = _tableInstance$option.idPrefix,
5241
+ tableId = _tableInstance$option.tableId,
5242
5242
  localization = _tableInstance$option.localization,
5243
5243
  muiSearchTextFieldProps = _tableInstance$option.muiSearchTextFieldProps,
5244
- onToggleShowGlobalFilter = _tableInstance$option.onToggleShowGlobalFilter,
5244
+ onMrtToggleShowGlobalFilter = _tableInstance$option.onMrtToggleShowGlobalFilter,
5245
5245
  setShowGlobalFilter = tableInstance.setShowGlobalFilter;
5246
5246
 
5247
5247
  var _getState = getState(),
@@ -5252,7 +5252,7 @@ var MRT_ToggleGlobalFilterButton = function MRT_ToggleGlobalFilterButton(_ref) {
5252
5252
  }) : muiSearchTextFieldProps;
5253
5253
 
5254
5254
  var handleToggleSearch = function handleToggleSearch(event) {
5255
- onToggleShowGlobalFilter == null ? void 0 : onToggleShowGlobalFilter({
5255
+ onMrtToggleShowGlobalFilter == null ? void 0 : onMrtToggleShowGlobalFilter({
5256
5256
  event: event,
5257
5257
  showGlobalFilter: !showGlobalFilter,
5258
5258
  tableInstance: tableInstance
@@ -5261,7 +5261,7 @@ var MRT_ToggleGlobalFilterButton = function MRT_ToggleGlobalFilterButton(_ref) {
5261
5261
  setTimeout(function () {
5262
5262
  var _document$getElementB, _textFieldProps$id;
5263
5263
 
5264
- return (_document$getElementB = document.getElementById((_textFieldProps$id = textFieldProps == null ? void 0 : textFieldProps.id) != null ? _textFieldProps$id : "mrt-" + idPrefix + "-search-text-field")) == null ? void 0 : _document$getElementB.focus();
5264
+ return (_document$getElementB = document.getElementById((_textFieldProps$id = textFieldProps == null ? void 0 : textFieldProps.id) != null ? _textFieldProps$id : "mrt-" + tableId + "-search-text-field")) == null ? void 0 : _document$getElementB.focus();
5265
5265
  }, 200);
5266
5266
  };
5267
5267
 
@@ -5281,10 +5281,10 @@ var MRT_SearchTextField = function MRT_SearchTextField(_ref) {
5281
5281
  _tableInstance$option2 = _tableInstance$option.icons,
5282
5282
  SearchIcon = _tableInstance$option2.SearchIcon,
5283
5283
  CloseIcon = _tableInstance$option2.CloseIcon,
5284
- idPrefix = _tableInstance$option.idPrefix,
5284
+ tableId = _tableInstance$option.tableId,
5285
5285
  localization = _tableInstance$option.localization,
5286
5286
  muiSearchTextFieldProps = _tableInstance$option.muiSearchTextFieldProps,
5287
- onGlobalSearchFilterChange = _tableInstance$option.onGlobalSearchFilterChange;
5287
+ onMrtGlobalFilterValueChange = _tableInstance$option.onMrtGlobalFilterValueChange;
5288
5288
 
5289
5289
  var _getState = getState(),
5290
5290
  globalFilter = _getState.globalFilter,
@@ -5302,7 +5302,7 @@ var MRT_SearchTextField = function MRT_SearchTextField(_ref) {
5302
5302
  var _event$target$value;
5303
5303
 
5304
5304
  setGlobalFilter((_event$target$value = event.target.value) != null ? _event$target$value : undefined);
5305
- onGlobalSearchFilterChange == null ? void 0 : onGlobalSearchFilterChange({
5305
+ onMrtGlobalFilterValueChange == null ? void 0 : onMrtGlobalFilterValueChange({
5306
5306
  event: event,
5307
5307
  tableInstance: tableInstance
5308
5308
  });
@@ -5324,7 +5324,7 @@ var MRT_SearchTextField = function MRT_SearchTextField(_ref) {
5324
5324
  "in": showGlobalFilter,
5325
5325
  orientation: "horizontal"
5326
5326
  }, React__default.createElement(material.TextField, Object.assign({
5327
- id: "mrt-" + idPrefix + "-search-text-field",
5327
+ id: "mrt-" + tableId + "-search-text-field",
5328
5328
  placeholder: localization.search,
5329
5329
  onChange: function onChange(event) {
5330
5330
  setSearchValue(event.target.value);
@@ -5379,6 +5379,7 @@ var MRT_ToolbarInternalButtons = function MRT_ToolbarInternalButtons(_ref) {
5379
5379
  enableFullScreenToggle = _tableInstance$option.enableFullScreenToggle,
5380
5380
  enableGlobalFilter = _tableInstance$option.enableGlobalFilter,
5381
5381
  enableHiding = _tableInstance$option.enableHiding,
5382
+ positionGlobalFilter = _tableInstance$option.positionGlobalFilter,
5382
5383
  renderToolbarInternalActions = _tableInstance$option.renderToolbarInternalActions;
5383
5384
  return React__default.createElement(material.Box, {
5384
5385
  sx: {
@@ -5393,7 +5394,7 @@ var MRT_ToolbarInternalButtons = function MRT_ToolbarInternalButtons(_ref) {
5393
5394
  MRT_ToggleFiltersButton: MRT_ToggleFiltersButton,
5394
5395
  MRT_ToggleGlobalFilterButton: MRT_ToggleGlobalFilterButton,
5395
5396
  tableInstance: tableInstance
5396
- })) != null ? _renderToolbarInterna : React__default.createElement(React__default.Fragment, null, enableGlobalFilter && React__default.createElement(MRT_SearchTextField, {
5397
+ })) != null ? _renderToolbarInterna : React__default.createElement(React__default.Fragment, null, enableGlobalFilter && positionGlobalFilter === 'right' && React__default.createElement(MRT_SearchTextField, {
5397
5398
  tableInstance: tableInstance
5398
5399
  }), enableFilters && enableGlobalFilter && React__default.createElement(MRT_ToggleGlobalFilterButton, {
5399
5400
  tableInstance: tableInstance
@@ -5518,7 +5519,8 @@ var MRT_ToolbarAlertBanner = function MRT_ToolbarAlertBanner(_ref) {
5518
5519
  };
5519
5520
 
5520
5521
  var MRT_LinearProgressBar = function MRT_LinearProgressBar(_ref) {
5521
- var tableInstance = _ref.tableInstance;
5522
+ var alignTo = _ref.alignTo,
5523
+ tableInstance = _ref.tableInstance;
5522
5524
  var muiLinearProgressProps = tableInstance.options.muiLinearProgressProps,
5523
5525
  getState = tableInstance.getState;
5524
5526
 
@@ -5532,10 +5534,19 @@ var MRT_LinearProgressBar = function MRT_LinearProgressBar(_ref) {
5532
5534
  return React__default.createElement(material.Collapse, {
5533
5535
  "in": isLoading || showProgressBars,
5534
5536
  mountOnEnter: true,
5535
- unmountOnExit: true
5537
+ unmountOnExit: true,
5538
+ sx: {
5539
+ bottom: alignTo === 'bottom' ? 0 : undefined,
5540
+ position: 'absolute',
5541
+ top: alignTo === 'top' ? 0 : undefined,
5542
+ width: '100%'
5543
+ }
5536
5544
  }, React__default.createElement(material.LinearProgress, Object.assign({
5537
5545
  "aria-label": "Loading",
5538
- "aria-busy": "true"
5546
+ "aria-busy": "true",
5547
+ sx: {
5548
+ position: 'relative'
5549
+ }
5539
5550
  }, linearProgressProps)));
5540
5551
  };
5541
5552
 
@@ -5559,25 +5570,28 @@ var MRT_ToolbarTop = function MRT_ToolbarTop(_ref2) {
5559
5570
  var tableInstance = _ref2.tableInstance;
5560
5571
  var getState = tableInstance.getState,
5561
5572
  _tableInstance$option = tableInstance.options,
5573
+ enableGlobalFilter = _tableInstance$option.enableGlobalFilter,
5562
5574
  enablePagination = _tableInstance$option.enablePagination,
5563
5575
  enableToolbarInternalActions = _tableInstance$option.enableToolbarInternalActions,
5564
- idPrefix = _tableInstance$option.idPrefix,
5576
+ tableId = _tableInstance$option.tableId,
5565
5577
  muiTableToolbarTopProps = _tableInstance$option.muiTableToolbarTopProps,
5566
5578
  positionPagination = _tableInstance$option.positionPagination,
5579
+ positionGlobalFilter = _tableInstance$option.positionGlobalFilter,
5567
5580
  positionToolbarActions = _tableInstance$option.positionToolbarActions,
5568
5581
  positionToolbarAlertBanner = _tableInstance$option.positionToolbarAlertBanner,
5569
5582
  renderToolbarCustomActions = _tableInstance$option.renderToolbarCustomActions;
5570
5583
 
5571
5584
  var _getState = getState(),
5572
- isFullScreen = _getState.isFullScreen;
5585
+ isFullScreen = _getState.isFullScreen,
5586
+ showGlobalFilter = _getState.showGlobalFilter;
5573
5587
 
5574
5588
  var isMobile = material.useMediaQuery('(max-width:720px)');
5575
5589
  var toolbarProps = muiTableToolbarTopProps instanceof Function ? muiTableToolbarTopProps({
5576
5590
  tableInstance: tableInstance
5577
5591
  }) : muiTableToolbarTopProps;
5578
- var stackAlertBanner = isMobile || positionToolbarAlertBanner === 'top' && !!renderToolbarCustomActions;
5592
+ var stackAlertBanner = isMobile || positionToolbarAlertBanner === 'top' && (!!renderToolbarCustomActions || showGlobalFilter);
5579
5593
  return React__default.createElement(material.Toolbar, Object.assign({
5580
- id: "mrt-" + idPrefix + "-toolbar-top",
5594
+ id: "mrt-" + tableId + "-toolbar-top",
5581
5595
  variant: "dense"
5582
5596
  }, toolbarProps, {
5583
5597
  sx: function sx(theme) {
@@ -5599,15 +5613,18 @@ var MRT_ToolbarTop = function MRT_ToolbarTop(_ref2) {
5599
5613
  position: stackAlertBanner ? 'relative' : 'absolute',
5600
5614
  right: 0,
5601
5615
  top: 0,
5602
- width: 'calc(100% - 1rem)'
5616
+ width: renderToolbarCustomActions ? '100%' : undefined
5603
5617
  }
5604
- }, (_renderToolbarCustomA = renderToolbarCustomActions == null ? void 0 : renderToolbarCustomActions({
5618
+ }, enableGlobalFilter && positionGlobalFilter === 'left' && React__default.createElement(MRT_SearchTextField, {
5619
+ tableInstance: tableInstance
5620
+ }), (_renderToolbarCustomA = renderToolbarCustomActions == null ? void 0 : renderToolbarCustomActions({
5605
5621
  tableInstance: tableInstance
5606
5622
  })) != null ? _renderToolbarCustomA : React__default.createElement("span", null), enableToolbarInternalActions && positionToolbarActions === 'top' && React__default.createElement(MRT_ToolbarInternalButtons, {
5607
5623
  tableInstance: tableInstance
5608
5624
  })), React__default.createElement("div", null, enablePagination && ['top', 'both'].includes(positionPagination != null ? positionPagination : '') && React__default.createElement(MRT_TablePagination, {
5609
5625
  tableInstance: tableInstance
5610
5626
  })), React__default.createElement(MRT_LinearProgressBar, {
5627
+ alignTo: "bottom",
5611
5628
  tableInstance: tableInstance
5612
5629
  }));
5613
5630
  };
@@ -5617,7 +5634,7 @@ var MRT_ToolbarBottom = function MRT_ToolbarBottom(_ref) {
5617
5634
  var getState = tableInstance.getState,
5618
5635
  _tableInstance$option = tableInstance.options,
5619
5636
  enableToolbarInternalActions = _tableInstance$option.enableToolbarInternalActions,
5620
- idPrefix = _tableInstance$option.idPrefix,
5637
+ tableId = _tableInstance$option.tableId,
5621
5638
  enablePagination = _tableInstance$option.enablePagination,
5622
5639
  muiTableToolbarBottomProps = _tableInstance$option.muiTableToolbarBottomProps,
5623
5640
  positionPagination = _tableInstance$option.positionPagination,
@@ -5634,7 +5651,7 @@ var MRT_ToolbarBottom = function MRT_ToolbarBottom(_ref) {
5634
5651
  }) : muiTableToolbarBottomProps;
5635
5652
  var stackAlertBanner = isMobile || positionToolbarAlertBanner === 'bottom' && positionToolbarActions === 'bottom' || positionToolbarAlertBanner === 'bottom' && !!renderToolbarCustomActions && positionToolbarActions === 'bottom';
5636
5653
  return React__default.createElement(material.Toolbar, Object.assign({
5637
- id: "mrt-" + idPrefix + "-toolbar-bottom",
5654
+ id: "mrt-" + tableId + "-toolbar-bottom",
5638
5655
  variant: "dense"
5639
5656
  }, toolbarProps, {
5640
5657
  sx: function sx(theme) {
@@ -5642,11 +5659,12 @@ var MRT_ToolbarBottom = function MRT_ToolbarBottom(_ref) {
5642
5659
  theme: theme
5643
5660
  }), {
5644
5661
  bottom: isFullScreen ? '0' : undefined,
5645
- position: isFullScreen ? 'fixed' : undefined,
5646
- boxShadow: "-3px 0 6px " + material.alpha(theme.palette.common.black, 0.1)
5662
+ boxShadow: "-3px 0 6px " + material.alpha(theme.palette.common.black, 0.1),
5663
+ position: isFullScreen ? 'fixed' : 'relative'
5647
5664
  }, toolbarProps == null ? void 0 : toolbarProps.sx);
5648
5665
  }
5649
5666
  }), React__default.createElement(MRT_LinearProgressBar, {
5667
+ alignTo: 'top',
5650
5668
  tableInstance: tableInstance
5651
5669
  }), positionToolbarAlertBanner === 'bottom' && React__default.createElement(MRT_ToolbarAlertBanner, {
5652
5670
  tableInstance: tableInstance
@@ -5677,7 +5695,7 @@ var MRT_FilterTextField = function MRT_FilterTextField(_ref) {
5677
5695
  _tableInstance$option2 = _tableInstance$option.icons,
5678
5696
  FilterListIcon = _tableInstance$option2.FilterListIcon,
5679
5697
  CloseIcon = _tableInstance$option2.CloseIcon,
5680
- idPrefix = _tableInstance$option.idPrefix,
5698
+ tableId = _tableInstance$option.tableId,
5681
5699
  localization = _tableInstance$option.localization,
5682
5700
  muiTableHeadCellFilterTextFieldProps = _tableInstance$option.muiTableHeadCellFilterTextFieldProps,
5683
5701
  setCurrentFilterFns = tableInstance.setCurrentFilterFns;
@@ -5755,7 +5773,7 @@ var MRT_FilterTextField = function MRT_FilterTextField(_ref) {
5755
5773
  }));
5756
5774
  }
5757
5775
 
5758
- var filterId = "mrt-" + idPrefix + "-" + header.id + "-filter-text-field" + (inputIndex != null ? inputIndex : '');
5776
+ var filterId = "mrt-" + tableId + "-" + header.id + "-filter-text-field" + (inputIndex != null ? inputIndex : '');
5759
5777
  var filterFn = currentFilterFns == null ? void 0 : currentFilterFns[header.id];
5760
5778
  var isSelectFilter = !!columnDef.filterSelectOptions;
5761
5779
  var filterChipLabel = !(filterFn instanceof Function) && [MRT_FILTER_OPTION.EMPTY, MRT_FILTER_OPTION.NOT_EMPTY].includes(filterFn) ? //@ts-ignore
@@ -5958,6 +5976,7 @@ var MRT_TableHeadCellFilterLabel = function MRT_TableHeadCellFilterLabel(_ref) {
5958
5976
  opacity: !!column.getFilterValue() || showFilters ? 0.8 : 0,
5959
5977
  p: '2px',
5960
5978
  transition: 'all 0.2s ease-in-out',
5979
+ transform: 'scale(0.66)',
5961
5980
  '&:hover': {
5962
5981
  backgroundColor: 'transparent',
5963
5982
  opacity: 0.8
@@ -6313,11 +6332,11 @@ var MRT_EditCellTextField = function MRT_EditCellTextField(_ref) {
6313
6332
  tableInstance = _ref.tableInstance;
6314
6333
  var getState = tableInstance.getState,
6315
6334
  _tableInstance$option = tableInstance.options,
6316
- idPrefix = _tableInstance$option.idPrefix,
6335
+ tableId = _tableInstance$option.tableId,
6317
6336
  enableEditing = _tableInstance$option.enableEditing,
6318
6337
  muiTableBodyCellEditTextFieldProps = _tableInstance$option.muiTableBodyCellEditTextFieldProps,
6319
- onCellEditBlur = _tableInstance$option.onCellEditBlur,
6320
- onCellEditChange = _tableInstance$option.onCellEditChange,
6338
+ onMrtCellEditBlur = _tableInstance$option.onMrtCellEditBlur,
6339
+ onMrtCellEditChange = _tableInstance$option.onMrtCellEditChange,
6321
6340
  setCurrentEditingCell = tableInstance.setCurrentEditingCell,
6322
6341
  setCurrentEditingRow = tableInstance.setCurrentEditingRow;
6323
6342
 
@@ -6331,12 +6350,12 @@ var MRT_EditCellTextField = function MRT_EditCellTextField(_ref) {
6331
6350
 
6332
6351
  var handleChange = function handleChange(event) {
6333
6352
  setValue(event.target.value);
6334
- columnDef.onCellEditChange == null ? void 0 : columnDef.onCellEditChange({
6353
+ columnDef.onMrtCellEditChange == null ? void 0 : columnDef.onMrtCellEditChange({
6335
6354
  event: event,
6336
6355
  cell: cell,
6337
6356
  tableInstance: tableInstance
6338
6357
  });
6339
- onCellEditChange == null ? void 0 : onCellEditChange({
6358
+ onMrtCellEditChange == null ? void 0 : onMrtCellEditChange({
6340
6359
  event: event,
6341
6360
  cell: cell,
6342
6361
  tableInstance: tableInstance
@@ -6351,12 +6370,12 @@ var MRT_EditCellTextField = function MRT_EditCellTextField(_ref) {
6351
6370
  }
6352
6371
 
6353
6372
  setCurrentEditingCell(null);
6354
- columnDef.onCellEditBlur == null ? void 0 : columnDef.onCellEditBlur({
6373
+ columnDef.onMrtCellEditBlur == null ? void 0 : columnDef.onMrtCellEditBlur({
6355
6374
  event: event,
6356
6375
  cell: cell,
6357
6376
  tableInstance: tableInstance
6358
6377
  });
6359
- onCellEditBlur == null ? void 0 : onCellEditBlur({
6378
+ onMrtCellEditBlur == null ? void 0 : onMrtCellEditBlur({
6360
6379
  event: event,
6361
6380
  cell: cell,
6362
6381
  tableInstance: tableInstance
@@ -6382,7 +6401,7 @@ var MRT_EditCellTextField = function MRT_EditCellTextField(_ref) {
6382
6401
  }
6383
6402
 
6384
6403
  return React__default.createElement(material.TextField, Object.assign({
6385
- id: "mrt-" + idPrefix + "-edit-cell-text-field-" + cell.id,
6404
+ id: "mrt-" + tableId + "-edit-cell-text-field-" + cell.id,
6386
6405
  margin: "dense",
6387
6406
  onBlur: handleBlur,
6388
6407
  onChange: handleChange,
@@ -6471,10 +6490,10 @@ var MRT_TableBodyCell = function MRT_TableBodyCell(_ref) {
6471
6490
  enableClickToCopy = _tableInstance$option.enableClickToCopy,
6472
6491
  enableColumnOrdering = _tableInstance$option.enableColumnOrdering,
6473
6492
  enableEditing = _tableInstance$option.enableEditing,
6474
- idPrefix = _tableInstance$option.idPrefix,
6493
+ tableId = _tableInstance$option.tableId,
6475
6494
  muiTableBodyCellProps = _tableInstance$option.muiTableBodyCellProps,
6476
6495
  muiTableBodyCellSkeletonProps = _tableInstance$option.muiTableBodyCellSkeletonProps,
6477
- onCellClick = _tableInstance$option.onCellClick,
6496
+ onMrtCellClick = _tableInstance$option.onMrtCellClick,
6478
6497
  setColumnOrder = tableInstance.setColumnOrder,
6479
6498
  setCurrentEditingCell = tableInstance.setCurrentEditingCell;
6480
6499
 
@@ -6520,7 +6539,7 @@ var MRT_TableBodyCell = function MRT_TableBodyCell(_ref) {
6520
6539
  if ((enableEditing || columnDef.enableEditing) && columnDef.enableEditing !== false && editingMode === 'cell') {
6521
6540
  setCurrentEditingCell(cell);
6522
6541
  setTimeout(function () {
6523
- var textField = document.getElementById("mrt-" + idPrefix + "-edit-cell-text-field-" + cell.id);
6542
+ var textField = document.getElementById("mrt-" + tableId + "-edit-cell-text-field-" + cell.id);
6524
6543
 
6525
6544
  if (textField) {
6526
6545
  textField.focus();
@@ -6544,7 +6563,7 @@ var MRT_TableBodyCell = function MRT_TableBodyCell(_ref) {
6544
6563
 
6545
6564
  return React__default.createElement(material.TableCell, Object.assign({
6546
6565
  onClick: function onClick(event) {
6547
- return onCellClick == null ? void 0 : onCellClick({
6566
+ return onMrtCellClick == null ? void 0 : onMrtCellClick({
6548
6567
  event: event,
6549
6568
  cell: cell,
6550
6569
  tableInstance: tableInstance
@@ -6567,7 +6586,7 @@ var MRT_TableBodyCell = function MRT_TableBodyCell(_ref) {
6567
6586
  whiteSpace: isDensePadding ? 'nowrap' : 'normal',
6568
6587
  zIndex: column.getIsPinned() ? 1 : undefined,
6569
6588
  '&:hover': {
6570
- backgroundColor: enableHover ? theme.palette.mode === 'dark' ? material.lighten(theme.palette.background["default"], 0.13) + " !important" : material.darken(theme.palette.background["default"], 0.07) + " !important" : undefined
6589
+ backgroundColor: enableHover && enableEditing && editingMode !== 'row' ? theme.palette.mode === 'dark' ? material.lighten(theme.palette.background["default"], 0.13) + " !important" : material.darken(theme.palette.background["default"], 0.07) + " !important" : undefined
6571
6590
  }
6572
6591
  }, tableCellProps == null ? void 0 : tableCellProps.sx);
6573
6592
  },
@@ -6605,7 +6624,7 @@ var MRT_TableDetailPanel = function MRT_TableDetailPanel(_ref) {
6605
6624
  _tableInstance$option = tableInstance.options,
6606
6625
  muiTableBodyRowProps = _tableInstance$option.muiTableBodyRowProps,
6607
6626
  muiTableDetailPanelProps = _tableInstance$option.muiTableDetailPanelProps,
6608
- onDetailPanelClick = _tableInstance$option.onDetailPanelClick,
6627
+ onMrtDetailPanelClick = _tableInstance$option.onMrtDetailPanelClick,
6609
6628
  renderDetailPanel = _tableInstance$option.renderDetailPanel;
6610
6629
  var tableRowProps = muiTableBodyRowProps instanceof Function ? muiTableBodyRowProps({
6611
6630
  row: row,
@@ -6618,7 +6637,7 @@ var MRT_TableDetailPanel = function MRT_TableDetailPanel(_ref) {
6618
6637
  return React__default.createElement(material.TableRow, Object.assign({}, tableRowProps), React__default.createElement(material.TableCell, Object.assign({
6619
6638
  colSpan: getVisibleFlatColumns().length + 10,
6620
6639
  onClick: function onClick(event) {
6621
- return onDetailPanelClick == null ? void 0 : onDetailPanelClick({
6640
+ return onMrtDetailPanelClick == null ? void 0 : onMrtDetailPanelClick({
6622
6641
  event: event,
6623
6642
  row: row,
6624
6643
  tableInstance: tableInstance
@@ -6642,9 +6661,10 @@ var MRT_TableDetailPanel = function MRT_TableDetailPanel(_ref) {
6642
6661
  var MRT_TableBodyRow = function MRT_TableBodyRow(_ref) {
6643
6662
  var row = _ref.row,
6644
6663
  tableInstance = _ref.tableInstance;
6645
- var _tableInstance$option = tableInstance.options,
6664
+ var getIsSomeColumnsPinned = tableInstance.getIsSomeColumnsPinned,
6665
+ _tableInstance$option = tableInstance.options,
6646
6666
  muiTableBodyRowProps = _tableInstance$option.muiTableBodyRowProps,
6647
- onRowClick = _tableInstance$option.onRowClick,
6667
+ onMrtRowClick = _tableInstance$option.onMrtRowClick,
6648
6668
  renderDetailPanel = _tableInstance$option.renderDetailPanel;
6649
6669
  var tableRowProps = muiTableBodyRowProps instanceof Function ? muiTableBodyRowProps({
6650
6670
  row: row,
@@ -6653,7 +6673,7 @@ var MRT_TableBodyRow = function MRT_TableBodyRow(_ref) {
6653
6673
  return React__default.createElement(React__default.Fragment, null, React__default.createElement(material.TableRow, Object.assign({
6654
6674
  hover: true,
6655
6675
  onClick: function onClick(event) {
6656
- return onRowClick == null ? void 0 : onRowClick({
6676
+ return onMrtRowClick == null ? void 0 : onMrtRowClick({
6657
6677
  event: event,
6658
6678
  row: row,
6659
6679
  tableInstance: tableInstance
@@ -6666,7 +6686,7 @@ var MRT_TableBodyRow = function MRT_TableBodyRow(_ref) {
6666
6686
  backgroundColor: material.lighten(theme.palette.background["default"], 0.06),
6667
6687
  transition: 'all 0.2s ease-in-out',
6668
6688
  '&:hover td': {
6669
- backgroundColor: (tableRowProps == null ? void 0 : tableRowProps.hover) !== false ? theme.palette.mode === 'dark' ? "" + material.lighten(theme.palette.background["default"], 0.12) : "" + material.darken(theme.palette.background["default"], 0.05) : undefined
6689
+ backgroundColor: (tableRowProps == null ? void 0 : tableRowProps.hover) !== false && getIsSomeColumnsPinned() ? theme.palette.mode === 'dark' ? "" + material.lighten(theme.palette.background["default"], 0.12) : "" + material.darken(theme.palette.background["default"], 0.05) : undefined
6670
6690
  }
6671
6691
  }, tableRowProps == null ? void 0 : tableRowProps.sx);
6672
6692
  }
@@ -6683,24 +6703,540 @@ var MRT_TableBodyRow = function MRT_TableBodyRow(_ref) {
6683
6703
  }));
6684
6704
  };
6685
6705
 
6706
+ function _extends$1() {
6707
+ _extends$1 = Object.assign || function (target) {
6708
+ for (var i = 1; i < arguments.length; i++) {
6709
+ var source = arguments[i];
6710
+
6711
+ for (var key in source) {
6712
+ if (Object.prototype.hasOwnProperty.call(source, key)) {
6713
+ target[key] = source[key];
6714
+ }
6715
+ }
6716
+ }
6717
+
6718
+ return target;
6719
+ };
6720
+
6721
+ return _extends$1.apply(this, arguments);
6722
+ }
6723
+
6724
+ function _objectWithoutPropertiesLoose$2(source, excluded) {
6725
+ if (source == null) return {};
6726
+ var target = {};
6727
+ var sourceKeys = Object.keys(source);
6728
+ var key, i;
6729
+
6730
+ for (i = 0; i < sourceKeys.length; i++) {
6731
+ key = sourceKeys[i];
6732
+ if (excluded.indexOf(key) >= 0) continue;
6733
+ target[key] = source[key];
6734
+ }
6735
+
6736
+ return target;
6737
+ }
6738
+
6739
+ var props = ['bottom', 'height', 'left', 'right', 'top', 'width'];
6740
+
6741
+ var rectChanged = function rectChanged(a, b) {
6742
+ if (a === void 0) {
6743
+ a = {};
6744
+ }
6745
+
6746
+ if (b === void 0) {
6747
+ b = {};
6748
+ }
6749
+
6750
+ return props.some(function (prop) {
6751
+ return a[prop] !== b[prop];
6752
+ });
6753
+ };
6754
+
6755
+ var observedNodes = /*#__PURE__*/new Map();
6756
+ var rafId;
6757
+
6758
+ var run = function run() {
6759
+ var changedStates = [];
6760
+ observedNodes.forEach(function (state, node) {
6761
+ var newRect = node.getBoundingClientRect();
6762
+
6763
+ if (rectChanged(newRect, state.rect)) {
6764
+ state.rect = newRect;
6765
+ changedStates.push(state);
6766
+ }
6767
+ });
6768
+ changedStates.forEach(function (state) {
6769
+ state.callbacks.forEach(function (cb) {
6770
+ return cb(state.rect);
6771
+ });
6772
+ });
6773
+ rafId = window.requestAnimationFrame(run);
6774
+ };
6775
+
6776
+ function observeRect(node, cb) {
6777
+ return {
6778
+ observe: function observe() {
6779
+ var wasEmpty = observedNodes.size === 0;
6780
+
6781
+ if (observedNodes.has(node)) {
6782
+ observedNodes.get(node).callbacks.push(cb);
6783
+ } else {
6784
+ observedNodes.set(node, {
6785
+ rect: undefined,
6786
+ hasRectChanged: false,
6787
+ callbacks: [cb]
6788
+ });
6789
+ }
6790
+
6791
+ if (wasEmpty) run();
6792
+ },
6793
+ unobserve: function unobserve() {
6794
+ var state = observedNodes.get(node);
6795
+
6796
+ if (state) {
6797
+ // Remove the callback
6798
+ var index = state.callbacks.indexOf(cb);
6799
+ if (index >= 0) state.callbacks.splice(index, 1); // Remove the node reference
6800
+
6801
+ if (!state.callbacks.length) observedNodes["delete"](node); // Stop the loop
6802
+
6803
+ if (!observedNodes.size) cancelAnimationFrame(rafId);
6804
+ }
6805
+ }
6806
+ };
6807
+ }
6808
+
6809
+ var useIsomorphicLayoutEffect$1 = typeof window !== 'undefined' ? React__default.useLayoutEffect : React__default.useEffect;
6810
+
6811
+ function useRect(nodeRef, initialRect) {
6812
+ if (initialRect === void 0) {
6813
+ initialRect = {
6814
+ width: 0,
6815
+ height: 0
6816
+ };
6817
+ }
6818
+
6819
+ var _React$useState = React__default.useState(nodeRef.current),
6820
+ element = _React$useState[0],
6821
+ setElement = _React$useState[1];
6822
+
6823
+ var _React$useReducer = React__default.useReducer(rectReducer, initialRect),
6824
+ rect = _React$useReducer[0],
6825
+ dispatch = _React$useReducer[1];
6826
+
6827
+ var initialRectSet = React__default.useRef(false);
6828
+ useIsomorphicLayoutEffect$1(function () {
6829
+ if (nodeRef.current !== element) {
6830
+ setElement(nodeRef.current);
6831
+ }
6832
+ });
6833
+ useIsomorphicLayoutEffect$1(function () {
6834
+ if (element && !initialRectSet.current) {
6835
+ initialRectSet.current = true;
6836
+
6837
+ var _rect = element.getBoundingClientRect();
6838
+
6839
+ dispatch({
6840
+ rect: _rect
6841
+ });
6842
+ }
6843
+ }, [element]);
6844
+ React__default.useEffect(function () {
6845
+ if (!element) {
6846
+ return;
6847
+ }
6848
+
6849
+ var observer = observeRect(element, function (rect) {
6850
+ dispatch({
6851
+ rect: rect
6852
+ });
6853
+ });
6854
+ observer.observe();
6855
+ return function () {
6856
+ observer.unobserve();
6857
+ };
6858
+ }, [element]);
6859
+ return rect;
6860
+ }
6861
+
6862
+ function rectReducer(state, action) {
6863
+ var rect = action.rect;
6864
+
6865
+ if (state.height !== rect.height || state.width !== rect.width) {
6866
+ return rect;
6867
+ }
6868
+
6869
+ return state;
6870
+ }
6871
+
6872
+ var defaultEstimateSize = function defaultEstimateSize() {
6873
+ return 50;
6874
+ };
6875
+
6876
+ var defaultKeyExtractor = function defaultKeyExtractor(index) {
6877
+ return index;
6878
+ };
6879
+
6880
+ var defaultMeasureSize = function defaultMeasureSize(el, horizontal) {
6881
+ var key = horizontal ? 'offsetWidth' : 'offsetHeight';
6882
+ return el[key];
6883
+ };
6884
+
6885
+ var defaultRangeExtractor = function defaultRangeExtractor(range) {
6886
+ var start = Math.max(range.start - range.overscan, 0);
6887
+ var end = Math.min(range.end + range.overscan, range.size - 1);
6888
+ var arr = [];
6889
+
6890
+ for (var i = start; i <= end; i++) {
6891
+ arr.push(i);
6892
+ }
6893
+
6894
+ return arr;
6895
+ };
6896
+ function useVirtual(_ref) {
6897
+ var _measurements;
6898
+
6899
+ var _ref$size = _ref.size,
6900
+ size = _ref$size === void 0 ? 0 : _ref$size,
6901
+ _ref$estimateSize = _ref.estimateSize,
6902
+ estimateSize = _ref$estimateSize === void 0 ? defaultEstimateSize : _ref$estimateSize,
6903
+ _ref$overscan = _ref.overscan,
6904
+ overscan = _ref$overscan === void 0 ? 1 : _ref$overscan,
6905
+ _ref$paddingStart = _ref.paddingStart,
6906
+ paddingStart = _ref$paddingStart === void 0 ? 0 : _ref$paddingStart,
6907
+ _ref$paddingEnd = _ref.paddingEnd,
6908
+ paddingEnd = _ref$paddingEnd === void 0 ? 0 : _ref$paddingEnd,
6909
+ parentRef = _ref.parentRef,
6910
+ horizontal = _ref.horizontal,
6911
+ scrollToFn = _ref.scrollToFn,
6912
+ useObserver = _ref.useObserver,
6913
+ initialRect = _ref.initialRect,
6914
+ onScrollElement = _ref.onScrollElement,
6915
+ scrollOffsetFn = _ref.scrollOffsetFn,
6916
+ _ref$keyExtractor = _ref.keyExtractor,
6917
+ keyExtractor = _ref$keyExtractor === void 0 ? defaultKeyExtractor : _ref$keyExtractor,
6918
+ _ref$measureSize = _ref.measureSize,
6919
+ measureSize = _ref$measureSize === void 0 ? defaultMeasureSize : _ref$measureSize,
6920
+ _ref$rangeExtractor = _ref.rangeExtractor,
6921
+ rangeExtractor = _ref$rangeExtractor === void 0 ? defaultRangeExtractor : _ref$rangeExtractor;
6922
+ var sizeKey = horizontal ? 'width' : 'height';
6923
+ var scrollKey = horizontal ? 'scrollLeft' : 'scrollTop';
6924
+ var latestRef = React__default.useRef({
6925
+ scrollOffset: 0,
6926
+ measurements: []
6927
+ });
6928
+
6929
+ var _React$useState = React__default.useState(0),
6930
+ scrollOffset = _React$useState[0],
6931
+ setScrollOffset = _React$useState[1];
6932
+
6933
+ latestRef.current.scrollOffset = scrollOffset;
6934
+ var useMeasureParent = useObserver || useRect;
6935
+
6936
+ var _useMeasureParent = useMeasureParent(parentRef, initialRect),
6937
+ outerSize = _useMeasureParent[sizeKey];
6938
+
6939
+ latestRef.current.outerSize = outerSize;
6940
+ var defaultScrollToFn = React__default.useCallback(function (offset) {
6941
+ if (parentRef.current) {
6942
+ parentRef.current[scrollKey] = offset;
6943
+ }
6944
+ }, [parentRef, scrollKey]);
6945
+ var resolvedScrollToFn = scrollToFn || defaultScrollToFn;
6946
+ scrollToFn = React__default.useCallback(function (offset) {
6947
+ resolvedScrollToFn(offset, defaultScrollToFn);
6948
+ }, [defaultScrollToFn, resolvedScrollToFn]);
6949
+
6950
+ var _React$useState2 = React__default.useState({}),
6951
+ measuredCache = _React$useState2[0],
6952
+ setMeasuredCache = _React$useState2[1];
6953
+
6954
+ var measure = React__default.useCallback(function () {
6955
+ return setMeasuredCache({});
6956
+ }, []);
6957
+ var pendingMeasuredCacheIndexesRef = React__default.useRef([]);
6958
+ var measurements = React__default.useMemo(function () {
6959
+ var min = pendingMeasuredCacheIndexesRef.current.length > 0 ? Math.min.apply(Math, pendingMeasuredCacheIndexesRef.current) : 0;
6960
+ pendingMeasuredCacheIndexesRef.current = [];
6961
+ var measurements = latestRef.current.measurements.slice(0, min);
6962
+
6963
+ for (var i = min; i < size; i++) {
6964
+ var key = keyExtractor(i);
6965
+ var measuredSize = measuredCache[key];
6966
+
6967
+ var _start = measurements[i - 1] ? measurements[i - 1].end : paddingStart;
6968
+
6969
+ var _size = typeof measuredSize === 'number' ? measuredSize : estimateSize(i);
6970
+
6971
+ var _end = _start + _size;
6972
+
6973
+ measurements[i] = {
6974
+ index: i,
6975
+ start: _start,
6976
+ size: _size,
6977
+ end: _end,
6978
+ key: key
6979
+ };
6980
+ }
6981
+
6982
+ return measurements;
6983
+ }, [estimateSize, measuredCache, paddingStart, size, keyExtractor]);
6984
+ var totalSize = (((_measurements = measurements[size - 1]) == null ? void 0 : _measurements.end) || paddingStart) + paddingEnd;
6985
+ latestRef.current.measurements = measurements;
6986
+ latestRef.current.totalSize = totalSize;
6987
+ var element = onScrollElement ? onScrollElement.current : parentRef.current;
6988
+ var scrollOffsetFnRef = React__default.useRef(scrollOffsetFn);
6989
+ scrollOffsetFnRef.current = scrollOffsetFn;
6990
+ useIsomorphicLayoutEffect$1(function () {
6991
+ if (!element) {
6992
+ setScrollOffset(0);
6993
+ return;
6994
+ }
6995
+
6996
+ var onScroll = function onScroll(event) {
6997
+ var offset = scrollOffsetFnRef.current ? scrollOffsetFnRef.current(event) : element[scrollKey];
6998
+ setScrollOffset(offset);
6999
+ };
7000
+
7001
+ onScroll();
7002
+ element.addEventListener('scroll', onScroll, {
7003
+ capture: false,
7004
+ passive: true
7005
+ });
7006
+ return function () {
7007
+ element.removeEventListener('scroll', onScroll);
7008
+ };
7009
+ }, [element, scrollKey]);
7010
+
7011
+ var _calculateRange = calculateRange(latestRef.current),
7012
+ start = _calculateRange.start,
7013
+ end = _calculateRange.end;
7014
+
7015
+ var indexes = React__default.useMemo(function () {
7016
+ return rangeExtractor({
7017
+ start: start,
7018
+ end: end,
7019
+ overscan: overscan,
7020
+ size: measurements.length
7021
+ });
7022
+ }, [start, end, overscan, measurements.length, rangeExtractor]);
7023
+ var measureSizeRef = React__default.useRef(measureSize);
7024
+ measureSizeRef.current = measureSize;
7025
+ var virtualItems = React__default.useMemo(function () {
7026
+ var virtualItems = [];
7027
+
7028
+ var _loop = function _loop(k, len) {
7029
+ var i = indexes[k];
7030
+ var measurement = measurements[i];
7031
+
7032
+ var item = _extends$1(_extends$1({}, measurement), {}, {
7033
+ measureRef: function measureRef(el) {
7034
+ if (el) {
7035
+ var measuredSize = measureSizeRef.current(el, horizontal);
7036
+
7037
+ if (measuredSize !== item.size) {
7038
+ var _scrollOffset = latestRef.current.scrollOffset;
7039
+
7040
+ if (item.start < _scrollOffset) {
7041
+ defaultScrollToFn(_scrollOffset + (measuredSize - item.size));
7042
+ }
7043
+
7044
+ pendingMeasuredCacheIndexesRef.current.push(i);
7045
+ setMeasuredCache(function (old) {
7046
+ var _extends2;
7047
+
7048
+ return _extends$1(_extends$1({}, old), {}, (_extends2 = {}, _extends2[item.key] = measuredSize, _extends2));
7049
+ });
7050
+ }
7051
+ }
7052
+ }
7053
+ });
7054
+
7055
+ virtualItems.push(item);
7056
+ };
7057
+
7058
+ for (var k = 0, len = indexes.length; k < len; k++) {
7059
+ _loop(k);
7060
+ }
7061
+
7062
+ return virtualItems;
7063
+ }, [indexes, defaultScrollToFn, horizontal, measurements]);
7064
+ var mountedRef = React__default.useRef(false);
7065
+ useIsomorphicLayoutEffect$1(function () {
7066
+ if (mountedRef.current) {
7067
+ setMeasuredCache({});
7068
+ }
7069
+
7070
+ mountedRef.current = true;
7071
+ }, [estimateSize]);
7072
+ var scrollToOffset = React__default.useCallback(function (toOffset, _temp) {
7073
+ var _ref2 = _temp === void 0 ? {} : _temp,
7074
+ _ref2$align = _ref2.align,
7075
+ align = _ref2$align === void 0 ? 'start' : _ref2$align;
7076
+
7077
+ var _latestRef$current = latestRef.current,
7078
+ scrollOffset = _latestRef$current.scrollOffset,
7079
+ outerSize = _latestRef$current.outerSize;
7080
+
7081
+ if (align === 'auto') {
7082
+ if (toOffset <= scrollOffset) {
7083
+ align = 'start';
7084
+ } else if (toOffset >= scrollOffset + outerSize) {
7085
+ align = 'end';
7086
+ } else {
7087
+ align = 'start';
7088
+ }
7089
+ }
7090
+
7091
+ if (align === 'start') {
7092
+ scrollToFn(toOffset);
7093
+ } else if (align === 'end') {
7094
+ scrollToFn(toOffset - outerSize);
7095
+ } else if (align === 'center') {
7096
+ scrollToFn(toOffset - outerSize / 2);
7097
+ }
7098
+ }, [scrollToFn]);
7099
+ var tryScrollToIndex = React__default.useCallback(function (index, _temp2) {
7100
+ var _ref3 = _temp2 === void 0 ? {} : _temp2,
7101
+ _ref3$align = _ref3.align,
7102
+ align = _ref3$align === void 0 ? 'auto' : _ref3$align,
7103
+ rest = _objectWithoutPropertiesLoose$2(_ref3, ["align"]);
7104
+
7105
+ var _latestRef$current2 = latestRef.current,
7106
+ measurements = _latestRef$current2.measurements,
7107
+ scrollOffset = _latestRef$current2.scrollOffset,
7108
+ outerSize = _latestRef$current2.outerSize;
7109
+ var measurement = measurements[Math.max(0, Math.min(index, size - 1))];
7110
+
7111
+ if (!measurement) {
7112
+ return;
7113
+ }
7114
+
7115
+ if (align === 'auto') {
7116
+ if (measurement.end >= scrollOffset + outerSize) {
7117
+ align = 'end';
7118
+ } else if (measurement.start <= scrollOffset) {
7119
+ align = 'start';
7120
+ } else {
7121
+ return;
7122
+ }
7123
+ }
7124
+
7125
+ var toOffset = align === 'center' ? measurement.start + measurement.size / 2 : align === 'end' ? measurement.end : measurement.start;
7126
+ scrollToOffset(toOffset, _extends$1({
7127
+ align: align
7128
+ }, rest));
7129
+ }, [scrollToOffset, size]);
7130
+ var scrollToIndex = React__default.useCallback(function () {
7131
+ for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
7132
+ args[_key] = arguments[_key];
7133
+ }
7134
+
7135
+ // We do a double request here because of
7136
+ // dynamic sizes which can cause offset shift
7137
+ // and end up in the wrong spot. Unfortunately,
7138
+ // we can't know about those dynamic sizes until
7139
+ // we try and render them. So double down!
7140
+ tryScrollToIndex.apply(void 0, args);
7141
+ requestAnimationFrame(function () {
7142
+ tryScrollToIndex.apply(void 0, args);
7143
+ });
7144
+ }, [tryScrollToIndex]);
7145
+ return {
7146
+ virtualItems: virtualItems,
7147
+ totalSize: totalSize,
7148
+ scrollToOffset: scrollToOffset,
7149
+ scrollToIndex: scrollToIndex,
7150
+ measure: measure
7151
+ };
7152
+ }
7153
+
7154
+ var findNearestBinarySearch = function findNearestBinarySearch(low, high, getCurrentValue, value) {
7155
+ while (low <= high) {
7156
+ var middle = (low + high) / 2 | 0;
7157
+ var currentValue = getCurrentValue(middle);
7158
+
7159
+ if (currentValue < value) {
7160
+ low = middle + 1;
7161
+ } else if (currentValue > value) {
7162
+ high = middle - 1;
7163
+ } else {
7164
+ return middle;
7165
+ }
7166
+ }
7167
+
7168
+ if (low > 0) {
7169
+ return low - 1;
7170
+ } else {
7171
+ return 0;
7172
+ }
7173
+ };
7174
+
7175
+ function calculateRange(_ref4) {
7176
+ var measurements = _ref4.measurements,
7177
+ outerSize = _ref4.outerSize,
7178
+ scrollOffset = _ref4.scrollOffset;
7179
+ var size = measurements.length - 1;
7180
+
7181
+ var getOffset = function getOffset(index) {
7182
+ return measurements[index].start;
7183
+ };
7184
+
7185
+ var start = findNearestBinarySearch(0, size, getOffset, scrollOffset);
7186
+ var end = start;
7187
+
7188
+ while (end < size && measurements[end].end < scrollOffset + outerSize) {
7189
+ end++;
7190
+ }
7191
+
7192
+ return {
7193
+ start: start,
7194
+ end: end
7195
+ };
7196
+ }
7197
+
6686
7198
  var MRT_TableBody = function MRT_TableBody(_ref) {
6687
- var tableInstance = _ref.tableInstance;
7199
+ var tableInstance = _ref.tableInstance,
7200
+ tableContainerRef = _ref.tableContainerRef;
6688
7201
  var getPaginationRowModel = tableInstance.getPaginationRowModel,
6689
7202
  getPrePaginationRowModel = tableInstance.getPrePaginationRowModel,
7203
+ getState = tableInstance.getState,
6690
7204
  _tableInstance$option = tableInstance.options,
6691
7205
  enablePagination = _tableInstance$option.enablePagination,
7206
+ enableRowVirtualization = _tableInstance$option.enableRowVirtualization,
6692
7207
  muiTableBodyProps = _tableInstance$option.muiTableBodyProps;
6693
- var rows = enablePagination ? getPaginationRowModel().rows : getPrePaginationRowModel().rows;
7208
+
7209
+ var _getState = getState(),
7210
+ isDensePadding = _getState.isDensePadding;
7211
+
6694
7212
  var tableBodyProps = muiTableBodyProps instanceof Function ? muiTableBodyProps({
6695
7213
  tableInstance: tableInstance
6696
7214
  }) : muiTableBodyProps;
6697
- return React__default.createElement(material.TableBody, Object.assign({}, tableBodyProps), rows.map(function (row) {
7215
+ var rows = enablePagination ? getPaginationRowModel().rows : getPrePaginationRowModel().rows;
7216
+ var rowVirtualizer = useVirtual({
7217
+ overscan: isDensePadding ? 15 : 5,
7218
+ size: rows.length,
7219
+ parentRef: tableContainerRef
7220
+ });
7221
+ var virtualRows = rowVirtualizer.virtualItems;
7222
+ var paddingTop = virtualRows.length > 0 ? virtualRows[0].start : 0;
7223
+ var paddingBottom = virtualRows.length > 0 ? rowVirtualizer.totalSize - virtualRows[virtualRows.length - 1].end : 0;
7224
+ return React__default.createElement(material.TableBody, Object.assign({}, tableBodyProps), enableRowVirtualization && paddingTop > 0 && React__default.createElement("tr", null, React__default.createElement("td", {
7225
+ style: {
7226
+ height: paddingTop + "px"
7227
+ }
7228
+ })), (enableRowVirtualization ? virtualRows : rows).map(function (rowOrVirtualRow) {
7229
+ var row = enableRowVirtualization ? rows[rowOrVirtualRow.index] : rowOrVirtualRow;
6698
7230
  return React__default.createElement(MRT_TableBodyRow, {
6699
7231
  key: row.id,
6700
7232
  row: row,
6701
7233
  tableInstance: tableInstance
6702
7234
  });
6703
- }));
7235
+ }), enableRowVirtualization && paddingBottom > 0 && React__default.createElement("tr", null, React__default.createElement("td", {
7236
+ style: {
7237
+ height: paddingBottom + "px"
7238
+ }
7239
+ })));
6704
7240
  };
6705
7241
 
6706
7242
  var MRT_TableFooterCell = function MRT_TableFooterCell(_ref) {
@@ -6794,7 +7330,8 @@ var MRT_TableFooter = function MRT_TableFooter(_ref) {
6794
7330
  };
6795
7331
 
6796
7332
  var MRT_Table = function MRT_Table(_ref) {
6797
- var tableInstance = _ref.tableInstance;
7333
+ var tableContainerRef = _ref.tableContainerRef,
7334
+ tableInstance = _ref.tableInstance;
6798
7335
  var _tableInstance$option = tableInstance.options,
6799
7336
  enableStickyHeader = _tableInstance$option.enableStickyHeader,
6800
7337
  enableTableFooter = _tableInstance$option.enableTableFooter,
@@ -6808,20 +7345,21 @@ var MRT_Table = function MRT_Table(_ref) {
6808
7345
  }, tableProps), enableTableHead && React__default.createElement(MRT_TableHead, {
6809
7346
  tableInstance: tableInstance
6810
7347
  }), React__default.createElement(MRT_TableBody, {
7348
+ tableContainerRef: tableContainerRef,
6811
7349
  tableInstance: tableInstance
6812
7350
  }), enableTableFooter && React__default.createElement(MRT_TableFooter, {
6813
7351
  tableInstance: tableInstance
6814
7352
  }));
6815
7353
  };
6816
7354
 
6817
- var useIsomorphicLayoutEffect$1 = typeof window !== 'undefined' ? React.useLayoutEffect : React.useEffect;
7355
+ var useIsomorphicLayoutEffect$2 = typeof window !== 'undefined' ? React.useLayoutEffect : React.useEffect;
6818
7356
  var MRT_TableContainer = function MRT_TableContainer(_ref) {
6819
7357
  var tableInstance = _ref.tableInstance;
6820
7358
  var getState = tableInstance.getState,
6821
7359
  _tableInstance$option = tableInstance.options,
6822
7360
  enableStickyHeader = _tableInstance$option.enableStickyHeader,
6823
- idPrefix = _tableInstance$option.idPrefix,
6824
- muiTableContainerProps = _tableInstance$option.muiTableContainerProps;
7361
+ muiTableContainerProps = _tableInstance$option.muiTableContainerProps,
7362
+ tableId = _tableInstance$option.tableId;
6825
7363
 
6826
7364
  var _getState = getState(),
6827
7365
  isFullScreen = _getState.isFullScreen;
@@ -6833,14 +7371,16 @@ var MRT_TableContainer = function MRT_TableContainer(_ref) {
6833
7371
  var tableContainerProps = muiTableContainerProps instanceof Function ? muiTableContainerProps({
6834
7372
  tableInstance: tableInstance
6835
7373
  }) : muiTableContainerProps;
6836
- useIsomorphicLayoutEffect$1(function () {
7374
+ useIsomorphicLayoutEffect$2(function () {
6837
7375
  var _document$getElementB, _document, _document$getElementB2, _document$getElementB3, _document2, _document2$getElement;
6838
7376
 
6839
- var topToolbarHeight = typeof document !== 'undefined' ? (_document$getElementB = (_document = document) == null ? void 0 : (_document$getElementB2 = _document.getElementById("mrt-" + idPrefix + "-toolbar-top")) == null ? void 0 : _document$getElementB2.offsetHeight) != null ? _document$getElementB : 0 : 0;
6840
- var bottomToolbarHeight = typeof document !== 'undefined' ? (_document$getElementB3 = (_document2 = document) == null ? void 0 : (_document2$getElement = _document2.getElementById("mrt-" + idPrefix + "-toolbar-bottom")) == null ? void 0 : _document2$getElement.offsetHeight) != null ? _document$getElementB3 : 0 : 0;
7377
+ var topToolbarHeight = typeof document !== 'undefined' ? (_document$getElementB = (_document = document) == null ? void 0 : (_document$getElementB2 = _document.getElementById("mrt-" + tableId + "-toolbar-top")) == null ? void 0 : _document$getElementB2.offsetHeight) != null ? _document$getElementB : 0 : 0;
7378
+ var bottomToolbarHeight = typeof document !== 'undefined' ? (_document$getElementB3 = (_document2 = document) == null ? void 0 : (_document2$getElement = _document2.getElementById("mrt-" + tableId + "-toolbar-bottom")) == null ? void 0 : _document2$getElement.offsetHeight) != null ? _document$getElementB3 : 0 : 0;
6841
7379
  setTotalToolbarHeight(topToolbarHeight + bottomToolbarHeight);
6842
7380
  });
7381
+ var tableContainerRef = React__default.useRef(null);
6843
7382
  return React__default.createElement(material.TableContainer, Object.assign({}, tableContainerProps, {
7383
+ ref: tableContainerRef,
6844
7384
  sx: _extends({
6845
7385
  maxWidth: '100%',
6846
7386
  maxHeight: enableStickyHeader ? "clamp(350px, calc(100vh - " + totalToolbarHeight + "px), 2000px)" : undefined,
@@ -6850,6 +7390,7 @@ var MRT_TableContainer = function MRT_TableContainer(_ref) {
6850
7390
  maxHeight: isFullScreen ? "calc(100vh - " + totalToolbarHeight + "px)" : undefined
6851
7391
  }
6852
7392
  }), React__default.createElement(MRT_Table, {
7393
+ tableContainerRef: tableContainerRef,
6853
7394
  tableInstance: tableInstance
6854
7395
  }));
6855
7396
  };
@@ -6907,15 +7448,15 @@ var MRT_TablePaper = function MRT_TablePaper(_ref) {
6907
7448
  var MRT_TableRoot = function MRT_TableRoot(props) {
6908
7449
  var _initialState$current, _initialState$current2, _initialState$isDense, _initialState$isFullS, _initialState$showFil, _initialState$showGlo, _props$globalFilterFn, _props$state3, _props$state4;
6909
7450
 
6910
- var _useState = React.useState(props.idPrefix),
6911
- idPrefix = _useState[0],
7451
+ var _useState = React.useState(props.tableId),
7452
+ tableId = _useState[0],
6912
7453
  setIdPrefix = _useState[1];
6913
7454
 
6914
7455
  React.useEffect(function () {
6915
- var _props$idPrefix;
7456
+ var _props$tableId;
6916
7457
 
6917
- return setIdPrefix((_props$idPrefix = props.idPrefix) != null ? _props$idPrefix : Math.random().toString(36).substring(2, 9));
6918
- }, [props.idPrefix]);
7458
+ return setIdPrefix((_props$tableId = props.tableId) != null ? _props$tableId : Math.random().toString(36).substring(2, 9));
7459
+ }, [props.tableId]);
6919
7460
  var showActionColumn = props.enableRowActions || props.enableEditing && props.editingMode === 'row';
6920
7461
  var showExpandColumn = props.enableExpanding || props.enableGrouping;
6921
7462
  var initialState = React.useMemo(function () {
@@ -6926,7 +7467,7 @@ var MRT_TableRoot = function MRT_TableRoot(props) {
6926
7467
  return c.id;
6927
7468
  })).filter(Boolean) : [];
6928
7469
 
6929
- if (!props.enablePersistentState || !props.idPrefix) {
7470
+ if (!props.enablePersistentState || !props.tableId) {
6930
7471
  return initState;
6931
7472
  }
6932
7473
 
@@ -6938,7 +7479,7 @@ var MRT_TableRoot = function MRT_TableRoot(props) {
6938
7479
  return initState;
6939
7480
  }
6940
7481
 
6941
- var storedState = props.persistentStateMode === 'localStorage' ? localStorage.getItem("mrt-" + idPrefix + "-table-state") : props.persistentStateMode === 'sessionStorage' ? sessionStorage.getItem("mrt-" + idPrefix + "-table-state") : '{}';
7482
+ var storedState = props.persistentStateMode === 'localStorage' ? localStorage.getItem("mrt-" + tableId + "-table-state") : props.persistentStateMode === 'sessionStorage' ? sessionStorage.getItem("mrt-" + tableId + "-table-state") : '{}';
6942
7483
 
6943
7484
  if (storedState) {
6944
7485
  var parsedState = JSON.parse(storedState);
@@ -7004,7 +7545,7 @@ var MRT_TableRoot = function MRT_TableRoot(props) {
7004
7545
  getSubRows: function getSubRows(row) {
7005
7546
  return row == null ? void 0 : row.subRows;
7006
7547
  },
7007
- idPrefix: idPrefix,
7548
+ tableId: tableId,
7008
7549
  initialState: initialState
7009
7550
  })
7010
7551
  );
@@ -7128,12 +7669,12 @@ var MRT_TableRoot = function MRT_TableRoot(props) {
7128
7669
  return;
7129
7670
  }
7130
7671
 
7131
- if (!props.idPrefix && "development" !== 'production') {
7132
- console.warn('a unique idPrefix prop is required for persistent table state to work');
7672
+ if (!props.tableId && "development" !== 'production') {
7673
+ console.warn('a unique tableId prop is required for persistent table state to work');
7133
7674
  return;
7134
7675
  }
7135
7676
 
7136
- var itemArgs = ["mrt-" + idPrefix + "-table-state", JSON.stringify(tableInstance.getState())];
7677
+ var itemArgs = ["mrt-" + tableId + "-table-state", JSON.stringify(tableInstance.getState())];
7137
7678
 
7138
7679
  if (props.persistentStateMode === 'localStorage') {
7139
7680
  var _localStorage;
@@ -7144,7 +7685,7 @@ var MRT_TableRoot = function MRT_TableRoot(props) {
7144
7685
 
7145
7686
  (_sessionStorage = sessionStorage).setItem.apply(_sessionStorage, itemArgs);
7146
7687
  }
7147
- }, [props.enablePersistentState, props.idPrefix, props.persistentStateMode, tableInstance]);
7688
+ }, [props.enablePersistentState, props.tableId, props.persistentStateMode, tableInstance]);
7148
7689
  return React__default.createElement(React__default.Fragment, null, React__default.createElement(material.Dialog, {
7149
7690
  PaperComponent: material.Box,
7150
7691
  TransitionComponent: material.Grow,
@@ -7163,7 +7704,7 @@ var MRT_TableRoot = function MRT_TableRoot(props) {
7163
7704
  }));
7164
7705
  };
7165
7706
 
7166
- var _excluded$5 = ["autoResetExpanded", "columnResizeMode", "defaultColumn", "editingMode", "enableColumnActions", "enableColumnFilters", "enableColumnOrdering", "enableColumnResizing", "enableDensePaddingToggle", "enableExpandAll", "enableFilters", "enableFullScreenToggle", "enableGlobalFilter", "enableGrouping", "enableHiding", "enableMultiRowSelection", "enablePagination", "enablePinning", "enableSelectAll", "enableSorting", "enableStickyHeader", "enableTableFooter", "enableTableHead", "enableToolbarBottom", "enableToolbarInternalActions", "enableToolbarTop", "icons", "localization", "persistentStateMode", "positionActionsColumn", "positionPagination", "positionToolbarActions", "positionToolbarAlertBanner", "selectAllMode"];
7707
+ var _excluded$5 = ["autoResetExpanded", "columnResizeMode", "defaultColumn", "editingMode", "enableColumnActions", "enableColumnFilters", "enableColumnOrdering", "enableColumnResizing", "enableDensePaddingToggle", "enableExpandAll", "enableFilters", "enableFullScreenToggle", "enableGlobalFilter", "enableGrouping", "enableHiding", "enableMultiRowSelection", "enablePagination", "enablePinning", "enableSelectAll", "enableSorting", "enableStickyHeader", "enableTableFooter", "enableTableHead", "enableToolbarBottom", "enableToolbarInternalActions", "enableToolbarTop", "icons", "localization", "persistentStateMode", "positionActionsColumn", "positionPagination", "positionGlobalFilter", "positionToolbarActions", "positionToolbarAlertBanner", "selectAllMode"];
7167
7708
  var MaterialReactTable = (function (_ref) {
7168
7709
  var _ref$autoResetExpande = _ref.autoResetExpanded,
7169
7710
  autoResetExpanded = _ref$autoResetExpande === void 0 ? false : _ref$autoResetExpande,
@@ -7229,6 +7770,8 @@ var MaterialReactTable = (function (_ref) {
7229
7770
  positionActionsColumn = _ref$positionActionsC === void 0 ? 'first' : _ref$positionActionsC,
7230
7771
  _ref$positionPaginati = _ref.positionPagination,
7231
7772
  positionPagination = _ref$positionPaginati === void 0 ? 'bottom' : _ref$positionPaginati,
7773
+ _ref$positionGlobalFi = _ref.positionGlobalFilter,
7774
+ positionGlobalFilter = _ref$positionGlobalFi === void 0 ? 'right' : _ref$positionGlobalFi,
7232
7775
  _ref$positionToolbarA = _ref.positionToolbarActions,
7233
7776
  positionToolbarActions = _ref$positionToolbarA === void 0 ? 'top' : _ref$positionToolbarA,
7234
7777
  _ref$positionToolbarA2 = _ref.positionToolbarAlertBanner,
@@ -7268,6 +7811,7 @@ var MaterialReactTable = (function (_ref) {
7268
7811
  localization: _extends({}, MRT_DefaultLocalization_EN, localization),
7269
7812
  persistentStateMode: persistentStateMode,
7270
7813
  positionActionsColumn: positionActionsColumn,
7814
+ positionGlobalFilter: positionGlobalFilter,
7271
7815
  positionPagination: positionPagination,
7272
7816
  positionToolbarActions: positionToolbarActions,
7273
7817
  positionToolbarAlertBanner: positionToolbarAlertBanner,