material-react-table 1.0.0-beta.1 → 1.0.0-beta.12

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 (105) hide show
  1. package/README.md +20 -20
  2. package/dist/cjs/MaterialReactTable.d.ts +100 -21
  3. package/dist/cjs/_locales/en.d.ts +2 -0
  4. package/dist/cjs/_locales/es.d.ts +2 -0
  5. package/dist/cjs/body/MRT_EditRowModal.d.ts +0 -1
  6. package/dist/cjs/body/MRT_TableBody.d.ts +1 -2
  7. package/dist/cjs/body/MRT_TableBodyCellValue.d.ts +2 -2
  8. package/dist/cjs/buttons/MRT_ColumnPinningButtons.d.ts +0 -1
  9. package/dist/cjs/buttons/MRT_EditActionButtons.d.ts +0 -1
  10. package/dist/cjs/buttons/MRT_FullScreenToggleButton.d.ts +0 -1
  11. package/dist/cjs/buttons/MRT_ShowHideColumnsButton.d.ts +0 -1
  12. package/dist/cjs/buttons/MRT_ToggleDensePaddingButton.d.ts +0 -1
  13. package/dist/cjs/buttons/MRT_ToggleFiltersButton.d.ts +0 -1
  14. package/dist/cjs/buttons/MRT_ToggleGlobalFilterButton.d.ts +0 -1
  15. package/dist/cjs/column.utils.d.ts +12 -1
  16. package/dist/cjs/index.d.ts +4 -3
  17. package/dist/cjs/index.js +248 -195
  18. package/dist/cjs/index.js.map +1 -1
  19. package/dist/cjs/inputs/MRT_EditCellTextField.d.ts +0 -1
  20. package/dist/cjs/inputs/MRT_GlobalFilterTextField.d.ts +0 -1
  21. package/dist/cjs/menus/MRT_FilterOptionMenu.d.ts +3 -4
  22. package/dist/cjs/menus/MRT_ShowHideColumnsMenu.d.ts +0 -1
  23. package/dist/cjs/table/MRT_Table.d.ts +1 -2
  24. package/dist/cjs/table/MRT_TableRoot.d.ts +250 -3
  25. package/dist/cjs/toolbar/MRT_TablePagination.d.ts +3 -4
  26. package/dist/cjs/toolbar/MRT_ToolbarAlertBanner.d.ts +1 -1
  27. package/dist/cjs/toolbar/MRT_ToolbarInternalButtons.d.ts +3 -4
  28. package/dist/cjs/toolbar/MRT_TopToolbar.d.ts +1 -0
  29. package/dist/en.cjs +90 -0
  30. package/dist/en.cjs.d.ts +2 -0
  31. package/dist/en.cjs.map +1 -0
  32. package/dist/en.esm.d.ts +2 -0
  33. package/dist/en.esm.js +86 -0
  34. package/dist/en.esm.js.map +1 -0
  35. package/dist/esm/MaterialReactTable.d.ts +100 -21
  36. package/dist/esm/_locales/en.d.ts +2 -0
  37. package/dist/esm/_locales/es.d.ts +2 -0
  38. package/dist/esm/body/MRT_EditRowModal.d.ts +0 -1
  39. package/dist/esm/body/MRT_TableBody.d.ts +1 -2
  40. package/dist/esm/body/MRT_TableBodyCellValue.d.ts +2 -2
  41. package/dist/esm/buttons/MRT_ColumnPinningButtons.d.ts +0 -1
  42. package/dist/esm/buttons/MRT_EditActionButtons.d.ts +0 -1
  43. package/dist/esm/buttons/MRT_FullScreenToggleButton.d.ts +0 -1
  44. package/dist/esm/buttons/MRT_ShowHideColumnsButton.d.ts +0 -1
  45. package/dist/esm/buttons/MRT_ToggleDensePaddingButton.d.ts +0 -1
  46. package/dist/esm/buttons/MRT_ToggleFiltersButton.d.ts +0 -1
  47. package/dist/esm/buttons/MRT_ToggleGlobalFilterButton.d.ts +0 -1
  48. package/dist/esm/column.utils.d.ts +12 -1
  49. package/dist/esm/index.d.ts +4 -3
  50. package/dist/esm/inputs/MRT_EditCellTextField.d.ts +0 -1
  51. package/dist/esm/inputs/MRT_GlobalFilterTextField.d.ts +0 -1
  52. package/dist/esm/material-react-table.esm.js +249 -198
  53. package/dist/esm/material-react-table.esm.js.map +1 -1
  54. package/dist/esm/menus/MRT_FilterOptionMenu.d.ts +3 -4
  55. package/dist/esm/menus/MRT_ShowHideColumnsMenu.d.ts +0 -1
  56. package/dist/esm/table/MRT_Table.d.ts +1 -2
  57. package/dist/esm/table/MRT_TableRoot.d.ts +250 -3
  58. package/dist/esm/toolbar/MRT_TablePagination.d.ts +3 -4
  59. package/dist/esm/toolbar/MRT_ToolbarAlertBanner.d.ts +1 -1
  60. package/dist/esm/toolbar/MRT_ToolbarInternalButtons.d.ts +3 -4
  61. package/dist/esm/toolbar/MRT_TopToolbar.d.ts +1 -0
  62. package/dist/index.d.ts +51 -43
  63. package/package.json +7 -6
  64. package/src/MaterialReactTable.tsx +105 -24
  65. package/src/_locales/de.ts +0 -0
  66. package/src/{localization.ts → _locales/en.ts} +4 -82
  67. package/src/_locales/es.ts +86 -0
  68. package/src/_locales/fr.ts +0 -0
  69. package/src/_locales/hi.ts +0 -0
  70. package/src/_locales/id.ts +0 -0
  71. package/src/_locales/ja.ts +0 -0
  72. package/src/_locales/nl.ts +0 -0
  73. package/src/_locales/pt.ts +0 -0
  74. package/src/_locales/ru.ts +0 -0
  75. package/src/_locales/uk.ts +0 -0
  76. package/src/_locales/vi.ts +0 -0
  77. package/src/_locales/zh.ts +0 -0
  78. package/src/body/MRT_TableBody.tsx +54 -30
  79. package/src/body/MRT_TableBodyCell.tsx +12 -59
  80. package/src/body/MRT_TableBodyCellValue.tsx +7 -2
  81. package/src/body/MRT_TableBodyRowGrabHandle.tsx +5 -8
  82. package/src/buttons/MRT_GrabHandleButton.tsx +2 -2
  83. package/src/buttons/MRT_ToggleGlobalFilterButton.tsx +7 -2
  84. package/src/column.utils.ts +72 -0
  85. package/src/footer/MRT_TableFooter.tsx +3 -2
  86. package/src/footer/MRT_TableFooterCell.tsx +5 -15
  87. package/src/head/MRT_TableHead.tsx +10 -2
  88. package/src/head/MRT_TableHeadCell.tsx +9 -50
  89. package/src/head/MRT_TableHeadCellFilterLabel.tsx +7 -7
  90. package/src/head/MRT_TableHeadCellGrabHandle.tsx +5 -12
  91. package/src/index.tsx +6 -3
  92. package/src/inputs/MRT_FilterTextField.tsx +12 -4
  93. package/src/inputs/MRT_GlobalFilterTextField.tsx +18 -5
  94. package/src/menus/MRT_FilterOptionMenu.tsx +19 -2
  95. package/src/table/MRT_Table.tsx +3 -4
  96. package/src/table/MRT_TableContainer.tsx +2 -11
  97. package/src/table/MRT_TablePaper.tsx +34 -20
  98. package/src/table/MRT_TableRoot.tsx +34 -11
  99. package/src/toolbar/MRT_BottomToolbar.tsx +9 -3
  100. package/src/toolbar/MRT_TablePagination.tsx +8 -5
  101. package/src/toolbar/MRT_ToolbarAlertBanner.tsx +7 -1
  102. package/src/toolbar/MRT_ToolbarInternalButtons.tsx +8 -4
  103. package/src/toolbar/MRT_TopToolbar.tsx +8 -1
  104. package/dist/cjs/localization.d.ts +0 -82
  105. package/dist/esm/localization.d.ts +0 -82
