material-react-table 1.8.4 → 1.8.5
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 +10 -13
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/types/MaterialReactTable.d.ts +3 -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 +9 -14
- package/dist/esm/material-react-table.esm.js.map +1 -1
- package/dist/esm/types/MaterialReactTable.d.ts +3 -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/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/zh-Hans.ts +5 -5
- package/src/_locales/zh-Hant.ts +1 -1
- 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_TableHeadCellResizeHandle.tsx +2 -0
- package/src/index.tsx +8 -4
- 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: {
|
@@ -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;
|
@@ -242,7 +242,7 @@ const getCommonCellStyles = ({ column, header, table, tableCellProps, theme, })
|
|
242
242
|
: getIsFirstRightPinnedColumn(column)
|
243
243
|
? `4px 0 8px -6px ${alpha(theme.palette.common.black, 0.2)} inset`
|
244
244
|
: undefined, display: table.options.layoutMode === 'grid' ? 'flex' : 'table-cell', flex: table.options.layoutMode === 'grid'
|
245
|
-
? `var(
|
245
|
+
? `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
246
|
: undefined, left: column.getIsPinned() === 'left'
|
247
247
|
? `${column.getStart('left')}px`
|
248
248
|
: undefined, ml: table.options.enableColumnVirtualization &&
|
@@ -288,12 +288,7 @@ const MRT_DefaultDisplayColumn = {
|
|
288
288
|
enableResizing: false,
|
289
289
|
enableSorting: false,
|
290
290
|
};
|
291
|
-
const parseCSSVarId = (id) => id
|
292
|
-
.replaceAll('.', '_')
|
293
|
-
.replaceAll(' ', '_')
|
294
|
-
.replaceAll('+', '_')
|
295
|
-
.replaceAll('(', '_')
|
296
|
-
.replaceAll(')', '_');
|
291
|
+
const parseCSSVarId = (id) => id.replace(/[^a-zA-Z0-9]/g, '_');
|
297
292
|
|
298
293
|
const fuzzy$1 = (row, columnId, filterValue, addMeta) => {
|
299
294
|
const itemRank = rankItem(row.getValue(columnId), filterValue, {
|
@@ -444,7 +439,7 @@ const MRT_ExpandAllButton = ({ table }) => {
|
|
444
439
|
} }))))));
|
445
440
|
};
|
446
441
|
|
447
|
-
const MRT_ExpandButton = ({ row, table }) => {
|
442
|
+
const MRT_ExpandButton = ({ row, table, }) => {
|
448
443
|
var _a, _b;
|
449
444
|
const { getState, options: { icons: { ExpandMoreIcon }, localization, muiExpandButtonProps, renderDetailPanel, }, } = table;
|
450
445
|
const { density } = getState();
|
@@ -1832,7 +1827,7 @@ 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) => ({
|
@@ -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',
|
@@ -2671,9 +2666,9 @@ const MRT_Table = ({ table }) => {
|
|
2671
2666
|
const colSizes = {};
|
2672
2667
|
for (let i = 0; i < headers.length; i++) {
|
2673
2668
|
const header = headers[i];
|
2674
|
-
|
2675
|
-
colSizes[`--
|
2676
|
-
|
2669
|
+
const colSize = header.getSize();
|
2670
|
+
colSizes[`--header-${parseCSSVarId(header.id)}-size`] = colSize;
|
2671
|
+
colSizes[`--col-${parseCSSVarId(header.column.id)}-size`] = colSize;
|
2677
2672
|
}
|
2678
2673
|
return colSizes;
|
2679
2674
|
}, [columns, columnSizing, columnSizingInfo, columnVisibility]);
|
@@ -3109,5 +3104,5 @@ const MaterialReactTable = (_a) => {
|
|
3109
3104
|
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
3105
|
};
|
3111
3106
|
|
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 };
|
3107
|
+
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
3108
|
//# sourceMappingURL=material-react-table.esm.js.map
|