material-react-table 0.35.2 → 0.36.0
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 +7 -31
- package/dist/cjs/index.js +18 -17
- package/dist/cjs/index.js.map +1 -1
- package/dist/esm/MaterialReactTable.d.ts +7 -31
- package/dist/esm/material-react-table.esm.js +18 -17
- package/dist/esm/material-react-table.esm.js.map +1 -1
- package/dist/index.d.ts +7 -31
- package/package.json +1 -1
- package/src/MaterialReactTable.tsx +7 -58
- package/src/body/MRT_TableBodyCell.tsx +4 -1
- package/src/inputs/MRT_EditCellTextField.tsx +20 -27
|
@@ -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'> & {
|
|
@@ -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>;
|
package/dist/cjs/index.js
CHANGED
|
@@ -1741,19 +1741,29 @@ const MRT_TableHead = ({ table }) => {
|
|
|
1741
1741
|
|
|
1742
1742
|
const MRT_EditCellTextField = ({ cell, table }) => {
|
|
1743
1743
|
var _a;
|
|
1744
|
-
const { getState, options: { tableId, muiTableBodyCellEditTextFieldProps
|
|
1744
|
+
const { getState, options: { tableId, muiTableBodyCellEditTextFieldProps }, setEditingCell, setEditingRow, } = table;
|
|
1745
1745
|
const { column, row } = cell;
|
|
1746
1746
|
const { columnDef } = column;
|
|
1747
1747
|
const { editingRow } = getState();
|
|
1748
1748
|
const [value, setValue] = React.useState(() => cell.getValue());
|
|
1749
|
+
const mTableBodyCellEditTextFieldProps = muiTableBodyCellEditTextFieldProps instanceof Function
|
|
1750
|
+
? muiTableBodyCellEditTextFieldProps({ cell, table })
|
|
1751
|
+
: muiTableBodyCellEditTextFieldProps;
|
|
1752
|
+
const mcTableBodyCellEditTextFieldProps = columnDef.muiTableBodyCellEditTextFieldProps instanceof Function
|
|
1753
|
+
? columnDef.muiTableBodyCellEditTextFieldProps({
|
|
1754
|
+
cell,
|
|
1755
|
+
table,
|
|
1756
|
+
})
|
|
1757
|
+
: columnDef.muiTableBodyCellEditTextFieldProps;
|
|
1758
|
+
const textFieldProps = Object.assign(Object.assign({}, mTableBodyCellEditTextFieldProps), mcTableBodyCellEditTextFieldProps);
|
|
1749
1759
|
const handleChange = (event) => {
|
|
1750
1760
|
var _a;
|
|
1761
|
+
(_a = textFieldProps.onChange) === null || _a === void 0 ? void 0 : _a.call(textFieldProps, event);
|
|
1751
1762
|
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
1763
|
};
|
|
1755
1764
|
const handleBlur = (event) => {
|
|
1756
1765
|
var _a;
|
|
1766
|
+
(_a = textFieldProps.onBlur) === null || _a === void 0 ? void 0 : _a.call(textFieldProps, event);
|
|
1757
1767
|
if (editingRow) {
|
|
1758
1768
|
if (!row._valuesCache)
|
|
1759
1769
|
row._valuesCache = {};
|
|
@@ -1761,23 +1771,11 @@ const MRT_EditCellTextField = ({ cell, table }) => {
|
|
|
1761
1771
|
setEditingRow(Object.assign({}, editingRow));
|
|
1762
1772
|
}
|
|
1763
1773
|
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
1774
|
};
|
|
1767
|
-
const mTableBodyCellEditTextFieldProps = muiTableBodyCellEditTextFieldProps instanceof Function
|
|
1768
|
-
? muiTableBodyCellEditTextFieldProps({ cell, table })
|
|
1769
|
-
: muiTableBodyCellEditTextFieldProps;
|
|
1770
|
-
const mcTableBodyCellEditTextFieldProps = columnDef.muiTableBodyCellEditTextFieldProps instanceof Function
|
|
1771
|
-
? columnDef.muiTableBodyCellEditTextFieldProps({
|
|
1772
|
-
cell,
|
|
1773
|
-
table,
|
|
1774
|
-
})
|
|
1775
|
-
: columnDef.muiTableBodyCellEditTextFieldProps;
|
|
1776
|
-
const textFieldProps = Object.assign(Object.assign({}, mTableBodyCellEditTextFieldProps), mcTableBodyCellEditTextFieldProps);
|
|
1777
1775
|
if (columnDef.Edit) {
|
|
1778
1776
|
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
1777
|
}
|
|
1780
|
-
return (React__default["default"].createElement(material.TextField, Object.assign({ id: `mrt-${tableId}-edit-cell-text-field-${cell.id}`, margin: "none",
|
|
1778
|
+
return (React__default["default"].createElement(material.TextField, Object.assign({ id: `mrt-${tableId}-edit-cell-text-field-${cell.id}`, margin: "none", onClick: (e) => e.stopPropagation(), placeholder: columnDef.header, value: value, variant: "standard" }, textFieldProps, { onBlur: handleBlur, onChange: handleChange })));
|
|
1781
1779
|
};
|
|
1782
1780
|
|
|
1783
1781
|
const MRT_CopyButton = ({ cell, children, table }) => {
|
|
@@ -1939,7 +1937,10 @@ const MRT_TableBodyCell = ({ cell, enableHover, rowIndex, rowRef, table, }) => {
|
|
|
1939
1937
|
: column.getIsPinned()
|
|
1940
1938
|
? 1
|
|
1941
1939
|
: undefined, '&:hover': {
|
|
1942
|
-
backgroundColor: enableHover &&
|
|
1940
|
+
backgroundColor: enableHover &&
|
|
1941
|
+
enableEditing &&
|
|
1942
|
+
columnDef.enableEditing !== false &&
|
|
1943
|
+
editingMode !== 'row'
|
|
1943
1944
|
? theme.palette.mode === 'dark'
|
|
1944
1945
|
? `${material.lighten(theme.palette.background.default, 0.13)} !important`
|
|
1945
1946
|
: `${material.darken(theme.palette.background.default, 0.07)} !important`
|