material-react-table 1.8.4 → 1.9.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/index.js +64 -62
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/types/MaterialReactTable.d.ts +3 -3
- package/dist/cjs/types/_locales/sr-Cyrl-RS.d.ts +2 -0
- package/dist/cjs/types/_locales/sr-Latn-RS.d.ts +2 -0
- package/dist/cjs/types/body/MRT_TableBodyCell.d.ts +2 -3
- package/dist/cjs/types/buttons/MRT_ExpandButton.d.ts +4 -4
- package/dist/cjs/types/column.utils.d.ts +3 -3
- package/dist/cjs/types/index.d.ts +5 -3
- package/dist/cjs/types/sortingFns.d.ts +6 -6
- package/dist/esm/material-react-table.esm.js +62 -63
- package/dist/esm/material-react-table.esm.js.map +1 -1
- package/dist/esm/types/MaterialReactTable.d.ts +3 -3
- package/dist/esm/types/_locales/sr-Cyrl-RS.d.ts +2 -0
- package/dist/esm/types/_locales/sr-Latn-RS.d.ts +2 -0
- package/dist/esm/types/body/MRT_TableBodyCell.d.ts +2 -3
- package/dist/esm/types/buttons/MRT_ExpandButton.d.ts +4 -4
- package/dist/esm/types/column.utils.d.ts +3 -3
- package/dist/esm/types/index.d.ts +5 -3
- package/dist/esm/types/sortingFns.d.ts +6 -6
- package/dist/index.d.ts +42 -28
- package/locales/sr-Cyrl-RS.d.ts +2 -0
- package/locales/sr-Cyrl-RS.esm.d.ts +2 -0
- package/locales/sr-Cyrl-RS.esm.js +94 -0
- package/locales/sr-Cyrl-RS.esm.js.map +1 -0
- package/locales/sr-Cyrl-RS.js +98 -0
- package/locales/sr-Cyrl-RS.js.map +1 -0
- package/locales/sr-Latn-RS.d.ts +2 -0
- package/locales/sr-Latn-RS.esm.d.ts +2 -0
- package/locales/sr-Latn-RS.esm.js +94 -0
- package/locales/sr-Latn-RS.esm.js.map +1 -0
- package/locales/sr-Latn-RS.js +98 -0
- package/locales/sr-Latn-RS.js.map +1 -0
- package/locales/zh-Hans.esm.js +5 -5
- package/locales/zh-Hans.js +5 -5
- package/locales/zh-Hant.esm.js +1 -1
- package/locales/zh-Hant.esm.js.map +1 -1
- package/locales/zh-Hant.js +1 -1
- package/locales/zh-Hant.js.map +1 -1
- package/package.json +1 -1
- package/src/MaterialReactTable.tsx +4 -2
- package/src/_locales/sr-Cyrl-RS.ts +94 -0
- package/src/_locales/sr-Latn-RS.ts +94 -0
- package/src/_locales/zh-Hans.ts +5 -5
- package/src/_locales/zh-Hant.ts +1 -1
- package/src/body/MRT_TableBodyCell.tsx +9 -14
- package/src/body/MRT_TableBodyRow.tsx +1 -4
- package/src/buttons/MRT_ExpandButton.tsx +7 -4
- package/src/buttons/MRT_GrabHandleButton.tsx +1 -1
- package/src/column.utils.ts +4 -8
- package/src/head/MRT_TableHeadCell.tsx +4 -0
- package/src/head/MRT_TableHeadCellResizeHandle.tsx +3 -1
- package/src/head/MRT_TableHeadCellSortLabel.tsx +30 -22
- package/src/index.tsx +8 -4
- package/src/menus/MRT_FilterOptionMenu.tsx +1 -3
- package/src/menus/MRT_RowActionMenu.tsx +1 -0
- package/src/menus/MRT_ShowHideColumnsMenuItems.tsx +2 -1
- package/src/table/MRT_Table.tsx +3 -3
@@ -18,7 +18,7 @@ import type { TablePaginationProps } from '@mui/material/TablePagination';
|
|
18
18
|
import type { TableRowProps } from '@mui/material/TableRow';
|
19
19
|
import type { TextFieldProps } from '@mui/material/TextField';
|
20
20
|
import type { ToolbarProps } from '@mui/material/Toolbar';
|
21
|
-
import type { AggregationFn, Cell, Column, ColumnDef, ColumnFiltersState, ColumnOrderState, ColumnPinningState, ColumnSizingInfoState, ColumnSizingState, DeepKeys, ExpandedState, FilterFn, GroupingState, Header, HeaderGroup, OnChangeFn, PaginationState, Row, RowSelectionState, SortingFn, SortingState, Table, TableOptions, TableState, VisibilityState } from '@tanstack/react-table';
|
21
|
+
import type { AggregationFn, Cell, Column, ColumnDef, ColumnFiltersState, ColumnOrderState, ColumnPinningState, ColumnSizingInfoState, ColumnSizingState, DeepKeys, ExpandedState, FilterFn, GroupingState, Header, HeaderGroup, OnChangeFn, PaginationState, Row, RowSelectionState, SortingFn, SortingState, Table, TableOptions, TableState, Updater, VisibilityState } from '@tanstack/react-table';
|
22
22
|
import type { VirtualizerOptions, Virtualizer, VirtualItem } from '@tanstack/react-virtual';
|
23
23
|
import { MRT_AggregationFns } from './aggregationFns';
|
24
24
|
import { MRT_FilterFns } from './filterFns';
|
@@ -33,7 +33,7 @@ type Prettify<T> = {
|
|
33
33
|
} & {};
|
34
34
|
type LiteralUnion<T extends U, U = string> = T | (U & Record<never, never>);
|
35
35
|
export type MRT_DensityState = 'comfortable' | 'compact' | 'spacious';
|
36
|
-
export type { ColumnFiltersState as MRT_ColumnFiltersState, ColumnOrderState as MRT_ColumnOrderState, ColumnPinningState as MRT_ColumnPinningState, ColumnSizingInfoState as MRT_ColumnSizingInfoState, ColumnSizingState as MRT_ColumnSizingState, ExpandedState as MRT_ExpandedState, GroupingState as MRT_GroupingState, PaginationState as MRT_PaginationState, RowSelectionState as MRT_RowSelectionState, SortingState as MRT_SortingState, VirtualItem as MRT_VirtualItem, Virtualizer as MRT_Virtualizer, VirtualizerOptions as MRT_VirtualizerOptions, VisibilityState as MRT_VisibilityState, };
|
36
|
+
export type { ColumnFiltersState as MRT_ColumnFiltersState, ColumnOrderState as MRT_ColumnOrderState, ColumnPinningState as MRT_ColumnPinningState, ColumnSizingInfoState as MRT_ColumnSizingInfoState, ColumnSizingState as MRT_ColumnSizingState, ExpandedState as MRT_ExpandedState, GroupingState as MRT_GroupingState, PaginationState as MRT_PaginationState, RowSelectionState as MRT_RowSelectionState, SortingState as MRT_SortingState, Updater as MRT_Updater, VirtualItem as MRT_VirtualItem, Virtualizer as MRT_Virtualizer, VirtualizerOptions as MRT_VirtualizerOptions, VisibilityState as MRT_VisibilityState, };
|
37
37
|
export interface MRT_Localization {
|
38
38
|
actions: string;
|
39
39
|
and: string;
|
@@ -615,7 +615,7 @@ export type MaterialReactTableProps<TData extends Record<string, any> = {}> = Pr
|
|
615
615
|
table: MRT_TableInstance<TData>;
|
616
616
|
headerGroup: MRT_HeaderGroup<TData>;
|
617
617
|
}) => TableRowProps);
|
618
|
-
muiTablePaginationProps?: Partial<TablePaginationProps
|
618
|
+
muiTablePaginationProps?: Partial<Omit<TablePaginationProps, 'rowsPerPage'>> | ((props: {
|
619
619
|
table: MRT_TableInstance<TData>;
|
620
620
|
}) => Partial<TablePaginationProps>);
|
621
621
|
muiTablePaperProps?: PaperProps | ((props: {
|
@@ -3,7 +3,6 @@ import type { VirtualItem } from '@tanstack/react-virtual';
|
|
3
3
|
import type { MRT_Cell, MRT_TableInstance } from '..';
|
4
4
|
interface Props {
|
5
5
|
cell: MRT_Cell;
|
6
|
-
enableHover?: boolean;
|
7
6
|
measureElement?: (element: HTMLTableCellElement) => void;
|
8
7
|
numRows: number;
|
9
8
|
rowIndex: number;
|
@@ -11,6 +10,6 @@ interface Props {
|
|
11
10
|
table: MRT_TableInstance;
|
12
11
|
virtualCell?: VirtualItem;
|
13
12
|
}
|
14
|
-
export declare const MRT_TableBodyCell: ({ cell,
|
15
|
-
export declare const Memo_MRT_TableBodyCell: React.MemoExoticComponent<({ cell,
|
13
|
+
export declare const MRT_TableBodyCell: ({ cell, measureElement, numRows, rowIndex, rowRef, table, virtualCell, }: Props) => JSX.Element;
|
14
|
+
export declare const Memo_MRT_TableBodyCell: React.MemoExoticComponent<({ cell, measureElement, numRows, rowIndex, rowRef, table, virtualCell, }: Props) => JSX.Element>;
|
16
15
|
export {};
|
@@ -1,8 +1,8 @@
|
|
1
1
|
/// <reference types="react" />
|
2
2
|
import type { MRT_Row, MRT_TableInstance } from '..';
|
3
|
-
interface Props {
|
4
|
-
row: MRT_Row
|
5
|
-
table: MRT_TableInstance
|
3
|
+
interface Props<TData extends Record<string, any> = {}> {
|
4
|
+
row: MRT_Row<TData>;
|
5
|
+
table: MRT_TableInstance<TData>;
|
6
6
|
}
|
7
|
-
export declare const MRT_ExpandButton: ({ row, table }: Props) => JSX.Element;
|
7
|
+
export declare const MRT_ExpandButton: <TData extends Record<string, any> = {}>({ row, table, }: Props<TData>) => JSX.Element;
|
8
8
|
export {};
|
@@ -117,12 +117,12 @@ export declare const getCommonCellStyles: ({ column, header, table, tableCellPro
|
|
117
117
|
id: string;
|
118
118
|
getContext: () => import("@tanstack/react-table").HeaderContext<{}, unknown>;
|
119
119
|
getLeafHeaders: () => import("@tanstack/react-table").Header<{}, unknown>[];
|
120
|
+
colSpan: number;
|
121
|
+
rowSpan: number;
|
122
|
+
index: number;
|
120
123
|
depth: number;
|
121
124
|
getSize: () => number;
|
122
125
|
getStart: (position?: import("@tanstack/react-table").ColumnPinningPosition | undefined) => number;
|
123
|
-
index: number;
|
124
|
-
colSpan: number;
|
125
|
-
rowSpan: number;
|
126
126
|
headerGroup: import("@tanstack/react-table").HeaderGroup<{}>;
|
127
127
|
subHeaders: import("@tanstack/react-table").Header<{}, unknown>[];
|
128
128
|
isPlaceholder: boolean;
|
@@ -3,20 +3,22 @@ export default MaterialReactTable;
|
|
3
3
|
export * from './MaterialReactTable';
|
4
4
|
import type { MRT_Icons } from './icons';
|
5
5
|
export type { MRT_Icons };
|
6
|
+
import { MRT_BottomToolbar } from './toolbar/MRT_BottomToolbar';
|
6
7
|
import { MRT_CopyButton } from './buttons/MRT_CopyButton';
|
7
8
|
import { MRT_EditActionButtons } from './buttons/MRT_EditActionButtons';
|
9
|
+
import { MRT_ExpandButton } from './buttons/MRT_ExpandButton';
|
8
10
|
import { MRT_FilterOptionMenu } from './menus/MRT_FilterOptionMenu';
|
9
11
|
import { MRT_FullScreenToggleButton } from './buttons/MRT_FullScreenToggleButton';
|
12
|
+
import { MRT_GrabHandleButton } from './buttons/MRT_GrabHandleButton';
|
10
13
|
import { MRT_GlobalFilterTextField } from './inputs/MRT_GlobalFilterTextField';
|
11
14
|
import { MRT_ShowHideColumnsButton } from './buttons/MRT_ShowHideColumnsButton';
|
12
15
|
import { MRT_TablePagination } from './toolbar/MRT_TablePagination';
|
13
16
|
import { MRT_ToggleDensePaddingButton } from './buttons/MRT_ToggleDensePaddingButton';
|
14
17
|
import { MRT_ToggleFiltersButton } from './buttons/MRT_ToggleFiltersButton';
|
15
18
|
import { MRT_ToggleGlobalFilterButton } from './buttons/MRT_ToggleGlobalFilterButton';
|
19
|
+
import { MRT_ToggleRowActionMenuButton } from './buttons/MRT_ToggleRowActionMenuButton';
|
16
20
|
import { MRT_ToolbarAlertBanner } from './toolbar/MRT_ToolbarAlertBanner';
|
17
21
|
import { MRT_ToolbarDropZone } from './toolbar/MRT_ToolbarDropZone';
|
18
22
|
import { MRT_ToolbarInternalButtons } from './toolbar/MRT_ToolbarInternalButtons';
|
19
|
-
import { MRT_ToggleRowActionMenuButton } from './buttons/MRT_ToggleRowActionMenuButton';
|
20
23
|
import { MRT_TopToolbar } from './toolbar/MRT_TopToolbar';
|
21
|
-
|
22
|
-
export { MRT_CopyButton, MRT_EditActionButtons, MRT_FilterOptionMenu, MRT_FullScreenToggleButton, MRT_GlobalFilterTextField, MRT_ShowHideColumnsButton, MRT_TablePagination, MRT_ToggleDensePaddingButton, MRT_ToggleFiltersButton, MRT_ToggleGlobalFilterButton, MRT_ToolbarAlertBanner, MRT_ToolbarDropZone, MRT_ToolbarInternalButtons, MRT_ToggleRowActionMenuButton, MRT_TopToolbar, MRT_BottomToolbar, };
|
24
|
+
export { MRT_BottomToolbar, MRT_CopyButton, MRT_EditActionButtons, MRT_ExpandButton, MRT_FilterOptionMenu, MRT_FullScreenToggleButton, MRT_GrabHandleButton, MRT_GlobalFilterTextField, MRT_ShowHideColumnsButton, MRT_TablePagination, MRT_ToggleDensePaddingButton, MRT_ToggleFiltersButton, MRT_ToggleGlobalFilterButton, MRT_ToggleRowActionMenuButton, MRT_ToolbarAlertBanner, MRT_ToolbarDropZone, MRT_ToolbarInternalButtons, MRT_TopToolbar, };
|
@@ -13,10 +13,10 @@ export declare const rankGlobalFuzzy: <TData extends Record<string, any> = {}>(r
|
|
13
13
|
getValue: <TValue>(columnId: string) => TValue;
|
14
14
|
renderValue: <TValue_1>(columnId: string) => TValue_1;
|
15
15
|
id: string;
|
16
|
-
|
17
|
-
depth: number;
|
16
|
+
columnFilters: Record<string, boolean>;
|
18
17
|
index: number;
|
19
18
|
original: TData;
|
19
|
+
depth: number;
|
20
20
|
_uniqueValuesCache: Record<string, unknown>;
|
21
21
|
getUniqueValues: <TValue_2>(columnId: string) => TValue_2[];
|
22
22
|
getLeafRows: () => Row<TData>[];
|
@@ -26,10 +26,10 @@ export declare const rankGlobalFuzzy: <TData extends Record<string, any> = {}>(r
|
|
26
26
|
getLeftVisibleCells: () => import("@tanstack/react-table").Cell<TData, unknown>[];
|
27
27
|
getCenterVisibleCells: () => import("@tanstack/react-table").Cell<TData, unknown>[];
|
28
28
|
getRightVisibleCells: () => import("@tanstack/react-table").Cell<TData, unknown>[];
|
29
|
-
columnFilters: Record<string, boolean>;
|
30
29
|
columnFiltersMeta: Record<string, import("@tanstack/react-table").FilterMeta>;
|
31
30
|
groupingColumnId?: string | undefined;
|
32
31
|
groupingValue?: unknown;
|
32
|
+
getIsGrouped: () => boolean;
|
33
33
|
_groupingValuesCache: Record<string, any>;
|
34
34
|
getIsSelected: () => boolean;
|
35
35
|
getIsSomeSelected: () => boolean;
|
@@ -71,10 +71,10 @@ export declare const rankGlobalFuzzy: <TData extends Record<string, any> = {}>(r
|
|
71
71
|
getValue: <TValue>(columnId: string) => TValue;
|
72
72
|
renderValue: <TValue_1>(columnId: string) => TValue_1;
|
73
73
|
id: string;
|
74
|
-
|
75
|
-
depth: number;
|
74
|
+
columnFilters: Record<string, boolean>;
|
76
75
|
index: number;
|
77
76
|
original: TData;
|
77
|
+
depth: number;
|
78
78
|
_uniqueValuesCache: Record<string, unknown>;
|
79
79
|
getUniqueValues: <TValue_2>(columnId: string) => TValue_2[];
|
80
80
|
getLeafRows: () => Row<TData>[];
|
@@ -84,10 +84,10 @@ export declare const rankGlobalFuzzy: <TData extends Record<string, any> = {}>(r
|
|
84
84
|
getLeftVisibleCells: () => import("@tanstack/react-table").Cell<TData, unknown>[];
|
85
85
|
getCenterVisibleCells: () => import("@tanstack/react-table").Cell<TData, unknown>[];
|
86
86
|
getRightVisibleCells: () => import("@tanstack/react-table").Cell<TData, unknown>[];
|
87
|
-
columnFilters: Record<string, boolean>;
|
88
87
|
columnFiltersMeta: Record<string, import("@tanstack/react-table").FilterMeta>;
|
89
88
|
groupingColumnId?: string | undefined;
|
90
89
|
groupingValue?: unknown;
|
90
|
+
getIsGrouped: () => boolean;
|
91
91
|
_groupingValuesCache: Record<string, any>;
|
92
92
|
getIsSelected: () => boolean;
|
93
93
|
getIsSomeSelected: () => boolean;
|
@@ -64,6 +64,7 @@ import Table from '@mui/material/Table';
|
|
64
64
|
import TableHead from '@mui/material/TableHead';
|
65
65
|
import TableRow from '@mui/material/TableRow';
|
66
66
|
import TableCell from '@mui/material/TableCell';
|
67
|
+
import Badge from '@mui/material/Badge';
|
67
68
|
import TableSortLabel from '@mui/material/TableSortLabel';
|
68
69
|
import TableBody from '@mui/material/TableBody';
|
69
70
|
import Skeleton from '@mui/material/Skeleton';
|
@@ -242,7 +243,7 @@ const getCommonCellStyles = ({ column, header, table, tableCellProps, theme, })
|
|
242
243
|
: getIsFirstRightPinnedColumn(column)
|
243
244
|
? `4px 0 8px -6px ${alpha(theme.palette.common.black, 0.2)} inset`
|
244
245
|
: undefined, display: table.options.layoutMode === 'grid' ? 'flex' : 'table-cell', flex: table.options.layoutMode === 'grid'
|
245
|
-
? `var(
|
246
|
+
? `var(--${header ? 'header' : 'col'}-${parseCSSVarId((_a = header === null || header === void 0 ? void 0 : header.id) !== null && _a !== void 0 ? _a : column.id)}-size) 0 auto`
|
246
247
|
: undefined, left: column.getIsPinned() === 'left'
|
247
248
|
? `${column.getStart('left')}px`
|
248
249
|
: undefined, ml: table.options.enableColumnVirtualization &&
|
@@ -288,12 +289,7 @@ const MRT_DefaultDisplayColumn = {
|
|
288
289
|
enableResizing: false,
|
289
290
|
enableSorting: false,
|
290
291
|
};
|
291
|
-
const parseCSSVarId = (id) => id
|
292
|
-
.replaceAll('.', '_')
|
293
|
-
.replaceAll(' ', '_')
|
294
|
-
.replaceAll('+', '_')
|
295
|
-
.replaceAll('(', '_')
|
296
|
-
.replaceAll(')', '_');
|
292
|
+
const parseCSSVarId = (id) => id.replace(/[^a-zA-Z0-9]/g, '_');
|
297
293
|
|
298
294
|
const fuzzy$1 = (row, columnId, filterValue, addMeta) => {
|
299
295
|
const itemRank = rankItem(row.getValue(columnId), filterValue, {
|
@@ -444,7 +440,7 @@ const MRT_ExpandAllButton = ({ table }) => {
|
|
444
440
|
} }))))));
|
445
441
|
};
|
446
442
|
|
447
|
-
const MRT_ExpandButton = ({ row, table }) => {
|
443
|
+
const MRT_ExpandButton = ({ row, table, }) => {
|
448
444
|
var _a, _b;
|
449
445
|
const { getState, options: { icons: { ExpandMoreIcon }, localization, muiExpandButtonProps, renderDetailPanel, }, } = table;
|
450
446
|
const { density } = getState();
|
@@ -575,9 +571,7 @@ const MRT_FilterOptionMenu = ({ anchorEl, header, onSelect, setAnchorEl, setFilt
|
|
575
571
|
if (header && column) {
|
576
572
|
setColumnFilterFns((prev) => (Object.assign(Object.assign({}, prev), { [header.id]: option })));
|
577
573
|
if (['empty', 'notEmpty'].includes(option)) {
|
578
|
-
|
579
|
-
column.setFilterValue(' ');
|
580
|
-
}
|
574
|
+
column.setFilterValue(' ');
|
581
575
|
}
|
582
576
|
else if ((columnDef === null || columnDef === void 0 ? void 0 : columnDef.filterVariant) === 'multi-select' ||
|
583
577
|
['arrIncludesSome', 'arrIncludesAll', 'arrIncludes'].includes(option)) {
|
@@ -720,8 +714,9 @@ const MRT_ShowHideColumnsMenuItems = ({ allColumns, hoveredColumn, setHoveredCol
|
|
720
714
|
justifyContent: 'flex-start',
|
721
715
|
my: 0,
|
722
716
|
opacity: isDragging ? 0.5 : 1,
|
717
|
+
outlineOffset: '-2px',
|
723
718
|
outline: isDragging
|
724
|
-
? `
|
719
|
+
? `2px dashed ${theme.palette.divider}`
|
725
720
|
: (hoveredColumn === null || hoveredColumn === void 0 ? void 0 : hoveredColumn.id) === column.id
|
726
721
|
? `2px dashed ${theme.palette.primary.main}`
|
727
722
|
: 'none',
|
@@ -974,7 +969,7 @@ const MRT_ColumnActionMenu = ({ anchorEl, header, setAnchorEl, table, }) => {
|
|
974
969
|
const MRT_RowActionMenu = ({ anchorEl, handleEdit, row, setAnchorEl, table, }) => {
|
975
970
|
const { getState, options: { icons: { EditIcon }, enableEditing, localization, renderRowActionMenuItems, }, } = table;
|
976
971
|
const { density } = getState();
|
977
|
-
return (React.createElement(Menu, { anchorEl: anchorEl, open: !!anchorEl, onClose: () => setAnchorEl(null), MenuListProps: {
|
972
|
+
return (React.createElement(Menu, { anchorEl: anchorEl, open: !!anchorEl, onClick: (event) => event.stopPropagation(), onClose: () => setAnchorEl(null), MenuListProps: {
|
978
973
|
dense: density === 'compact',
|
979
974
|
} },
|
980
975
|
enableEditing instanceof Function
|
@@ -1832,12 +1827,12 @@ const MRT_TableHeadCellResizeHandle = ({ header, table }) => {
|
|
1832
1827
|
const { getState, options: { columnResizeMode }, setColumnSizingInfo, } = table;
|
1833
1828
|
const { density } = getState();
|
1834
1829
|
const { column } = header;
|
1835
|
-
return (React.createElement(Box, { onDoubleClick: () => {
|
1830
|
+
return (React.createElement(Box, { className: "Mui-TableHeadCell-ResizeHandle-Wrapper", onDoubleClick: () => {
|
1836
1831
|
setColumnSizingInfo((old) => (Object.assign(Object.assign({}, old), { isResizingColumn: false })));
|
1837
1832
|
column.resetSize();
|
1838
1833
|
}, onMouseDown: header.getResizeHandler(), onTouchStart: header.getResizeHandler(), sx: (theme) => ({
|
1839
1834
|
cursor: 'col-resize',
|
1840
|
-
mr: density === 'compact' ? '-0.
|
1835
|
+
mr: density === 'compact' ? '-0.75rem' : '-1rem',
|
1841
1836
|
position: 'absolute',
|
1842
1837
|
right: '1px',
|
1843
1838
|
px: '4px',
|
@@ -1850,7 +1845,7 @@ const MRT_TableHeadCellResizeHandle = ({ header, table }) => {
|
|
1850
1845
|
? `translateX(${(_a = getState().columnSizingInfo.deltaOffset) !== null && _a !== void 0 ? _a : 0}px)`
|
1851
1846
|
: undefined,
|
1852
1847
|
} },
|
1853
|
-
React.createElement(Divider, { flexItem: true, orientation: "vertical", sx: {
|
1848
|
+
React.createElement(Divider, { className: "Mui-TableHeadCell-ResizeHandle-Divider", flexItem: true, orientation: "vertical", sx: {
|
1854
1849
|
borderRadius: '2px',
|
1855
1850
|
borderWidth: '2px',
|
1856
1851
|
height: '24px',
|
@@ -1864,28 +1859,30 @@ const MRT_TableHeadCellResizeHandle = ({ header, table }) => {
|
|
1864
1859
|
};
|
1865
1860
|
|
1866
1861
|
const MRT_TableHeadCellSortLabel = ({ header, table, tableCellProps, }) => {
|
1867
|
-
const { options: { icons: { ArrowDownwardIcon }, localization, }, } = table;
|
1862
|
+
const { getState, options: { icons: { ArrowDownwardIcon }, localization, }, } = table;
|
1868
1863
|
const { column } = header;
|
1869
1864
|
const { columnDef } = column;
|
1865
|
+
const { sorting } = getState();
|
1870
1866
|
const sortTooltip = column.getIsSorted()
|
1871
1867
|
? column.getIsSorted() === 'desc'
|
1872
1868
|
? localization.sortedByColumnDesc.replace('{column}', columnDef.header)
|
1873
1869
|
: localization.sortedByColumnAsc.replace('{column}', columnDef.header)
|
1874
1870
|
: localization.unsorted;
|
1875
1871
|
return (React.createElement(Tooltip, { arrow: true, placement: "top", title: sortTooltip },
|
1876
|
-
React.createElement(
|
1877
|
-
|
1878
|
-
|
1879
|
-
|
1880
|
-
|
1881
|
-
|
1882
|
-
|
1883
|
-
|
1884
|
-
|
1885
|
-
|
1886
|
-
|
1887
|
-
|
1888
|
-
|
1872
|
+
React.createElement(Badge, { badgeContent: sorting.length > 1 ? column.getSortIndex() + 1 : 0, overlap: "circular" },
|
1873
|
+
React.createElement(TableSortLabel, { "aria-label": sortTooltip, active: !!column.getIsSorted(), direction: column.getIsSorted()
|
1874
|
+
? column.getIsSorted()
|
1875
|
+
: undefined, sx: {
|
1876
|
+
flex: '0 0',
|
1877
|
+
width: '2.4ch',
|
1878
|
+
transform: (tableCellProps === null || tableCellProps === void 0 ? void 0 : tableCellProps.align) !== 'right'
|
1879
|
+
? 'translateX(-0.5ch)'
|
1880
|
+
: undefined,
|
1881
|
+
}, IconComponent: ArrowDownwardIcon, onClick: (e) => {
|
1882
|
+
var _a;
|
1883
|
+
e.stopPropagation();
|
1884
|
+
(_a = header.column.getToggleSortingHandler()) === null || _a === void 0 ? void 0 : _a(e);
|
1885
|
+
} }))));
|
1889
1886
|
};
|
1890
1887
|
|
1891
1888
|
const MRT_TableHeadCell = ({ header, table }) => {
|
@@ -2005,9 +2002,13 @@ const MRT_TableHeadCell = ({ header, table }) => {
|
|
2005
2002
|
: undefined,
|
2006
2003
|
} },
|
2007
2004
|
React.createElement(Box, { className: "Mui-TableHeadCell-Content-Wrapper", sx: {
|
2005
|
+
minWidth: '5ch',
|
2008
2006
|
overflow: columnDefType === 'data' ? 'hidden' : undefined,
|
2009
2007
|
textOverflow: 'ellipsis',
|
2010
2008
|
whiteSpace: ((_d = (_c = columnDef.header) === null || _c === void 0 ? void 0 : _c.length) !== null && _d !== void 0 ? _d : 0) < 20 ? 'nowrap' : 'normal',
|
2009
|
+
'&:hover': {
|
2010
|
+
textOverflow: 'clip',
|
2011
|
+
},
|
2011
2012
|
}, title: columnDefType === 'data' ? columnDef.header : undefined }, headerElement),
|
2012
2013
|
column.getCanSort() && (React.createElement(MRT_TableHeadCellSortLabel, { header: header, table: table, tableCellProps: tableCellProps })),
|
2013
2014
|
column.getCanFilter() && (React.createElement(MRT_TableHeadCellFilterLabel, { header: header, table: table }))),
|
@@ -2249,7 +2250,7 @@ const MRT_TableBodyCellValue = ({ cell, table }) => {
|
|
2249
2250
|
return React.createElement(React.Fragment, null, renderedCellValue);
|
2250
2251
|
};
|
2251
2252
|
|
2252
|
-
const MRT_TableBodyCell = ({ cell,
|
2253
|
+
const MRT_TableBodyCell = ({ cell, measureElement, numRows, rowIndex, rowRef, table, virtualCell, }) => {
|
2253
2254
|
var _a, _b, _c, _d;
|
2254
2255
|
const theme = useTheme();
|
2255
2256
|
const { getState, options: { editingMode, enableClickToCopy, enableColumnOrdering, enableEditing, enableGrouping, enableRowNumbers, layoutMode, muiTableBodyCellProps, muiTableBodyCellSkeletonProps, rowNumberMode, }, refs: { editInputRefs }, setEditingCell, setHoveredColumn, } = table;
|
@@ -2363,37 +2364,36 @@ const MRT_TableBodyCell = ({ cell, enableHover, measureElement, numRows, rowInde
|
|
2363
2364
|
? 0.75
|
2364
2365
|
: 1.25)}rem`
|
2365
2366
|
: undefined, textOverflow: columnDefType !== 'display' ? 'ellipsis' : undefined, whiteSpace: density === 'compact' ? 'nowrap' : 'normal', zIndex: (draggingColumn === null || draggingColumn === void 0 ? void 0 : draggingColumn.id) === column.id ? 2 : column.getIsPinned() ? 1 : 0, '&:hover': {
|
2366
|
-
|
2367
|
-
|
2368
|
-
['table', 'cell'].includes(editingMode !== null && editingMode !== void 0 ? editingMode : '')
|
2369
|
-
? theme.palette.mode === 'dark'
|
2370
|
-
? `${lighten(theme.palette.background.default, 0.2)} !important`
|
2371
|
-
: `${darken(theme.palette.background.default, 0.1)} !important`
|
2367
|
+
outline: ['table', 'cell'].includes(editingMode !== null && editingMode !== void 0 ? editingMode : '')
|
2368
|
+
? `1px solid ${theme.palette.text.secondary}`
|
2372
2369
|
: undefined,
|
2370
|
+
outlineOffset: '-1px',
|
2371
|
+
textOverflow: 'clip',
|
2373
2372
|
} }, getCommonCellStyles({
|
2374
2373
|
column,
|
2375
2374
|
table,
|
2376
2375
|
theme,
|
2377
2376
|
tableCellProps,
|
2378
2377
|
})), draggingBorders)) }),
|
2379
|
-
React.createElement(React.Fragment, null,
|
2380
|
-
|
2381
|
-
|
2382
|
-
|
2383
|
-
column.id === 'mrt-row-
|
2384
|
-
|
2385
|
-
|
2386
|
-
|
2387
|
-
|
2388
|
-
|
2389
|
-
|
2390
|
-
|
2391
|
-
|
2392
|
-
|
2393
|
-
|
2394
|
-
|
2395
|
-
|
2396
|
-
|
2378
|
+
React.createElement(React.Fragment, null,
|
2379
|
+
cell.getIsPlaceholder() ? ((_b = (_a = columnDef.PlaceholderCell) === null || _a === void 0 ? void 0 : _a.call(columnDef, { cell, column, row, table })) !== null && _b !== void 0 ? _b : null) : isLoading || showSkeletons ? (React.createElement(Skeleton, Object.assign({ animation: "wave", height: 20, width: skeletonWidth }, skeletonProps))) : enableRowNumbers &&
|
2380
|
+
rowNumberMode === 'static' &&
|
2381
|
+
column.id === 'mrt-row-numbers' ? (rowIndex + 1) : column.id === 'mrt-row-drag' ? (React.createElement(MRT_TableBodyRowGrabHandle, { cell: cell, rowRef: rowRef, table: table })) : columnDefType === 'display' &&
|
2382
|
+
(column.id === 'mrt-row-select' ||
|
2383
|
+
column.id === 'mrt-row-expand' ||
|
2384
|
+
!row.getIsGrouped()) ? ((_c = columnDef.Cell) === null || _c === void 0 ? void 0 : _c.call(columnDef, {
|
2385
|
+
cell,
|
2386
|
+
renderedCellValue: cell.renderValue(),
|
2387
|
+
column,
|
2388
|
+
row,
|
2389
|
+
table,
|
2390
|
+
})) : isEditing ? (React.createElement(MRT_EditCellTextField, { cell: cell, table: table })) : (enableClickToCopy || columnDef.enableClickToCopy) &&
|
2391
|
+
columnDef.enableClickToCopy !== false ? (React.createElement(MRT_CopyButton, { cell: cell, table: table },
|
2392
|
+
React.createElement(MRT_TableBodyCellValue, { cell: cell, table: table }))) : (React.createElement(MRT_TableBodyCellValue, { cell: cell, table: table })),
|
2393
|
+
cell.getIsGrouped() && !columnDef.GroupedCell && (React.createElement(React.Fragment, null,
|
2394
|
+
" (", (_d = row.subRows) === null || _d === void 0 ? void 0 :
|
2395
|
+
_d.length,
|
2396
|
+
")")))));
|
2397
2397
|
};
|
2398
2398
|
const Memo_MRT_TableBodyCell = memo(MRT_TableBodyCell, (prev, next) => next.cell === prev.cell);
|
2399
2399
|
|
@@ -2424,7 +2424,7 @@ const MRT_TableDetailPanel = ({ parentRowRef, row, table, virtualRow, }) => {
|
|
2424
2424
|
};
|
2425
2425
|
|
2426
2426
|
const MRT_TableBodyRow = ({ columnVirtualizer, measureElement, numRows, row, rowIndex, table, virtualColumns, virtualPaddingLeft, virtualPaddingRight, virtualRow, }) => {
|
2427
|
-
const {
|
2427
|
+
const { getState, options: { enableRowOrdering, layoutMode, memoMode, muiTableBodyRowProps, renderDetailPanel, }, setHoveredRow, } = table;
|
2428
2428
|
const { draggingColumn, draggingRow, editingCell, editingRow, hoveredRow } = getState();
|
2429
2429
|
const tableRowProps = muiTableBodyRowProps instanceof Function
|
2430
2430
|
? muiTableBodyRowProps({ row, table })
|
@@ -2436,7 +2436,7 @@ const MRT_TableBodyRow = ({ columnVirtualizer, measureElement, numRows, row, row
|
|
2436
2436
|
};
|
2437
2437
|
const rowRef = useRef(null);
|
2438
2438
|
return (React.createElement(React.Fragment, null,
|
2439
|
-
React.createElement(TableRow, Object.assign({ "data-index": virtualRow === null || virtualRow === void 0 ? void 0 : virtualRow.index,
|
2439
|
+
React.createElement(TableRow, Object.assign({ "data-index": virtualRow === null || virtualRow === void 0 ? void 0 : virtualRow.index, onDragEnter: handleDragEnter, selected: row.getIsSelected(), ref: (node) => {
|
2440
2440
|
if (node) {
|
2441
2441
|
rowRef.current = node;
|
2442
2442
|
measureElement === null || measureElement === void 0 ? void 0 : measureElement(node);
|
@@ -2444,7 +2444,7 @@ const MRT_TableBodyRow = ({ columnVirtualizer, measureElement, numRows, row, row
|
|
2444
2444
|
} }, tableRowProps, { sx: (theme) => (Object.assign({ backgroundColor: lighten(theme.palette.background.default, 0.06), display: layoutMode === 'grid' ? 'flex' : 'table-row', 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, position: virtualRow ? 'absolute' : undefined, top: virtualRow ? 0 : undefined, transform: virtualRow
|
2445
2445
|
? `translateY(${virtualRow === null || virtualRow === void 0 ? void 0 : virtualRow.start}px)`
|
2446
2446
|
: undefined, transition: virtualRow ? 'none' : 'all 150ms ease-in-out', width: '100%', '&:hover td': {
|
2447
|
-
backgroundColor: (tableRowProps === null || tableRowProps === void 0 ? void 0 : tableRowProps.hover) !== false
|
2447
|
+
backgroundColor: (tableRowProps === null || tableRowProps === void 0 ? void 0 : tableRowProps.hover) !== false
|
2448
2448
|
? theme.palette.mode === 'dark'
|
2449
2449
|
? `${lighten(theme.palette.background.default, 0.12)}`
|
2450
2450
|
: `${darken(theme.palette.background.default, 0.05)}`
|
@@ -2459,7 +2459,6 @@ const MRT_TableBodyRow = ({ columnVirtualizer, measureElement, numRows, row, row
|
|
2459
2459
|
: cellOrVirtualCell;
|
2460
2460
|
const props = {
|
2461
2461
|
cell,
|
2462
|
-
enableHover: (tableRowProps === null || tableRowProps === void 0 ? void 0 : tableRowProps.hover) !== false,
|
2463
2462
|
key: cell.id,
|
2464
2463
|
measureElement: columnVirtualizer === null || columnVirtualizer === void 0 ? void 0 : columnVirtualizer.measureElement,
|
2465
2464
|
numRows,
|
@@ -2671,9 +2670,9 @@ const MRT_Table = ({ table }) => {
|
|
2671
2670
|
const colSizes = {};
|
2672
2671
|
for (let i = 0; i < headers.length; i++) {
|
2673
2672
|
const header = headers[i];
|
2674
|
-
|
2675
|
-
colSizes[`--
|
2676
|
-
|
2673
|
+
const colSize = header.getSize();
|
2674
|
+
colSizes[`--header-${parseCSSVarId(header.id)}-size`] = colSize;
|
2675
|
+
colSizes[`--col-${parseCSSVarId(header.column.id)}-size`] = colSize;
|
2677
2676
|
}
|
2678
2677
|
return colSizes;
|
2679
2678
|
}, [columns, columnSizing, columnSizingInfo, columnVisibility]);
|
@@ -3109,5 +3108,5 @@ const MaterialReactTable = (_a) => {
|
|
3109
3108
|
return (React.createElement(MRT_TableRoot, Object.assign({ aggregationFns: _aggregationFns, autoResetExpanded: autoResetExpanded, columnResizeMode: columnResizeMode, defaultColumn: _defaultColumn, defaultDisplayColumn: _defaultDisplayColumn, editingMode: editingMode, enableBottomToolbar: enableBottomToolbar, enableColumnActions: enableColumnActions, enableColumnFilters: enableColumnFilters, enableColumnOrdering: enableColumnOrdering, enableColumnResizing: enableColumnResizing, enableDensityToggle: enableDensityToggle, enableExpandAll: enableExpandAll, enableFilterMatchHighlighting: enableFilterMatchHighlighting, enableFilters: enableFilters, enableFullScreenToggle: enableFullScreenToggle, enableGlobalFilter: enableGlobalFilter, 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: _filterFns, icons: _icons, layoutMode: layoutMode, localization: _localization, manualFiltering: manualFiltering, manualGrouping: manualGrouping, manualPagination: manualPagination, manualSorting: manualSorting, positionActionsColumn: positionActionsColumn, positionExpandColumn: positionExpandColumn, positionGlobalFilter: positionGlobalFilter, positionPagination: positionPagination, positionToolbarAlertBanner: positionToolbarAlertBanner, positionToolbarDropZone: positionToolbarDropZone, rowNumberMode: rowNumberMode, selectAllMode: selectAllMode, sortingFns: _sortingFns }, rest)));
|
3110
3109
|
};
|
3111
3110
|
|
3112
|
-
export { MRT_AggregationFns, MRT_BottomToolbar, MRT_CopyButton, MRT_EditActionButtons, MRT_FilterFns, MRT_FilterOptionMenu, MRT_FullScreenToggleButton, MRT_GlobalFilterTextField, MRT_ShowHideColumnsButton, MRT_SortingFns, MRT_TablePagination, MRT_ToggleDensePaddingButton, MRT_ToggleFiltersButton, MRT_ToggleGlobalFilterButton, MRT_ToggleRowActionMenuButton, MRT_ToolbarAlertBanner, MRT_ToolbarDropZone, MRT_ToolbarInternalButtons, MRT_TopToolbar, MaterialReactTable as default };
|
3111
|
+
export { MRT_AggregationFns, MRT_BottomToolbar, MRT_CopyButton, MRT_EditActionButtons, MRT_ExpandButton, MRT_FilterFns, MRT_FilterOptionMenu, MRT_FullScreenToggleButton, MRT_GlobalFilterTextField, MRT_GrabHandleButton, MRT_ShowHideColumnsButton, MRT_SortingFns, MRT_TablePagination, MRT_ToggleDensePaddingButton, MRT_ToggleFiltersButton, MRT_ToggleGlobalFilterButton, MRT_ToggleRowActionMenuButton, MRT_ToolbarAlertBanner, MRT_ToolbarDropZone, MRT_ToolbarInternalButtons, MRT_TopToolbar, MaterialReactTable as default };
|
3113
3112
|
//# sourceMappingURL=material-react-table.esm.js.map
|