material-react-table 0.38.1 → 0.38.4

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 (46) hide show
  1. package/dist/cjs/MaterialReactTable.d.ts +1 -0
  2. package/dist/cjs/body/MRT_EditRowModal.d.ts +1 -0
  3. package/dist/cjs/body/MRT_TableBodyRow.d.ts +1 -0
  4. package/dist/cjs/buttons/MRT_ColumnPinningButtons.d.ts +1 -0
  5. package/dist/cjs/buttons/MRT_EditActionButtons.d.ts +1 -0
  6. package/dist/cjs/buttons/MRT_FullScreenToggleButton.d.ts +1 -0
  7. package/dist/cjs/buttons/MRT_ShowHideColumnsButton.d.ts +1 -0
  8. package/dist/cjs/buttons/MRT_ToggleDensePaddingButton.d.ts +1 -0
  9. package/dist/cjs/buttons/MRT_ToggleFiltersButton.d.ts +1 -0
  10. package/dist/cjs/buttons/MRT_ToggleGlobalFilterButton.d.ts +1 -0
  11. package/dist/cjs/index.js +55 -24
  12. package/dist/cjs/index.js.map +1 -1
  13. package/dist/cjs/inputs/MRT_EditCellTextField.d.ts +1 -0
  14. package/dist/cjs/inputs/MRT_GlobalFilterTextField.d.ts +1 -0
  15. package/dist/cjs/menus/MRT_FilterOptionMenu.d.ts +1 -0
  16. package/dist/cjs/menus/MRT_ShowHideColumnsMenu.d.ts +1 -0
  17. package/dist/cjs/table/MRT_TableRoot.d.ts +1 -0
  18. package/dist/esm/MaterialReactTable.d.ts +1 -0
  19. package/dist/esm/body/MRT_EditRowModal.d.ts +1 -0
  20. package/dist/esm/body/MRT_TableBodyRow.d.ts +1 -0
  21. package/dist/esm/buttons/MRT_ColumnPinningButtons.d.ts +1 -0
  22. package/dist/esm/buttons/MRT_EditActionButtons.d.ts +1 -0
  23. package/dist/esm/buttons/MRT_FullScreenToggleButton.d.ts +1 -0
  24. package/dist/esm/buttons/MRT_ShowHideColumnsButton.d.ts +1 -0
  25. package/dist/esm/buttons/MRT_ToggleDensePaddingButton.d.ts +1 -0
  26. package/dist/esm/buttons/MRT_ToggleFiltersButton.d.ts +1 -0
  27. package/dist/esm/buttons/MRT_ToggleGlobalFilterButton.d.ts +1 -0
  28. package/dist/esm/inputs/MRT_EditCellTextField.d.ts +1 -0
  29. package/dist/esm/inputs/MRT_GlobalFilterTextField.d.ts +1 -0
  30. package/dist/esm/material-react-table.esm.js +55 -24
  31. package/dist/esm/material-react-table.esm.js.map +1 -1
  32. package/dist/esm/menus/MRT_FilterOptionMenu.d.ts +1 -0
  33. package/dist/esm/menus/MRT_ShowHideColumnsMenu.d.ts +1 -0
  34. package/dist/esm/table/MRT_TableRoot.d.ts +1 -0
  35. package/dist/index.d.ts +2 -0
  36. package/package.json +2 -2
  37. package/src/MaterialReactTable.tsx +1 -0
  38. package/src/body/MRT_TableBody.tsx +1 -0
  39. package/src/body/MRT_TableBodyCellValue.tsx +10 -11
  40. package/src/body/MRT_TableBodyRow.tsx +14 -3
  41. package/src/buttons/MRT_ExpandAllButton.tsx +5 -3
  42. package/src/buttons/MRT_GrabHandleButton.tsx +5 -3
  43. package/src/footer/MRT_TableFooter.tsx +22 -2
  44. package/src/head/MRT_TableHeadRow.tsx +3 -1
  45. package/src/inputs/MRT_EditCellTextField.tsx +35 -23
  46. package/src/table/MRT_TablePaper.tsx +5 -3
