material-react-table 1.11.3 → 1.11.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.
Files changed (232) hide show
  1. package/README.md +1 -1
  2. package/dist/cjs/index.js +590 -817
  3. package/dist/cjs/index.js.map +1 -1
  4. package/dist/cjs/types/MaterialReactTable.d.ts +4 -5
  5. package/dist/cjs/types/_locales/hu.d.ts +2 -0
  6. package/dist/cjs/types/body/MRT_EditRowModal.d.ts +1 -2
  7. package/dist/cjs/types/body/MRT_TableBody.d.ts +3 -3
  8. package/dist/cjs/types/body/MRT_TableBodyCell.d.ts +3 -3
  9. package/dist/cjs/types/body/MRT_TableBodyCellValue.d.ts +1 -2
  10. package/dist/cjs/types/body/MRT_TableBodyRow.d.ts +3 -3
  11. package/dist/cjs/types/body/MRT_TableBodyRowGrabHandle.d.ts +1 -1
  12. package/dist/cjs/types/body/MRT_TableDetailPanel.d.ts +2 -2
  13. package/dist/cjs/types/buttons/MRT_ColumnPinningButtons.d.ts +1 -2
  14. package/dist/cjs/types/buttons/MRT_CopyButton.d.ts +1 -1
  15. package/dist/cjs/types/buttons/MRT_EditActionButtons.d.ts +1 -2
  16. package/dist/cjs/types/buttons/MRT_ExpandAllButton.d.ts +1 -2
  17. package/dist/cjs/types/buttons/MRT_ExpandButton.d.ts +1 -2
  18. package/dist/cjs/types/buttons/MRT_FullScreenToggleButton.d.ts +1 -2
  19. package/dist/cjs/types/buttons/MRT_GrabHandleButton.d.ts +1 -1
  20. package/dist/cjs/types/buttons/MRT_ShowHideColumnsButton.d.ts +1 -2
  21. package/dist/cjs/types/buttons/MRT_ToggleDensePaddingButton.d.ts +1 -2
  22. package/dist/cjs/types/buttons/MRT_ToggleFiltersButton.d.ts +1 -2
  23. package/dist/cjs/types/buttons/MRT_ToggleGlobalFilterButton.d.ts +1 -2
  24. package/dist/cjs/types/buttons/MRT_ToggleRowActionMenuButton.d.ts +1 -2
  25. package/dist/cjs/types/footer/MRT_TableFooter.d.ts +1 -2
  26. package/dist/cjs/types/footer/MRT_TableFooterCell.d.ts +1 -2
  27. package/dist/cjs/types/footer/MRT_TableFooterRow.d.ts +1 -2
  28. package/dist/cjs/types/head/MRT_TableHead.d.ts +1 -2
  29. package/dist/cjs/types/head/MRT_TableHeadCell.d.ts +1 -2
  30. package/dist/cjs/types/head/MRT_TableHeadCellColumnActionsButton.d.ts +1 -2
  31. package/dist/cjs/types/head/MRT_TableHeadCellFilterContainer.d.ts +1 -2
  32. package/dist/cjs/types/head/MRT_TableHeadCellFilterLabel.d.ts +1 -2
  33. package/dist/cjs/types/head/MRT_TableHeadCellGrabHandle.d.ts +1 -1
  34. package/dist/cjs/types/head/MRT_TableHeadCellResizeHandle.d.ts +1 -2
  35. package/dist/cjs/types/head/MRT_TableHeadCellSortLabel.d.ts +1 -2
  36. package/dist/cjs/types/head/MRT_TableHeadRow.d.ts +1 -2
  37. package/dist/cjs/types/index.d.ts +3 -2
  38. package/dist/cjs/types/inputs/MRT_EditCellTextField.d.ts +1 -2
  39. package/dist/cjs/types/inputs/MRT_FilterCheckbox.d.ts +1 -2
  40. package/dist/cjs/types/inputs/MRT_FilterRangeFields.d.ts +1 -2
  41. package/dist/cjs/types/inputs/MRT_FilterTextField.d.ts +1 -2
  42. package/dist/cjs/types/inputs/MRT_GlobalFilterTextField.d.ts +1 -2
  43. package/dist/cjs/types/inputs/MRT_SelectCheckbox.d.ts +1 -2
  44. package/dist/cjs/types/menus/MRT_ColumnActionMenu.d.ts +1 -2
  45. package/dist/cjs/types/menus/MRT_FilterOptionMenu.d.ts +1 -2
  46. package/dist/cjs/types/menus/MRT_RowActionMenu.d.ts +1 -1
  47. package/dist/cjs/types/menus/MRT_ShowHideColumnsMenu.d.ts +1 -2
  48. package/dist/cjs/types/menus/MRT_ShowHideColumnsMenuItems.d.ts +1 -1
  49. package/dist/cjs/types/table/MRT_Table.d.ts +1 -2
  50. package/dist/cjs/types/table/MRT_TableContainer.d.ts +1 -2
  51. package/dist/cjs/types/table/MRT_TablePaper.d.ts +1 -2
  52. package/dist/cjs/types/toolbar/MRT_BottomToolbar.d.ts +1 -2
  53. package/dist/cjs/types/toolbar/MRT_LinearProgressBar.d.ts +1 -2
  54. package/dist/cjs/types/toolbar/MRT_TablePagination.d.ts +1 -2
  55. package/dist/cjs/types/toolbar/MRT_ToolbarAlertBanner.d.ts +1 -2
  56. package/dist/cjs/types/toolbar/MRT_ToolbarDropZone.d.ts +1 -2
  57. package/dist/cjs/types/toolbar/MRT_ToolbarInternalButtons.d.ts +1 -2
  58. package/dist/cjs/types/toolbar/MRT_TopToolbar.d.ts +1 -2
  59. package/dist/esm/material-react-table.esm.js +511 -738
  60. package/dist/esm/material-react-table.esm.js.map +1 -1
  61. package/dist/esm/types/MaterialReactTable.d.ts +4 -5
  62. package/dist/esm/types/_locales/hu.d.ts +2 -0
  63. package/dist/esm/types/body/MRT_EditRowModal.d.ts +1 -2
  64. package/dist/esm/types/body/MRT_TableBody.d.ts +3 -3
  65. package/dist/esm/types/body/MRT_TableBodyCell.d.ts +3 -3
  66. package/dist/esm/types/body/MRT_TableBodyCellValue.d.ts +1 -2
  67. package/dist/esm/types/body/MRT_TableBodyRow.d.ts +3 -3
  68. package/dist/esm/types/body/MRT_TableBodyRowGrabHandle.d.ts +1 -1
  69. package/dist/esm/types/body/MRT_TableDetailPanel.d.ts +2 -2
  70. package/dist/esm/types/buttons/MRT_ColumnPinningButtons.d.ts +1 -2
  71. package/dist/esm/types/buttons/MRT_CopyButton.d.ts +1 -1
  72. package/dist/esm/types/buttons/MRT_EditActionButtons.d.ts +1 -2
  73. package/dist/esm/types/buttons/MRT_ExpandAllButton.d.ts +1 -2
  74. package/dist/esm/types/buttons/MRT_ExpandButton.d.ts +1 -2
  75. package/dist/esm/types/buttons/MRT_FullScreenToggleButton.d.ts +1 -2
  76. package/dist/esm/types/buttons/MRT_GrabHandleButton.d.ts +1 -1
  77. package/dist/esm/types/buttons/MRT_ShowHideColumnsButton.d.ts +1 -2
  78. package/dist/esm/types/buttons/MRT_ToggleDensePaddingButton.d.ts +1 -2
  79. package/dist/esm/types/buttons/MRT_ToggleFiltersButton.d.ts +1 -2
  80. package/dist/esm/types/buttons/MRT_ToggleGlobalFilterButton.d.ts +1 -2
  81. package/dist/esm/types/buttons/MRT_ToggleRowActionMenuButton.d.ts +1 -2
  82. package/dist/esm/types/footer/MRT_TableFooter.d.ts +1 -2
  83. package/dist/esm/types/footer/MRT_TableFooterCell.d.ts +1 -2
  84. package/dist/esm/types/footer/MRT_TableFooterRow.d.ts +1 -2
  85. package/dist/esm/types/head/MRT_TableHead.d.ts +1 -2
  86. package/dist/esm/types/head/MRT_TableHeadCell.d.ts +1 -2
  87. package/dist/esm/types/head/MRT_TableHeadCellColumnActionsButton.d.ts +1 -2
  88. package/dist/esm/types/head/MRT_TableHeadCellFilterContainer.d.ts +1 -2
  89. package/dist/esm/types/head/MRT_TableHeadCellFilterLabel.d.ts +1 -2
  90. package/dist/esm/types/head/MRT_TableHeadCellGrabHandle.d.ts +1 -1
  91. package/dist/esm/types/head/MRT_TableHeadCellResizeHandle.d.ts +1 -2
  92. package/dist/esm/types/head/MRT_TableHeadCellSortLabel.d.ts +1 -2
  93. package/dist/esm/types/head/MRT_TableHeadRow.d.ts +1 -2
  94. package/dist/esm/types/index.d.ts +3 -2
  95. package/dist/esm/types/inputs/MRT_EditCellTextField.d.ts +1 -2
  96. package/dist/esm/types/inputs/MRT_FilterCheckbox.d.ts +1 -2
  97. package/dist/esm/types/inputs/MRT_FilterRangeFields.d.ts +1 -2
  98. package/dist/esm/types/inputs/MRT_FilterTextField.d.ts +1 -2
  99. package/dist/esm/types/inputs/MRT_GlobalFilterTextField.d.ts +1 -2
  100. package/dist/esm/types/inputs/MRT_SelectCheckbox.d.ts +1 -2
  101. package/dist/esm/types/menus/MRT_ColumnActionMenu.d.ts +1 -2
  102. package/dist/esm/types/menus/MRT_FilterOptionMenu.d.ts +1 -2
  103. package/dist/esm/types/menus/MRT_RowActionMenu.d.ts +1 -1
  104. package/dist/esm/types/menus/MRT_ShowHideColumnsMenu.d.ts +1 -2
  105. package/dist/esm/types/menus/MRT_ShowHideColumnsMenuItems.d.ts +1 -1
  106. package/dist/esm/types/table/MRT_Table.d.ts +1 -2
  107. package/dist/esm/types/table/MRT_TableContainer.d.ts +1 -2
  108. package/dist/esm/types/table/MRT_TablePaper.d.ts +1 -2
  109. package/dist/esm/types/toolbar/MRT_BottomToolbar.d.ts +1 -2
  110. package/dist/esm/types/toolbar/MRT_LinearProgressBar.d.ts +1 -2
  111. package/dist/esm/types/toolbar/MRT_TablePagination.d.ts +1 -2
  112. package/dist/esm/types/toolbar/MRT_ToolbarAlertBanner.d.ts +1 -2
  113. package/dist/esm/types/toolbar/MRT_ToolbarDropZone.d.ts +1 -2
  114. package/dist/esm/types/toolbar/MRT_ToolbarInternalButtons.d.ts +1 -2
  115. package/dist/esm/types/toolbar/MRT_TopToolbar.d.ts +1 -2
  116. package/dist/index.d.ts +39 -34
  117. package/locales/cs.esm.js +91 -89
  118. package/locales/cs.js +91 -89
  119. package/locales/da.esm.js +90 -89
  120. package/locales/da.js +90 -89
  121. package/locales/de.esm.js +90 -89
  122. package/locales/de.js +90 -89
  123. package/locales/en.esm.js +90 -89
  124. package/locales/en.js +90 -89
  125. package/locales/es.esm.js +90 -89
  126. package/locales/es.js +90 -89
  127. package/locales/fa.esm.js +90 -89
  128. package/locales/fa.js +90 -89
  129. package/locales/fi.esm.js +91 -89
  130. package/locales/fi.js +91 -89
  131. package/locales/fr.esm.js +90 -89
  132. package/locales/fr.js +90 -89
  133. package/locales/hu.d.ts +2 -0
  134. package/locales/hu.esm.d.ts +2 -0
  135. package/locales/hu.esm.js +95 -0
  136. package/locales/hu.esm.js.map +1 -0
  137. package/locales/hu.js +99 -0
  138. package/locales/hu.js.map +1 -0
  139. package/locales/id.esm.js +91 -89
  140. package/locales/id.js +91 -89
  141. package/locales/it.esm.js +90 -89
  142. package/locales/it.js +90 -89
  143. package/locales/ja.esm.js +90 -89
  144. package/locales/ja.js +90 -89
  145. package/locales/nl.esm.js +90 -89
  146. package/locales/nl.js +90 -89
  147. package/locales/pl.esm.js +90 -89
  148. package/locales/pl.js +90 -89
  149. package/locales/pt-BR.esm.js +90 -89
  150. package/locales/pt-BR.js +90 -89
  151. package/locales/pt.esm.js +90 -89
  152. package/locales/pt.js +90 -89
  153. package/locales/ro.esm.js +90 -89
  154. package/locales/ro.js +90 -89
  155. package/locales/ru.esm.js +90 -89
  156. package/locales/ru.js +90 -89
  157. package/locales/sk.esm.js +91 -89
  158. package/locales/sk.js +91 -89
  159. package/locales/sr-Cyrl-RS.esm.js +90 -89
  160. package/locales/sr-Cyrl-RS.js +90 -89
  161. package/locales/sr-Latn-RS.esm.js +90 -89
  162. package/locales/sr-Latn-RS.js +90 -89
  163. package/locales/sv.esm.js +90 -89
  164. package/locales/sv.js +90 -89
  165. package/locales/tr.esm.js +90 -89
  166. package/locales/tr.js +90 -89
  167. package/locales/uk.esm.js +90 -89
  168. package/locales/uk.js +90 -89
  169. package/locales/vi.esm.js +90 -89
  170. package/locales/vi.js +90 -89
  171. package/locales/zh-Hans.esm.js +89 -89
  172. package/locales/zh-Hans.js +89 -89
  173. package/locales/zh-Hant.esm.js +89 -89
  174. package/locales/zh-Hant.js +89 -89
  175. package/package.json +33 -15
  176. package/src/MaterialReactTable.tsx +5 -5
  177. package/src/_locales/hu.ts +94 -0
  178. package/src/body/MRT_EditRowModal.tsx +0 -1
  179. package/src/body/MRT_TableBody.tsx +6 -1
  180. package/src/body/MRT_TableBodyCell.tsx +1 -1
  181. package/src/body/MRT_TableBodyCellValue.tsx +1 -1
  182. package/src/body/MRT_TableBodyRow.tsx +1 -1
  183. package/src/body/MRT_TableBodyRowGrabHandle.tsx +1 -1
  184. package/src/body/MRT_TableDetailPanel.tsx +1 -1
  185. package/src/buttons/MRT_ColumnPinningButtons.tsx +0 -1
  186. package/src/buttons/MRT_CopyButton.tsx +1 -1
  187. package/src/buttons/MRT_EditActionButtons.tsx +0 -1
  188. package/src/buttons/MRT_ExpandAllButton.tsx +0 -1
  189. package/src/buttons/MRT_ExpandButton.tsx +1 -1
  190. package/src/buttons/MRT_FullScreenToggleButton.tsx +0 -1
  191. package/src/buttons/MRT_GrabHandleButton.tsx +1 -1
  192. package/src/buttons/MRT_ShowHideColumnsButton.tsx +1 -1
  193. package/src/buttons/MRT_ToggleDensePaddingButton.tsx +0 -1
  194. package/src/buttons/MRT_ToggleFiltersButton.tsx +0 -1
  195. package/src/buttons/MRT_ToggleGlobalFilterButton.tsx +0 -1
  196. package/src/buttons/MRT_ToggleRowActionMenuButton.tsx +1 -1
  197. package/src/column.utils.ts +9 -7
  198. package/src/footer/MRT_TableFooter.tsx +0 -1
  199. package/src/footer/MRT_TableFooterCell.tsx +0 -1
  200. package/src/footer/MRT_TableFooterRow.tsx +0 -1
  201. package/src/head/MRT_TableHead.tsx +0 -1
  202. package/src/head/MRT_TableHeadCell.tsx +1 -1
  203. package/src/head/MRT_TableHeadCellColumnActionsButton.tsx +1 -1
  204. package/src/head/MRT_TableHeadCellFilterContainer.tsx +0 -1
  205. package/src/head/MRT_TableHeadCellFilterLabel.tsx +1 -1
  206. package/src/head/MRT_TableHeadCellGrabHandle.tsx +1 -1
  207. package/src/head/MRT_TableHeadCellResizeHandle.tsx +0 -1
  208. package/src/head/MRT_TableHeadCellSortLabel.tsx +0 -1
  209. package/src/head/MRT_TableHeadRow.tsx +0 -1
  210. package/src/index.tsx +4 -2
  211. package/src/inputs/MRT_EditCellTextField.tsx +1 -1
  212. package/src/inputs/MRT_FilterCheckbox.tsx +0 -1
  213. package/src/inputs/MRT_FilterRangeFields.tsx +0 -1
  214. package/src/inputs/MRT_FilterTextField.tsx +1 -1
  215. package/src/inputs/MRT_GlobalFilterTextField.tsx +1 -1
  216. package/src/inputs/MRT_SelectCheckbox.tsx +1 -1
  217. package/src/menus/MRT_ColumnActionMenu.tsx +21 -16
  218. package/src/menus/MRT_FilterOptionMenu.tsx +1 -1
  219. package/src/menus/MRT_RowActionMenu.tsx +1 -1
  220. package/src/menus/MRT_ShowHideColumnsMenu.tsx +1 -1
  221. package/src/menus/MRT_ShowHideColumnsMenuItems.tsx +1 -7
  222. package/src/table/MRT_Table.tsx +1 -1
  223. package/src/table/MRT_TableContainer.tsx +1 -1
  224. package/src/table/MRT_TablePaper.tsx +0 -1
  225. package/src/table/MRT_TableRoot.tsx +16 -16
  226. package/src/toolbar/MRT_BottomToolbar.tsx +0 -1
  227. package/src/toolbar/MRT_LinearProgressBar.tsx +0 -1
  228. package/src/toolbar/MRT_TablePagination.tsx +1 -1
  229. package/src/toolbar/MRT_ToolbarAlertBanner.tsx +1 -1
  230. package/src/toolbar/MRT_ToolbarDropZone.tsx +1 -1
  231. package/src/toolbar/MRT_ToolbarInternalButtons.tsx +0 -1
  232. package/src/toolbar/MRT_TopToolbar.tsx +0 -1
