material-react-table 2.0.0-rc.1 → 2.0.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.
Files changed (127) hide show
  1. package/dist/index.d.ts +2 -2
  2. package/dist/index.esm.js +22 -17
  3. package/dist/index.esm.js.map +1 -1
  4. package/dist/index.js +22 -17
  5. package/dist/index.js.map +1 -1
  6. package/package.json +6 -6
  7. package/src/body/MRT_TableBodyCell.tsx +14 -11
  8. package/src/head/MRT_TableHeadCell.tsx +13 -9
  9. package/src/head/MRT_TableHeadCellResizeHandle.tsx +2 -1
  10. package/src/hooks/useMRT_TableOptions.ts +8 -8
  11. package/src/table/MRT_Table.tsx +3 -1
  12. package/src/types.ts +2 -2
  13. package/dist/types/MaterialReactTable.d.ts +0 -7
  14. package/dist/types/aggregationFns.d.ts +0 -11
  15. package/dist/types/body/MRT_TableBody.d.ts +0 -13
  16. package/dist/types/body/MRT_TableBodyCell.d.ts +0 -15
  17. package/dist/types/body/MRT_TableBodyCellValue.d.ts +0 -8
  18. package/dist/types/body/MRT_TableBodyRow.d.ts +0 -18
  19. package/dist/types/body/MRT_TableBodyRowGrabHandle.d.ts +0 -10
  20. package/dist/types/body/MRT_TableBodyRowPinButton.d.ts +0 -8
  21. package/dist/types/body/MRT_TableDetailPanel.d.ts +0 -13
  22. package/dist/types/body/index.d.ts +0 -7
  23. package/dist/types/buttons/MRT_ColumnPinningButtons.d.ts +0 -8
  24. package/dist/types/buttons/MRT_CopyButton.d.ts +0 -8
  25. package/dist/types/buttons/MRT_EditActionButtons.d.ts +0 -9
  26. package/dist/types/buttons/MRT_ExpandAllButton.d.ts +0 -7
  27. package/dist/types/buttons/MRT_ExpandButton.d.ts +0 -8
  28. package/dist/types/buttons/MRT_GrabHandleButton.d.ts +0 -12
  29. package/dist/types/buttons/MRT_RowPinButton.d.ts +0 -10
  30. package/dist/types/buttons/MRT_ShowHideColumnsButton.d.ts +0 -7
  31. package/dist/types/buttons/MRT_ToggleDensePaddingButton.d.ts +0 -7
  32. package/dist/types/buttons/MRT_ToggleFiltersButton.d.ts +0 -7
  33. package/dist/types/buttons/MRT_ToggleFullScreenButton.d.ts +0 -7
  34. package/dist/types/buttons/MRT_ToggleGlobalFilterButton.d.ts +0 -7
  35. package/dist/types/buttons/MRT_ToggleRowActionMenuButton.d.ts +0 -9
  36. package/dist/types/buttons/index.d.ts +0 -13
  37. package/dist/types/column.utils.d.ts +0 -127
  38. package/dist/types/filterFns.d.ts +0 -69
  39. package/dist/types/footer/MRT_TableFooter.d.ts +0 -11
  40. package/dist/types/footer/MRT_TableFooterCell.d.ts +0 -8
  41. package/dist/types/footer/MRT_TableFooterRow.d.ts +0 -12
  42. package/dist/types/footer/index.d.ts +0 -3
  43. package/dist/types/head/MRT_TableHead.d.ts +0 -11
  44. package/dist/types/head/MRT_TableHeadCell.d.ts +0 -8
  45. package/dist/types/head/MRT_TableHeadCellColumnActionsButton.d.ts +0 -8
  46. package/dist/types/head/MRT_TableHeadCellFilterContainer.d.ts +0 -8
  47. package/dist/types/head/MRT_TableHeadCellFilterLabel.d.ts +0 -8
  48. package/dist/types/head/MRT_TableHeadCellGrabHandle.d.ts +0 -10
  49. package/dist/types/head/MRT_TableHeadCellResizeHandle.d.ts +0 -8
  50. package/dist/types/head/MRT_TableHeadCellSortLabel.d.ts +0 -8
  51. package/dist/types/head/MRT_TableHeadRow.d.ts +0 -12
  52. package/dist/types/head/index.d.ts +0 -9
  53. package/dist/types/hooks/index.d.ts +0 -4
  54. package/dist/types/hooks/useMRT_DisplayColumns.d.ts +0 -9
  55. package/dist/types/hooks/useMRT_Effects.d.ts +0 -2
  56. package/dist/types/hooks/useMRT_TableInstance.d.ts +0 -2
  57. package/dist/types/hooks/useMRT_TableOptions.d.ts +0 -22
  58. package/dist/types/icons.d.ts +0 -36
  59. package/dist/types/index.d.ts +0 -18
  60. package/dist/types/inputs/MRT_EditCellTextField.d.ts +0 -8
  61. package/dist/types/inputs/MRT_FilterCheckbox.d.ts +0 -8
  62. package/dist/types/inputs/MRT_FilterRangeFields.d.ts +0 -8
  63. package/dist/types/inputs/MRT_FilterRangeSlider.d.ts +0 -8
  64. package/dist/types/inputs/MRT_FilterTextField.d.ts +0 -9
  65. package/dist/types/inputs/MRT_GlobalFilterTextField.d.ts +0 -7
  66. package/dist/types/inputs/MRT_SelectCheckbox.d.ts +0 -9
  67. package/dist/types/inputs/index.d.ts +0 -7
  68. package/dist/types/locales/ar.d.ts +0 -2
  69. package/dist/types/locales/az.d.ts +0 -2
  70. package/dist/types/locales/bg.d.ts +0 -2
  71. package/dist/types/locales/cs.d.ts +0 -2
  72. package/dist/types/locales/da.d.ts +0 -2
  73. package/dist/types/locales/de.d.ts +0 -2
  74. package/dist/types/locales/en.d.ts +0 -2
  75. package/dist/types/locales/es.d.ts +0 -2
  76. package/dist/types/locales/et.d.ts +0 -2
  77. package/dist/types/locales/fa.d.ts +0 -2
  78. package/dist/types/locales/fi.d.ts +0 -2
  79. package/dist/types/locales/fr.d.ts +0 -2
  80. package/dist/types/locales/hu.d.ts +0 -2
  81. package/dist/types/locales/hy.d.ts +0 -2
  82. package/dist/types/locales/id.d.ts +0 -2
  83. package/dist/types/locales/it.d.ts +0 -2
  84. package/dist/types/locales/ja.d.ts +0 -2
  85. package/dist/types/locales/ko.d.ts +0 -2
  86. package/dist/types/locales/nl.d.ts +0 -2
  87. package/dist/types/locales/no.d.ts +0 -2
  88. package/dist/types/locales/np.d.ts +0 -2
  89. package/dist/types/locales/pl.d.ts +0 -2
  90. package/dist/types/locales/pt-BR.d.ts +0 -2
  91. package/dist/types/locales/pt.d.ts +0 -2
  92. package/dist/types/locales/ro.d.ts +0 -2
  93. package/dist/types/locales/ru.d.ts +0 -2
  94. package/dist/types/locales/sk.d.ts +0 -2
  95. package/dist/types/locales/sr-Cyrl-RS.d.ts +0 -2
  96. package/dist/types/locales/sr-Latn-RS.d.ts +0 -2
  97. package/dist/types/locales/sv.d.ts +0 -2
  98. package/dist/types/locales/tr.d.ts +0 -2
  99. package/dist/types/locales/uk.d.ts +0 -2
  100. package/dist/types/locales/vi.d.ts +0 -2
  101. package/dist/types/locales/zh-Hans.d.ts +0 -2
  102. package/dist/types/locales/zh-Hant.d.ts +0 -2
  103. package/dist/types/menus/MRT_ColumnActionMenu.d.ts +0 -20
  104. package/dist/types/menus/MRT_FilterOptionMenu.d.ts +0 -13
  105. package/dist/types/menus/MRT_RowActionMenu.d.ts +0 -12
  106. package/dist/types/menus/MRT_ShowHideColumnsMenu.d.ts +0 -10
  107. package/dist/types/menus/MRT_ShowHideColumnsMenuItems.d.ts +0 -12
  108. package/dist/types/menus/index.d.ts +0 -5
  109. package/dist/types/modals/MRT_EditRowModal.d.ts +0 -8
  110. package/dist/types/modals/index.d.ts +0 -1
  111. package/dist/types/sortingFns.d.ts +0 -12
  112. package/dist/types/style.utils.d.ts +0 -32
  113. package/dist/types/table/MRT_Table.d.ts +0 -7
  114. package/dist/types/table/MRT_TableContainer.d.ts +0 -7
  115. package/dist/types/table/MRT_TableLoadingOverlay.d.ts +0 -7
  116. package/dist/types/table/MRT_TablePaper.d.ts +0 -7
  117. package/dist/types/table/index.d.ts +0 -5
  118. package/dist/types/toolbar/MRT_BottomToolbar.d.ts +0 -7
  119. package/dist/types/toolbar/MRT_LinearProgressBar.d.ts +0 -8
  120. package/dist/types/toolbar/MRT_TablePagination.d.ts +0 -11
  121. package/dist/types/toolbar/MRT_ToolbarAlertBanner.d.ts +0 -8
  122. package/dist/types/toolbar/MRT_ToolbarDropZone.d.ts +0 -7
  123. package/dist/types/toolbar/MRT_ToolbarInternalButtons.d.ts +0 -7
  124. package/dist/types/toolbar/MRT_TopToolbar.d.ts +0 -6
  125. package/dist/types/toolbar/index.d.ts +0 -7
  126. package/dist/types/types.d.ts +0 -844
  127. package/dist/types/useMaterialReactTable.d.ts +0 -2