@@ -1,13 +1,12 @@
1
- /// <reference types="react" />
2
- import type { MRT_Header, MRT_InternalFilterOption, MRT_TableInstance } from '..';
3
- import { MRT_Localization } from '../localization';
1
+ import type { MRT_Header, MRT_InternalFilterOption, MRT_Localization, MRT_TableInstance } from '..';
4
2
  export declare const mrtFilterOptions: (localization: MRT_Localization) => MRT_InternalFilterOption[];
5
3
  interface Props<TData extends Record<string, any> = {}> {
6
4
  anchorEl: HTMLElement | null;
7
5
  header?: MRT_Header<TData>;
8
6
  onSelect?: () => void;
9
7
  setAnchorEl: (anchorEl: HTMLElement | null) => void;
8
+ setFilterValue?: (filterValue: any) => void;
10
9
  table: MRT_TableInstance<TData>;
11
10
  }
12
- export declare const MRT_FilterOptionMenu: <TData extends Record<string, any> = {}>({ anchorEl, header, onSelect, setAnchorEl, table, }: Props<TData>) => JSX.Element;
11
+ export declare const MRT_FilterOptionMenu: <TData extends Record<string, any> = {}>({ anchorEl, header, onSelect, setAnchorEl, setFilterValue, table, }: Props<TData>) => JSX.Element;
13
12
  export {};
@@ -1,4 +1,3 @@
1
- /// <reference types="react" />
2
1
  import type { MRT_TableInstance } from '..';
