material-react-table 0.35.2 → 0.36.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 +8 -32
- package/dist/cjs/body/MRT_EditRowModal.d.ts +8 -0
- package/dist/cjs/buttons/MRT_EditActionButtons.d.ts +5 -5
- package/dist/cjs/index.js +92 -58
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/inputs/MRT_EditCellTextField.d.ts +5 -5
- package/dist/esm/MaterialReactTable.d.ts +8 -32
- package/dist/esm/body/MRT_EditRowModal.d.ts +8 -0
- package/dist/esm/buttons/MRT_EditActionButtons.d.ts +5 -5
- package/dist/esm/inputs/MRT_EditCellTextField.d.ts +5 -5
- package/dist/esm/material-react-table.esm.js +93 -59
- package/dist/esm/material-react-table.esm.js.map +1 -1
- package/dist/index.d.ts +8 -32
- package/package.json +1 -1
- package/src/MaterialReactTable.tsx +8 -59
- package/src/body/MRT_EditRowModal.tsx +57 -0
- package/src/body/MRT_TableBodyCell.tsx +19 -10
- package/src/buttons/MRT_EditActionButtons.tsx +36 -21
- package/src/buttons/MRT_ToggleRowActionMenuButton.tsx +2 -1
- package/src/column.utils.ts +4 -2
- package/src/inputs/MRT_EditCellTextField.tsx +36 -40
- package/src/table/MRT_TableRoot.tsx +4 -0
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { Dispatch, DragEvent, ReactNode, SetStateAction } from 'react';
|
|
2
2
|
import type { AlertProps, ButtonProps, CheckboxProps, IconButtonProps, LinearProgressProps, PaperProps, SkeletonProps, TableBodyProps, TableCellProps, TableContainerProps, TableFooterProps, TableHeadProps, TablePaginationProps, TableProps, TableRowProps, TextFieldProps, ToolbarProps } from '@mui/material';
|
|
3
3
|
import type { Cell, Column, ColumnDef, DeepKeys, FilterFn, Header, HeaderGroup, OnChangeFn, Row, SortingFn, Table, TableOptions, TableState } from '@tanstack/react-table';
|
|
4
4
|
import type { Options as VirtualizerOptions } from 'react-virtual';
|
|
@@ -165,15 +165,15 @@ export declare type MRT_ColumnDef<TData extends Record<string, any> = {}> = Omit
|
|
|
165
165
|
* @default gets set to the same value as `accessorKey` by default
|
|
166
166
|
*/
|
|
167
167
|
id?: LiteralUnion<string & keyof TData>;
|
|
168
|
-
muiTableBodyCellCopyButtonProps?: ButtonProps | (({
|
|
168
|
+
muiTableBodyCellCopyButtonProps?: ButtonProps | (({ cell, table, }: {
|
|
169
169
|
table: MRT_TableInstance<TData>;
|
|
170
170
|
cell: MRT_Cell<TData>;
|
|
171
171
|
}) => ButtonProps);
|
|
172
|
-
muiTableBodyCellEditTextFieldProps?: TextFieldProps | (({
|
|
173
|
-
table: MRT_TableInstance<TData>;
|
|
172
|
+
muiTableBodyCellEditTextFieldProps?: TextFieldProps | (({ cell, table, }: {
|
|
174
173
|
cell: MRT_Cell<TData>;
|
|
174
|
+
table: MRT_TableInstance<TData>;
|
|
175
175
|
}) => TextFieldProps);
|
|
176
|
-
muiTableBodyCellProps?: TableCellProps | (({
|
|
176
|
+
muiTableBodyCellProps?: TableCellProps | (({ cell, table, }: {
|
|
177
177
|
table: MRT_TableInstance<TData>;
|
|
178
178
|
cell: MRT_Cell<TData>;
|
|
179
179
|
}) => TableCellProps);
|
|
@@ -198,18 +198,6 @@ export declare type MRT_ColumnDef<TData extends Record<string, any> = {}> = Omit
|
|
|
198
198
|
table: MRT_TableInstance<TData>;
|
|
199
199
|
column: MRT_Column<TData>;
|
|
200
200
|
}) => TableCellProps);
|
|
201
|
-
onCellEditBlur?: ({ cell, event, table, value, }: {
|
|
202
|
-
event: FocusEvent<HTMLInputElement>;
|
|
203
|
-
cell: MRT_Cell<TData>;
|
|
204
|
-
table: MRT_TableInstance<TData>;
|
|
205
|
-
value: string;
|
|
206
|
-
}) => void;
|
|
207
|
-
onCellEditChange?: ({ cell, event, table, value, }: {
|
|
208
|
-
event: ChangeEvent<HTMLInputElement>;
|
|
209
|
-
cell: MRT_Cell<TData>;
|
|
210
|
-
table: MRT_TableInstance<TData>;
|
|
211
|
-
value: string;
|
|
212
|
-
}) => void;
|
|
213
201
|
sortingFn?: MRT_SortingFn;
|
|
214
202
|
};
|
|
215
203
|
export declare type MRT_DefinedColumnDef<TData extends Record<string, any> = {}> = Omit<MRT_ColumnDef<TData>, 'id'> & {
|
|
@@ -261,7 +249,7 @@ export declare type MaterialReactTableProps<TData extends Record<string, any> =
|
|
|
261
249
|
displayColumnDefOptions?: Partial<{
|
|
262
250
|
[key in MRT_DisplayColumnIds]: Partial<MRT_ColumnDef>;
|
|
263
251
|
}>;
|
|
264
|
-
editingMode?: 'table' | 'row' | 'cell';
|
|
252
|
+
editingMode?: 'table' | 'modal' | 'row' | 'cell';
|
|
265
253
|
enableBottomToolbar?: boolean;
|
|
266
254
|
enableClickToCopy?: boolean;
|
|
267
255
|
enableColumnActions?: boolean;
|
|
@@ -317,9 +305,9 @@ export declare type MaterialReactTableProps<TData extends Record<string, any> =
|
|
|
317
305
|
table: MRT_TableInstance<TData>;
|
|
318
306
|
cell: MRT_Cell<TData>;
|
|
319
307
|
}) => ButtonProps);
|
|
320
|
-
muiTableBodyCellEditTextFieldProps?: TextFieldProps | (({
|
|
321
|
-
table: MRT_TableInstance<TData>;
|
|
308
|
+
muiTableBodyCellEditTextFieldProps?: TextFieldProps | (({ cell, table, }: {
|
|
322
309
|
cell: MRT_Cell<TData>;
|
|
310
|
+
table: MRT_TableInstance<TData>;
|
|
323
311
|
}) => TextFieldProps);
|
|
324
312
|
muiTableBodyCellProps?: TableCellProps | (({ table, cell, }: {
|
|
325
313
|
table: MRT_TableInstance<TData>;
|
|
@@ -400,18 +388,6 @@ export declare type MaterialReactTableProps<TData extends Record<string, any> =
|
|
|
400
388
|
muiTableTopToolbarProps?: ToolbarProps | (({ table }: {
|
|
401
389
|
table: MRT_TableInstance<TData>;
|
|
402
390
|
}) => ToolbarProps);
|
|
403
|
-
onCellEditBlur?: ({ cell, event, table, value, }: {
|
|
404
|
-
event: FocusEvent<HTMLInputElement>;
|
|
405
|
-
cell: MRT_Cell<TData>;
|
|
406
|
-
table: MRT_TableInstance<TData>;
|
|
407
|
-
value: string;
|
|
408
|
-
}) => void;
|
|
409
|
-
onCellEditChange?: ({ cell, event, table, value, }: {
|
|
410
|
-
event: ChangeEvent<HTMLInputElement>;
|
|
411
|
-
cell: MRT_Cell<TData>;
|
|
412
|
-
table: MRT_TableInstance<TData>;
|
|
413
|
-
value: string;
|
|
414
|
-
}) => void;
|
|
415
391
|
onColumnDrop?: ({ event, draggedColumn, targetColumn, }: {
|
|
416
392
|
event: DragEvent<HTMLButtonElement>;
|
|
417
393
|
draggedColumn: MRT_Column<TData>;
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import type { MRT_Row, MRT_TableInstance } from '..';
|
|
2
|
+
interface Props<TData extends Record<string, any> = {}> {
|
|
3
|
+
open: boolean;
|
|
4
|
+
row: MRT_Row<TData>;
|
|
5
|
+
table: MRT_TableInstance<TData>;
|
|
6
|
+
}
|
|
7
|
+
export declare const MRT_EditRowModal: <TData extends Record<string, any> = {}>({ open, row, table, }: Props<TData>) => JSX.Element;
|
|
8
|
+
export {};
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { FC } from 'react';
|
|
2
1
|
import type { MRT_Row, MRT_TableInstance } from '..';
|
|
3
|
-
interface Props {
|
|
4
|
-
row: MRT_Row
|
|
5
|
-
table: MRT_TableInstance
|
|
2
|
+
interface Props<TData extends Record<string, any> = {}> {
|
|
3
|
+
row: MRT_Row<TData>;
|
|
4
|
+
table: MRT_TableInstance<TData>;
|
|
5
|
+
variant?: 'icon' | 'text';
|
|
6
6
|
}
|
|
7
|
-
export declare const MRT_EditActionButtons:
|
|
7
|
+
export declare const MRT_EditActionButtons: <TData extends Record<string, any> = {}>({ row, table, variant, }: Props<TData>) => JSX.Element;
|
|
8
8
|
export {};
|
package/dist/cjs/index.js
CHANGED
|
@@ -530,29 +530,37 @@ const reorderColumn = (draggedColumn, targetColumn, columnOrder) => {
|
|
|
530
530
|
columnOrder.splice(columnOrder.indexOf(targetColumn.id), 0, columnOrder.splice(columnOrder.indexOf(draggedColumn.id), 1)[0]);
|
|
531
531
|
return [...columnOrder];
|
|
532
532
|
};
|
|
533
|
-
const getLeadingDisplayColumnIds = (props) =>
|
|
534
|
-
|
|
535
|
-
|
|
536
|
-
(props.
|
|
537
|
-
'
|
|
538
|
-
|
|
539
|
-
|
|
540
|
-
|
|
541
|
-
|
|
542
|
-
|
|
543
|
-
|
|
544
|
-
|
|
545
|
-
|
|
546
|
-
|
|
547
|
-
|
|
548
|
-
|
|
549
|
-
|
|
550
|
-
|
|
551
|
-
|
|
552
|
-
|
|
553
|
-
|
|
554
|
-
|
|
555
|
-
]
|
|
533
|
+
const getLeadingDisplayColumnIds = (props) => {
|
|
534
|
+
var _a;
|
|
535
|
+
return [
|
|
536
|
+
(props.enableRowDragging || props.enableRowOrdering) && 'mrt-row-drag',
|
|
537
|
+
((props.positionActionsColumn === 'first' && props.enableRowActions) ||
|
|
538
|
+
(props.enableEditing &&
|
|
539
|
+
['row', 'modal'].includes((_a = props.editingMode) !== null && _a !== void 0 ? _a : ''))) &&
|
|
540
|
+
'mrt-row-actions',
|
|
541
|
+
props.positionExpandColumn === 'first' &&
|
|
542
|
+
(props.enableExpanding ||
|
|
543
|
+
props.enableGrouping ||
|
|
544
|
+
props.renderDetailPanel) &&
|
|
545
|
+
'mrt-row-expand',
|
|
546
|
+
props.enableRowSelection && 'mrt-row-select',
|
|
547
|
+
props.enableRowNumbers && 'mrt-row-numbers',
|
|
548
|
+
].filter(Boolean);
|
|
549
|
+
};
|
|
550
|
+
const getTrailingDisplayColumnIds = (props) => {
|
|
551
|
+
var _a;
|
|
552
|
+
return [
|
|
553
|
+
((props.positionActionsColumn === 'last' && props.enableRowActions) ||
|
|
554
|
+
(props.enableEditing &&
|
|
555
|
+
['row', 'modal'].includes((_a = props.editingMode) !== null && _a !== void 0 ? _a : ''))) &&
|
|
556
|
+
'mrt-row-actions',
|
|
557
|
+
props.positionExpandColumn === 'last' &&
|
|
558
|
+
(props.enableExpanding ||
|
|
559
|
+
props.enableGrouping ||
|
|
560
|
+
props.renderDetailPanel) &&
|
|
561
|
+
'mrt-row-expand',
|
|
562
|
+
];
|
|
563
|
+
};
|
|
556
564
|
const getDefaultColumnOrderIds = (props) => [
|
|
557
565
|
...getLeadingDisplayColumnIds(props),
|
|
558
566
|
...getAllLeafColumnDefs(props.columns).map((columnDef) => getColumnId(columnDef)),
|
|
@@ -881,11 +889,10 @@ const MRT_RowActionMenu = ({ anchorEl, handleEdit, row, setAnchorEl, table, }) =
|
|
|
881
889
|
})));
|
|
882
890
|
};
|
|
883
891
|
|
|
884
|
-
const MRT_EditActionButtons = ({ row, table }) => {
|
|
892
|
+
const MRT_EditActionButtons = ({ row, table, variant = 'icon', }) => {
|
|
885
893
|
const { getState, options: { icons: { CancelIcon, SaveIcon }, localization, onEditingRowSave, }, setEditingRow, } = table;
|
|
886
894
|
const { editingRow } = getState();
|
|
887
895
|
const handleCancel = () => {
|
|
888
|
-
row._valuesCache = Object.assign({}, row.original);
|
|
889
896
|
setEditingRow(null);
|
|
890
897
|
};
|
|
891
898
|
const handleSave = () => {
|
|
@@ -897,13 +904,15 @@ const MRT_EditActionButtons = ({ row, table }) => {
|
|
|
897
904
|
});
|
|
898
905
|
setEditingRow(null);
|
|
899
906
|
};
|
|
900
|
-
return (React__default["default"].createElement(material.Box, { sx: { display: 'flex', gap: '0.75rem' } },
|
|
907
|
+
return (React__default["default"].createElement(material.Box, { sx: { display: 'flex', gap: '0.75rem' } }, variant === 'icon' ? (React__default["default"].createElement(React__default["default"].Fragment, null,
|
|
901
908
|
React__default["default"].createElement(material.Tooltip, { arrow: true, title: localization.cancel },
|
|
902
909
|
React__default["default"].createElement(material.IconButton, { "aria-label": localization.cancel, onClick: handleCancel },
|
|
903
910
|
React__default["default"].createElement(CancelIcon, null))),
|
|
904
911
|
React__default["default"].createElement(material.Tooltip, { arrow: true, title: localization.save },
|
|
905
912
|
React__default["default"].createElement(material.IconButton, { "aria-label": localization.save, color: "info", onClick: handleSave },
|
|
906
|
-
React__default["default"].createElement(SaveIcon, null)))))
|
|
913
|
+
React__default["default"].createElement(SaveIcon, null))))) : (React__default["default"].createElement(React__default["default"].Fragment, null,
|
|
914
|
+
React__default["default"].createElement(material.Button, { onClick: handleCancel }, localization.cancel),
|
|
915
|
+
React__default["default"].createElement(material.Button, { onClick: handleSave, variant: "contained" }, localization.save)))));
|
|
907
916
|
};
|
|
908
917
|
|
|
909
918
|
const commonIconButtonStyles = {
|
|
@@ -917,7 +926,7 @@ const commonIconButtonStyles = {
|
|
|
917
926
|
},
|
|
918
927
|
};
|
|
919
928
|
const MRT_ToggleRowActionMenuButton = ({ row, table }) => {
|
|
920
|
-
const { getState, options: { enableEditing, icons: { EditIcon, MoreHorizIcon }, localization, renderRowActionMenuItems, renderRowActions, }, setEditingRow, } = table;
|
|
929
|
+
const { getState, options: { editingMode, enableEditing, icons: { EditIcon, MoreHorizIcon }, localization, renderRowActionMenuItems, renderRowActions, }, setEditingRow, } = table;
|
|
921
930
|
const { editingRow } = getState();
|
|
922
931
|
const [anchorEl, setAnchorEl] = React.useState(null);
|
|
923
932
|
const handleOpenRowActionMenu = (event) => {
|
|
@@ -929,7 +938,7 @@ const MRT_ToggleRowActionMenuButton = ({ row, table }) => {
|
|
|
929
938
|
setEditingRow(Object.assign({}, row));
|
|
930
939
|
setAnchorEl(null);
|
|
931
940
|
};
|
|
932
|
-
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) ? (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 },
|
|
941
|
+
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 },
|
|
933
942
|
React__default["default"].createElement(material.IconButton, { sx: commonIconButtonStyles, onClick: handleStartEditMode },
|
|
934
943
|
React__default["default"].createElement(EditIcon, null)))) : renderRowActionMenuItems ? (React__default["default"].createElement(React__default["default"].Fragment, null,
|
|
935
944
|
React__default["default"].createElement(material.Tooltip, { arrow: true, enterDelay: 1000, enterNextDelay: 1000, title: localization.rowActions },
|
|
@@ -1739,31 +1748,13 @@ const MRT_TableHead = ({ table }) => {
|
|
|
1739
1748
|
return (React__default["default"].createElement(material.TableHead, Object.assign({}, tableHeadProps), getHeaderGroups().map((headerGroup) => (React__default["default"].createElement(MRT_TableHeadRow, { headerGroup: headerGroup, key: headerGroup.id, table: table })))));
|
|
1740
1749
|
};
|
|
1741
1750
|
|
|
1742
|
-
const MRT_EditCellTextField = ({ cell, table }) => {
|
|
1751
|
+
const MRT_EditCellTextField = ({ cell, showLabel, table, }) => {
|
|
1743
1752
|
var _a;
|
|
1744
|
-
const { getState, options: { tableId, muiTableBodyCellEditTextFieldProps
|
|
1745
|
-
const { column
|
|
1753
|
+
const { getState, options: { tableId, muiTableBodyCellEditTextFieldProps }, setEditingCell, setEditingRow, } = table;
|
|
1754
|
+
const { column } = cell;
|
|
1746
1755
|
const { columnDef } = column;
|
|
1747
1756
|
const { editingRow } = getState();
|
|
1748
1757
|
const [value, setValue] = React.useState(() => cell.getValue());
|
|
1749
|
-
const handleChange = (event) => {
|
|
1750
|
-
var _a;
|
|
1751
|
-
setValue(event.target.value);
|
|
1752
|
-
(_a = columnDef.onCellEditChange) === null || _a === void 0 ? void 0 : _a.call(columnDef, { event, cell, table, value });
|
|
1753
|
-
onCellEditChange === null || onCellEditChange === void 0 ? void 0 : onCellEditChange({ event, cell, table, value });
|
|
1754
|
-
};
|
|
1755
|
-
const handleBlur = (event) => {
|
|
1756
|
-
var _a;
|
|
1757
|
-
if (editingRow) {
|
|
1758
|
-
if (!row._valuesCache)
|
|
1759
|
-
row._valuesCache = {};
|
|
1760
|
-
row._valuesCache[column.id] = value;
|
|
1761
|
-
setEditingRow(Object.assign({}, editingRow));
|
|
1762
|
-
}
|
|
1763
|
-
setEditingCell(null);
|
|
1764
|
-
(_a = columnDef.onCellEditBlur) === null || _a === void 0 ? void 0 : _a.call(columnDef, { event, cell, table, value });
|
|
1765
|
-
onCellEditBlur === null || onCellEditBlur === void 0 ? void 0 : onCellEditBlur({ event, cell, table, value });
|
|
1766
|
-
};
|
|
1767
1758
|
const mTableBodyCellEditTextFieldProps = muiTableBodyCellEditTextFieldProps instanceof Function
|
|
1768
1759
|
? muiTableBodyCellEditTextFieldProps({ cell, table })
|
|
1769
1760
|
: muiTableBodyCellEditTextFieldProps;
|
|
@@ -1774,10 +1765,23 @@ const MRT_EditCellTextField = ({ cell, table }) => {
|
|
|
1774
1765
|
})
|
|
1775
1766
|
: columnDef.muiTableBodyCellEditTextFieldProps;
|
|
1776
1767
|
const textFieldProps = Object.assign(Object.assign({}, mTableBodyCellEditTextFieldProps), mcTableBodyCellEditTextFieldProps);
|
|
1768
|
+
const handleChange = (event) => {
|
|
1769
|
+
var _a;
|
|
1770
|
+
(_a = textFieldProps.onChange) === null || _a === void 0 ? void 0 : _a.call(textFieldProps, event);
|
|
1771
|
+
setValue(event.target.value);
|
|
1772
|
+
};
|
|
1773
|
+
const handleBlur = (event) => {
|
|
1774
|
+
var _a;
|
|
1775
|
+
(_a = textFieldProps.onBlur) === null || _a === void 0 ? void 0 : _a.call(textFieldProps, event);
|
|
1776
|
+
if (editingRow) {
|
|
1777
|
+
setEditingRow(Object.assign(Object.assign({}, editingRow), { _valuesCache: Object.assign(Object.assign({}, editingRow._valuesCache), { [column.id]: value }) }));
|
|
1778
|
+
}
|
|
1779
|
+
setEditingCell(null);
|
|
1780
|
+
};
|
|
1777
1781
|
if (columnDef.Edit) {
|
|
1778
1782
|
return React__default["default"].createElement(React__default["default"].Fragment, null, (_a = columnDef.Edit) === null || _a === void 0 ? void 0 : _a.call(columnDef, { cell, column, table }));
|
|
1779
1783
|
}
|
|
1780
|
-
return (React__default["default"].createElement(material.TextField, Object.assign({ id: `mrt-${tableId}-edit-cell-text-field-${cell.id}`,
|
|
1784
|
+
return (React__default["default"].createElement(material.TextField, Object.assign({ disabled: columnDef.enableEditing === false, fullWidth: true, id: `mrt-${tableId}-edit-cell-text-field-${cell.id}`, label: showLabel ? column.columnDef.header : undefined, margin: "none", onClick: (e) => e.stopPropagation(), placeholder: columnDef.header, value: value, variant: "standard" }, textFieldProps, { onBlur: handleBlur, onChange: handleChange })));
|
|
1781
1785
|
};
|
|
1782
1786
|
|
|
1783
1787
|
const MRT_CopyButton = ({ cell, children, table }) => {
|
|
@@ -1845,6 +1849,7 @@ const MRT_TableBodyCell = ({ cell, enableHover, rowIndex, rowRef, table, }) => {
|
|
|
1845
1849
|
const isEditable = (enableEditing || columnDef.enableEditing) &&
|
|
1846
1850
|
columnDef.enableEditing !== false;
|
|
1847
1851
|
const isEditing = isEditable &&
|
|
1852
|
+
editingMode !== 'modal' &&
|
|
1848
1853
|
(editingMode === 'table' ||
|
|
1849
1854
|
(editingRow === null || editingRow === void 0 ? void 0 : editingRow.id) === row.id ||
|
|
1850
1855
|
(editingCell === null || editingCell === void 0 ? void 0 : editingCell.id) === cell.id);
|
|
@@ -1939,10 +1944,13 @@ const MRT_TableBodyCell = ({ cell, enableHover, rowIndex, rowRef, table, }) => {
|
|
|
1939
1944
|
: column.getIsPinned()
|
|
1940
1945
|
? 1
|
|
1941
1946
|
: undefined, '&:hover': {
|
|
1942
|
-
backgroundColor: enableHover &&
|
|
1947
|
+
backgroundColor: enableHover &&
|
|
1948
|
+
enableEditing &&
|
|
1949
|
+
columnDef.enableEditing !== false &&
|
|
1950
|
+
['table', 'cell'].includes(editingMode !== null && editingMode !== void 0 ? editingMode : '')
|
|
1943
1951
|
? theme.palette.mode === 'dark'
|
|
1944
|
-
? `${material.lighten(theme.palette.background.default, 0.
|
|
1945
|
-
: `${material.darken(theme.palette.background.default, 0.
|
|
1952
|
+
? `${material.lighten(theme.palette.background.default, 0.2)} !important`
|
|
1953
|
+
: `${material.darken(theme.palette.background.default, 0.1)} !important`
|
|
1946
1954
|
: undefined,
|
|
1947
1955
|
} }, ((tableCellProps === null || tableCellProps === void 0 ? void 0 : tableCellProps.sx) instanceof Function
|
|
1948
1956
|
? tableCellProps.sx(theme)
|
|
@@ -1950,14 +1958,22 @@ const MRT_TableBodyCell = ({ cell, enableHover, rowIndex, rowRef, table, }) => {
|
|
|
1950
1958
|
} }),
|
|
1951
1959
|
React__default["default"].createElement(React__default["default"].Fragment, null, cell.getIsPlaceholder() ? null : isLoading || showSkeletons ? (React__default["default"].createElement(material.Skeleton, Object.assign({ animation: "wave", height: 20, width: skeletonWidth }, muiTableBodyCellSkeletonProps))) : enableRowNumbers &&
|
|
1952
1960
|
rowNumberMode === 'static' &&
|
|
1953
|
-
column.id === 'mrt-row-numbers' ? (rowIndex + 1) : column.id === 'mrt-row-drag' ? (React__default["default"].createElement(MRT_TableBodyRowGrabHandle, { cell: cell, rowRef: rowRef, table: table })) : columnDefType === 'display'
|
|
1961
|
+
column.id === 'mrt-row-numbers' ? (rowIndex + 1) : column.id === 'mrt-row-drag' ? (React__default["default"].createElement(MRT_TableBodyRowGrabHandle, { cell: cell, rowRef: rowRef, table: table })) : columnDefType === 'display' &&
|
|
1962
|
+
(column.id === 'mrt-row-select' ||
|
|
1963
|
+
column.id === 'mrt-row-expand' ||
|
|
1964
|
+
!row.getIsGrouped()) ? ((_a = columnDef.Cell) === null || _a === void 0 ? void 0 : _a.call(columnDef, { cell, column, table })) : isEditing ? (React__default["default"].createElement(MRT_EditCellTextField, { cell: cell, table: table })) : (enableClickToCopy || columnDef.enableClickToCopy) &&
|
|
1954
1965
|
columnDef.enableClickToCopy !== false ? (React__default["default"].createElement(React__default["default"].Fragment, null,
|
|
1955
1966
|
React__default["default"].createElement(MRT_CopyButton, { cell: cell, table: table },
|
|
1956
|
-
React__default["default"].createElement(React__default["default"].Fragment, null,
|
|
1967
|
+
React__default["default"].createElement(React__default["default"].Fragment, null, row.getIsGrouped() && !cell.getIsGrouped()
|
|
1968
|
+
? null
|
|
1969
|
+
: (_c = (_b = columnDef === null || columnDef === void 0 ? void 0 : columnDef.Cell) === null || _b === void 0 ? void 0 : _b.call(columnDef, { cell, column, table })) !== null && _c !== void 0 ? _c : cell.renderValue())),
|
|
1957
1970
|
cell.getIsGrouped() && React__default["default"].createElement(React__default["default"].Fragment, null,
|
|
1958
1971
|
" (", (_d = row.subRows) === null || _d === void 0 ? void 0 :
|
|
1959
1972
|
_d.length,
|
|
1960
|
-
")"))) : (React__default["default"].createElement(React__default["default"].Fragment, null,
|
|
1973
|
+
")"))) : (React__default["default"].createElement(React__default["default"].Fragment, null,
|
|
1974
|
+
row.getIsGrouped() && !cell.getIsGrouped()
|
|
1975
|
+
? null
|
|
1976
|
+
: (_g = (_f = columnDef === null || columnDef === void 0 ? void 0 : columnDef.Cell) === null || _f === void 0 ? void 0 : _f.call(columnDef, { cell, column, table })) !== null && _g !== void 0 ? _g : cell.renderValue(),
|
|
1961
1977
|
cell.getIsGrouped() && React__default["default"].createElement(React__default["default"].Fragment, null,
|
|
1962
1978
|
" (", (_j = (_h = row.subRows) === null || _h === void 0 ? void 0 : _h.length) !== null && _j !== void 0 ? _j : '',
|
|
1963
1979
|
")"))))));
|
|
@@ -2208,6 +2224,23 @@ const MRT_TablePaper = ({ table }) => {
|
|
|
2208
2224
|
enableBottomToolbar && React__default["default"].createElement(MRT_BottomToolbar, { table: table })));
|
|
2209
2225
|
};
|
|
2210
2226
|
|
|
2227
|
+
const MRT_EditRowModal = ({ open, row, table, }) => {
|
|
2228
|
+
const { options: { localization }, } = table;
|
|
2229
|
+
return (React__default["default"].createElement(material.Dialog, { open: open },
|
|
2230
|
+
React__default["default"].createElement(material.DialogTitle, { textAlign: "center" }, localization.edit),
|
|
2231
|
+
React__default["default"].createElement(material.DialogContent, null,
|
|
2232
|
+
React__default["default"].createElement(material.Stack, { sx: {
|
|
2233
|
+
width: '100%',
|
|
2234
|
+
minWidth: { xs: '300px', sm: '360px', md: '400px' },
|
|
2235
|
+
gap: '1.5rem',
|
|
2236
|
+
} }, row
|
|
2237
|
+
.getVisibleCells()
|
|
2238
|
+
.filter((cell) => cell.column.columnDef.columnDefType === 'data')
|
|
2239
|
+
.map((cell) => (React__default["default"].createElement(MRT_EditCellTextField, { cell: cell, key: cell.id, showLabel: true, table: table }))))),
|
|
2240
|
+
React__default["default"].createElement(material.DialogActions, { sx: { p: '1.25rem' } },
|
|
2241
|
+
React__default["default"].createElement(MRT_EditActionButtons, { row: row, table: table, variant: "text" }))));
|
|
2242
|
+
};
|
|
2243
|
+
|
|
2211
2244
|
const MRT_TableRoot = (props) => {
|
|
2212
2245
|
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v, _w, _x, _y, _z, _0, _1, _2, _3, _4, _5, _6, _7;
|
|
2213
2246
|
const [tableId, setIdPrefix] = React.useState(props.tableId);
|
|
@@ -2309,7 +2342,8 @@ const MRT_TableRoot = (props) => {
|
|
|
2309
2342
|
return (React__default["default"].createElement(React__default["default"].Fragment, null,
|
|
2310
2343
|
React__default["default"].createElement(material.Dialog, { PaperComponent: material.Box, TransitionComponent: material.Grow, disablePortal: true, fullScreen: true, keepMounted: false, onClose: () => setIsFullScreen(false), open: isFullScreen, transitionDuration: 400 },
|
|
2311
2344
|
React__default["default"].createElement(MRT_TablePaper, { table: table })),
|
|
2312
|
-
!isFullScreen && React__default["default"].createElement(MRT_TablePaper, { table: table })
|
|
2345
|
+
!isFullScreen && React__default["default"].createElement(MRT_TablePaper, { table: table }),
|
|
2346
|
+
editingRow && props.editingMode === 'modal' && (React__default["default"].createElement(MRT_EditRowModal, { row: editingRow, table: table, open: true }))));
|
|
2313
2347
|
};
|
|
2314
2348
|
|
|
2315
2349
|
var MaterialReactTable = (_a) => {
|