package/package.json CHANGED
@@ -1,5 +1,5 @@
1
1
  {
2
- "version": "2.0.0-rc.1",
2
+ "version": "2.0.0",
3
3
  "license": "MIT",
4
4
  "name": "material-react-table",
5
5
  "description": "A fully featured Material UI V5 implementation of TanStack React Table V8, written from the ground up in TypeScript.",
@@ -66,9 +66,9 @@
66
66
  "@emotion/react": "^11.11.1",
67
67
  "@emotion/styled": "^11.11.0",
68
68
  "@faker-js/faker": "^8.2.0",
69
- "@mui/icons-material": "^5.14.14",
70
- "@mui/material": "^5.14.14",
71
- "@mui/x-date-pickers": "^6.16.3",
69
+ "@mui/icons-material": "^5.14.15",
70
+ "@mui/material": "^5.14.15",
71
+ "@mui/x-date-pickers": "^6.17.0",
72
72
  "@rollup/plugin-typescript": "^11.1.5",
73
73
  "@size-limit/preset-small-lib": "^10.0.1",
74
74
  "@storybook/addon-a11y": "^7.5.1",
@@ -80,8 +80,8 @@
80
80
  "@storybook/react": "^7.5.1",
81
81
  "@storybook/react-vite": "^7.5.1",
82
82
  "@storybook/testing-library": "^0.2.2",
83
- "@types/node": "^20.8.8",
84
- "@types/react": "^18.2.31",
83
+ "@types/node": "^20.8.9",
84
+ "@types/react": "^18.2.33",
85
85
  "@types/react-dom": "^18.2.14",
86
86
  "@typescript-eslint/eslint-plugin": "^6.9.0",
87
87
  "@typescript-eslint/parser": "^6.9.0",
@@ -50,6 +50,7 @@ export const MRT_TableBodyCell = <TData extends MRT_RowData>({
50
50
  const {
51
51
  getState,
52
52
  options: {
53
+ columnResizeMode,
53
54
  createDisplayMode,
54
55
  editDisplayMode,
55
56
  enableClickToCopy,
@@ -118,19 +119,21 @@ export const MRT_TableBodyCell = <TData extends MRT_RowData>({
118
119
  const isFirstColumn = getIsFirstColumn(column, table);
119
120
  const isLastColumn = getIsLastColumn(column, table);
120
121
  const isLastRow = numRows && rowIndex === numRows - 1;
122
+ const showResizeBorder =
123
+ columnSizingInfo.isResizingColumn === column.id &&
124
+ columnResizeMode === 'onChange';
121
125
 
122
- const borderStyle =
123
- columnSizingInfo.isResizingColumn === column.id
124
- ? `2px solid ${draggingBorderColor} !important`
125
- : isDraggingColumn || isDraggingRow
126
- ? `1px dashed ${theme.palette.grey[500]} !important`
127
- : isHoveredColumn ||
128
- isHoveredRow ||
129
- columnSizingInfo.isResizingColumn === column.id
130
- ? `2px dashed ${draggingBorderColor} !important`
131
- : undefined;
126
+ const borderStyle = showResizeBorder
127
+ ? `2px solid ${draggingBorderColor} !important`
128
+ : isDraggingColumn || isDraggingRow
129
+ ? `1px dashed ${theme.palette.grey[500]} !important`
130
+ : isHoveredColumn ||
131
+ isHoveredRow ||
132
+ columnSizingInfo.isResizingColumn === column.id
133
+ ? `2px dashed ${draggingBorderColor} !important`
134
+ : undefined;
132
135
 
133
- if (columnSizingInfo.isResizingColumn === column.id) {
136
+ if (showResizeBorder) {
134
137
  return { borderRight: borderStyle };
135
138
  }
136
139
 
@@ -32,6 +32,7 @@ export const MRT_TableHeadCell = <TData extends MRT_RowData>({
32
32
  getState,
33
33
  options: {
34
34
  columnFilterDisplayMode,
35
+ columnResizeMode,
35
36
  enableColumnActions,
36
37
  enableColumnDragging,
37
38
  enableColumnOrdering,
@@ -88,17 +89,20 @@ export const MRT_TableHeadCell = <TData extends MRT_RowData>({
88
89
  }, [showColumnActions, showDragHandle]);
89
90
 
90
91
  const draggingBorders = useMemo(() => {
91
- const borderStyle =
92
+ const showResizeBorder =
92
93
  columnSizingInfo.isResizingColumn === column.id &&
93
- !header.subHeaders.length
94
- ? `2px solid ${draggingBorderColor} !important`
95
- : draggingColumn?.id === column.id
96
- ? `1px dashed ${theme.palette.grey[500]}`
97
- : hoveredColumn?.id === column.id
98
- ? `2px dashed ${draggingBorderColor}`
99
- : undefined;
94
+ columnResizeMode === 'onChange' &&
95
+ !header.subHeaders.length;
100
96
 
101
- if (columnSizingInfo.isResizingColumn === column.id) {
97
+ const borderStyle = showResizeBorder
98
+ ? `2px solid ${draggingBorderColor} !important`
99
+ : draggingColumn?.id === column.id
100
+ ? `1px dashed ${theme.palette.grey[500]}`
101
+ : hoveredColumn?.id === column.id
102
+ ? `2px dashed ${draggingBorderColor}`
103
+ : undefined;
104
+
105
+ if (showResizeBorder) {
102
106
  return { borderRight: borderStyle };
103
107
  }
104
108
  const draggingBorders = borderStyle
@@ -46,7 +46,8 @@ export const MRT_TableHeadCellResizeHandle = <TData extends MRT_RowData>({
46
46
  sx={(theme) => ({
47
47
  '&:active > hr': {
48
48
  backgroundColor: theme.palette.info.main,
49
- opacity: header.subHeaders.length ? 1 : 0,
49
+ opacity:
50
+ header.subHeaders.length || columnResizeMode === 'onEnd' ? 1 : 0,
50
51
  },
51
52
  cursor: 'col-resize',
52
53
  mr:
@@ -73,7 +73,7 @@ export const useMRT_TableOptions: <TData extends MRT_RowData>(
73
73
  enableTopToolbar = true,
74
74
  filterFns,
75
75
  icons,
76
- layoutMode = 'semantic',
76
+ layoutMode,
77
77
  localization,
78
78
  manualFiltering,
79
79
  manualGrouping,
@@ -118,13 +118,13 @@ export const useMRT_TableOptions: <TData extends MRT_RowData>(
118
118
  [defaultDisplayColumn],
119
119
  );
120
120
 
121
- if (layoutMode === 'semantic') {
122
- if (rest.enableRowVirtualization || rest.enableColumnVirtualization) {
123
- layoutMode = 'grid';
124
- }
125
- if (enableColumnResizing) {
126
- layoutMode = 'grid-no-grow';
127
- }
121
+ layoutMode =
122
+ layoutMode || (enableColumnResizing ? 'grid-no-grow' : 'semantic');
123
+ if (
124
+ layoutMode === 'semantic' &&
125
+ (rest.enableRowVirtualization || rest.enableColumnVirtualization)
126
+ ) {
127
+ layoutMode = 'grid';
128
128
  }
129
129
 
130
130
  if (rest.enableRowVirtualization) {
@@ -65,7 +65,9 @@ export const MRT_Table = <TData extends MRT_RowData>({
65
65
  const colSizes: { [key: string]: number } = {};
66
66
  for (let i = 0; i < headers.length; i++) {
67
67
  const header = headers[i];
68
- const colSize = header.getSize();
68
+ let colSize = header.getSize();
69
+ if (header.subHeaders?.length)
70
+ colSize = colSize * 1.05 + header.subHeaders.length * 2;
69
71
  colSizes[`--header-${parseCSSVarId(header.id)}-size`] = colSize;
70
72
  colSizes[`--col-${parseCSSVarId(header.column.id)}-size`] = colSize;
71
73
  }
package/src/types.ts CHANGED
@@ -714,7 +714,7 @@ export type MRT_TableOptions<TData extends MRT_RowData> = Omit<
714
714
  }) => Partial<VirtualizerOptions<HTMLDivElement, HTMLTableCellElement>>)
715
715
  | Partial<VirtualizerOptions<HTMLDivElement, HTMLTableCellElement>>;
716
716
  /**
717
- * The columns to display in the table. `accessorKey`s or `accessorFn`s must match keys in the `data` prop.
717
+ * The columns to display in the table. `accessorKey`s or `accessorFn`s must match keys in the `data` table option.
718
718
  *
719
719
  * See more info on creating columns on the official docs site:
720
720
  * @link https://www.material-react-table.com/docs/guides/data-columns
@@ -733,7 +733,7 @@ export type MRT_TableOptions<TData extends MRT_RowData> = Omit<
733
733
  */
734
734
  data: TData[];
735
735
  /**
736
- * Instead of specifying a bunch of the same options for each column, you can just change an option in the `defaultColumn` prop to change a default option for all columns.
736
+ * Instead of specifying a bunch of the same options for each column, you can just change an option in the `defaultColumn` table option to change a default option for all columns.
737
737
  */
738
738
  defaultColumn?: Partial<MRT_ColumnDef<TData>>;
739
739
  /**
@@ -1,7 +0,0 @@
1
- import { type MRT_RowData, type MRT_TableInstance, type MRT_TableOptions, type Xor } from './types';
2
- type TableInstanceProp<TData extends MRT_RowData> = {
3
- table: MRT_TableInstance<TData>;
4
- };
5
- type Props<TData extends MRT_RowData> = Xor<TableInstanceProp<TData>, MRT_TableOptions<TData>>;
6
- export declare const MaterialReactTable: <TData extends MRT_RowData>(props: Props<TData>) => import("react/jsx-runtime").JSX.Element;
7
- export {};
@@ -1,11 +0,0 @@
1
- export declare const MRT_AggregationFns: {
2
- sum: import("@tanstack/react-table").AggregationFn<any>;
3
- min: import("@tanstack/react-table").AggregationFn<any>;
4
- max: import("@tanstack/react-table").AggregationFn<any>;
5
- extent: import("@tanstack/react-table").AggregationFn<any>;
6
- mean: import("@tanstack/react-table").AggregationFn<any>;
7
- median: import("@tanstack/react-table").AggregationFn<any>;
8
- unique: import("@tanstack/react-table").AggregationFn<any>;
9
- uniqueCount: import("@tanstack/react-table").AggregationFn<any>;
10
- count: import("@tanstack/react-table").AggregationFn<any>;
11
- };
@@ -1,13 +0,0 @@
1
- import { type VirtualItem, type Virtualizer } from '@tanstack/react-virtual';
2
- import { type TableBodyProps } from '@mui/material/TableBody';
3
- import { type MRT_RowData, type MRT_TableInstance } from '../types';
4
- interface Props<TData extends MRT_RowData> extends TableBodyProps {
5
- columnVirtualizer?: Virtualizer<HTMLDivElement, HTMLTableCellElement>;
6
- table: MRT_TableInstance<TData>;
7
- virtualColumns?: VirtualItem[];
8
- virtualPaddingLeft?: number;
9
- virtualPaddingRight?: number;
10
- }
11
- export declare const MRT_TableBody: <TData extends MRT_RowData>({ columnVirtualizer, table, virtualColumns, virtualPaddingLeft, virtualPaddingRight, ...rest }: Props<TData>) => import("react/jsx-runtime").JSX.Element;
12
- export declare const Memo_MRT_TableBody: <TData extends MRT_RowData>({ columnVirtualizer, table, virtualColumns, virtualPaddingLeft, virtualPaddingRight, ...rest }: Props<TData>) => import("react/jsx-runtime").JSX.Element;
13
- export {};
@@ -1,15 +0,0 @@
1
- import { type RefObject } from 'react';
2
- import { type TableCellProps } from '@mui/material/TableCell';
3
- import { type MRT_Cell, type MRT_RowData, type MRT_TableInstance } from '../types';
4
- interface Props<TData extends MRT_RowData> extends TableCellProps {
5
- cell: MRT_Cell<TData>;
6
- measureElement?: (element: HTMLTableCellElement) => void;
7
- numRows?: number;
8
- rowIndex: number;
9
- rowRef: RefObject<HTMLTableRowElement>;
10
- table: MRT_TableInstance<TData>;
11
- virtualIndex?: number;
12
- }
13
- export declare const MRT_TableBodyCell: <TData extends MRT_RowData>({ cell, measureElement, numRows, rowIndex, rowRef, table, virtualIndex, ...rest }: Props<TData>) => import("react/jsx-runtime").JSX.Element;
14
- export declare const Memo_MRT_TableBodyCell: <TData extends MRT_RowData>({ cell, measureElement, numRows, rowIndex, rowRef, table, virtualIndex, ...rest }: Props<TData>) => import("react/jsx-runtime").JSX.Element;
15
- export {};
@@ -1,8 +0,0 @@
1
- import { type ReactNode } from 'react';
2
- import { type MRT_Cell, type MRT_RowData, type MRT_TableInstance } from '../types';
3
- interface Props<TData extends MRT_RowData> {
4
- cell: MRT_Cell<TData>;
5
- table: MRT_TableInstance<TData>;
6
- }
7
- export declare const MRT_TableBodyCellValue: <TData extends MRT_RowData>({ cell, table, }: Props<TData>) => ReactNode;
8
- export {};
@@ -1,18 +0,0 @@
1
- import { type VirtualItem, type Virtualizer } from '@tanstack/react-virtual';
2
- import { type MRT_Row, type MRT_RowData, type MRT_TableInstance } from '../types';
3
- interface Props<TData extends MRT_RowData> {
4
- columnVirtualizer?: Virtualizer<HTMLDivElement, HTMLTableCellElement>;
5
- measureElement?: (element: HTMLTableRowElement) => void;
6
- numRows?: number;
7
- pinnedRowIds?: string[];
8
- row: MRT_Row<TData>;
9
- rowIndex: number;
10
- table: MRT_TableInstance<TData>;
11
- virtualColumns?: VirtualItem[];
12
- virtualPaddingLeft?: number;
13
- virtualPaddingRight?: number;
14
- virtualRow?: VirtualItem;
15
- }
16
- export declare const MRT_TableBodyRow: <TData extends MRT_RowData>({ columnVirtualizer, measureElement, numRows, pinnedRowIds, row, rowIndex, table, virtualColumns, virtualPaddingLeft, virtualPaddingRight, virtualRow, }: Props<TData>) => import("react/jsx-runtime").JSX.Element;
17
- export declare const Memo_MRT_TableBodyRow: <TData extends MRT_RowData>({ columnVirtualizer, measureElement, numRows, pinnedRowIds, row, rowIndex, table, virtualColumns, virtualPaddingLeft, virtualPaddingRight, virtualRow, }: Props<TData>) => import("react/jsx-runtime").JSX.Element;
18
- export {};
@@ -1,10 +0,0 @@
1
- import { type RefObject } from 'react';
2
- import { type IconButtonProps } from '@mui/material/IconButton';
3
- import { type MRT_Row, type MRT_RowData, type MRT_TableInstance } from '../types';
4
- interface Props<TData extends MRT_RowData> extends IconButtonProps {
5
- row: MRT_Row<TData>;
6
- rowRef: RefObject<HTMLTableRowElement>;
7
- table: MRT_TableInstance<TData>;
8
- }
9
- export declare const MRT_TableBodyRowGrabHandle: <TData extends MRT_RowData>({ row, rowRef, table, ...rest }: Props<TData>) => import("react/jsx-runtime").JSX.Element;
10
- export {};
@@ -1,8 +0,0 @@
1
- import { type IconButtonProps } from '@mui/material/IconButton';
2
- import { type MRT_Row, type MRT_RowData, type MRT_TableInstance } from '../types';
3
- interface Props<TData extends MRT_RowData> extends IconButtonProps {
4
- row: MRT_Row<TData>;
5
- table: MRT_TableInstance<TData>;
6
- }
7
- export declare const MRT_TableBodyRowPinButton: <TData extends MRT_RowData>({ row, table, ...rest }: Props<TData>) => import("react/jsx-runtime").JSX.Element | null;
8
- export {};
@@ -1,13 +0,0 @@
1
- import { type RefObject } from 'react';
2
- import { type VirtualItem } from '@tanstack/react-virtual';
3
- import { type TableCellProps } from '@mui/material/TableCell';
4
- import { type MRT_Row, type MRT_RowData, type MRT_TableInstance } from '../types';
5
- interface Props<TData extends MRT_RowData> extends TableCellProps {
6
- parentRowRef: RefObject<HTMLTableRowElement>;
7
- row: MRT_Row<TData>;
8
- rowIndex: number;
9
- table: MRT_TableInstance<TData>;
10
- virtualRow?: VirtualItem;
11
- }
12
- export declare const MRT_TableDetailPanel: <TData extends MRT_RowData>({ parentRowRef, row, rowIndex, table, virtualRow, ...rest }: Props<TData>) => import("react/jsx-runtime").JSX.Element;
13
- export {};
@@ -1,7 +0,0 @@
1
- export * from './MRT_TableBody';
2
- export * from './MRT_TableBodyCell';
3
- export * from './MRT_TableBodyCellValue';
4
- export * from './MRT_TableBodyRow';
5
- export * from './MRT_TableBodyRowGrabHandle';
6
- export * from './MRT_TableBodyRowPinButton';
7
- export * from './MRT_TableDetailPanel';
@@ -1,8 +0,0 @@
1
- import { type BoxProps } from '@mui/material/Box';
2
- import { type MRT_Column, type MRT_RowData, type MRT_TableInstance } from '../types';
3
- interface Props<TData extends MRT_RowData> extends BoxProps {
4
- column: MRT_Column<TData>;
5
- table: MRT_TableInstance<TData>;
6
- }
7
- export declare const MRT_ColumnPinningButtons: <TData extends MRT_RowData>({ column, table, ...rest }: Props<TData>) => import("react/jsx-runtime").JSX.Element;
8
- export {};
@@ -1,8 +0,0 @@
1
- import { type ButtonProps } from '@mui/material/Button';
2
- import { type MRT_Cell, type MRT_RowData, type MRT_TableInstance } from '../types';
3
- interface Props<TData extends MRT_RowData> extends ButtonProps {
4
- cell: MRT_Cell<TData>;
5
- table: MRT_TableInstance<TData>;
6
- }
7
- export declare const MRT_CopyButton: <TData extends MRT_RowData>({ cell, table, ...rest }: Props<TData>) => import("react/jsx-runtime").JSX.Element;
8
- export {};
@@ -1,9 +0,0 @@
1
- import { type BoxProps } from '@mui/material/Box';
2
- import { type MRT_Row, type MRT_RowData, type MRT_TableInstance } from '../types';
3
- interface Props<TData extends MRT_RowData> extends BoxProps {
4
- row: MRT_Row<TData>;
5
- table: MRT_TableInstance<TData>;
6
- variant?: 'icon' | 'text';
7
- }
8
- export declare const MRT_EditActionButtons: <TData extends MRT_RowData>({ row, table, variant, ...rest }: Props<TData>) => import("react/jsx-runtime").JSX.Element;
9
- export {};
@@ -1,7 +0,0 @@
1
- import { type IconButtonProps } from '@mui/material/IconButton';
2
- import { type MRT_RowData, type MRT_TableInstance } from '../types';
3
- interface Props<TData extends MRT_RowData> extends IconButtonProps {
4
- table: MRT_TableInstance<TData>;
5
- }
6
- export declare const MRT_ExpandAllButton: <TData extends MRT_RowData>({ table, ...rest }: Props<TData>) => import("react/jsx-runtime").JSX.Element;
7
- export {};
@@ -1,8 +0,0 @@
1
- import { type IconButtonProps } from '@mui/material/IconButton';
2
- import { type MRT_Row, type MRT_RowData, type MRT_TableInstance } from '../types';
3
- interface Props<TData extends MRT_RowData> extends IconButtonProps {
4
- row: MRT_Row<TData>;
5
- table: MRT_TableInstance<TData>;
6
- }
7
- export declare const MRT_ExpandButton: <TData extends MRT_RowData>({ row, table, }: Props<TData>) => import("react/jsx-runtime").JSX.Element;
8
- export {};
@@ -1,12 +0,0 @@
1
- import { type DragEventHandler } from 'react';
2
- import { type IconButtonProps } from '@mui/material/IconButton';
3
- import { type MRT_RowData, type MRT_TableInstance } from '../types';
4
- interface Props<TData extends MRT_RowData> extends IconButtonProps {
5
- iconButtonProps?: IconButtonProps;
6
- location?: 'column' | 'row';
7
- onDragEnd: DragEventHandler<HTMLButtonElement>;
8
- onDragStart: DragEventHandler<HTMLButtonElement>;
9
- table: MRT_TableInstance<TData>;
10
- }
11
- export declare const MRT_GrabHandleButton: <TData extends MRT_RowData>({ iconButtonProps, location, onDragEnd, onDragStart, table, ...rest }: Props<TData>) => import("react/jsx-runtime").JSX.Element;
12
- export {};
@@ -1,10 +0,0 @@
1
- import { type RowPinningPosition } from '@tanstack/react-table';
2
- import { type IconButtonProps } from '@mui/material/IconButton';
3
- import { type MRT_Row, type MRT_RowData, type MRT_TableInstance } from '../types';
4
- interface Props<TData extends MRT_RowData> extends IconButtonProps {
5
- pinningPosition: RowPinningPosition;
6
- row: MRT_Row<TData>;
7
- table: MRT_TableInstance<TData>;
8
- }
9
- export declare const MRT_RowPinButton: <TData extends MRT_RowData>({ pinningPosition, row, table, ...rest }: Props<TData>) => import("react/jsx-runtime").JSX.Element;
10
- export {};
@@ -1,7 +0,0 @@
1
- import { type IconButtonProps } from '@mui/material/IconButton';
2
- import { type MRT_RowData, type MRT_TableInstance } from '../types';
3
- interface Props<TData extends MRT_RowData> extends IconButtonProps {
4
- table: MRT_TableInstance<TData>;
5
- }
6
- export declare const MRT_ShowHideColumnsButton: <TData extends MRT_RowData>({ table, ...rest }: Props<TData>) => import("react/jsx-runtime").JSX.Element;
7
- export {};
@@ -1,7 +0,0 @@
1
- import { type IconButtonProps } from '@mui/material/IconButton';
2
- import { type MRT_RowData, type MRT_TableInstance } from '../types';
3
- interface Props<TData extends MRT_RowData> extends IconButtonProps {
4
- table: MRT_TableInstance<TData>;
5
- }
6
- export declare const MRT_ToggleDensePaddingButton: <TData extends MRT_RowData>({ table, ...rest }: Props<TData>) => import("react/jsx-runtime").JSX.Element;
7
- export {};
@@ -1,7 +0,0 @@
1
- import { type IconButtonProps } from '@mui/material/IconButton';
2
- import { type MRT_RowData, type MRT_TableInstance } from '../types';
3
- interface Props<TData extends MRT_RowData> extends IconButtonProps {
4
- table: MRT_TableInstance<TData>;
5
- }
6
- export declare const MRT_ToggleFiltersButton: <TData extends MRT_RowData>({ table, ...rest }: Props<TData>) => import("react/jsx-runtime").JSX.Element;
7
- export {};
@@ -1,7 +0,0 @@
1
- import { type IconButtonProps } from '@mui/material/IconButton';
2
- import { type MRT_RowData, type MRT_TableInstance } from '../types';
3
- interface Props<TData extends MRT_RowData> extends IconButtonProps {
4
- table: MRT_TableInstance<TData>;
5
- }
6
- export declare const MRT_ToggleFullScreenButton: <TData extends MRT_RowData>({ table, ...rest }: Props<TData>) => import("react/jsx-runtime").JSX.Element;
7
- export {};
@@ -1,7 +0,0 @@
1
- import { type IconButtonProps } from '@mui/material/IconButton';
2
- import { type MRT_RowData, type MRT_TableInstance } from '../types';
3
- interface Props<TData extends MRT_RowData> extends IconButtonProps {
4
- table: MRT_TableInstance<TData>;
5
- }
6
- export declare const MRT_ToggleGlobalFilterButton: <TData extends MRT_RowData>({ table, ...rest }: Props<TData>) => import("react/jsx-runtime").JSX.Element;
7
- export {};
@@ -1,9 +0,0 @@
1
- import { type IconButtonProps } from '@mui/material/IconButton';
2
- import { type MRT_Cell, type MRT_Row, type MRT_RowData, type MRT_TableInstance } from '../types';
3
- interface Props<TData extends MRT_RowData> extends IconButtonProps {
4
- cell: MRT_Cell<TData>;
5
- row: MRT_Row<TData>;
6
- table: MRT_TableInstance<TData>;
7
- }
8
- export declare const MRT_ToggleRowActionMenuButton: <TData extends MRT_RowData>({ cell, row, table, ...rest }: Props<TData>) => import("react/jsx-runtime").JSX.Element;
9
- export {};
@@ -1,13 +0,0 @@
1
- export * from './MRT_ColumnPinningButtons';
2
- export * from './MRT_CopyButton';
3
- export * from './MRT_EditActionButtons';
4
- export * from './MRT_ExpandAllButton';
5
- export * from './MRT_ExpandButton';
6
- export * from './MRT_GrabHandleButton';
7
- export * from './MRT_RowPinButton';
8
- export * from './MRT_ShowHideColumnsButton';
9
- export * from './MRT_ToggleDensePaddingButton';
10
- export * from './MRT_ToggleFiltersButton';
11
- export * from './MRT_ToggleFullScreenButton';
12
- export * from './MRT_ToggleGlobalFilterButton';
13
- export * from './MRT_ToggleRowActionMenuButton';
@@ -1,127 +0,0 @@
1
- import { type ReactNode } from 'react';
2
- import { type Renderable, type Row } from '@tanstack/react-table';
3
- import { type Range } from '@tanstack/react-virtual';
4
- import { type MRT_AggregationFns } from './aggregationFns';
5
- import { type MRT_FilterFns } from './filterFns';
6
- import { type MRT_SortingFns } from './sortingFns';
7
- import { type MRT_Column, type MRT_ColumnDef, type MRT_ColumnHelper, type MRT_ColumnOrderState, type MRT_DefinedColumnDef, type MRT_DisplayColumnIds, type MRT_FilterOption, type MRT_GroupingState, type MRT_Row, type MRT_RowData, type MRT_TableInstance, type MRT_TableOptions } from './types';
8
- export declare const getColumnId: <TData extends MRT_RowData>(columnDef: MRT_ColumnDef<TData>) => string;
9
- export declare const getAllLeafColumnDefs: <TData extends MRT_RowData>(columns: MRT_ColumnDef<TData>[]) => MRT_ColumnDef<TData>[];
10
- export declare const prepareColumns: <TData extends MRT_RowData>({ aggregationFns, columnDefs, columnFilterFns, defaultDisplayColumn, filterFns, sortingFns, }: {
11
- aggregationFns: {
12
- sum: import("@tanstack/react-table").AggregationFn<any>;
13
- min: import("@tanstack/react-table").AggregationFn<any>;
14
- max: import("@tanstack/react-table").AggregationFn<any>;
15
- extent: import("@tanstack/react-table").AggregationFn<any>;
16
- mean: import("@tanstack/react-table").AggregationFn<any>;
17
- median: import("@tanstack/react-table").AggregationFn<any>;
18
- unique: import("@tanstack/react-table").AggregationFn<any>;
19
- uniqueCount: import("@tanstack/react-table").AggregationFn<any>;
20
- count: import("@tanstack/react-table").AggregationFn<any>;
21
- } & Record<string, import("@tanstack/react-table").AggregationFn<any>>;
22
- columnDefs: MRT_ColumnDef<TData>[];
23
- columnFilterFns: {
24
- [key: string]: MRT_FilterOption;
25
- };
26
- defaultDisplayColumn: Partial<MRT_ColumnDef<TData>>;
27
- filterFns: {
28
- between: {
29
- <TData_1 extends MRT_RowData>(row: Row<TData_1>, id: string, filterValues: [string | number, string | number]): boolean;
30
- autoRemove(val: any): boolean;
31
- };
32
- betweenInclusive: {
33
- <TData_2 extends MRT_RowData>(row: Row<TData_2>, id: string, filterValues: [string | number, string | number]): boolean;
34
- autoRemove(val: any): boolean;
35
- };
36
- contains: {
37
- <TData_3 extends MRT_RowData>(row: Row<TData_3>, id: string, filterValue: string | number): boolean;
38
- autoRemove(val: any): boolean;
39
- };
40
- empty: {
41
- <TData_4 extends MRT_RowData>(row: Row<TData_4>, id: string, _filterValue: string | number): boolean;
42
- autoRemove(val: any): boolean;
43
- };
44
- endsWith: {
45
- <TData_5 extends MRT_RowData>(row: Row<TData_5>, id: string, filterValue: string | number): boolean;
46
- autoRemove(val: any): boolean;
47
- };
48
- equals: {
49
- <TData_6 extends MRT_RowData>(row: Row<TData_6>, id: string, filterValue: string | number): boolean;
50
- autoRemove(val: any): boolean;
51
- };
52
- fuzzy: {
53
- <TData_7 extends MRT_RowData>(row: Row<TData_7>, columnId: string, filterValue: string | number, addMeta: (item: import("@tanstack/match-sorter-utils").RankingInfo) => void): boolean;
54
- autoRemove(val: any): boolean;
55
- };
56
- greaterThan: {
57
- <TData_8 extends MRT_RowData>(row: Row<TData_8>, id: string, filterValue: string | number): boolean;
58
- autoRemove(val: any): boolean;
59
- };
60
- greaterThanOrEqualTo: {
61
- <TData_9 extends MRT_RowData>(row: Row<TData_9>, id: string, filterValue: string | number): boolean;
62
- autoRemove(val: any): boolean;
63
- };
64
- lessThan: {
65
- <TData_10 extends MRT_RowData>(row: Row<TData_10>, id: string, filterValue: string | number): boolean;
66
- autoRemove(val: any): boolean;
67
- };
68
- lessThanOrEqualTo: {
69
- <TData_11 extends MRT_RowData>(row: Row<TData_11>, id: string, filterValue: string | number): boolean;
70
- autoRemove(val: any): boolean;
71
- };
72
- notEmpty: {
73
- <TData_12 extends MRT_RowData>(row: Row<TData_12>, id: string, _filterValue: string | number): boolean;
74
- autoRemove(val: any): boolean;
75
- };
76
- notEquals: {
77
- <TData_13 extends MRT_RowData>(row: Row<TData_13>, id: string, filterValue: string | number): boolean;
78
- autoRemove(val: any): boolean;
79
- };
80
- startsWith: {
81
- <TData_14 extends MRT_RowData>(row: Row<TData_14>, id: string, filterValue: string | number): boolean;
82
- autoRemove(val: any): boolean;
83
- };
84
- includesString: import("@tanstack/react-table").FilterFn<any>;
85
- includesStringSensitive: import("@tanstack/react-table").FilterFn<any>;
86
- equalsString: import("@tanstack/react-table").FilterFn<any>;
87
- arrIncludes: import("@tanstack/react-table").FilterFn<any>;
88
- arrIncludesAll: import("@tanstack/react-table").FilterFn<any>;
89
- arrIncludesSome: import("@tanstack/react-table").FilterFn<any>;
90
- weakEquals: import("@tanstack/react-table").FilterFn<any>;
91
- inNumberRange: import("@tanstack/react-table").FilterFn<any>;
92
- } & Record<string, import("@tanstack/react-table").FilterFn<any>>;
93
- sortingFns: {
94
- fuzzy: <TData_15 extends MRT_RowData>(rowA: Row<TData_15>, rowB: Row<TData_15>, columnId: string) => number;
95
- alphanumeric: import("@tanstack/react-table").SortingFn<any>;
96
- alphanumericCaseSensitive: import("@tanstack/react-table").SortingFn<any>;
97
- text: import("@tanstack/react-table").SortingFn<any>;
98
- textCaseSensitive: import("@tanstack/react-table").SortingFn<any>;
99
- datetime: import("@tanstack/react-table").SortingFn<any>;
100
- basic: import("@tanstack/react-table").SortingFn<any>;
101
- } & Record<string, import("@tanstack/react-table").SortingFn<any>>;
102
- }) => MRT_DefinedColumnDef<TData>[];
103
- export declare const reorderColumn: <TData extends MRT_RowData>(draggedColumn: MRT_Column<TData>, targetColumn: MRT_Column<TData>, columnOrder: MRT_ColumnOrderState) => MRT_ColumnOrderState;
104
- export declare const showExpandColumn: <TData extends MRT_RowData>(props: MRT_TableOptions<TData>, grouping?: MRT_GroupingState) => boolean;
105
- export declare const getLeadingDisplayColumnIds: <TData extends MRT_RowData>(props: MRT_TableOptions<TData>) => MRT_DisplayColumnIds[];
106
- export declare const getTrailingDisplayColumnIds: <TData extends MRT_RowData>(props: MRT_TableOptions<TData>) => MRT_DisplayColumnIds[];
107
- export declare const getDefaultColumnOrderIds: <TData extends MRT_RowData>(props: MRT_TableOptions<TData>) => string[];
108
- export declare const getDefaultColumnFilterFn: <TData extends MRT_RowData>(columnDef: MRT_ColumnDef<TData>) => MRT_FilterOption;
109
- export declare const getIsFirstColumn: <TData extends MRT_RowData>(column: MRT_Column<TData>, table: MRT_TableInstance<TData>) => boolean;
110
- export declare const getIsLastColumn: <TData extends MRT_RowData>(column: MRT_Column<TData>, table: MRT_TableInstance<TData>) => boolean;
111
- export declare const getIsLastLeftPinnedColumn: <TData extends MRT_RowData>(table: MRT_TableInstance<TData>, column: MRT_Column<TData>) => boolean;
112
- export declare const getIsFirstRightPinnedColumn: <TData extends MRT_RowData>(column: MRT_Column<TData>) => boolean;
113
- export declare const getTotalRight: <TData extends MRT_RowData>(table: MRT_TableInstance<TData>, column: MRT_Column<TData>) => number;
114
- export declare const getCanRankRows: <TData extends MRT_RowData>(table: MRT_TableInstance<TData>) => boolean | undefined;
115
- export declare const parseFromValuesOrFunc: <T, U>(fn: T | ((arg: U) => T) | undefined, arg: U) => T | undefined;
116
- export declare const flexRender: (Comp: Renderable<any>, props: any) => JSX.Element | ReactNode;
117
- export declare const createRow: <TData extends MRT_RowData>(table: MRT_TableInstance<TData>, originalRow?: TData | undefined) => MRT_Row<TData>;
118
- export declare const extraIndexRangeExtractor: (range: Range, draggingIndex: number) => number[];
119
- export declare function createMRTColumnHelper<TData extends MRT_RowData>(): MRT_ColumnHelper<TData>;
120
- export declare const getValueAndLabel: (option: {
121
- label?: string;
122
- text?: string;
123
- value: string;
124
- } | string) => {
125
- label: string;
126
- value: string;
127
- };