material-react-table 0.37.1 → 0.37.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.
- package/dist/cjs/MaterialReactTable.d.ts +2 -1
- package/dist/cjs/body/MRT_TableBodyCellValue.d.ts +8 -0
- package/dist/cjs/buttons/MRT_CopyButton.d.ts +5 -5
- package/dist/cjs/buttons/MRT_ToggleRowActionMenuButton.d.ts +2 -1
- package/dist/cjs/index.d.ts +2 -1
- package/dist/cjs/index.js +36 -30
- package/dist/cjs/index.js.map +1 -1
- package/dist/esm/MaterialReactTable.d.ts +2 -1
- package/dist/esm/body/MRT_TableBodyCellValue.d.ts +8 -0
- package/dist/esm/buttons/MRT_CopyButton.d.ts +5 -5
- package/dist/esm/buttons/MRT_ToggleRowActionMenuButton.d.ts +2 -1
- package/dist/esm/index.d.ts +2 -1
- package/dist/esm/material-react-table.esm.js +36 -31
- package/dist/esm/material-react-table.esm.js.map +1 -1
- package/dist/index.d.ts +10 -2
- package/package.json +1 -1
- package/src/MaterialReactTable.tsx +2 -0
- package/src/body/MRT_TableBodyCell.tsx +6 -18
- package/src/body/MRT_TableBodyCellValue.tsx +27 -0
- package/src/buttons/MRT_CopyButton.tsx +9 -5
- package/src/buttons/MRT_ToggleRowActionMenuButton.tsx +9 -4
- package/src/head/MRT_TableHeadCell.tsx +3 -5
- package/src/index.tsx +2 -0
- package/src/table/MRT_TableRoot.tsx +6 -2
- package/src/toolbar/MRT_BottomToolbar.tsx +1 -3
|
@@ -459,7 +459,8 @@ export declare type MaterialReactTableProps<TData extends Record<string, any> =
|
|
|
459
459
|
row: MRT_Row<TData>;
|
|
460
460
|
table: MRT_TableInstance<TData>;
|
|
461
461
|
}) => ReactNode[];
|
|
462
|
-
renderRowActions?: ({ row, table, }: {
|
|
462
|
+
renderRowActions?: ({ cell, row, table, }: {
|
|
463
|
+
cell: MRT_Cell<TData>;
|
|
463
464
|
row: MRT_Row<TData>;
|
|
464
465
|
table: MRT_TableInstance<TData>;
|
|
465
466
|
}) => ReactNode;
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { ReactNode } from 'react';
|
|
2
2
|
import { MRT_Cell, MRT_TableInstance } from '..';
|
|
3
|
-
interface Props {
|
|
4
|
-
cell: MRT_Cell
|
|
3
|
+
interface Props<TData extends Record<string, any> = {}> {
|
|
4
|
+
cell: MRT_Cell<TData>;
|
|
5
5
|
children: ReactNode;
|
|
6
|
-
table: MRT_TableInstance
|
|
6
|
+
table: MRT_TableInstance<TData>;
|
|
7
7
|
}
|
|
8
|
-
export declare const MRT_CopyButton:
|
|
8
|
+
export declare const MRT_CopyButton: <TData extends Record<string, any> = {}>({ cell, children, table, }: Props<TData>) => JSX.Element;
|
|
9
9
|
export {};
|
package/dist/cjs/index.d.ts
CHANGED
|
@@ -4,10 +4,11 @@ export * from './MaterialReactTable';
|
|
|
4
4
|
import type { MRT_Icons } from './icons';
|
|
5
5
|
import type { MRT_Localization } from './localization';
|
|
6
6
|
export type { MRT_Localization, MRT_Icons };
|
|
7
|
+
import { MRT_CopyButton } from './buttons/MRT_CopyButton';
|
|
7
8
|
import { MRT_FullScreenToggleButton } from './buttons/MRT_FullScreenToggleButton';
|
|
8
9
|
import { MRT_GlobalFilterTextField } from './inputs/MRT_GlobalFilterTextField';
|
|
9
10
|
import { MRT_ShowHideColumnsButton } from './buttons/MRT_ShowHideColumnsButton';
|
|
10
11
|
import { MRT_ToggleDensePaddingButton } from './buttons/MRT_ToggleDensePaddingButton';
|
|
11
12
|
import { MRT_ToggleFiltersButton } from './buttons/MRT_ToggleFiltersButton';
|
|
12
13
|
import { MRT_ToggleGlobalFilterButton } from './buttons/MRT_ToggleGlobalFilterButton';
|
|
13
|
-
export { MRT_FullScreenToggleButton, MRT_GlobalFilterTextField, MRT_ShowHideColumnsButton, MRT_ToggleDensePaddingButton, MRT_ToggleFiltersButton, MRT_ToggleGlobalFilterButton, };
|
|
14
|
+
export { MRT_FullScreenToggleButton, MRT_GlobalFilterTextField, MRT_ShowHideColumnsButton, MRT_ToggleDensePaddingButton, MRT_ToggleFiltersButton, MRT_ToggleGlobalFilterButton, MRT_CopyButton, };
|
package/dist/cjs/index.js
CHANGED
|
@@ -923,7 +923,7 @@ const commonIconButtonStyles = {
|
|
|
923
923
|
opacity: 1,
|
|
924
924
|
},
|
|
925
925
|
};
|
|
926
|
-
const MRT_ToggleRowActionMenuButton = ({ row, table }) => {
|
|
926
|
+
const MRT_ToggleRowActionMenuButton = ({ cell, row, table }) => {
|
|
927
927
|
const { getState, options: { editingMode, enableEditing, icons: { EditIcon, MoreHorizIcon }, localization, renderRowActionMenuItems, renderRowActions, }, setEditingRow, } = table;
|
|
928
928
|
const { editingRow } = getState();
|
|
929
929
|
const [anchorEl, setAnchorEl] = React.useState(null);
|
|
@@ -936,8 +936,8 @@ const MRT_ToggleRowActionMenuButton = ({ row, table }) => {
|
|
|
936
936
|
setEditingRow(Object.assign({}, row));
|
|
937
937
|
setAnchorEl(null);
|
|
938
938
|
};
|
|
939
|
-
return (React__default["default"].createElement(React__default["default"].Fragment, null, renderRowActions ? (React__default["default"].createElement(React__default["default"].Fragment, null, renderRowActions({ row, table }))) : row.id === (editingRow === null || editingRow === void 0 ? void 0 : editingRow.id) && editingMode === 'row' ? (React__default["default"].createElement(MRT_EditActionButtons, { row: row, table: table })) : !renderRowActionMenuItems && enableEditing ? (React__default["default"].createElement(material.Tooltip, { placement: "right", arrow: true, title: localization.edit },
|
|
940
|
-
React__default["default"].createElement(material.IconButton, { sx: commonIconButtonStyles, onClick: handleStartEditMode },
|
|
939
|
+
return (React__default["default"].createElement(React__default["default"].Fragment, null, renderRowActions ? (React__default["default"].createElement(React__default["default"].Fragment, null, renderRowActions({ cell, row, table }))) : row.id === (editingRow === null || editingRow === void 0 ? void 0 : editingRow.id) && editingMode === 'row' ? (React__default["default"].createElement(MRT_EditActionButtons, { row: row, table: table })) : !renderRowActionMenuItems && enableEditing ? (React__default["default"].createElement(material.Tooltip, { placement: "right", arrow: true, title: localization.edit },
|
|
940
|
+
React__default["default"].createElement(material.IconButton, { "aria-label": localization.edit, sx: commonIconButtonStyles, onClick: handleStartEditMode },
|
|
941
941
|
React__default["default"].createElement(EditIcon, null)))) : renderRowActionMenuItems ? (React__default["default"].createElement(React__default["default"].Fragment, null,
|
|
942
942
|
React__default["default"].createElement(material.Tooltip, { arrow: true, enterDelay: 1000, enterNextDelay: 1000, title: localization.rowActions },
|
|
943
943
|
React__default["default"].createElement(material.IconButton, { "aria-label": localization.rowActions, onClick: handleOpenRowActionMenu, size: "small", sx: commonIconButtonStyles },
|
|
@@ -1259,7 +1259,7 @@ const MRT_BottomToolbar = ({ table }) => {
|
|
|
1259
1259
|
justifyContent: 'space-between',
|
|
1260
1260
|
width: '100%',
|
|
1261
1261
|
} },
|
|
1262
|
-
renderBottomToolbarCustomActions ? (
|
|
1262
|
+
renderBottomToolbarCustomActions ? (renderBottomToolbarCustomActions({ table })) : (React__default["default"].createElement("span", null)),
|
|
1263
1263
|
React__default["default"].createElement(material.Box, { sx: {
|
|
1264
1264
|
display: 'flex',
|
|
1265
1265
|
justifyContent: 'flex-end',
|
|
@@ -1641,7 +1641,7 @@ const MRT_TableHeadCell = ({ header, table }) => {
|
|
|
1641
1641
|
if (enableGrouping && (hoveredColumn === null || hoveredColumn === void 0 ? void 0 : hoveredColumn.id) === 'drop-zone') {
|
|
1642
1642
|
setHoveredColumn(null);
|
|
1643
1643
|
}
|
|
1644
|
-
if (enableColumnOrdering && draggingColumn) {
|
|
1644
|
+
if (enableColumnOrdering && draggingColumn && columnDefType !== 'group') {
|
|
1645
1645
|
setHoveredColumn(columnDef.enableColumnOrdering !== false ? column : null);
|
|
1646
1646
|
}
|
|
1647
1647
|
};
|
|
@@ -1691,13 +1691,11 @@ const MRT_TableHeadCell = ({ header, table }) => {
|
|
|
1691
1691
|
? '0.4rem'
|
|
1692
1692
|
: '0.6rem', position: column.getIsPinned() && columnDefType !== 'group'
|
|
1693
1693
|
? 'sticky'
|
|
1694
|
-
: undefined, pt: columnDefType === 'group'
|
|
1695
|
-
? 0
|
|
1696
|
-
: density === '
|
|
1697
|
-
? '
|
|
1698
|
-
:
|
|
1699
|
-
? '.75rem'
|
|
1700
|
-
: '1.25rem', right: column.getIsPinned() === 'right' ? `${getTotalRight()}px` : undefined, transition: `all ${enableColumnResizing ? 0 : '0.2s'} ease-in-out`, userSelect: enableMultiSort && column.getCanSort() ? 'none' : undefined, verticalAlign: 'top', zIndex: column.getIsResizing() || (draggingColumn === null || draggingColumn === void 0 ? void 0 : draggingColumn.id) === column.id
|
|
1694
|
+
: undefined, pt: columnDefType === 'group' || density === 'compact'
|
|
1695
|
+
? '0.25rem'
|
|
1696
|
+
: density === 'comfortable'
|
|
1697
|
+
? '.75rem'
|
|
1698
|
+
: '1.25rem', right: column.getIsPinned() === 'right' ? `${getTotalRight()}px` : undefined, transition: `all ${enableColumnResizing ? 0 : '0.2s'} ease-in-out`, userSelect: enableMultiSort && column.getCanSort() ? 'none' : undefined, verticalAlign: 'top', zIndex: column.getIsResizing() || (draggingColumn === null || draggingColumn === void 0 ? void 0 : draggingColumn.id) === column.id
|
|
1701
1699
|
? 3
|
|
1702
1700
|
: column.getIsPinned() && columnDefType !== 'group'
|
|
1703
1701
|
? 2
|
|
@@ -1806,7 +1804,7 @@ const MRT_EditCellTextField = ({ cell, showLabel, table, }) => {
|
|
|
1806
1804
|
}, onBlur: handleBlur, onChange: handleChange })));
|
|
1807
1805
|
};
|
|
1808
1806
|
|
|
1809
|
-
const MRT_CopyButton = ({ cell, children, table }) => {
|
|
1807
|
+
const MRT_CopyButton = ({ cell, children, table, }) => {
|
|
1810
1808
|
const { options: { localization, muiTableBodyCellCopyButtonProps }, } = table;
|
|
1811
1809
|
const { column, row } = cell;
|
|
1812
1810
|
const { columnDef } = column;
|
|
@@ -1854,8 +1852,24 @@ const MRT_TableBodyRowGrabHandle = ({ cell, rowRef, table, }) => {
|
|
|
1854
1852
|
return (React__default["default"].createElement(MRT_GrabHandleButton, { iconButtonProps: iconButtonProps, onDragStart: handleDragStart, onDragEnd: handleDragEnd, table: table }));
|
|
1855
1853
|
};
|
|
1856
1854
|
|
|
1855
|
+
const MRT_TableBodyCellValue = ({ cell, table }) => {
|
|
1856
|
+
var _a, _b, _c;
|
|
1857
|
+
const { column, row } = cell;
|
|
1858
|
+
const { columnDef } = column;
|
|
1859
|
+
return (React__default["default"].createElement(React__default["default"].Fragment, null, cell.getIsAggregated() && column.columnDef.aggregationFn
|
|
1860
|
+
? (_a = columnDef.AggregatedCell) === null || _a === void 0 ? void 0 : _a.call(columnDef, {
|
|
1861
|
+
cell,
|
|
1862
|
+
column,
|
|
1863
|
+
row,
|
|
1864
|
+
table,
|
|
1865
|
+
})
|
|
1866
|
+
: row.getIsGrouped() && !cell.getIsGrouped()
|
|
1867
|
+
? null
|
|
1868
|
+
: (_c = (_b = columnDef === null || columnDef === void 0 ? void 0 : columnDef.Cell) === null || _b === void 0 ? void 0 : _b.call(columnDef, { cell, column, row, table })) !== null && _c !== void 0 ? _c : cell.renderValue()));
|
|
1869
|
+
};
|
|
1870
|
+
|
|
1857
1871
|
const MRT_TableBodyCell = ({ cell, enableHover, rowIndex, rowRef, table, }) => {
|
|
1858
|
-
var _a, _b
|
|
1872
|
+
var _a, _b;
|
|
1859
1873
|
const theme = material.useTheme();
|
|
1860
1874
|
const { getState, options: { editingMode, enableClickToCopy, enableColumnOrdering, enableEditing, enableGrouping, enablePagination, enableRowNumbers, muiTableBodyCellProps, muiTableBodyCellSkeletonProps, rowNumberMode, }, refs: { editInputRefs }, setEditingCell, setHoveredColumn, } = table;
|
|
1861
1875
|
const { draggingColumn, editingCell, editingRow, hoveredColumn, density, isLoading, showSkeletons, } = getState();
|
|
@@ -1985,21 +1999,12 @@ const MRT_TableBodyCell = ({ cell, enableHover, rowIndex, rowRef, table, }) => {
|
|
|
1985
1999
|
(column.id === 'mrt-row-select' ||
|
|
1986
2000
|
column.id === 'mrt-row-expand' ||
|
|
1987
2001
|
!row.getIsGrouped()) ? ((_a = columnDef.Cell) === null || _a === void 0 ? void 0 : _a.call(columnDef, { cell, column, row, table })) : isEditing ? (React__default["default"].createElement(MRT_EditCellTextField, { cell: cell, table: table })) : (enableClickToCopy || columnDef.enableClickToCopy) &&
|
|
1988
|
-
columnDef.enableClickToCopy !== false ? (React__default["default"].createElement(
|
|
1989
|
-
React__default["default"].createElement(
|
|
1990
|
-
|
|
1991
|
-
|
|
1992
|
-
|
|
1993
|
-
|
|
1994
|
-
" (", (_d = row.subRows) === null || _d === void 0 ? void 0 :
|
|
1995
|
-
_d.length,
|
|
1996
|
-
")"))) : (React__default["default"].createElement(React__default["default"].Fragment, null,
|
|
1997
|
-
row.getIsGrouped() && !cell.getIsGrouped()
|
|
1998
|
-
? null
|
|
1999
|
-
: (_g = (_f = columnDef === null || columnDef === void 0 ? void 0 : columnDef.Cell) === null || _f === void 0 ? void 0 : _f.call(columnDef, { cell, column, row, table })) !== null && _g !== void 0 ? _g : cell.renderValue(),
|
|
2000
|
-
cell.getIsGrouped() && React__default["default"].createElement(React__default["default"].Fragment, null,
|
|
2001
|
-
" (", (_j = (_h = row.subRows) === null || _h === void 0 ? void 0 : _h.length) !== null && _j !== void 0 ? _j : '',
|
|
2002
|
-
")"))))));
|
|
2002
|
+
columnDef.enableClickToCopy !== false ? (React__default["default"].createElement(MRT_CopyButton, { cell: cell, table: table },
|
|
2003
|
+
React__default["default"].createElement(MRT_TableBodyCellValue, { cell: cell, table: table }))) : (React__default["default"].createElement(MRT_TableBodyCellValue, { cell: cell, table: table }))),
|
|
2004
|
+
cell.getIsGrouped() && React__default["default"].createElement(React__default["default"].Fragment, null,
|
|
2005
|
+
" (", (_b = row.subRows) === null || _b === void 0 ? void 0 :
|
|
2006
|
+
_b.length,
|
|
2007
|
+
")")));
|
|
2003
2008
|
};
|
|
2004
2009
|
|
|
2005
2010
|
const MRT_TableDetailPanel = ({ row, table }) => {
|
|
@@ -2314,7 +2319,7 @@ const MRT_TableRoot = (props) => {
|
|
|
2314
2319
|
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k;
|
|
2315
2320
|
return [
|
|
2316
2321
|
columnOrder.includes('mrt-row-drag') && Object.assign(Object.assign(Object.assign({ header: (_a = props.localization) === null || _a === void 0 ? void 0 : _a.move, size: 60 }, defaultDisplayColumnDefOptions), (_b = props.displayColumnDefOptions) === null || _b === void 0 ? void 0 : _b['mrt-row-drag']), { id: 'mrt-row-drag' }),
|
|
2317
|
-
columnOrder.includes('mrt-row-actions') && Object.assign(Object.assign(Object.assign({ Cell: ({ row }) => (React__default["default"].createElement(MRT_ToggleRowActionMenuButton, { row: row, table: table })), header: (_c = props.localization) === null || _c === void 0 ? void 0 : _c.actions, size: 70 }, defaultDisplayColumnDefOptions), (_d = props.displayColumnDefOptions) === null || _d === void 0 ? void 0 : _d['mrt-row-actions']), { id: 'mrt-row-actions' }),
|
|
2322
|
+
columnOrder.includes('mrt-row-actions') && Object.assign(Object.assign(Object.assign({ Cell: ({ cell, row }) => (React__default["default"].createElement(MRT_ToggleRowActionMenuButton, { cell: cell, row: row, table: table })), header: (_c = props.localization) === null || _c === void 0 ? void 0 : _c.actions, size: 70 }, defaultDisplayColumnDefOptions), (_d = props.displayColumnDefOptions) === null || _d === void 0 ? void 0 : _d['mrt-row-actions']), { id: 'mrt-row-actions' }),
|
|
2318
2323
|
columnOrder.includes('mrt-row-expand') &&
|
|
2319
2324
|
showExpandColumn(props, grouping) && Object.assign(Object.assign(Object.assign({ Cell: ({ row }) => (React__default["default"].createElement(MRT_ExpandButton, { row: row, table: table })), Header: () => props.enableExpandAll ? (React__default["default"].createElement(MRT_ExpandAllButton, { table: table })) : null, header: (_e = props.localization) === null || _e === void 0 ? void 0 : _e.expand, size: 60 }, defaultDisplayColumnDefOptions), (_f = props.displayColumnDefOptions) === null || _f === void 0 ? void 0 : _f['mrt-row-expand']), { id: 'mrt-row-expand' }),
|
|
2320
2325
|
columnOrder.includes('mrt-row-select') && Object.assign(Object.assign(Object.assign({ Cell: ({ row }) => (React__default["default"].createElement(MRT_SelectCheckbox, { row: row, table: table })), Header: () => props.enableSelectAll ? (React__default["default"].createElement(MRT_SelectCheckbox, { selectAll: true, table: table })) : null, header: (_g = props.localization) === null || _g === void 0 ? void 0 : _g.select, size: 60 }, defaultDisplayColumnDefOptions), (_h = props.displayColumnDefOptions) === null || _h === void 0 ? void 0 : _h['mrt-row-select']), { id: 'mrt-row-select' }),
|
|
@@ -2395,6 +2400,7 @@ var MaterialReactTable = (_a) => {
|
|
|
2395
2400
|
return (React__default["default"].createElement(MRT_TableRoot, Object.assign({ aggregationFns: Object.assign(Object.assign({}, MRT_AggregationFns), aggregationFns), autoResetExpanded: autoResetExpanded, columnResizeMode: columnResizeMode, defaultColumn: defaultColumn, editingMode: editingMode, enableBottomToolbar: enableBottomToolbar, enableColumnActions: enableColumnActions, enableColumnFilterChangeMode: enableColumnFilterChangeMode, enableColumnFilters: enableColumnFilters, enableColumnOrdering: enableColumnOrdering, enableColumnResizing: enableColumnResizing, enableDensityToggle: enableDensityToggle, enableExpandAll: enableExpandAll, enableFilters: enableFilters, enableFullScreenToggle: enableFullScreenToggle, enableGlobalFilter: enableGlobalFilter, enableGlobalFilterChangeMode: enableGlobalFilterChangeMode, enableGlobalFilterRankedResults: enableGlobalFilterRankedResults, enableGrouping: enableGrouping, enableHiding: enableHiding, enableMultiRowSelection: enableMultiRowSelection, enableMultiSort: enableMultiSort, enablePagination: enablePagination, enablePinning: enablePinning, enableRowSelection: enableRowSelection, enableSelectAll: enableSelectAll, enableSorting: enableSorting, enableStickyHeader: enableStickyHeader, enableTableFooter: enableTableFooter, enableTableHead: enableTableHead, enableToolbarInternalActions: enableToolbarInternalActions, enableTopToolbar: enableTopToolbar, filterFns: Object.assign(Object.assign({}, MRT_FilterFns), filterFns), icons: Object.assign(Object.assign({}, MRT_Default_Icons), icons), localization: Object.assign(Object.assign({}, MRT_DefaultLocalization_EN), localization), positionActionsColumn: positionActionsColumn, positionExpandColumn: positionExpandColumn, positionGlobalFilter: positionGlobalFilter, positionPagination: positionPagination, positionToolbarAlertBanner: positionToolbarAlertBanner, positionToolbarDropZone: positionToolbarDropZone, rowNumberMode: rowNumberMode, selectAllMode: selectAllMode, sortingFns: Object.assign(Object.assign({}, MRT_SortingFns), sortingFns) }, rest)));
|
|
2396
2401
|
};
|
|
2397
2402
|
|
|
2403
|
+
exports.MRT_CopyButton = MRT_CopyButton;
|
|
2398
2404
|
exports.MRT_FullScreenToggleButton = MRT_FullScreenToggleButton;
|
|
2399
2405
|
exports.MRT_GlobalFilterTextField = MRT_GlobalFilterTextField;
|
|
2400
2406
|
exports.MRT_ShowHideColumnsButton = MRT_ShowHideColumnsButton;
|