3
2
  interface Props<TData extends Record<string, any> = {}> {
4
3
  anchorEl: HTMLElement | null;
@@ -1,7 +1,6 @@
1
- import { FC, RefObject } from 'react';
1
+ import { FC } from 'react';
2
2
  import { MRT_TableInstance } from '..';
3
3
  interface Props {
4
- tableContainerRef: RefObject<HTMLDivElement>;
5
4
  table: MRT_TableInstance;
6
5
  }
7
6
  export declare const MRT_Table: FC<Props>;
@@ -1,3 +1,250 @@
1
- /// <reference types="react" />
2
- import type { MaterialReactTableProps } from '..';
3
- export declare const MRT_TableRoot: <TData extends Record<string, any> = {}>(props: MaterialReactTableProps<TData>) => JSX.Element;
1
+ import React from 'react';
2
+ import type { MRT_Cell, MRT_Column, MRT_ColumnDef, MRT_FilterOption, MRT_Row, MRT_TableInstance, MRT_TableState, MaterialReactTableProps, MRT_Localization } from '..';
3
+ export declare const MRT_TableRoot: <TData extends Record<string, any> = {}>(props: Omit<Partial<import("@tanstack/table-core").TableOptions<TData>>, "state" | "data" | "onStateChange" | "initialState" | "columns" | "defaultColumn" | "enableRowSelection" | "expandRowsFn"> & {
4
+ columnFilterModeOptions?: (string | (string & Record<never, never>))[] | null | undefined;
5
+ columns: MRT_ColumnDef<TData>[];
6
+ data: TData[];
7
+ defaultColumn?: Partial<MRT_ColumnDef<TData>> | undefined;
8
+ defaultDisplayColumn?: Partial<MRT_ColumnDef<TData>> | undefined;
9
+ displayColumnDefOptions?: Partial<{
10
+ "mrt-row-drag": Partial<MRT_ColumnDef<{}>>;
11
+ "mrt-row-actions": Partial<MRT_ColumnDef<{}>>;
12
+ "mrt-row-expand": Partial<MRT_ColumnDef<{}>>;
13
+ "mrt-row-select": Partial<MRT_ColumnDef<{}>>;
14
+ "mrt-row-numbers": Partial<MRT_ColumnDef<{}>>;
15
+ }> | undefined;
16
+ editingMode?: "cell" | "row" | "table" | "modal" | undefined;
17
+ enableBottomToolbar?: boolean | undefined;
18
+ enableClickToCopy?: boolean | undefined;
19
+ enableColumnActions?: boolean | undefined;
20
+ enableColumnDragging?: boolean | undefined;
21
+ enableColumnFilterModes?: boolean | undefined;
22
+ enableColumnOrdering?: boolean | undefined;
23
+ enableDensityToggle?: boolean | undefined;
24
+ enableEditing?: boolean | undefined;
25
+ enableExpandAll?: boolean | undefined;
26
+ enableFullScreenToggle?: boolean | undefined;
27
+ enableGlobalFilterModes?: boolean | undefined;
28
+ enableGlobalFilterRankedResults?: boolean | undefined;
29
+ enablePagination?: boolean | undefined;
30
+ enableRowActions?: boolean | undefined;
31
+ enableRowDragging?: boolean | undefined;
32
+ enableRowNumbers?: boolean | undefined;
33
+ enableRowOrdering?: boolean | undefined;
34
+ enableRowSelection?: boolean | ((row: MRT_Row<TData>) => boolean) | undefined;
35
+ enableRowVirtualization?: boolean | undefined;
36
+ enableSelectAll?: boolean | undefined;
37
+ enableStickyFooter?: boolean | undefined;
38
+ enableStickyHeader?: boolean | undefined;
39
+ enableTableFooter?: boolean | undefined;
40
+ enableTableHead?: boolean | undefined;
41
+ enableToolbarInternalActions?: boolean | undefined;
42
+ enableTopToolbar?: boolean | undefined;
43
+ globalFilterModeOptions?: (string | (string & Record<never, never>))[] | null | undefined;
44
+ expandRowsFn?: ((dataRow: TData) => TData[]) | undefined;
45
+ icons?: Partial<import("..").MRT_Icons> | undefined;
46
+ initialState?: Partial<MRT_TableState<TData>> | undefined;
47
+ localization?: Partial<MRT_Localization> | undefined;
48
+ muiBottomToolbarProps?: import("@mui/material").ToolbarProps<"div", {}> | (({ table }: {
49
+ table: MRT_TableInstance<TData>;
50
+ }) => import("@mui/material").ToolbarProps<"div", {}>) | undefined;
51
+ muiExpandAllButtonProps?: import("@mui/material").IconButtonProps<"button", {}> | (({ table }: {
52
+ table: MRT_TableInstance<TData>;
53
+ }) => import("@mui/material").IconButtonProps<"button", {}>) | undefined;
54
+ muiExpandButtonProps?: import("@mui/material").IconButtonProps<"button", {}> | (({ row, table, }: {
55
+ table: MRT_TableInstance<TData>;
56
+ row: MRT_Row<TData>;
57
+ }) => import("@mui/material").IconButtonProps<"button", {}>) | undefined;
58
+ muiLinearProgressProps?: import("@mui/material").LinearProgressProps | (({ isTopToolbar, table, }: {
59
+ isTopToolbar: boolean;
60
+ table: MRT_TableInstance<TData>;
61
+ }) => import("@mui/material").LinearProgressProps) | undefined;
62
+ muiSearchTextFieldProps?: import("@mui/material").TextFieldProps | (({ table }: {
63
+ table: MRT_TableInstance<TData>;
64
+ }) => import("@mui/material").TextFieldProps) | undefined;
65
+ muiSelectAllCheckboxProps?: import("@mui/material").CheckboxProps | (({ table }: {
66
+ table: MRT_TableInstance<TData>;
67
+ }) => import("@mui/material").CheckboxProps) | undefined;
68
+ muiSelectCheckboxProps?: import("@mui/material").CheckboxProps | (({ table, row, }: {
69
+ table: MRT_TableInstance<TData>;
70
+ row: MRT_Row<TData>;
71
+ }) => import("@mui/material").CheckboxProps) | undefined;
72
+ muiTableBodyCellCopyButtonProps?: import("@mui/material").ButtonProps<"button", {}> | (({ cell, column, row, table, }: {
73
+ cell: MRT_Cell<TData>;
74
+ column: MRT_Column<TData>;
75
+ row: MRT_Row<TData>;
76
+ table: MRT_TableInstance<TData>;
77
+ }) => import("@mui/material").ButtonProps<"button", {}>) | undefined;
78
+ muiTableBodyCellEditTextFieldProps?: import("@mui/material").TextFieldProps | (({ cell, column, row, table, }: {
79
+ cell: MRT_Cell<TData>;
80
+ column: MRT_Column<TData>;
81
+ row: MRT_Row<TData>;
82
+ table: MRT_TableInstance<TData>;
83
+ }) => import("@mui/material").TextFieldProps) | undefined;
84
+ muiTableBodyCellProps?: import("@mui/material").TableCellProps | (({ cell, column, row, table, }: {
85
+ cell: MRT_Cell<TData>;
86
+ column: MRT_Column<TData>;
87
+ row: MRT_Row<TData>;
88
+ table: MRT_TableInstance<TData>;
89
+ }) => import("@mui/material").TableCellProps) | undefined;
90
+ muiTableBodyCellSkeletonProps?: import("@mui/material").SkeletonProps<"span", {}> | (({ cell, column, row, table, }: {
91
+ cell: MRT_Cell<TData>;
92
+ column: MRT_Column<TData>;
93
+ row: MRT_Row<TData>;
94
+ table: MRT_TableInstance<TData>;
95
+ }) => import("@mui/material").SkeletonProps<"span", {}>) | undefined;
96
+ muiTableBodyProps?: import("@mui/material").TableBodyProps<"tbody", {}> | (({ table }: {
97
+ table: MRT_TableInstance<TData>;
98
+ }) => import("@mui/material").TableBodyProps<"tbody", {}>) | undefined;
99
+ muiTableBodyRowDragHandleProps?: import("@mui/material").IconButtonProps<"button", {}> | (({ table, row, }: {
100
+ table: MRT_TableInstance<TData>;
101
+ row: MRT_Row<TData>;
102
+ }) => import("@mui/material").IconButtonProps<"button", {}>) | undefined;
103
+ muiTableBodyRowProps?: import("@mui/material").TableRowProps<"tr", {}> | (({ table, row, }: {
104
+ table: MRT_TableInstance<TData>;
105
+ row: MRT_Row<TData>;
106
+ }) => import("@mui/material").TableRowProps<"tr", {}>) | undefined;
107
+ muiTableContainerProps?: import("@mui/material").TableContainerProps<"div", {}> | (({ table, }: {
108
+ table: MRT_TableInstance<TData>;
109
+ }) => import("@mui/material").TableContainerProps<"div", {}>) | undefined;
110
+ muiTableDetailPanelProps?: import("@mui/material").TableCellProps | (({ table, row, }: {
111
+ table: MRT_TableInstance<TData>;
112
+ row: MRT_Row<TData>;
113
+ }) => import("@mui/material").TableCellProps) | undefined;
114
+ muiTableFooterCellProps?: import("@mui/material").TableCellProps | (({ table, column, }: {
115
+ table: MRT_TableInstance<TData>;
116
+ column: MRT_Column<TData>;
117
+ }) => import("@mui/material").TableCellProps) | undefined;
118
+ muiTableFooterProps?: import("@mui/material").TableFooterProps<"tfoot", {}> | (({ table }: {
119
+ table: MRT_TableInstance<TData>;
120
+ }) => import("@mui/material").TableFooterProps<"tfoot", {}>) | undefined;
121
+ muiTableFooterRowProps?: import("@mui/material").TableRowProps<"tr", {}> | (({ table, footerGroup, }: {
122
+ table: MRT_TableInstance<TData>;
123
+ footerGroup: import("..").MRT_HeaderGroup<TData>;
124
+ }) => import("@mui/material").TableRowProps<"tr", {}>) | undefined;
125
+ muiTableHeadCellColumnActionsButtonProps?: import("@mui/material").IconButtonProps<"button", {}> | (({ table, column, }: {
126
+ table: MRT_TableInstance<TData>;
127
+ column: MRT_Column<TData>;
128
+ }) => import("@mui/material").IconButtonProps<"button", {}>) | undefined;
129
+ muiTableHeadCellDragHandleProps?: import("@mui/material").IconButtonProps<"button", {}> | (({ table, column, }: {
130
+ table: MRT_TableInstance<TData>;
131
+ column: MRT_Column<TData>;
132
+ }) => import("@mui/material").IconButtonProps<"button", {}>) | undefined;
133
+ muiTableHeadCellFilterTextFieldProps?: import("@mui/material").TextFieldProps | (({ table, column, rangeFilterIndex, }: {
134
+ table: MRT_TableInstance<TData>;
135
+ column: MRT_Column<TData>;
136
+ rangeFilterIndex?: number | undefined;
137
+ }) => import("@mui/material").TextFieldProps) | undefined;
138
+ muiTableHeadCellProps?: import("@mui/material").TableCellProps | (({ table, column, }: {
139
+ table: MRT_TableInstance<TData>;
140
+ column: MRT_Column<TData>;
141
+ }) => import("@mui/material").TableCellProps) | undefined;
142
+ muiTableHeadProps?: import("@mui/material").TableHeadProps<"thead", {}> | (({ table }: {
143
+ table: MRT_TableInstance<TData>;
144
+ }) => import("@mui/material").TableHeadProps<"thead", {}>) | undefined;
145
+ muiTableHeadRowProps?: import("@mui/material").TableRowProps<"tr", {}> | (({ table, headerGroup, }: {
146
+ table: MRT_TableInstance<TData>;
147
+ headerGroup: import("..").MRT_HeaderGroup<TData>;
148
+ }) => import("@mui/material").TableRowProps<"tr", {}>) | undefined;
149
+ muiTablePaginationProps?: Partial<import("@mui/material").TablePaginationProps<React.JSXElementConstructor<import("@mui/material").TablePaginationBaseProps>, {}>> | (({ table, }: {
150
+ table: MRT_TableInstance<TData>;
151
+ }) => Partial<import("@mui/material").TablePaginationProps<React.JSXElementConstructor<import("@mui/material").TablePaginationBaseProps>, {}>>) | undefined;
152
+ muiTablePaperProps?: import("@mui/material").PaperProps<"div", {}> | (({ table }: {
153
+ table: MRT_TableInstance<TData>;
154
+ }) => import("@mui/material").PaperProps<"div", {}>) | undefined;
155
+ muiTableProps?: import("@mui/material").TableProps<"table", {}> | (({ table }: {
156
+ table: MRT_TableInstance<TData>;
157
+ }) => import("@mui/material").TableProps<"table", {}>) | undefined;
158
+ muiToolbarAlertBannerChipProps?: import("@mui/material").ChipProps<"div", {}> | (({ table }: {
159
+ table: MRT_TableInstance<TData>;
160
+ }) => import("@mui/material").ChipProps<"div", {}>) | undefined;
161
+ muiToolbarAlertBannerProps?: import("@mui/material").AlertProps | (({ table }: {
162
+ table: MRT_TableInstance<TData>;
163
+ }) => import("@mui/material").AlertProps) | undefined;
164
+ muiTopToolbarProps?: import("@mui/material").ToolbarProps<"div", {}> | (({ table }: {
165
+ table: MRT_TableInstance<TData>;
166
+ }) => import("@mui/material").ToolbarProps<"div", {}>) | undefined;
167
+ onDensityChange?: import("@tanstack/table-core").OnChangeFn<boolean> | undefined;
168
+ onDraggingColumnChange?: import("@tanstack/table-core").OnChangeFn<MRT_Column<TData> | null> | undefined;
169
+ onDraggingRowChange?: import("@tanstack/table-core").OnChangeFn<MRT_Row<TData> | null> | undefined;
170
+ onEditingCellChange?: import("@tanstack/table-core").OnChangeFn<MRT_Cell<TData> | null> | undefined;
171
+ onEditingRowSave?: (({ exitEditingMode, row, table, values, }: {
172
+ exitEditingMode: () => void;
173
+ row: MRT_Row<TData>;
174
+ table: MRT_TableInstance<TData>;
175
+ values: Record<(string & Record<never, never>) | (string & import("@tanstack/table-core").DeepKeys<TData>), any>;
176
+ }) => void | Promise<void>) | undefined;
177
+ onEditingRowChange?: import("@tanstack/table-core").OnChangeFn<MRT_Row<TData> | null> | undefined;
178
+ onFilterFnsChange?: import("@tanstack/table-core").OnChangeFn<{
179
+ [key: string]: MRT_FilterOption;
180
+ }> | undefined;
181
+ onGlobalFilterFnChange?: import("@tanstack/table-core").OnChangeFn<MRT_FilterOption> | undefined;
182
+ onHoveredColumnChange?: import("@tanstack/table-core").OnChangeFn<MRT_Column<TData> | null> | undefined;
183
+ onHoveredRowChange?: import("@tanstack/table-core").OnChangeFn<MRT_Row<TData> | null> | undefined;
184
+ onIsFullScreenChange?: import("@tanstack/table-core").OnChangeFn<boolean> | undefined;
185
+ onShowAlertBannerChange?: import("@tanstack/table-core").OnChangeFn<boolean> | undefined;
186
+ onShowFiltersChange?: import("@tanstack/table-core").OnChangeFn<boolean> | undefined;
187
+ onShowGlobalFilterChange?: import("@tanstack/table-core").OnChangeFn<boolean> | undefined;
188
+ positionActionsColumn?: "first" | "last" | undefined;
189
+ positionExpandColumn?: "first" | "last" | undefined;
190
+ positionGlobalFilter?: "left" | "right" | undefined;
191
+ positionPagination?: "bottom" | "top" | "both" | undefined;
192
+ positionToolbarAlertBanner?: "bottom" | "top" | "none" | undefined;
193
+ positionToolbarDropZone?: "bottom" | "top" | "none" | "both" | undefined;
194
+ renderBottomToolbar?: React.ReactNode | (({ table }: {
195
+ table: MRT_TableInstance<TData>;
196
+ }) => React.ReactNode);
197
+ renderBottomToolbarCustomActions?: (({ table, }: {
198
+ table: MRT_TableInstance<TData>;
199
+ }) => React.ReactNode) | undefined;
200
+ renderColumnActionsMenuItems?: (({ column, closeMenu, table, }: {
201
+ column: MRT_Column<TData>;
202
+ closeMenu: () => void;
203
+ table: MRT_TableInstance<TData>;
204
+ }) => React.ReactNode[]) | undefined;
205
+ renderColumnFilterModeMenuItems?: (({ column, internalFilterOptions, onSelectFilterMode, table, }: {
206
+ column: MRT_Column<TData>;
207
+ internalFilterOptions: import("..").MRT_InternalFilterOption[];
208
+ onSelectFilterMode: (filterMode: MRT_FilterOption) => void;
209
+ table: MRT_TableInstance<TData>;
210
+ }) => React.ReactNode[]) | undefined;
211
+ renderDetailPanel?: (({ row, table, }: {
212
+ row: MRT_Row<TData>;
213
+ table: MRT_TableInstance<TData>;
214
+ }) => React.ReactNode) | undefined;
215
+ renderGlobalFilterModeMenuItems?: (({ internalFilterOptions, onSelectFilterMode, table, }: {
216
+ internalFilterOptions: import("..").MRT_InternalFilterOption[];
217
+ onSelectFilterMode: (filterMode: MRT_FilterOption) => void;
218
+ table: MRT_TableInstance<TData>;
219
+ }) => React.ReactNode[]) | undefined;
220
+ renderRowActionMenuItems?: (({ closeMenu, row, table, }: {
221
+ closeMenu: () => void;
222
+ row: MRT_Row<TData>;
223
+ table: MRT_TableInstance<TData>;
224
+ }) => React.ReactNode[]) | undefined;
225
+ renderRowActions?: (({ cell, row, table, }: {
226
+ cell: MRT_Cell<TData>;
227
+ row: MRT_Row<TData>;
228
+ table: MRT_TableInstance<TData>;
229
+ }) => React.ReactNode) | undefined;
230
+ renderToolbarInternalActions?: (({ table, }: {
231
+ table: MRT_TableInstance<TData>;
232
+ }) => React.ReactNode) | undefined;
233
+ renderTopToolbar?: React.ReactNode | (({ table }: {
234
+ table: MRT_TableInstance<TData>;
235
+ }) => React.ReactNode);
236
+ renderTopToolbarCustomActions?: (({ table, }: {
237
+ table: MRT_TableInstance<TData>;
238
+ }) => React.ReactNode) | undefined;
239
+ rowCount?: number | undefined;
240
+ rowNumberMode?: "original" | "static" | undefined;
241
+ selectAllMode?: "all" | "page" | undefined;
242
+ state?: Partial<MRT_TableState<TData>> | undefined;
243
+ tableInstanceRef?: React.MutableRefObject<MRT_TableInstance<TData> | null> | undefined;
244
+ virtualizerProps?: Partial<import("react-virtual").Options<HTMLDivElement>> | (({ table, }: {
245
+ table: MRT_TableInstance<TData>;
246
+ }) => Partial<import("react-virtual").Options<HTMLDivElement>>) | undefined;
247
+ virtualizerInstanceRef?: React.MutableRefObject<import("..").Virtualizer | null> | undefined;
248
+ } & {
249
+ localization: MRT_Localization;
250
+ }) => JSX.Element;
@@ -1,8 +1,7 @@
1
- import { FC } from 'react';
2
1
  import { MRT_TableInstance } from '..';
3
- interface Props {
4
- table: MRT_TableInstance;
2
+ interface Props<TData extends Record<string, any> = {}> {
3
+ table: MRT_TableInstance<TData>;
5
4
  position: 'top' | 'bottom';
6
5
  }
7
- export declare const MRT_TablePagination: FC<Props>;
6
+ export declare const MRT_TablePagination: <TData extends Record<string, any> = {}>({ table, position, }: Props<TData>) => JSX.Element;
8
7
  export {};
@@ -1,7 +1,7 @@
1
1
  import { FC } from 'react';
2
2
  import { MRT_TableInstance } from '..';
3
3
  interface Props {
4
- stackAlertBanner?: boolean;
4
+ stackAlertBanner: boolean;
5
5
  table: MRT_TableInstance;
6
6
  }
7
7
  export declare const MRT_ToolbarAlertBanner: FC<Props>;
@@ -1,7 +1,6 @@
1
- import { FC } from 'react';
2
1
  import type { MRT_TableInstance } from '..';
3
- interface Props {
4
- table: MRT_TableInstance;
2
+ interface Props<TData extends Record<string, any> = {}> {
3
+ table: MRT_TableInstance<TData>;
5
4
  }
6
- export declare const MRT_ToolbarInternalButtons: FC<Props>;
5
+ export declare const MRT_ToolbarInternalButtons: <TData extends Record<string, any> = {}>({ table, }: Props<TData>) => JSX.Element;
7
6
  export {};
@@ -8,6 +8,7 @@ export declare const commonToolbarStyles: ({ theme }: {
8
8
  backgroundColor: string;
9
9
  backgroundImage: string;
10
10
  display: string;
11
+ flexWrap: string;
11
12
  minHeight: string;
12
13
  overflow: string;
13
14
  p: string;
package/dist/index.d.ts CHANGED
@@ -1,5 +1,4 @@
1
- /// <reference types="react" />
2
- import { MutableRefObject, Dispatch, SetStateAction, ReactNode, DragEvent } from 'react';
1
+ import { MutableRefObject, Dispatch, SetStateAction, ReactNode } from 'react';
3
2
  import { ButtonProps, TextFieldProps, TableCellProps, IconButtonProps, ToolbarProps, LinearProgressProps, CheckboxProps, SkeletonProps, TableBodyProps, TableRowProps, TableContainerProps, TableFooterProps, TableHeadProps, TablePaginationProps, PaperProps, TableProps, ChipProps, AlertProps } from '@mui/material';
4
3
  import { Row, Table, TableState, ColumnDef, DeepKeys, Column, Header, HeaderGroup, Cell, SortingFn, FilterFn, TableOptions, OnChangeFn } from '@tanstack/react-table';
5
4
  import { Options, VirtualItem } from 'react-virtual';
@@ -106,6 +105,17 @@ declare const MRT_FilterFns: {
106
105
  inNumberRange: _tanstack_table_core.FilterFn<any>;
107
106
  };
108
107
 
108
+ declare const MRT_SortingFns: {
109
+ fuzzy: <TData extends Record<string, any> = {}>(rowA: Row<TData>, rowB: Row<TData>, columnId: string) => number;
110
+ alphanumeric: _tanstack_table_core.SortingFn<any>;
111
+ alphanumericCaseSensitive: _tanstack_table_core.SortingFn<any>;
112
+ text: _tanstack_table_core.SortingFn<any>;
113
+ textCaseSensitive: _tanstack_table_core.SortingFn<any>;
114
+ datetime: _tanstack_table_core.SortingFn<any>;
115
+ basic: _tanstack_table_core.SortingFn<any>;
116
+ };
117
+
118
+ declare type LiteralUnion<T extends U, U = string> = T | (U & Record<never, never>);
109
119
  interface MRT_Localization {
110
120
  actions: string;
111
121
  and: string;
@@ -155,6 +165,8 @@ interface MRT_Localization {
155
165
  max: string;
156
166
  min: string;
157
167
  move: string;
168
+ noRecordsToDisplay: string;
169
+ noResultsFound: string;
158
170
  or: string;
159
171
  pinToLeft: string;
160
172
  pinToRight: string;
@@ -187,18 +199,6 @@ interface MRT_Localization {
187
199
  unpinAll: string;
188
200
  unsorted: string;
189
201
  }
190
-
191
- declare const MRT_SortingFns: {
192
- fuzzy: <TData extends Record<string, any> = {}>(rowA: Row<TData>, rowB: Row<TData>, columnId: string) => number;
193
- alphanumeric: _tanstack_table_core.SortingFn<any>;
194
- alphanumericCaseSensitive: _tanstack_table_core.SortingFn<any>;
195
- text: _tanstack_table_core.SortingFn<any>;
196
- textCaseSensitive: _tanstack_table_core.SortingFn<any>;
197
- datetime: _tanstack_table_core.SortingFn<any>;
198
- basic: _tanstack_table_core.SortingFn<any>;
199
- };
200
-
201
- declare type LiteralUnion<T extends U, U = string> = T | (U & Record<never, never>);
202
202
  interface MRT_RowModel<TData extends Record<string, any> = {}> {
203
203
  flatRows: MRT_Row<TData>[];
204
204
  rows: MRT_Row<TData>[];
@@ -232,6 +232,7 @@ declare type MRT_TableInstance<TData extends Record<string, any> = {}> = Omit<Ta
232
232
  filterInputRefs: MutableRefObject<Record<string, HTMLInputElement>>;
233
233
  searchInputRef: MutableRefObject<HTMLInputElement>;
234
234
  tableContainerRef: MutableRefObject<HTMLDivElement>;
235
+ tablePaperRef: MutableRefObject<HTMLDivElement>;
235
236
  topToolbarRef: MutableRefObject<HTMLDivElement>;
236
237
  };
237
238
  setColumnFilterFns: Dispatch<SetStateAction<{
@@ -385,9 +386,11 @@ declare type MRT_ColumnDef<TData extends Record<string, any> = {}> = Omit<Column
385
386
  row: MRT_Row<TData>;
386
387
  table: MRT_TableInstance<TData>;
387
388
  }) => TextFieldProps);
388
- muiTableBodyCellProps?: TableCellProps | (({ cell, table, }: {
389
- table: MRT_TableInstance<TData>;
389
+ muiTableBodyCellProps?: TableCellProps | (({ cell, column, row, table, }: {
390
390
  cell: MRT_Cell<TData>;
391
+ column: MRT_Column<TData>;
392
+ row: MRT_Row<TData>;
393
+ table: MRT_TableInstance<TData>;
391
394
  }) => TableCellProps);
392
395
  muiTableFooterCellProps?: TableCellProps | (({ table, column, }: {
393
396
  table: MRT_TableInstance<TData>;
@@ -518,7 +521,7 @@ declare type MaterialReactTableProps<TData extends Record<string, any> = {}> = O
518
521
  muiExpandAllButtonProps?: IconButtonProps | (({ table }: {
519
522
  table: MRT_TableInstance<TData>;
520
523
  }) => IconButtonProps);
521
- muiExpandButtonProps?: IconButtonProps | (({ table, }: {
524
+ muiExpandButtonProps?: IconButtonProps | (({ row, table, }: {
522
525
  table: MRT_TableInstance<TData>;
523
526
  row: MRT_Row<TData>;
524
527
  }) => IconButtonProps);
@@ -554,9 +557,11 @@ declare type MaterialReactTableProps<TData extends Record<string, any> = {}> = O
554
557
  row: MRT_Row<TData>;
555
558
  table: MRT_TableInstance<TData>;
556
559
  }) => TableCellProps);
557
- muiTableBodyCellSkeletonProps?: SkeletonProps | (({ table, cell, }: {
558
- table: MRT_TableInstance<TData>;
560
+ muiTableBodyCellSkeletonProps?: SkeletonProps | (({ cell, column, row, table, }: {
559
561
  cell: MRT_Cell<TData>;
562
+ column: MRT_Column<TData>;
563
+ row: MRT_Row<TData>;
564
+ table: MRT_TableInstance<TData>;
560
565
  }) => SkeletonProps);
561
566
  muiTableBodyProps?: TableBodyProps | (({ table }: {
562
567
  table: MRT_TableInstance<TData>;
@@ -629,13 +634,6 @@ declare type MaterialReactTableProps<TData extends Record<string, any> = {}> = O
629
634
  muiTopToolbarProps?: ToolbarProps | (({ table }: {
630
635
  table: MRT_TableInstance<TData>;
631
636
  }) => ToolbarProps);
632
- onColumnDrop?: ({ event, draggedColumn, targetColumn, }: {
633
- event: DragEvent<HTMLButtonElement>;
634
- draggedColumn: MRT_Column<TData>;
635
- targetColumn: MRT_Column<TData> | {
636
- id: string;
637
- } | null;
638
- }) => void;
639
637
  onDensityChange?: OnChangeFn<boolean>;
640
638
  onDraggingColumnChange?: OnChangeFn<MRT_Column<TData> | null>;
641
639
  onDraggingRowChange?: OnChangeFn<MRT_Row<TData> | null>;
@@ -654,13 +652,6 @@ declare type MaterialReactTableProps<TData extends Record<string, any> = {}> = O
654
652
  onHoveredColumnChange?: OnChangeFn<MRT_Column<TData> | null>;
655
653
  onHoveredRowChange?: OnChangeFn<MRT_Row<TData> | null>;
656
654
  onIsFullScreenChange?: OnChangeFn<boolean>;
657
- onRowDrop?: ({ event, draggedRow, targetRow, }: {
658
- event: DragEvent<HTMLButtonElement>;
659
- draggedRow: MRT_Row<TData>;
660
- targetRow: MRT_Row<TData> | {
661
- id: string;
662
- } | null;
663
- }) => void;
664
655
  onShowAlertBannerChange?: OnChangeFn<boolean>;
665
656
  onShowFiltersChange?: OnChangeFn<boolean>;
666
657
  onShowGlobalFilterChange?: OnChangeFn<boolean>;
@@ -670,6 +661,9 @@ declare type MaterialReactTableProps<TData extends Record<string, any> = {}> = O
670
661
  positionPagination?: 'bottom' | 'top' | 'both';
671
662
  positionToolbarAlertBanner?: 'bottom' | 'top' | 'none';
672
663
  positionToolbarDropZone?: 'bottom' | 'top' | 'none' | 'both';
664
+ renderBottomToolbar?: ReactNode | (({ table }: {
665
+ table: MRT_TableInstance<TData>;
666
+ }) => ReactNode);
673
667
  renderBottomToolbarCustomActions?: ({ table, }: {
674
668
  table: MRT_TableInstance<TData>;
675
669
  }) => ReactNode;
@@ -706,6 +700,9 @@ declare type MaterialReactTableProps<TData extends Record<string, any> = {}> = O
706
700
  renderToolbarInternalActions?: ({ table, }: {
707
701
  table: MRT_TableInstance<TData>;
708
702
  }) => ReactNode;
703
+ renderTopToolbar?: ReactNode | (({ table }: {
704
+ table: MRT_TableInstance<TData>;
705
+ }) => ReactNode);
709
706
  renderTopToolbarCustomActions?: ({ table, }: {
710
707
  table: MRT_TableInstance<TData>;
711
708
  }) => ReactNode;
@@ -728,41 +725,52 @@ declare type Virtualizer = {
728
725
  };
729
726
  declare const _default: <TData extends Record<string, any> = {}>({ aggregationFns, autoResetExpanded, columnResizeMode, defaultColumn, defaultDisplayColumn, editingMode, enableBottomToolbar, enableColumnActions, enableColumnFilters, enableColumnOrdering, enableColumnResizing, enableDensityToggle, enableExpandAll, enableFilters, enableFullScreenToggle, enableGlobalFilter, enableGlobalFilterRankedResults, enableGrouping, enableHiding, enableMultiRowSelection, enableMultiSort, enablePagination, enablePinning, enableRowSelection, enableSelectAll, enableSorting, enableStickyHeader, enableTableFooter, enableTableHead, enableToolbarInternalActions, enableTopToolbar, filterFns, icons, localization, positionActionsColumn, positionExpandColumn, positionGlobalFilter, positionPagination, positionToolbarAlertBanner, positionToolbarDropZone, rowNumberMode, selectAllMode, sortingFns, ...rest }: MaterialReactTableProps<TData>) => JSX.Element;
730
727
 
731
- interface Props$6<TData extends Record<string, any> = {}> {
728
+ interface Props$8<TData extends Record<string, any> = {}> {
732
729
  cell: MRT_Cell<TData>;
733
730
  children: ReactNode;
734
731
  table: MRT_TableInstance<TData>;
735
732
  }
736
- declare const MRT_CopyButton: <TData extends Record<string, any> = {}>({ cell, children, table, }: Props$6<TData>) => JSX.Element;
733
+ declare const MRT_CopyButton: <TData extends Record<string, any> = {}>({ cell, children, table, }: Props$8<TData>) => JSX.Element;
734
+
735
+ interface Props$7<TData extends Record<string, any> = {}> extends IconButtonProps {
736
+ table: MRT_TableInstance<TData>;
737
+ }
738
+ declare const MRT_FullScreenToggleButton: <TData extends Record<string, any> = {}>({ table, ...rest }: Props$7<TData>) => JSX.Element;
739
+
740
+ interface Props$6<TData extends Record<string, any> = {}> {
741
+ table: MRT_TableInstance<TData>;
742
+ }
743
+ declare const MRT_GlobalFilterTextField: <TData extends Record<string, any> = {}>({ table, }: Props$6<TData>) => JSX.Element;
737
744
 
738
745
  interface Props$5<TData extends Record<string, any> = {}> extends IconButtonProps {
739
746
  table: MRT_TableInstance<TData>;
740
747
  }
741
- declare const MRT_FullScreenToggleButton: <TData extends Record<string, any> = {}>({ table, ...rest }: Props$5<TData>) => JSX.Element;
748
+ declare const MRT_ShowHideColumnsButton: <TData extends Record<string, any> = {}>({ table, ...rest }: Props$5<TData>) => JSX.Element;
742
749
 
743
750
  interface Props$4<TData extends Record<string, any> = {}> {
744
751
  table: MRT_TableInstance<TData>;
752
+ position: 'top' | 'bottom';
745
753
  }
746
- declare const MRT_GlobalFilterTextField: <TData extends Record<string, any> = {}>({ table, }: Props$4<TData>) => JSX.Element;
754
+ declare const MRT_TablePagination: <TData extends Record<string, any> = {}>({ table, position, }: Props$4<TData>) => JSX.Element;
747
755
 
748
756
  interface Props$3<TData extends Record<string, any> = {}> extends IconButtonProps {
749
757
  table: MRT_TableInstance<TData>;
750
758
  }
751
- declare const MRT_ShowHideColumnsButton: <TData extends Record<string, any> = {}>({ table, ...rest }: Props$3<TData>) => JSX.Element;
759
+ declare const MRT_ToggleDensePaddingButton: <TData extends Record<string, any> = {}>({ table, ...rest }: Props$3<TData>) => JSX.Element;
752
760
 
753
761
  interface Props$2<TData extends Record<string, any> = {}> extends IconButtonProps {
754
762
  table: MRT_TableInstance<TData>;
755
763
  }
756
- declare const MRT_ToggleDensePaddingButton: <TData extends Record<string, any> = {}>({ table, ...rest }: Props$2<TData>) => JSX.Element;
764
+ declare const MRT_ToggleFiltersButton: <TData extends Record<string, any> = {}>({ table, ...rest }: Props$2<TData>) => JSX.Element;
757
765
 
758
766
  interface Props$1<TData extends Record<string, any> = {}> extends IconButtonProps {
759
767
  table: MRT_TableInstance<TData>;
760
768
  }
761
- declare const MRT_ToggleFiltersButton: <TData extends Record<string, any> = {}>({ table, ...rest }: Props$1<TData>) => JSX.Element;
769
+ declare const MRT_ToggleGlobalFilterButton: <TData extends Record<string, any> = {}>({ table, ...rest }: Props$1<TData>) => JSX.Element;
762
770
 
763
- interface Props<TData extends Record<string, any> = {}> extends IconButtonProps {
771
+ interface Props<TData extends Record<string, any> = {}> {
764
772
  table: MRT_TableInstance<TData>;
765
773
  }
766
- declare const MRT_ToggleGlobalFilterButton: <TData extends Record<string, any> = {}>({ table, ...rest }: Props<TData>) => JSX.Element;
774
+ declare const MRT_ToolbarInternalButtons: <TData extends Record<string, any> = {}>({ table, }: Props<TData>) => JSX.Element;
767
775
 
768
- export { MRT_Cell, MRT_Column, MRT_ColumnDef, MRT_CopyButton, MRT_DefinedColumnDef, MRT_DisplayColumnIds, MRT_FilterFn, MRT_FilterOption, MRT_FullScreenToggleButton, MRT_GlobalFilterTextField, MRT_Header, MRT_HeaderGroup, MRT_Icons, MRT_InternalFilterOption, MRT_Localization, MRT_Row, MRT_RowModel, MRT_ShowHideColumnsButton, MRT_SortingFn, MRT_SortingOption, MRT_TableInstance, MRT_TableState, MRT_ToggleDensePaddingButton, MRT_ToggleFiltersButton, MRT_ToggleGlobalFilterButton, MaterialReactTableProps, Virtualizer, _default as default };
776
+ export { MRT_Cell, MRT_Column, MRT_ColumnDef, MRT_CopyButton, MRT_DefinedColumnDef, MRT_DisplayColumnIds, MRT_FilterFn, MRT_FilterOption, MRT_FullScreenToggleButton, MRT_GlobalFilterTextField, MRT_Header, MRT_HeaderGroup, MRT_Icons, MRT_InternalFilterOption, MRT_Localization, MRT_Row, MRT_RowModel, MRT_ShowHideColumnsButton, MRT_SortingFn, MRT_SortingOption, MRT_TableInstance, MRT_TablePagination, MRT_TableState, MRT_ToggleDensePaddingButton, MRT_ToggleFiltersButton, MRT_ToggleGlobalFilterButton, MRT_ToolbarInternalButtons, MaterialReactTableProps, Virtualizer, _default as default };
package/package.json CHANGED
@@ -1,5 +1,5 @@
1
1
  {
2
- "version": "1.0.0-beta.1",
2
+ "version": "1.0.0-beta.12",
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.",
@@ -51,8 +51,8 @@
51
51
  "devDependencies": {
52
52
  "@babel/core": "^7.18.13",
53
53
  "@babel/preset-react": "^7.18.6",
54
- "@emotion/react": "^11.10.0",
55
- "@emotion/styled": "^11.10.0",
54
+ "@emotion/react": "^11.10.4",
55
+ "@emotion/styled": "^11.10.4",
56
56
  "@faker-js/faker": "^7.5.0",
57
57
  "@mui/icons-material": "^5.10.3",
58
58
  "@mui/material": "^5.10.3",
@@ -68,7 +68,7 @@
68
68
  "@storybook/addon-storysource": "^6.5.10",
69
69
  "@storybook/addons": "^6.5.10",
70
70
  "@storybook/react": "^6.5.10",
71
- "@types/react": "^18.0.17",
71
+ "@types/react": "^18.0.18",
72
72
  "@types/react-dom": "^18.0.6",
73
73
  "babel-loader": "^8.2.5",
74
74
  "eslint": "^8.23.0",
@@ -78,7 +78,8 @@
78
78
  "react": "^18.2.0",
79
79
  "react-dom": "^18.2.0",
80
80
  "react-is": "^18.2.0",
81
- "rollup": "^2.78.1",
81
+ "rollup": "^2.79.0",
82
+ "rollup-plugin-copy": "^3.4.0",
82
83
  "rollup-plugin-dts": "^4.2.2",
83
84
  "rollup-plugin-peer-deps-external": "^2.2.4",
84
85
  "size-limit": "^8.0.1",
@@ -95,7 +96,7 @@
95
96
  },
96
97
  "dependencies": {
97
98
  "@tanstack/match-sorter-utils": "8.1.1",
98
- "@tanstack/react-table": "8.5.11",
99
+ "@tanstack/react-table": "8.5.13",
99
100
  "react-virtual": "^2.10.4"
100
101
  }
101
102
  }