@@ -288,6 +288,7 @@ export declare type MaterialReactTableProps<TData extends Record<string, any> =
288
288
  enableRowSelection?: boolean | ((row: MRT_Row<TData>) => boolean);
289
289
  enableRowVirtualization?: boolean;
290
290
  enableSelectAll?: boolean;
291
+ enableStickyFooter?: boolean;
291
292
  enableStickyHeader?: boolean;
292
293
  enableTableFooter?: boolean;
293
294
  enableTableHead?: boolean;
@@ -1,3 +1,4 @@
1
+ /// <reference types="react" />
1
2
  import type { MRT_Row, MRT_TableInstance } from '..';
2
3
  interface Props<TData extends Record<string, any> = {}> {
3
4
  open: boolean;
@@ -4,6 +4,7 @@ interface Props {
4
4
  row: MRT_Row;
5
5
  rowIndex: number;
6
6
  table: MRT_TableInstance;
7
+ virtualRow?: any;
7
8
  }
8
9
  export declare const MRT_TableBodyRow: FC<Props>;
9
10
  export {};
@@ -1,3 +1,4 @@
1
+ /// <reference types="react" />
1
2
  import type { MRT_Column, MRT_TableInstance } from '..';
2
3
  interface Props<TData extends Record<string, any> = {}> {
3
4
  column: MRT_Column<TData>;
@@ -1,3 +1,4 @@
1
+ /// <reference types="react" />
1
2
  import type { MRT_Row, MRT_TableInstance } from '..';
2
3
  interface Props<TData extends Record<string, any> = {}> {
3
4
  row: MRT_Row<TData>;
@@ -1,3 +1,4 @@
1
+ /// <reference types="react" />
1
2
  import { IconButtonProps } from '@mui/material';
2
3
  import { MRT_TableInstance } from '..';
3
4
  interface Props<TData extends Record<string, any> = {}> extends IconButtonProps {
@@ -1,3 +1,4 @@
1
+ /// <reference types="react" />
1
2
  import { IconButtonProps } from '@mui/material';
2
3
  import { MRT_TableInstance } from '..';
3
4
  interface Props<TData extends Record<string, any> = {}> extends IconButtonProps {
@@ -1,3 +1,4 @@
1
+ /// <reference types="react" />
1
2
  import { IconButtonProps } from '@mui/material';
2
3
  import { MRT_TableInstance } from '..';
3
4
  interface Props<TData extends Record<string, any> = {}> extends IconButtonProps {
@@ -1,3 +1,4 @@
1
+ /// <reference types="react" />
1
2
  import { IconButtonProps } from '@mui/material';
2
3
  import { MRT_TableInstance } from '..';
3
4
  interface Props<TData extends Record<string, any> = {}> extends IconButtonProps {
@@ -1,3 +1,4 @@
1
+ /// <reference types="react" />
1
2
  import { IconButtonProps } from '@mui/material';
2
3
  import { MRT_TableInstance } from '..';
3
4
  interface Props<TData extends Record<string, any> = {}> extends IconButtonProps {
package/dist/cjs/index.js CHANGED
@@ -263,7 +263,9 @@ const MRT_ExpandAllButton = ({ table }) => {
263
263
  : muiExpandAllButtonProps;
264
264
  return (React__default["default"].createElement(material.Tooltip, { arrow: true, enterDelay: 1000, enterNextDelay: 1000, title: localization.expandAll },
265
265
  React__default["default"].createElement("span", null,
266
- React__default["default"].createElement(material.IconButton, Object.assign({ "aria-label": localization.expandAll, disabled: !getCanSomeRowsExpand() && !renderDetailPanel, onClick: () => toggleAllRowsExpanded(!getIsAllRowsExpanded()) }, iconButtonProps, { sx: Object.assign({ height: density === 'compact' ? '1.75rem' : '2.25rem', width: density === 'compact' ? '1.75rem' : '2.25rem', mt: density !== 'compact' ? '-0.25rem' : undefined }, iconButtonProps === null || iconButtonProps === void 0 ? void 0 : iconButtonProps.sx) }),
266
+ React__default["default"].createElement(material.IconButton, Object.assign({ "aria-label": localization.expandAll, disabled: !getCanSomeRowsExpand() && !renderDetailPanel, onClick: () => toggleAllRowsExpanded(!getIsAllRowsExpanded()) }, iconButtonProps, { sx: (theme) => (Object.assign({ height: density === 'compact' ? '1.75rem' : '2.25rem', width: density === 'compact' ? '1.75rem' : '2.25rem', mt: density !== 'compact' ? '-0.25rem' : undefined }, ((iconButtonProps === null || iconButtonProps === void 0 ? void 0 : iconButtonProps.sx) instanceof Function
267
+ ? iconButtonProps === null || iconButtonProps === void 0 ? void 0 : iconButtonProps.sx(theme)
268
+ : iconButtonProps === null || iconButtonProps === void 0 ? void 0 : iconButtonProps.sx))) }),
267
269
  React__default["default"].createElement(KeyboardDoubleArrowDownIcon, { style: {
268
270
  transform: `rotate(${getIsAllRowsExpanded()
269
271
  ? -180
@@ -453,12 +455,14 @@ const MRT_ColumnPinningButtons = ({ column, table, }) => {
453
455
  const MRT_GrabHandleButton = ({ iconButtonProps, onDragEnd, onDragStart, table, }) => {
454
456
  const { options: { icons: { DragHandleIcon }, localization, }, } = table;
455
457
  return (React__default["default"].createElement(material.Tooltip, { arrow: true, enterDelay: 1000, enterNextDelay: 1000, placement: "top", title: localization.move },
456
- React__default["default"].createElement(material.IconButton, Object.assign({ disableRipple: true, draggable: "true", onDragStart: onDragStart, onDragEnd: onDragEnd, size: "small" }, iconButtonProps, { sx: Object.assign({ cursor: 'grab', m: 0, opacity: 0.5, p: '2px', transition: 'all 0.2s ease-in-out', '&:hover': {
458
+ React__default["default"].createElement(material.IconButton, Object.assign({ disableRipple: true, draggable: "true", onDragStart: onDragStart, onDragEnd: onDragEnd, size: "small" }, iconButtonProps, { sx: (theme) => (Object.assign({ cursor: 'grab', m: 0, opacity: 0.5, p: '2px', transition: 'all 0.2s ease-in-out', '&:hover': {
457
459
  backgroundColor: 'transparent',
458
460
  opacity: 1,
459
461
  }, '&:active': {
460
462
  cursor: 'grabbing',
461
- } }, iconButtonProps === null || iconButtonProps === void 0 ? void 0 : iconButtonProps.sx) }),
463
+ } }, ((iconButtonProps === null || iconButtonProps === void 0 ? void 0 : iconButtonProps.sx) instanceof Function
464
+ ? iconButtonProps === null || iconButtonProps === void 0 ? void 0 : iconButtonProps.sx(theme)
465
+ : iconButtonProps === null || iconButtonProps === void 0 ? void 0 : iconButtonProps.sx))) }),
462
466
  React__default["default"].createElement(DragHandleIcon, null))));
463
467
  };
464
468
 
@@ -1751,7 +1755,9 @@ const MRT_TableHeadRow = ({ headerGroup, table }) => {
1751
1755
  const tableRowProps = muiTableHeadRowProps instanceof Function
1752
1756
  ? muiTableHeadRowProps({ headerGroup, table })
1753
1757
  : muiTableHeadRowProps;
1754
- return (React__default["default"].createElement(material.TableRow, Object.assign({}, tableRowProps, { sx: (theme) => (Object.assign({ boxShadow: `4px 0 8px ${material.alpha(theme.palette.common.black, 0.1)}`, backgroundColor: material.lighten(theme.palette.background.default, 0.04) }, tableRowProps === null || tableRowProps === void 0 ? void 0 : tableRowProps.sx)) }), headerGroup.headers.map((header, index) => (React__default["default"].createElement(MRT_TableHeadCell, { header: header, key: header.id || index, table: table })))));
1758
+ return (React__default["default"].createElement(material.TableRow, Object.assign({}, tableRowProps, { sx: (theme) => (Object.assign({ boxShadow: `4px 0 8px ${material.alpha(theme.palette.common.black, 0.1)}`, backgroundColor: material.lighten(theme.palette.background.default, 0.04) }, ((tableRowProps === null || tableRowProps === void 0 ? void 0 : tableRowProps.sx) instanceof Function
1759
+ ? tableRowProps === null || tableRowProps === void 0 ? void 0 : tableRowProps.sx(theme)
1760
+ : tableRowProps === null || tableRowProps === void 0 ? void 0 : tableRowProps.sx))) }), headerGroup.headers.map((header, index) => (React__default["default"].createElement(MRT_TableHeadCell, { header: header, key: header.id || index, table: table })))));
1755
1761
  };
1756
1762
 
1757
1763
  const MRT_TableHead = ({ table }) => {
@@ -1781,33 +1787,43 @@ const MRT_EditCellTextField = ({ cell, showLabel, table, }) => {
1781
1787
  })
1782
1788
  : columnDef.muiTableBodyCellEditTextFieldProps;
1783
1789
  const textFieldProps = Object.assign(Object.assign({}, mTableBodyCellEditTextFieldProps), mcTableBodyCellEditTextFieldProps);
1790
+ const saveRow = (newValue) => {
1791
+ if (editingRow) {
1792
+ setEditingRow(Object.assign(Object.assign({}, editingRow), { _valuesCache: Object.assign(Object.assign({}, editingRow._valuesCache), { [column.id]: newValue }) }));
1793
+ }
1794
+ };
1784
1795
  const handleChange = (event) => {
1785
1796
  var _a;
1786
1797
  (_a = textFieldProps.onChange) === null || _a === void 0 ? void 0 : _a.call(textFieldProps, event);
1787
1798
  setValue(event.target.value);
1788
- if ((textFieldProps === null || textFieldProps === void 0 ? void 0 : textFieldProps.select) && editingRow) {
1789
- setEditingRow(Object.assign(Object.assign({}, editingRow), { _valuesCache: Object.assign(Object.assign({}, editingRow._valuesCache), { [column.id]: event.target.value }) }));
1799
+ if (textFieldProps === null || textFieldProps === void 0 ? void 0 : textFieldProps.select) {
1800
+ saveRow(event.target.value);
1790
1801
  }
1791
1802
  };
1792
1803
  const handleBlur = (event) => {
1793
1804
  var _a;
1794
1805
  (_a = textFieldProps.onBlur) === null || _a === void 0 ? void 0 : _a.call(textFieldProps, event);
1795
- if (editingRow) {
1796
- setEditingRow(Object.assign(Object.assign({}, editingRow), { _valuesCache: Object.assign(Object.assign({}, editingRow._valuesCache), { [column.id]: value }) }));
1797
- }
1806
+ saveRow(value);
1798
1807
  setEditingCell(null);
1799
1808
  };
1809
+ const handleEnterKeyDown = (event) => {
1810
+ var _a, _b;
1811
+ (_a = textFieldProps.onKeyDown) === null || _a === void 0 ? void 0 : _a.call(textFieldProps, event);
1812
+ if (event.key === 'Enter') {
1813
+ (_b = editInputRefs.current[column.id]) === null || _b === void 0 ? void 0 : _b.blur();
1814
+ }
1815
+ };
1800
1816
  if (columnDef.Edit) {
1801
1817
  return React__default["default"].createElement(React__default["default"].Fragment, null, (_a = columnDef.Edit) === null || _a === void 0 ? void 0 : _a.call(columnDef, { cell, column, row, table }));
1802
1818
  }
1803
- return (React__default["default"].createElement(material.TextField, Object.assign({ disabled: columnDef.enableEditing === false, fullWidth: true, label: showLabel ? column.columnDef.header : undefined, margin: "none", name: column.id, onClick: (e) => e.stopPropagation(), placeholder: columnDef.header, value: value, variant: "standard" }, textFieldProps, { inputRef: (inputRef) => {
1819
+ return (React__default["default"].createElement(material.TextField, Object.assign({ disabled: columnDef.enableEditing === false, fullWidth: true, inputRef: (inputRef) => {
1804
1820
  if (inputRef) {
1805
1821
  editInputRefs.current[column.id] = inputRef;
1806
1822
  if (textFieldProps.inputRef) {
1807
1823
  textFieldProps.inputRef = inputRef;
1808
1824
  }
1809
1825
  }
1810
- }, onBlur: handleBlur, onChange: handleChange })));
1826
+ }, label: showLabel ? column.columnDef.header : undefined, margin: "none", name: column.id, onClick: (e) => e.stopPropagation(), placeholder: columnDef.header, value: value, variant: "standard" }, textFieldProps, { onBlur: handleBlur, onChange: handleChange, onKeyDown: handleEnterKeyDown })));
1811
1827
  };
1812
1828
 
1813
1829
  const MRT_CopyButton = ({ cell, children, table, }) => {
@@ -1859,11 +1875,11 @@ const MRT_TableBodyRowGrabHandle = ({ cell, rowRef, table, }) => {
1859
1875
  };
1860
1876
 
1861
1877
  const MRT_TableBodyCellValue = ({ cell, table }) => {
1862
- var _a, _b, _c, _d;
1878
+ var _a, _b;
1863
1879
  const { column, row } = cell;
1864
1880
  const { columnDef } = column;
1865
- return (React__default["default"].createElement(React__default["default"].Fragment, null, cell.getIsAggregated() && column.columnDef.aggregationFn
1866
- ? (_a = columnDef.AggregatedCell) === null || _a === void 0 ? void 0 : _a.call(columnDef, {
1881
+ return (React__default["default"].createElement(React__default["default"].Fragment, null, cell.getIsAggregated() && columnDef.AggregatedCell
1882
+ ? columnDef.AggregatedCell({
1867
1883
  cell,
1868
1884
  column,
1869
1885
  row,
@@ -1871,14 +1887,14 @@ const MRT_TableBodyCellValue = ({ cell, table }) => {
1871
1887
  })
1872
1888
  : row.getIsGrouped() && !cell.getIsGrouped()
1873
1889
  ? null
1874
- : (cell.getIsGrouped() &&
1875
- ((_b = columnDef.GroupedCell) === null || _b === void 0 ? void 0 : _b.call(columnDef, {
1890
+ : cell.getIsGrouped() && columnDef.GroupedCell
1891
+ ? columnDef.GroupedCell({
1876
1892
  cell,
1877
1893
  column,
1878
1894
  row,
1879
1895
  table,
1880
- }))) ||
1881
- ((_d = (_c = columnDef === null || columnDef === void 0 ? void 0 : columnDef.Cell) === null || _c === void 0 ? void 0 : _c.call(columnDef, { cell, column, row, table })) !== null && _d !== void 0 ? _d : cell.renderValue())));
1896
+ })
1897
+ : (_b = (_a = columnDef === null || columnDef === void 0 ? void 0 : columnDef.Cell) === null || _a === void 0 ? void 0 : _a.call(columnDef, { cell, column, row, table })) !== null && _b !== void 0 ? _b : cell.renderValue()));
1882
1898
  };
1883
1899
 
1884
1900
  const MRT_TableBodyCell = ({ cell, enableHover, rowIndex, rowRef, table, }) => {
@@ -2034,7 +2050,7 @@ const MRT_TableDetailPanel = ({ row, table }) => {
2034
2050
  : tableCellProps === null || tableCellProps === void 0 ? void 0 : tableCellProps.sx))) }), renderDetailPanel && (React__default["default"].createElement(material.Collapse, { in: row.getIsExpanded() }, renderDetailPanel({ row, table }))))));
2035
2051
  };
2036
2052
 
2037
- const MRT_TableBodyRow = ({ row, rowIndex, table }) => {
2053
+ const MRT_TableBodyRow = ({ row, rowIndex, table, virtualRow, }) => {
2038
2054
  var _a, _b;
2039
2055
  const theme = material.useTheme();
2040
2056
  const { getIsSomeColumnsPinned, getState, options: { enableRowOrdering, muiTableBodyRowProps, renderDetailPanel }, setHoveredRow, } = table;
@@ -2059,7 +2075,12 @@ const MRT_TableBodyRow = ({ row, rowIndex, table }) => {
2059
2075
  }
2060
2076
  : undefined;
2061
2077
  return (React__default["default"].createElement(React__default["default"].Fragment, null,
2062
- React__default["default"].createElement(material.TableRow, Object.assign({ onDragEnter: handleDragEnter, hover: true, selected: row.getIsSelected(), ref: rowRef }, tableRowProps, { sx: (theme) => (Object.assign(Object.assign({ backgroundColor: material.lighten(theme.palette.background.default, 0.06), opacity: (draggingRow === null || draggingRow === void 0 ? void 0 : draggingRow.id) === row.id || (hoveredRow === null || hoveredRow === void 0 ? void 0 : hoveredRow.id) === row.id ? 0.5 : 1, transition: 'all 0.2s ease-in-out', '&:hover td': {
2078
+ React__default["default"].createElement(material.TableRow, Object.assign({ onDragEnter: handleDragEnter, hover: true, selected: row.getIsSelected(), ref: (node) => {
2079
+ rowRef.current = node;
2080
+ if (virtualRow === null || virtualRow === void 0 ? void 0 : virtualRow.measureRef) {
2081
+ virtualRow.measureRef = node;
2082
+ }
2083
+ } }, tableRowProps, { sx: (theme) => (Object.assign(Object.assign({ backgroundColor: material.lighten(theme.palette.background.default, 0.06), opacity: (draggingRow === null || draggingRow === void 0 ? void 0 : draggingRow.id) === row.id || (hoveredRow === null || hoveredRow === void 0 ? void 0 : hoveredRow.id) === row.id ? 0.5 : 1, transition: 'all 0.2s ease-in-out', '&:hover td': {
2063
2084
  backgroundColor: (tableRowProps === null || tableRowProps === void 0 ? void 0 : tableRowProps.hover) !== false && getIsSomeColumnsPinned()
2064
2085
  ? theme.palette.mode === 'dark'
2065
2086
  ? `${material.lighten(theme.palette.background.default, 0.12)}`
@@ -2139,7 +2160,7 @@ const MRT_TableBody = ({ table, tableContainerRef }) => {
2139
2160
  const row = enableRowVirtualization
2140
2161
  ? rows[rowOrVirtualRow.index]
2141
2162
  : rowOrVirtualRow;
2142
- return (React__default["default"].createElement(MRT_TableBodyRow, { key: row.id, row: row, rowIndex: enableRowVirtualization ? rowOrVirtualRow.index : rowIndex, table: table }));
2163
+ return (React__default["default"].createElement(MRT_TableBodyRow, { key: row.id, row: row, rowIndex: enableRowVirtualization ? rowOrVirtualRow.index : rowIndex, table: table, virtualRow: enableRowVirtualization ? rowOrVirtualRow : null }));
2143
2164
  }),
2144
2165
  enableRowVirtualization && paddingBottom > 0 && (React__default["default"].createElement("tr", null,
2145
2166
  React__default["default"].createElement("td", { style: { height: `${paddingBottom}px` } })))));
@@ -2192,11 +2213,19 @@ const MRT_TableFooterRow = ({ footerGroup, table }) => {
2192
2213
  };
2193
2214
 
2194
2215
  const MRT_TableFooter = ({ table }) => {
2195
- const { getFooterGroups, options: { muiTableFooterProps }, } = table;
2216
+ const { getFooterGroups, getState, options: { enableStickyFooter, muiTableFooterProps }, } = table;
2217
+ const { isFullScreen } = getState();
2196
2218
  const tableFooterProps = muiTableFooterProps instanceof Function
2197
2219
  ? muiTableFooterProps({ table })
2198
2220
  : muiTableFooterProps;
2199
- return (React__default["default"].createElement(material.TableFooter, Object.assign({}, tableFooterProps), getFooterGroups().map((footerGroup) => (React__default["default"].createElement(MRT_TableFooterRow, { footerGroup: footerGroup, key: footerGroup.id, table: table })))));
2221
+ const stickFooter = (isFullScreen || enableStickyFooter) && enableStickyFooter !== false;
2222
+ return (React__default["default"].createElement(material.TableFooter, Object.assign({}, tableFooterProps, { sx: (theme) => (Object.assign({ position: stickFooter ? 'sticky' : undefined, bottom: stickFooter ? 0 : undefined, opacity: stickFooter ? 0.95 : undefined, outline: stickFooter
2223
+ ? theme.palette.mode === 'light'
2224
+ ? `1px solid ${theme.palette.grey[300]}`
2225
+ : `1px solid ${theme.palette.grey[700]}`
2226
+ : undefined }, ((tableFooterProps === null || tableFooterProps === void 0 ? void 0 : tableFooterProps.sx) instanceof Function
2227
+ ? tableFooterProps === null || tableFooterProps === void 0 ? void 0 : tableFooterProps.sx(theme)
2228
+ : tableFooterProps === null || tableFooterProps === void 0 ? void 0 : tableFooterProps.sx))) }), getFooterGroups().map((footerGroup) => (React__default["default"].createElement(MRT_TableFooterRow, { footerGroup: footerGroup, key: footerGroup.id, table: table })))));
2200
2229
  };
2201
2230
 
2202
2231
  const MRT_Table = ({ tableContainerRef, table }) => {
@@ -2263,7 +2292,9 @@ const MRT_TablePaper = ({ table }) => {
2263
2292
  const tablePaperProps = muiTablePaperProps instanceof Function
2264
2293
  ? muiTablePaperProps({ table })
2265
2294
  : muiTablePaperProps;
2266
- return (React__default["default"].createElement(material.Paper, Object.assign({ elevation: 2 }, tablePaperProps, { sx: Object.assign({ transition: 'all 0.2s ease-in-out' }, tablePaperProps === null || tablePaperProps === void 0 ? void 0 : tablePaperProps.sx), style: Object.assign(Object.assign({}, tablePaperProps === null || tablePaperProps === void 0 ? void 0 : tablePaperProps.style), { height: isFullScreen ? '100vh' : undefined, margin: isFullScreen ? '0' : undefined, maxHeight: isFullScreen ? '100vh' : undefined, maxWidth: isFullScreen ? '100vw' : undefined, padding: isFullScreen ? '0' : undefined, width: isFullScreen ? '100vw' : undefined }) }),
2295
+ return (React__default["default"].createElement(material.Paper, Object.assign({ elevation: 2 }, tablePaperProps, { sx: (theme) => (Object.assign({ transition: 'all 0.2s ease-in-out' }, ((tablePaperProps === null || tablePaperProps === void 0 ? void 0 : tablePaperProps.sx) instanceof Function
2296
+ ? tablePaperProps === null || tablePaperProps === void 0 ? void 0 : tablePaperProps.sx(theme)
2297
+ : tablePaperProps === null || tablePaperProps === void 0 ? void 0 : tablePaperProps.sx))), style: Object.assign(Object.assign({}, tablePaperProps === null || tablePaperProps === void 0 ? void 0 : tablePaperProps.style), { height: isFullScreen ? '100vh' : undefined, margin: isFullScreen ? '0' : undefined, maxHeight: isFullScreen ? '100vh' : undefined, maxWidth: isFullScreen ? '100vw' : undefined, padding: isFullScreen ? '0' : undefined, width: isFullScreen ? '100vw' : undefined }) }),
2267
2298
  enableTopToolbar && React__default["default"].createElement(MRT_TopToolbar, { table: table }),
2268
2299
  React__default["default"].createElement(MRT_TableContainer, { table: table }),
2269
2300
  enableBottomToolbar && React__default["default"].createElement(MRT_BottomToolbar, { table: table })));