@@ -1,4 +1,4 @@
1
- import React, {
1
+ import {
2
2
  Dispatch,
3
3
  MutableRefObject,
4
4
  ReactNode,
@@ -77,6 +77,8 @@ type LiteralUnion<T extends U, U = string> = T | (U & Record<never, never>);
77
77
 
78
78
  export type MRT_DensityState = 'comfortable' | 'compact' | 'spacious';
79
79
 
80
+ export type MRT_FilterFnsState = Record<string, MRT_FilterOption>;
81
+
80
82
  export type {
81
83
  ColumnFiltersState as MRT_ColumnFiltersState,
82
84
  ColumnOrderState as MRT_ColumnOrderState,
@@ -245,9 +247,7 @@ export type MRT_TableInstance<TData extends Record<string, any> = {}> =
245
247
  tablePaperRef: MutableRefObject<HTMLDivElement>;
246
248
  topToolbarRef: MutableRefObject<HTMLDivElement>;
247
249
  };
248
- setColumnFilterFns: Dispatch<
249
- SetStateAction<{ [key: string]: MRT_FilterOption }>
250
- >;
250
+ setColumnFilterFns: Dispatch<SetStateAction<MRT_FilterFnsState>>;
251
251
  setDensity: Dispatch<SetStateAction<MRT_DensityState>>;
252
252
  setDraggingColumn: Dispatch<SetStateAction<MRT_Column<TData> | null>>;
253
253
  setDraggingRow: Dispatch<SetStateAction<MRT_Row<TData> | null>>;
@@ -270,7 +270,7 @@ export type MRT_TableInstance<TData extends Record<string, any> = {}> =
270
270
 
271
271
  export type MRT_TableState<TData extends Record<string, any> = {}> = Prettify<
272
272
  TableState & {
273
- columnFilterFns: Record<string, MRT_FilterOption>;
273
+ columnFilterFns: MRT_FilterFnsState;
274
274
  density: MRT_DensityState;
275
275
  draggingColumn: MRT_Column<TData> | null;
276
276
  draggingRow: MRT_Row<TData> | null;
@@ -0,0 +1,94 @@
1
+ import type { MRT_Localization } from '../MaterialReactTable';
2
+
3
+ export const MRT_Localization_HU: MRT_Localization = {
4
+ actions: 'Műveletek',
5
+ and: 'és',
6
+ cancel: 'Mégse',
7
+ changeFilterMode: 'Szűrő módjának megváltoztatása',
8
+ changeSearchMode: 'Keresés módjának megváltoztatása',
9
+ clearFilter: 'Szűrő törlése',
10
+ clearSearch: 'Keresés törlése',
11
+ clearSort: 'Rendezés törlése',
12
+ clickToCopy: 'Kattintson a másoláshoz',
13
+ collapse: 'Összecsukás',
14
+ collapseAll: 'Mindet összecsuk',
15
+ columnActions: 'Oszlop műveletek',
16
+ copiedToClipboard: 'Vágólapra másolva',
17
+ dropToGroupBy: 'Húzza ide a csoportosításhoz: {column}',
18
+ edit: 'Szerkesztés',
19
+ expand: 'Kibontás',
20
+ expandAll: 'Mindet kibont',
21
+ filterArrIncludes: 'Tartalmazza',
22
+ filterArrIncludesAll: 'Mindet tartalmazza',
23
+ filterArrIncludesSome: 'Tartalmazza',
24
+ filterBetween: 'Között',
25
+ filterBetweenInclusive: 'Között (beleértve)',
26
+ filterByColumn: 'Szűrés: {column} alapján',
27
+ filterContains: 'Tartalmazza',
28
+ filterEmpty: 'Üres',
29
+ filterEndsWith: 'Végződik',
30
+ filterEquals: 'Egyenlő',
31
+ filterEqualsString: 'Egyenlő',
32
+ filterFuzzy: 'Pontatlan',
33
+ filterGreaterThan: 'Nagyobb, mint',
34
+ filterGreaterThanOrEqualTo: 'Nagyobb vagy egyenlő, mint',
35
+ filterInNumberRange: 'Között',
36
+ filterIncludesString: 'Tartalmazza',
37
+ filterIncludesStringSensitive: 'Tartalmazza',
38
+ filterLessThan: 'Kisebb, mint',
39
+ filterLessThanOrEqualTo: 'Kisebb vagy egyenlő, mint',
40
+ filterMode: 'Szűrő mód: {filterType}',
41
+ filterNotEmpty: 'Nem üres',
42
+ filterNotEquals: 'Nem egyenlő',
43
+ filterStartsWith: 'Kezdődik',
44
+ filterWeakEquals: 'Egyenlő',
45
+ filteringByColumn: '{column} szűrése - {filterType} {filterValue}',
46
+ goToFirstPage: 'Ugrás az első oldalra',
47
+ goToLastPage: 'Ugrás az utolsó oldalra',
48
+ goToNextPage: 'Ugrás a következő oldalra',
49
+ goToPreviousPage: 'Ugrás az előző oldalra',
50
+ grab: 'Fogás',
51
+ groupByColumn: 'Csoportosítás: {column} alapján',
52
+ groupedBy: 'Csoportosítva: ',
53
+ hideAll: 'Mindet elrejt',
54
+ hideColumn: '{column} oszlop elrejtése',
55
+ max: 'Max',
56
+ min: 'Min',
57
+ move: 'Mozgatás',
58
+ noRecordsToDisplay: 'Nincsenek megjeleníthető rekordok',
59
+ noResultsFound: 'Nincs találat',
60
+ of: 'összesen',
61
+ or: 'vagy',
62
+ pinToLeft: 'Rögzítés balra',
63
+ pinToRight: 'Rögzítés jobbra',
64
+ resetColumnSize: 'Oszlop méretének alaphelyzetbe állítása',
65
+ resetOrder: 'Rendezés alaphelyzetbe állítása',
66
+ rowActions: 'Sor műveletek',
67
+ rowNumber: '#',
68
+ rowNumbers: 'Sor számok',
69
+ rowsPerPage: 'Sorok oldalanként',
70
+ save: 'Mentés',
71
+ search: 'Keresés',
72
+ selectedCountOfRowCountRowsSelected:
73
+ '{selectedCount} kiválasztva {rowCount} sorból',
74
+ select: 'Kiválasztás',
75
+ showAll: 'Összes mutatása',
76
+ showAllColumns: 'Összes oszlop mutatása',
77
+ showHideColumns: 'Oszlopok mutatása/elrejtése',
78
+ showHideFilters: 'Szűrők mutatása/elrejtése',
79
+ showHideSearch: 'Keresés mutatása/elrejtése',
80
+ sortByColumnAsc: '{column} szerinti növekvő rendezés',
81
+ sortByColumnDesc: '{column} szerinti csökkenő rendezés',
82
+ sortedByColumnAsc: '{column} szerinti növekvő rendezés',
83
+ sortedByColumnDesc: '{column} szerinti csökkenő rendezés',
84
+ thenBy: ', majd {column} alapján',
85
+ toggleDensity: 'Sűrűség váltása',
86
+ toggleFullScreen: 'Váltás teljes képernyőre',
87
+ toggleSelectAll: 'Összes kiválasztás váltása',
88
+ toggleSelectRow: 'Sor kiválasztás váltása',
89
+ toggleVisibility: 'Láthatóság váltása',
90
+ ungroupByColumn: 'Csoportosítás megszüntetése: {column}',
91
+ unpin: 'Feloldás',
92
+ unpinAll: 'Minden feloldása',
93
+ unsorted: 'Nincs rendezés',
94
+ };
@@ -1,4 +1,3 @@
1
- import React from 'react';
2
1
  import Dialog from '@mui/material/Dialog';
3
2
  import DialogActions from '@mui/material/DialogActions';
4
3
  import DialogContent from '@mui/material/DialogContent';
@@ -1,4 +1,4 @@
1
- import React, { memo, useMemo } from 'react';
1
+ import { memo, useMemo } from 'react';
2
2
  import {
3
3
  useVirtualizer,
4
4
  type VirtualItem,
@@ -124,6 +124,11 @@ export const MRT_TableBody = ({
124
124
  estimateSize: () =>
125
125
  density === 'compact' ? 37 : density === 'comfortable' ? 58 : 73,
126
126
  getScrollElement: () => tableContainerRef.current,
127
+ measureElement:
128
+ typeof window !== 'undefined' &&
129
+ navigator.userAgent.indexOf('Firefox') === -1
130
+ ? (element) => element?.getBoundingClientRect().height
131
+ : undefined,
127
132
  overscan: 4,
128
133
  ...vProps_old,
129
134
  ...vProps,
@@ -1,4 +1,4 @@
1
- import React, {
1
+ import {
2
2
  DragEvent,
3
3
  memo,
4
4
  MouseEvent,
@@ -1,4 +1,4 @@
1
- import React, { ReactNode } from 'react';
1
+ import { ReactNode } from 'react';
2
2
  import Box from '@mui/material/Box';
3
3
  import { darken, lighten } from '@mui/material/styles';
4
4
  import highlightWords from 'highlight-words';
@@ -1,4 +1,4 @@
1
- import React, { DragEvent, memo, useRef } from 'react';
1
+ import { DragEvent, memo, useRef } from 'react';
2
2
  import TableRow from '@mui/material/TableRow';
3
3
  import { type Theme, alpha, darken, lighten } from '@mui/material/styles';
4
4
  import { Memo_MRT_TableBodyCell, MRT_TableBodyCell } from './MRT_TableBodyCell';
@@ -1,4 +1,4 @@
1
- import React, { DragEvent, RefObject } from 'react';
1
+ import { DragEvent, RefObject } from 'react';
2
2
  import { MRT_Cell, MRT_TableInstance } from '..';
3
3
  import { MRT_GrabHandleButton } from '../buttons/MRT_GrabHandleButton';
4
4
 
@@ -1,4 +1,4 @@
1
- import React from 'react';
1
+ import * as React from 'react';
2
2
  import Collapse from '@mui/material/Collapse';
3
3
  import TableCell from '@mui/material/TableCell';
4
4
  import TableRow from '@mui/material/TableRow';
@@ -1,4 +1,3 @@
1
- import React from 'react';
2
1
  import Box from '@mui/material/Box';
3
2
  import IconButton from '@mui/material/IconButton';
4
3
  import Tooltip from '@mui/material/Tooltip';
@@ -1,4 +1,4 @@
1
- import React, { MouseEvent, ReactNode, useState } from 'react';
1
+ import { MouseEvent, ReactNode, useState } from 'react';
2
2
  import Button from '@mui/material/Button';
3
3
  import Tooltip from '@mui/material/Tooltip';
4
4
  import { MRT_Cell, MRT_TableInstance } from '..';
@@ -1,4 +1,3 @@
1
- import React from 'react';
2
1
  import Box from '@mui/material/Box';
3
2
  import Button from '@mui/material/Button';
4
3
  import IconButton from '@mui/material/IconButton';
@@ -1,4 +1,3 @@
1
- import React from 'react';
2
1
  import IconButton from '@mui/material/IconButton';
3
2
  import Tooltip from '@mui/material/Tooltip';
4
3
  import type { MRT_TableInstance } from '..';
@@ -1,4 +1,4 @@
1
- import React, { MouseEvent } from 'react';
1
+ import { MouseEvent } from 'react';
2
2
  import IconButton from '@mui/material/IconButton';
3
3
  import Tooltip from '@mui/material/Tooltip';
4
4
  import type { MRT_Row, MRT_TableInstance } from '..';
@@ -1,4 +1,3 @@
1
- import React from 'react';
2
1
  import IconButton from '@mui/material/IconButton';
3
2
  import type { IconButtonProps } from '@mui/material/IconButton';
4
3
  import Tooltip from '@mui/material/Tooltip';
@@ -1,4 +1,4 @@
1
- import React, { DragEventHandler } from 'react';
1
+ import { DragEventHandler } from 'react';
2
2
  import IconButton from '@mui/material/IconButton';
3
3
  import Tooltip from '@mui/material/Tooltip';
4
4
  import type { IconButtonProps } from '@mui/material/IconButton';
@@ -1,4 +1,4 @@
1
- import React, { MouseEvent, useState } from 'react';
1
+ import { MouseEvent, useState } from 'react';
2
2
  import IconButton from '@mui/material/IconButton';
3
3
  import type { IconButtonProps } from '@mui/material/IconButton';
4
4
  import Tooltip from '@mui/material/Tooltip';
@@ -1,4 +1,3 @@
1
- import React from 'react';
2
1
  import IconButton from '@mui/material/IconButton';
3
2
  import type { IconButtonProps } from '@mui/material/IconButton';
4
3
  import Tooltip from '@mui/material/Tooltip';
@@ -1,4 +1,3 @@
1
- import React from 'react';
2
1
  import IconButton from '@mui/material/IconButton';
3
2
  import type { IconButtonProps } from '@mui/material/IconButton';
4
3
  import Tooltip from '@mui/material/Tooltip';
@@ -1,4 +1,3 @@
1
- import React from 'react';
2
1
  import IconButton from '@mui/material/IconButton';
3
2
  import type { IconButtonProps } from '@mui/material/IconButton';
4
3
  import Tooltip from '@mui/material/Tooltip';
@@ -1,4 +1,4 @@
1
- import React, { MouseEvent, useState } from 'react';
1
+ import { MouseEvent, useState } from 'react';
2
2
  import IconButton from '@mui/material/IconButton';
3
3
  import Tooltip from '@mui/material/Tooltip';
4
4
  import { MRT_RowActionMenu } from '../menus/MRT_RowActionMenu';
@@ -123,12 +123,13 @@ export const reorderColumn = <TData extends Record<string, any> = {}>(
123
123
  if (draggedColumn.getCanPin()) {
124
124
  draggedColumn.pin(targetColumn.getIsPinned());
125
125
  }
126
- columnOrder.splice(
127
- columnOrder.indexOf(targetColumn.id),
126
+ let newColumnOrder = [...columnOrder];
127
+ newColumnOrder.splice(
128
+ newColumnOrder.indexOf(targetColumn.id),
128
129
  0,
129
- columnOrder.splice(columnOrder.indexOf(draggedColumn.id), 1)[0],
130
+ newColumnOrder.splice(newColumnOrder.indexOf(draggedColumn.id), 1)[0],
130
131
  );
131
- return [...columnOrder];
132
+ return newColumnOrder;
132
133
  };
133
134
 
134
135
  export const showExpandColumn = <TData extends Record<string, any> = {}>(
@@ -238,9 +239,10 @@ export const getIsFirstRightPinnedColumn = (column: MRT_Column) => {
238
239
  };
239
240
 
240
241
  export const getTotalRight = (table: MRT_TableInstance, column: MRT_Column) => {
241
- return (
242
- (table.getRightLeafHeaders().length - 1 - column.getPinnedIndex()) * 200
243
- );
242
+ return table
243
+ .getRightLeafHeaders()
244
+ .slice(column.getPinnedIndex() + 1)
245
+ .reduce((acc, col) => acc + col.getSize(), 0);
244
246
  };
245
247
 
246
248
  export const getCommonCellStyles = ({
@@ -1,4 +1,3 @@
1
- import React from 'react';
2
1
  import TableFooter from '@mui/material/TableFooter';
3
2
  import { MRT_TableFooterRow } from './MRT_TableFooterRow';
4
3
  import type { VirtualItem } from '@tanstack/react-virtual';
@@ -1,4 +1,3 @@
1
- import React from 'react';
2
1
  import TableCell from '@mui/material/TableCell';
3
2
  import { getCommonCellStyles } from '../column.utils';
4
3
  import type { MRT_Header, MRT_TableInstance } from '..';
@@ -1,4 +1,3 @@
1
- import React from 'react';
2
1
  import TableRow from '@mui/material/TableRow';
3
2
  import { lighten } from '@mui/material/styles';
4
3
  import { MRT_TableFooterCell } from './MRT_TableFooterCell';
@@ -1,4 +1,3 @@
1
- import React from 'react';
2
1
  import TableHead from '@mui/material/TableHead';
3
2
  import { MRT_TableHeadRow } from './MRT_TableHeadRow';
4
3
  import type { VirtualItem } from '@tanstack/react-virtual';
@@ -1,4 +1,4 @@
1
- import React, { DragEvent, ReactNode, useMemo } from 'react';
1
+ import { DragEvent, ReactNode, useMemo } from 'react';
2
2
  import Box from '@mui/material/Box';
3
3
  import TableCell from '@mui/material/TableCell';
4
4
  import { useTheme } from '@mui/material/styles';
@@ -1,4 +1,4 @@
1
- import React, { MouseEvent, useState } from 'react';
1
+ import { MouseEvent, useState } from 'react';
2
2
  import IconButton from '@mui/material/IconButton';
3
3
  import Tooltip from '@mui/material/Tooltip';
4
4
  import { MRT_ColumnActionMenu } from '../menus/MRT_ColumnActionMenu';
@@ -1,4 +1,3 @@
1
- import React from 'react';
2
1
  import Collapse from '@mui/material/Collapse';
3
2
  import { MRT_FilterRangeFields } from '../inputs/MRT_FilterRangeFields';
4
3
  import { MRT_FilterTextField } from '../inputs/MRT_FilterTextField';
@@ -1,4 +1,4 @@
1
- import React, { MouseEvent } from 'react';
1
+ import { MouseEvent } from 'react';
2
2
  import Box from '@mui/material/Box';
3
3
  import Grow from '@mui/material/Grow';
4
4
  import IconButton from '@mui/material/IconButton';
@@ -1,4 +1,4 @@
1
- import React, { DragEvent, RefObject } from 'react';
1
+ import { DragEvent, RefObject } from 'react';
2
2
  import { MRT_GrabHandleButton } from '../buttons/MRT_GrabHandleButton';
3
3
  import { reorderColumn } from '../column.utils';
4
4
  import type { MRT_Column, MRT_TableInstance } from '..';
@@ -1,4 +1,3 @@
1
- import React from 'react';
2
1
  import Box from '@mui/material/Box';
3
2
  import Divider from '@mui/material/Divider';
4
3
  import { MRT_Header, MRT_TableInstance } from '..';
@@ -1,4 +1,3 @@
1
- import React from 'react';
2
1
  import Badge from '@mui/material/Badge';
3
2
  import TableSortLabel from '@mui/material/TableSortLabel';
4
3
  import Tooltip from '@mui/material/Tooltip';
@@ -1,4 +1,3 @@
1
- import React from 'react';
2
1
  import TableRow from '@mui/material/TableRow';
3
2
  import { alpha, lighten } from '@mui/material/styles';
4
3
  import { MRT_TableHeadCell } from './MRT_TableHeadCell';
package/src/index.tsx CHANGED
@@ -11,9 +11,10 @@ import { MRT_EditActionButtons } from './buttons/MRT_EditActionButtons';
11
11
  import { MRT_ExpandButton } from './buttons/MRT_ExpandButton';
12
12
  import { MRT_FilterOptionMenu } from './menus/MRT_FilterOptionMenu';
13
13
  import { MRT_FullScreenToggleButton } from './buttons/MRT_FullScreenToggleButton';
14
- import { MRT_GrabHandleButton } from './buttons/MRT_GrabHandleButton';
15
14
  import { MRT_GlobalFilterTextField } from './inputs/MRT_GlobalFilterTextField';
15
+ import { MRT_GrabHandleButton } from './buttons/MRT_GrabHandleButton';
16
16
  import { MRT_ShowHideColumnsButton } from './buttons/MRT_ShowHideColumnsButton';
17
+ import { MRT_TableHeadCellFilterContainer } from './head/MRT_TableHeadCellFilterContainer';
17
18
  import { MRT_TablePagination } from './toolbar/MRT_TablePagination';
18
19
  import { MRT_ToggleDensePaddingButton } from './buttons/MRT_ToggleDensePaddingButton';
19
20
  import { MRT_ToggleFiltersButton } from './buttons/MRT_ToggleFiltersButton';
@@ -31,9 +32,10 @@ export {
31
32
  MRT_ExpandButton,
32
33
  MRT_FilterOptionMenu,
33
34
  MRT_FullScreenToggleButton,
34
- MRT_GrabHandleButton,
35
35
  MRT_GlobalFilterTextField,
36
+ MRT_GrabHandleButton,
36
37
  MRT_ShowHideColumnsButton,
38
+ MRT_TableHeadCellFilterContainer,
37
39
  MRT_TablePagination,
38
40
  MRT_ToggleDensePaddingButton,
39
41
  MRT_ToggleFiltersButton,
@@ -1,4 +1,4 @@
1
- import React, { ChangeEvent, FocusEvent, KeyboardEvent, useState } from 'react';
1
+ import { ChangeEvent, FocusEvent, KeyboardEvent, useState } from 'react';
2
2
  import TextField from '@mui/material/TextField';
3
3
  import MenuItem from '@mui/material/MenuItem';
4
4
  import type { TextFieldProps } from '@mui/material/TextField';
@@ -1,4 +1,3 @@
1
- import React from 'react';
2
1
  import Checkbox from '@mui/material/Checkbox';
3
2
  import FormControlLabel from '@mui/material/FormControlLabel';
4
3
  import Tooltip from '@mui/material/Tooltip';
@@ -1,4 +1,3 @@
1
- import React from 'react';
2
1
  import Box from '@mui/material/Box';
3
2
  import { MRT_FilterTextField } from './MRT_FilterTextField';
4
3
  import { MRT_Header, MRT_TableInstance } from '..';
@@ -1,4 +1,4 @@
1
- import React, {
1
+ import {
2
2
  ChangeEvent,
3
3
  MouseEvent,
4
4
  useCallback,
@@ -1,4 +1,4 @@
1
- import React, {
1
+ import {
2
2
  ChangeEvent,
3
3
  MouseEvent,
4
4
  useCallback,
@@ -1,4 +1,4 @@
1
- import React, { MouseEvent } from 'react';
1
+ import { MouseEvent } from 'react';
2
2
  import Checkbox from '@mui/material/Checkbox';
3
3
  import Tooltip from '@mui/material/Tooltip';
4
4
  import Radio from '@mui/material/Radio';
@@ -1,4 +1,5 @@
1
- import React, { useState } from 'react';
1
+ import { useState } from 'react';
2
+ import * as React from 'react';
2
3
  import Box from '@mui/material/Box';
3
4
  import IconButton from '@mui/material/IconButton';
4
5
  import ListItemIcon from '@mui/material/ListItemIcon';
@@ -45,6 +46,7 @@ export const MRT_ColumnActionMenu = ({
45
46
  enableHiding,
46
47
  enablePinning,
47
48
  enableSorting,
49
+ enableSortingRemoval,
48
50
  icons: {
49
51
  ArrowRightIcon,
50
52
  ClearAllIcon,
@@ -162,20 +164,23 @@ export const MRT_ColumnActionMenu = ({
162
164
  table,
163
165
  }) ??
164
166
  (enableSorting &&
165
- column.getCanSort() && [
166
- <MenuItem
167
- disabled={!column.getIsSorted()}
168
- key={0}
169
- onClick={handleClearSort}
170
- sx={commonMenuItemStyles}
171
- >
172
- <Box sx={commonListItemStyles}>
173
- <ListItemIcon>
174
- <ClearAllIcon />
175
- </ListItemIcon>
176
- {localization.clearSort}
177
- </Box>
178
- </MenuItem>,
167
+ column.getCanSort() &&
168
+ [
169
+ enableSortingRemoval !== false && (
170
+ <MenuItem
171
+ disabled={!column.getIsSorted()}
172
+ key={0}
173
+ onClick={handleClearSort}
174
+ sx={commonMenuItemStyles}
175
+ >
176
+ <Box sx={commonListItemStyles}>
177
+ <ListItemIcon>
178
+ <ClearAllIcon />
179
+ </ListItemIcon>
180
+ {localization.clearSort}
181
+ </Box>
182
+ </MenuItem>
183
+ ),
179
184
  <MenuItem
180
185
  disabled={column.getIsSorted() === 'asc'}
181
186
  key={1}
@@ -211,7 +216,7 @@ export const MRT_ColumnActionMenu = ({
211
216
  )}
212
217
  </Box>
213
218
  </MenuItem>,
214
- ])}
219
+ ].filter(Boolean))}
215
220
  {enableColumnFilters &&
216
221
  column.getCanFilter() &&
217
222
  [
@@ -1,4 +1,4 @@
1
- import React, { useMemo } from 'react';
1
+ import { useMemo } from 'react';
2
2
  import Box from '@mui/material/Box';
3
3
  import Menu from '@mui/material/Menu';
4
4
  import MenuItem from '@mui/material/MenuItem';
@@ -1,4 +1,4 @@
1
- import React, { MouseEvent } from 'react';
1
+ import { MouseEvent } from 'react';
2
2
  import Box from '@mui/material/Box';
3
3
  import ListItemIcon from '@mui/material/ListItemIcon';
4
4
  import Menu from '@mui/material/Menu';
@@ -1,4 +1,4 @@
1
- import React, { useMemo, useState } from 'react';
1
+ import { useMemo, useState } from 'react';
2
2
  import Box from '@mui/material/Box';
3
3
  import Button from '@mui/material/Button';
4
4
  import Divider from '@mui/material/Divider';
@@ -1,10 +1,4 @@
1
- import React, {
2
- Dispatch,
3
- DragEvent,
4
- SetStateAction,
5
- useRef,
6
- useState,
7
- } from 'react';
1
+ import { Dispatch, DragEvent, SetStateAction, useRef, useState } from 'react';
8
2
  import Box from '@mui/material/Box';
9
3
  import FormControlLabel from '@mui/material/FormControlLabel';
10
4
  import MenuItem from '@mui/material/MenuItem';
@@ -1,4 +1,4 @@
1
- import React, { useCallback, useMemo } from 'react';
1
+ import { useCallback, useMemo } from 'react';
2
2
  import {
3
3
  defaultRangeExtractor,
4
4
  useVirtualizer,
@@ -1,4 +1,4 @@
1
- import React, { useEffect, useLayoutEffect, useState } from 'react';
1
+ import { useEffect, useLayoutEffect, useState } from 'react';
2
2
  import TableContainer from '@mui/material/TableContainer';
3
3
  import { MRT_Table } from './MRT_Table';
4
4
  import type { MRT_TableInstance } from '..';
@@ -1,4 +1,3 @@
1
- import React from 'react';
2
1
  import Paper from '@mui/material/Paper';
3
2
  import { MRT_TopToolbar } from '../toolbar/MRT_TopToolbar';
4
3
  import { MRT_BottomToolbar } from '../toolbar/MRT_BottomToolbar';
@@ -1,4 +1,4 @@
1
- import React, { useEffect, useMemo, useRef, useState } from 'react';
1
+ import { useEffect, useMemo, useRef, useState } from 'react';
2
2
  import {
3
3
  getCoreRowModel,
4
4
  getExpandedRowModel,
@@ -39,6 +39,7 @@ import type {
39
39
  MRT_DensityState,
40
40
  MRT_ColumnOrderState,
41
41
  MRT_GroupingState,
42
+ MRT_FilterFnsState,
42
43
  } from '..';
43
44
 
44
45
  export const MRT_TableRoot: any = <TData extends Record<string, any> = {}>(
@@ -61,22 +62,21 @@ export const MRT_TableRoot: any = <TData extends Record<string, any> = {}>(
61
62
  return initState;
62
63
  }, []);
63
64
 
64
- const [columnFilterFns, setColumnFilterFns] = useState<{
65
- [key: string]: MRT_FilterOption;
66
- }>(() =>
67
- Object.assign(
68
- {},
69
- ...getAllLeafColumnDefs(props.columns as MRT_ColumnDef<TData>[]).map(
70
- (col) => ({
71
- [getColumnId(col)]:
72
- col.filterFn instanceof Function
73
- ? col.filterFn.name ?? 'custom'
74
- : col.filterFn ??
75
- initialState?.columnFilterFns?.[getColumnId(col)] ??
76
- getDefaultColumnFilterFn(col),
77
- }),
65
+ const [columnFilterFns, setColumnFilterFns] = useState<MRT_FilterFnsState>(
66
+ () =>
67
+ Object.assign(
68
+ {},
69
+ ...getAllLeafColumnDefs(props.columns as MRT_ColumnDef<TData>[]).map(
70
+ (col) => ({
71
+ [getColumnId(col)]:
72
+ col.filterFn instanceof Function
73
+ ? col.filterFn.name ?? 'custom'
74
+ : col.filterFn ??
75
+ initialState?.columnFilterFns?.[getColumnId(col)] ??
76
+ getDefaultColumnFilterFn(col),
77
+ }),
78
+ ),
78
79
  ),
79
- ),
80
80
  );
81
81
  const [columnOrder, setColumnOrder] = useState<MRT_ColumnOrderState>(
82
82
  initialState.columnOrder ?? [],
@@ -1,4 +1,3 @@
1
- import React from 'react';
2
1
  import Box from '@mui/material/Box';
3
2
  import Toolbar from '@mui/material/Toolbar';
4
3
  import useMediaQuery from '@mui/material/useMediaQuery';
@@ -1,4 +1,3 @@
1
- import React from 'react';
2
1
  import Collapse from '@mui/material/Collapse';
3
2
  import LinearProgress from '@mui/material/LinearProgress';
4
3
  import type { MRT_TableInstance } from '..';