material-react-table 1.14.0 → 2.0.0-alpha.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 (467) hide show
  1. package/README.md +1 -0
  2. package/dist/cjs/index.js +1629 -1323
  3. package/dist/cjs/index.js.map +1 -1
  4. package/dist/cjs/types/MaterialReactTable.d.ts +7 -11
  5. package/dist/cjs/types/body/MRT_TableBody.d.ts +4 -5
  6. package/dist/cjs/types/body/MRT_TableBodyCell.d.ts +5 -5
  7. package/dist/cjs/types/body/MRT_TableBodyCellValue.d.ts +4 -4
  8. package/dist/cjs/types/body/MRT_TableBodyRow.d.ts +5 -6
  9. package/dist/cjs/types/body/MRT_TableBodyRowGrabHandle.d.ts +5 -5
  10. package/dist/cjs/types/body/MRT_TableDetailPanel.d.ts +6 -6
  11. package/dist/cjs/types/body/index.d.ts +6 -0
  12. package/dist/cjs/types/buttons/MRT_ColumnPinningButtons.d.ts +2 -2
  13. package/dist/cjs/types/buttons/MRT_CopyButton.d.ts +2 -2
  14. package/dist/cjs/types/buttons/MRT_EditActionButtons.d.ts +2 -2
  15. package/dist/cjs/types/buttons/MRT_ExpandAllButton.d.ts +3 -3
  16. package/dist/cjs/types/buttons/MRT_ExpandButton.d.ts +2 -2
  17. package/dist/cjs/types/buttons/MRT_GrabHandleButton.d.ts +2 -2
  18. package/dist/cjs/types/buttons/MRT_ShowHideColumnsButton.d.ts +2 -2
  19. package/dist/cjs/types/buttons/MRT_ToggleDensePaddingButton.d.ts +2 -2
  20. package/dist/cjs/types/buttons/MRT_ToggleFiltersButton.d.ts +2 -2
  21. package/dist/cjs/types/buttons/MRT_ToggleFullScreenButton.d.ts +7 -0
  22. package/dist/cjs/types/buttons/MRT_ToggleGlobalFilterButton.d.ts +2 -2
  23. package/dist/cjs/types/buttons/MRT_ToggleRowActionMenuButton.d.ts +2 -2
  24. package/dist/cjs/types/buttons/index.d.ts +12 -0
  25. package/dist/cjs/types/column.utils.d.ts +39 -51
  26. package/dist/cjs/types/filterFns.d.ts +14 -14
  27. package/dist/cjs/types/footer/MRT_TableFooter.d.ts +3 -3
  28. package/dist/cjs/types/footer/MRT_TableFooterCell.d.ts +4 -4
  29. package/dist/cjs/types/footer/MRT_TableFooterRow.d.ts +4 -4
  30. package/dist/cjs/types/footer/index.d.ts +3 -0
  31. package/dist/cjs/types/head/MRT_TableHead.d.ts +3 -3
  32. package/dist/cjs/types/head/MRT_TableHeadCell.d.ts +4 -4
  33. package/dist/cjs/types/head/MRT_TableHeadCellColumnActionsButton.d.ts +4 -4
  34. package/dist/cjs/types/head/MRT_TableHeadCellFilterContainer.d.ts +4 -4
  35. package/dist/cjs/types/head/MRT_TableHeadCellFilterLabel.d.ts +4 -4
  36. package/dist/cjs/types/head/MRT_TableHeadCellGrabHandle.d.ts +4 -4
  37. package/dist/cjs/types/head/MRT_TableHeadCellResizeHandle.d.ts +4 -4
  38. package/dist/cjs/types/head/MRT_TableHeadCellSortLabel.d.ts +4 -4
  39. package/dist/cjs/types/head/MRT_TableHeadRow.d.ts +4 -4
  40. package/dist/cjs/types/head/index.d.ts +9 -0
  41. package/dist/cjs/types/hooks/useMRT_DisplayColumns.d.ts +9 -0
  42. package/dist/cjs/types/hooks/useMRT_Effects.d.ts +2 -0
  43. package/dist/cjs/types/hooks/useMRT_TableInstance.d.ts +2 -0
  44. package/dist/cjs/types/hooks/useMRT_TableOptions.d.ts +2 -0
  45. package/dist/cjs/types/index.d.ts +14 -25
  46. package/dist/cjs/types/inputs/MRT_EditCellTextField.d.ts +2 -3
  47. package/dist/cjs/types/inputs/MRT_FilterCheckbox.d.ts +4 -4
  48. package/dist/cjs/types/inputs/MRT_FilterRangeFields.d.ts +4 -4
  49. package/dist/cjs/types/inputs/MRT_FilterRangeSlider.d.ts +4 -4
  50. package/dist/cjs/types/inputs/MRT_FilterTextField.d.ts +4 -4
  51. package/dist/cjs/types/inputs/MRT_GlobalFilterTextField.d.ts +2 -2
  52. package/dist/cjs/types/inputs/MRT_SelectCheckbox.d.ts +4 -4
  53. package/dist/cjs/types/inputs/index.d.ts +7 -0
  54. package/dist/cjs/types/locales/ar.d.ts +2 -0
  55. package/dist/cjs/types/locales/bg.d.ts +2 -0
  56. package/dist/cjs/types/locales/et.d.ts +2 -0
  57. package/dist/cjs/types/locales/ko.d.ts +2 -0
  58. package/dist/cjs/types/menus/MRT_ColumnActionMenu.d.ts +4 -4
  59. package/dist/cjs/types/menus/MRT_FilterOptionMenu.d.ts +2 -2
  60. package/dist/cjs/types/menus/MRT_RowActionMenu.d.ts +4 -4
  61. package/dist/cjs/types/menus/MRT_ShowHideColumnsMenu.d.ts +2 -2
  62. package/dist/cjs/types/menus/MRT_ShowHideColumnsMenuItems.d.ts +2 -2
  63. package/dist/cjs/types/menus/index.d.ts +5 -0
  64. package/dist/cjs/types/modals/MRT_EditRowModal.d.ts +7 -0
  65. package/dist/cjs/types/modals/index.d.ts +1 -0
  66. package/dist/cjs/types/sortingFns.d.ts +2 -418
  67. package/dist/cjs/types/table/MRT_Table.d.ts +3 -3
  68. package/dist/cjs/types/table/MRT_TableContainer.d.ts +3 -3
  69. package/dist/cjs/types/table/MRT_TablePaper.d.ts +3 -3
  70. package/dist/cjs/types/table/index.d.ts +4 -0
  71. package/dist/cjs/types/toolbar/MRT_BottomToolbar.d.ts +2 -2
  72. package/dist/cjs/types/toolbar/MRT_LinearProgressBar.d.ts +2 -2
  73. package/dist/cjs/types/toolbar/MRT_TablePagination.d.ts +2 -2
  74. package/dist/cjs/types/toolbar/MRT_ToolbarAlertBanner.d.ts +2 -2
  75. package/dist/cjs/types/toolbar/MRT_ToolbarDropZone.d.ts +2 -2
  76. package/dist/cjs/types/toolbar/MRT_ToolbarInternalButtons.d.ts +2 -2
  77. package/dist/cjs/types/toolbar/MRT_TopToolbar.d.ts +2 -2
  78. package/dist/cjs/types/toolbar/index.d.ts +7 -0
  79. package/dist/cjs/types/types.d.ts +116 -85
  80. package/dist/cjs/types/useMaterialReactTable.d.ts +2 -0
  81. package/dist/esm/material-react-table.esm.js +1559 -1317
  82. package/dist/esm/material-react-table.esm.js.map +1 -1
  83. package/dist/esm/types/MaterialReactTable.d.ts +7 -11
  84. package/dist/esm/types/body/MRT_TableBody.d.ts +4 -5
  85. package/dist/esm/types/body/MRT_TableBodyCell.d.ts +5 -5
  86. package/dist/esm/types/body/MRT_TableBodyCellValue.d.ts +4 -4
  87. package/dist/esm/types/body/MRT_TableBodyRow.d.ts +5 -6
  88. package/dist/esm/types/body/MRT_TableBodyRowGrabHandle.d.ts +5 -5
  89. package/dist/esm/types/body/MRT_TableDetailPanel.d.ts +6 -6
  90. package/dist/esm/types/body/index.d.ts +6 -0
  91. package/dist/esm/types/buttons/MRT_ColumnPinningButtons.d.ts +2 -2
  92. package/dist/esm/types/buttons/MRT_CopyButton.d.ts +2 -2
  93. package/dist/esm/types/buttons/MRT_EditActionButtons.d.ts +2 -2
  94. package/dist/esm/types/buttons/MRT_ExpandAllButton.d.ts +3 -3
  95. package/dist/esm/types/buttons/MRT_ExpandButton.d.ts +2 -2
  96. package/dist/esm/types/buttons/MRT_GrabHandleButton.d.ts +2 -2
  97. package/dist/esm/types/buttons/MRT_ShowHideColumnsButton.d.ts +2 -2
  98. package/dist/esm/types/buttons/MRT_ToggleDensePaddingButton.d.ts +2 -2
  99. package/dist/esm/types/buttons/MRT_ToggleFiltersButton.d.ts +2 -2
  100. package/dist/esm/types/buttons/MRT_ToggleFullScreenButton.d.ts +7 -0
  101. package/dist/esm/types/buttons/MRT_ToggleGlobalFilterButton.d.ts +2 -2
  102. package/dist/esm/types/buttons/MRT_ToggleRowActionMenuButton.d.ts +2 -2
  103. package/dist/esm/types/buttons/index.d.ts +12 -0
  104. package/dist/esm/types/column.utils.d.ts +39 -51
  105. package/dist/esm/types/filterFns.d.ts +14 -14
  106. package/dist/esm/types/footer/MRT_TableFooter.d.ts +3 -3
  107. package/dist/esm/types/footer/MRT_TableFooterCell.d.ts +4 -4
  108. package/dist/esm/types/footer/MRT_TableFooterRow.d.ts +4 -4
  109. package/dist/esm/types/footer/index.d.ts +3 -0
  110. package/dist/esm/types/head/MRT_TableHead.d.ts +3 -3
  111. package/dist/esm/types/head/MRT_TableHeadCell.d.ts +4 -4
  112. package/dist/esm/types/head/MRT_TableHeadCellColumnActionsButton.d.ts +4 -4
  113. package/dist/esm/types/head/MRT_TableHeadCellFilterContainer.d.ts +4 -4
  114. package/dist/esm/types/head/MRT_TableHeadCellFilterLabel.d.ts +4 -4
  115. package/dist/esm/types/head/MRT_TableHeadCellGrabHandle.d.ts +4 -4
  116. package/dist/esm/types/head/MRT_TableHeadCellResizeHandle.d.ts +4 -4
  117. package/dist/esm/types/head/MRT_TableHeadCellSortLabel.d.ts +4 -4
  118. package/dist/esm/types/head/MRT_TableHeadRow.d.ts +4 -4
  119. package/dist/esm/types/head/index.d.ts +9 -0
  120. package/dist/esm/types/hooks/useMRT_DisplayColumns.d.ts +9 -0
  121. package/dist/esm/types/hooks/useMRT_Effects.d.ts +2 -0
  122. package/dist/esm/types/hooks/useMRT_TableInstance.d.ts +2 -0
  123. package/dist/esm/types/hooks/useMRT_TableOptions.d.ts +2 -0
  124. package/dist/esm/types/index.d.ts +14 -25
  125. package/dist/esm/types/inputs/MRT_EditCellTextField.d.ts +2 -3
  126. package/dist/esm/types/inputs/MRT_FilterCheckbox.d.ts +4 -4
  127. package/dist/esm/types/inputs/MRT_FilterRangeFields.d.ts +4 -4
  128. package/dist/esm/types/inputs/MRT_FilterRangeSlider.d.ts +4 -4
  129. package/dist/esm/types/inputs/MRT_FilterTextField.d.ts +4 -4
  130. package/dist/esm/types/inputs/MRT_GlobalFilterTextField.d.ts +2 -2
  131. package/dist/esm/types/inputs/MRT_SelectCheckbox.d.ts +4 -4
  132. package/dist/esm/types/inputs/index.d.ts +7 -0
  133. package/dist/esm/types/locales/ar.d.ts +2 -0
  134. package/dist/esm/types/locales/bg.d.ts +2 -0
  135. package/dist/esm/types/locales/et.d.ts +2 -0
  136. package/dist/esm/types/locales/ko.d.ts +2 -0
  137. package/dist/esm/types/menus/MRT_ColumnActionMenu.d.ts +4 -4
  138. package/dist/esm/types/menus/MRT_FilterOptionMenu.d.ts +2 -2
  139. package/dist/esm/types/menus/MRT_RowActionMenu.d.ts +4 -4
  140. package/dist/esm/types/menus/MRT_ShowHideColumnsMenu.d.ts +2 -2
  141. package/dist/esm/types/menus/MRT_ShowHideColumnsMenuItems.d.ts +2 -2
  142. package/dist/esm/types/menus/index.d.ts +5 -0
  143. package/dist/esm/types/modals/MRT_EditRowModal.d.ts +7 -0
  144. package/dist/esm/types/modals/index.d.ts +1 -0
  145. package/dist/esm/types/sortingFns.d.ts +2 -418
  146. package/dist/esm/types/table/MRT_Table.d.ts +3 -3
  147. package/dist/esm/types/table/MRT_TableContainer.d.ts +3 -3
  148. package/dist/esm/types/table/MRT_TablePaper.d.ts +3 -3
  149. package/dist/esm/types/table/index.d.ts +4 -0
  150. package/dist/esm/types/toolbar/MRT_BottomToolbar.d.ts +2 -2
  151. package/dist/esm/types/toolbar/MRT_LinearProgressBar.d.ts +2 -2
  152. package/dist/esm/types/toolbar/MRT_TablePagination.d.ts +2 -2
  153. package/dist/esm/types/toolbar/MRT_ToolbarAlertBanner.d.ts +2 -2
  154. package/dist/esm/types/toolbar/MRT_ToolbarDropZone.d.ts +2 -2
  155. package/dist/esm/types/toolbar/MRT_ToolbarInternalButtons.d.ts +2 -2
  156. package/dist/esm/types/toolbar/MRT_TopToolbar.d.ts +2 -2
  157. package/dist/esm/types/toolbar/index.d.ts +7 -0
  158. package/dist/esm/types/types.d.ts +116 -85
  159. package/dist/esm/types/useMaterialReactTable.d.ts +2 -0
  160. package/dist/index.d.ts +606 -156
  161. package/locales/ar.d.ts +2 -0
  162. package/locales/ar.esm.d.ts +2 -0
  163. package/locales/ar.esm.js +93 -0
  164. package/locales/ar.esm.js.map +1 -0
  165. package/locales/ar.js +97 -0
  166. package/locales/ar.js.map +1 -0
  167. package/locales/bg.d.ts +2 -0
  168. package/locales/bg.esm.d.ts +2 -0
  169. package/locales/bg.esm.js +93 -0
  170. package/locales/bg.esm.js.map +1 -0
  171. package/locales/bg.js +97 -0
  172. package/locales/bg.js.map +1 -0
  173. package/locales/cs.esm.js +1 -2
  174. package/locales/cs.esm.js.map +1 -1
  175. package/locales/cs.js +1 -2
  176. package/locales/cs.js.map +1 -1
  177. package/locales/da.esm.js +0 -1
  178. package/locales/da.esm.js.map +1 -1
  179. package/locales/da.js +0 -1
  180. package/locales/da.js.map +1 -1
  181. package/locales/de.esm.js +0 -1
  182. package/locales/de.esm.js.map +1 -1
  183. package/locales/de.js +0 -1
  184. package/locales/de.js.map +1 -1
  185. package/locales/en.esm.js +0 -1
  186. package/locales/en.esm.js.map +1 -1
  187. package/locales/en.js +0 -1
  188. package/locales/en.js.map +1 -1
  189. package/locales/es.esm.js +0 -1
  190. package/locales/es.esm.js.map +1 -1
  191. package/locales/es.js +0 -1
  192. package/locales/es.js.map +1 -1
  193. package/locales/et.d.ts +2 -0
  194. package/locales/et.esm.d.ts +2 -0
  195. package/locales/et.esm.js +93 -0
  196. package/locales/et.esm.js.map +1 -0
  197. package/locales/et.js +97 -0
  198. package/locales/et.js.map +1 -0
  199. package/locales/fa.esm.js +0 -1
  200. package/locales/fa.esm.js.map +1 -1
  201. package/locales/fa.js +0 -1
  202. package/locales/fa.js.map +1 -1
  203. package/locales/fi.esm.js +0 -1
  204. package/locales/fi.esm.js.map +1 -1
  205. package/locales/fi.js +0 -1
  206. package/locales/fi.js.map +1 -1
  207. package/locales/fr.esm.js +0 -1
  208. package/locales/fr.esm.js.map +1 -1
  209. package/locales/fr.js +0 -1
  210. package/locales/fr.js.map +1 -1
  211. package/locales/hu.esm.js +0 -1
  212. package/locales/hu.esm.js.map +1 -1
  213. package/locales/hu.js +0 -1
  214. package/locales/hu.js.map +1 -1
  215. package/locales/id.esm.js +0 -1
  216. package/locales/id.esm.js.map +1 -1
  217. package/locales/id.js +0 -1
  218. package/locales/id.js.map +1 -1
  219. package/locales/it.esm.js +0 -1
  220. package/locales/it.esm.js.map +1 -1
  221. package/locales/it.js +0 -1
  222. package/locales/it.js.map +1 -1
  223. package/locales/ja.esm.js +0 -1
  224. package/locales/ja.esm.js.map +1 -1
  225. package/locales/ja.js +0 -1
  226. package/locales/ja.js.map +1 -1
  227. package/locales/ko.d.ts +2 -0
  228. package/locales/ko.esm.d.ts +2 -0
  229. package/locales/ko.esm.js +93 -0
  230. package/locales/ko.esm.js.map +1 -0
  231. package/locales/ko.js +97 -0
  232. package/locales/ko.js.map +1 -0
  233. package/locales/nl.esm.js +0 -1
  234. package/locales/nl.esm.js.map +1 -1
  235. package/locales/nl.js +0 -1
  236. package/locales/nl.js.map +1 -1
  237. package/locales/no.esm.js +0 -1
  238. package/locales/no.esm.js.map +1 -1
  239. package/locales/no.js +0 -1
  240. package/locales/no.js.map +1 -1
  241. package/locales/pl.esm.js +0 -1
  242. package/locales/pl.esm.js.map +1 -1
  243. package/locales/pl.js +0 -1
  244. package/locales/pl.js.map +1 -1
  245. package/locales/pt-BR.esm.js +0 -1
  246. package/locales/pt-BR.esm.js.map +1 -1
  247. package/locales/pt-BR.js +0 -1
  248. package/locales/pt-BR.js.map +1 -1
  249. package/locales/pt.esm.js +0 -1
  250. package/locales/pt.esm.js.map +1 -1
  251. package/locales/pt.js +0 -1
  252. package/locales/pt.js.map +1 -1
  253. package/locales/ro.esm.js +0 -1
  254. package/locales/ro.esm.js.map +1 -1
  255. package/locales/ro.js +0 -1
  256. package/locales/ro.js.map +1 -1
  257. package/locales/ru.esm.js +0 -1
  258. package/locales/ru.esm.js.map +1 -1
  259. package/locales/ru.js +0 -1
  260. package/locales/ru.js.map +1 -1
  261. package/locales/sk.esm.js +0 -1
  262. package/locales/sk.esm.js.map +1 -1
  263. package/locales/sk.js +0 -1
  264. package/locales/sk.js.map +1 -1
  265. package/locales/sr-Cyrl-RS.esm.js +0 -1
  266. package/locales/sr-Cyrl-RS.esm.js.map +1 -1
  267. package/locales/sr-Cyrl-RS.js +0 -1
  268. package/locales/sr-Cyrl-RS.js.map +1 -1
  269. package/locales/sr-Latn-RS.esm.js +0 -1
  270. package/locales/sr-Latn-RS.esm.js.map +1 -1
  271. package/locales/sr-Latn-RS.js +0 -1
  272. package/locales/sr-Latn-RS.js.map +1 -1
  273. package/locales/sv.esm.js +0 -1
  274. package/locales/sv.esm.js.map +1 -1
  275. package/locales/sv.js +0 -1
  276. package/locales/sv.js.map +1 -1
  277. package/locales/tr.esm.js +0 -1
  278. package/locales/tr.esm.js.map +1 -1
  279. package/locales/tr.js +0 -1
  280. package/locales/tr.js.map +1 -1
  281. package/locales/uk.esm.js +0 -1
  282. package/locales/uk.esm.js.map +1 -1
  283. package/locales/uk.js +0 -1
  284. package/locales/uk.js.map +1 -1
  285. package/locales/vi.esm.js +0 -1
  286. package/locales/vi.esm.js.map +1 -1
  287. package/locales/vi.js +0 -1
  288. package/locales/vi.js.map +1 -1
  289. package/locales/zh-Hans.esm.js +7 -8
  290. package/locales/zh-Hans.esm.js.map +1 -1
  291. package/locales/zh-Hans.js +7 -8
  292. package/locales/zh-Hans.js.map +1 -1
  293. package/locales/zh-Hant.esm.js +1 -2
  294. package/locales/zh-Hant.esm.js.map +1 -1
  295. package/locales/zh-Hant.js +1 -2
  296. package/locales/zh-Hant.js.map +1 -1
  297. package/package.json +44 -42
  298. package/src/MaterialReactTable.tsx +31 -168
  299. package/src/body/MRT_TableBody.tsx +10 -23
  300. package/src/body/MRT_TableBodyCell.tsx +36 -39
  301. package/src/body/MRT_TableBodyCellValue.tsx +7 -4
  302. package/src/body/MRT_TableBodyRow.tsx +7 -7
  303. package/src/body/MRT_TableBodyRowGrabHandle.tsx +13 -10
  304. package/src/body/MRT_TableDetailPanel.tsx +11 -11
  305. package/src/body/index.ts +6 -0
  306. package/src/buttons/MRT_ColumnPinningButtons.tsx +2 -4
  307. package/src/buttons/MRT_CopyButton.tsx +9 -9
  308. package/src/buttons/MRT_EditActionButtons.tsx +56 -25
  309. package/src/buttons/MRT_ExpandAllButton.tsx +5 -3
  310. package/src/buttons/MRT_ExpandButton.tsx +2 -2
  311. package/src/buttons/MRT_GrabHandleButton.tsx +2 -2
  312. package/src/buttons/MRT_ShowHideColumnsButton.tsx +2 -5
  313. package/src/buttons/MRT_ToggleDensePaddingButton.tsx +2 -3
  314. package/src/buttons/MRT_ToggleFiltersButton.tsx +2 -5
  315. package/src/buttons/{MRT_FullScreenToggleButton.tsx → MRT_ToggleFullScreenButton.tsx} +13 -6
  316. package/src/buttons/MRT_ToggleGlobalFilterButton.tsx +3 -5
  317. package/src/buttons/MRT_ToggleRowActionMenuButton.tsx +16 -8
  318. package/src/buttons/index.ts +12 -0
  319. package/src/column.utils.ts +96 -45
  320. package/src/filterFns.ts +14 -14
  321. package/src/footer/MRT_TableFooter.tsx +4 -4
  322. package/src/footer/MRT_TableFooterCell.tsx +7 -4
  323. package/src/footer/MRT_TableFooterRow.tsx +6 -6
  324. package/src/footer/index.ts +3 -0
  325. package/src/head/MRT_TableHead.tsx +4 -4
  326. package/src/head/MRT_TableHeadCell.tsx +7 -4
  327. package/src/head/MRT_TableHeadCellColumnActionsButton.tsx +14 -12
  328. package/src/head/MRT_TableHeadCellFilterContainer.tsx +9 -4
  329. package/src/head/MRT_TableHeadCellFilterLabel.tsx +9 -4
  330. package/src/head/MRT_TableHeadCellGrabHandle.tsx +13 -13
  331. package/src/head/MRT_TableHeadCellResizeHandle.tsx +9 -4
  332. package/src/head/MRT_TableHeadCellSortLabel.tsx +8 -6
  333. package/src/head/MRT_TableHeadRow.tsx +6 -6
  334. package/src/head/index.ts +9 -0
  335. package/src/hooks/useMRT_DisplayColumns.tsx +142 -0
  336. package/src/hooks/useMRT_Effects.ts +77 -0
  337. package/src/hooks/useMRT_TableInstance.ts +291 -0
  338. package/src/hooks/useMRT_TableOptions.ts +169 -0
  339. package/src/index.ts +16 -0
  340. package/src/inputs/MRT_EditCellTextField.tsx +39 -25
  341. package/src/inputs/MRT_FilterCheckbox.tsx +14 -11
  342. package/src/inputs/MRT_FilterRangeFields.tsx +7 -4
  343. package/src/inputs/MRT_FilterRangeSlider.tsx +18 -19
  344. package/src/inputs/MRT_FilterTextField.tsx +15 -15
  345. package/src/inputs/MRT_GlobalFilterTextField.tsx +2 -4
  346. package/src/inputs/MRT_SelectCheckbox.tsx +8 -4
  347. package/src/inputs/index.ts +7 -0
  348. package/src/locales/ar.ts +94 -0
  349. package/src/locales/bg.ts +93 -0
  350. package/src/{_locales → locales}/cs.ts +1 -2
  351. package/src/{_locales → locales}/da.ts +0 -1
  352. package/src/{_locales → locales}/de.ts +0 -1
  353. package/src/{_locales → locales}/en.ts +1 -1
  354. package/src/{_locales → locales}/es.ts +0 -1
  355. package/src/locales/et.ts +94 -0
  356. package/src/{_locales → locales}/fa.ts +0 -1
  357. package/src/{_locales → locales}/fi.ts +0 -1
  358. package/src/{_locales → locales}/fr.ts +0 -1
  359. package/src/{_locales → locales}/hu.ts +0 -1
  360. package/src/{_locales → locales}/id.ts +0 -1
  361. package/src/{_locales → locales}/it.ts +0 -1
  362. package/src/{_locales → locales}/ja.ts +0 -1
  363. package/src/locales/ko.ts +93 -0
  364. package/src/{_locales → locales}/nl.ts +0 -1
  365. package/src/{_locales → locales}/no.ts +1 -1
  366. package/src/{_locales → locales}/pl.ts +0 -1
  367. package/src/{_locales → locales}/pt-BR.ts +0 -1
  368. package/src/{_locales → locales}/pt.ts +0 -1
  369. package/src/{_locales → locales}/ro.ts +0 -1
  370. package/src/{_locales → locales}/ru.ts +0 -1
  371. package/src/{_locales → locales}/sk.ts +0 -1
  372. package/src/{_locales → locales}/sr-Cyrl-RS.ts +0 -1
  373. package/src/{_locales → locales}/sr-Latn-RS.ts +0 -1
  374. package/src/{_locales → locales}/sv.ts +0 -1
  375. package/src/{_locales → locales}/tr.ts +0 -1
  376. package/src/{_locales → locales}/uk.ts +0 -1
  377. package/src/{_locales → locales}/vi.ts +0 -1
  378. package/src/{_locales → locales}/zh-Hans.ts +7 -8
  379. package/src/{_locales → locales}/zh-Hant.ts +1 -2
  380. package/src/menus/MRT_ColumnActionMenu.tsx +8 -8
  381. package/src/menus/MRT_FilterOptionMenu.tsx +4 -3
  382. package/src/menus/MRT_RowActionMenu.tsx +5 -5
  383. package/src/menus/MRT_ShowHideColumnsMenu.tsx +4 -6
  384. package/src/menus/MRT_ShowHideColumnsMenuItems.tsx +4 -4
  385. package/src/menus/index.ts +5 -0
  386. package/src/modals/MRT_EditRowModal.tsx +115 -0
  387. package/src/modals/index.ts +1 -0
  388. package/src/sortingFns.ts +2 -2
  389. package/src/table/MRT_Table.tsx +40 -33
  390. package/src/table/MRT_TableContainer.tsx +23 -5
  391. package/src/table/MRT_TablePaper.tsx +13 -4
  392. package/src/table/index.ts +4 -0
  393. package/src/toolbar/MRT_BottomToolbar.tsx +2 -2
  394. package/src/toolbar/MRT_LinearProgressBar.tsx +2 -2
  395. package/src/toolbar/MRT_TablePagination.tsx +2 -2
  396. package/src/toolbar/MRT_ToolbarAlertBanner.tsx +2 -2
  397. package/src/toolbar/MRT_ToolbarDropZone.tsx +2 -2
  398. package/src/toolbar/MRT_ToolbarInternalButtons.tsx +6 -8
  399. package/src/toolbar/MRT_TopToolbar.tsx +2 -2
  400. package/src/toolbar/index.ts +7 -0
  401. package/src/types.ts +765 -751
  402. package/src/useMaterialReactTable.ts +11 -0
  403. package/dist/cjs/types/body/MRT_EditRowModal.d.ts +0 -8
  404. package/dist/cjs/types/buttons/MRT_FullScreenToggleButton.d.ts +0 -7
  405. package/dist/cjs/types/table/MRT_TableRoot.d.ts +0 -1
  406. package/dist/esm/types/body/MRT_EditRowModal.d.ts +0 -8
  407. package/dist/esm/types/buttons/MRT_FullScreenToggleButton.d.ts +0 -7
  408. package/dist/esm/types/table/MRT_TableRoot.d.ts +0 -1
  409. package/src/body/MRT_EditRowModal.tsx +0 -57
  410. package/src/index.tsx +0 -50
  411. package/src/table/MRT_TableRoot.tsx +0 -421
  412. /package/dist/cjs/types/{_locales → locales}/cs.d.ts +0 -0
  413. /package/dist/cjs/types/{_locales → locales}/da.d.ts +0 -0
  414. /package/dist/cjs/types/{_locales → locales}/de.d.ts +0 -0
  415. /package/dist/cjs/types/{_locales → locales}/en.d.ts +0 -0
  416. /package/dist/cjs/types/{_locales → locales}/es.d.ts +0 -0
  417. /package/dist/cjs/types/{_locales → locales}/fa.d.ts +0 -0
  418. /package/dist/cjs/types/{_locales → locales}/fi.d.ts +0 -0
  419. /package/dist/cjs/types/{_locales → locales}/fr.d.ts +0 -0
  420. /package/dist/cjs/types/{_locales → locales}/hu.d.ts +0 -0
  421. /package/dist/cjs/types/{_locales → locales}/id.d.ts +0 -0
  422. /package/dist/cjs/types/{_locales → locales}/it.d.ts +0 -0
  423. /package/dist/cjs/types/{_locales → locales}/ja.d.ts +0 -0
  424. /package/dist/cjs/types/{_locales → locales}/nl.d.ts +0 -0
  425. /package/dist/cjs/types/{_locales → locales}/no.d.ts +0 -0
  426. /package/dist/cjs/types/{_locales → locales}/pl.d.ts +0 -0
  427. /package/dist/cjs/types/{_locales → locales}/pt-BR.d.ts +0 -0
  428. /package/dist/cjs/types/{_locales → locales}/pt.d.ts +0 -0
  429. /package/dist/cjs/types/{_locales → locales}/ro.d.ts +0 -0
  430. /package/dist/cjs/types/{_locales → locales}/ru.d.ts +0 -0
  431. /package/dist/cjs/types/{_locales → locales}/sk.d.ts +0 -0
  432. /package/dist/cjs/types/{_locales → locales}/sr-Cyrl-RS.d.ts +0 -0
  433. /package/dist/cjs/types/{_locales → locales}/sr-Latn-RS.d.ts +0 -0
  434. /package/dist/cjs/types/{_locales → locales}/sv.d.ts +0 -0
  435. /package/dist/cjs/types/{_locales → locales}/tr.d.ts +0 -0
  436. /package/dist/cjs/types/{_locales → locales}/uk.d.ts +0 -0
  437. /package/dist/cjs/types/{_locales → locales}/vi.d.ts +0 -0
  438. /package/dist/cjs/types/{_locales → locales}/zh-Hans.d.ts +0 -0
  439. /package/dist/cjs/types/{_locales → locales}/zh-Hant.d.ts +0 -0
  440. /package/dist/esm/types/{_locales → locales}/cs.d.ts +0 -0
  441. /package/dist/esm/types/{_locales → locales}/da.d.ts +0 -0
  442. /package/dist/esm/types/{_locales → locales}/de.d.ts +0 -0
  443. /package/dist/esm/types/{_locales → locales}/en.d.ts +0 -0
  444. /package/dist/esm/types/{_locales → locales}/es.d.ts +0 -0
  445. /package/dist/esm/types/{_locales → locales}/fa.d.ts +0 -0
  446. /package/dist/esm/types/{_locales → locales}/fi.d.ts +0 -0
  447. /package/dist/esm/types/{_locales → locales}/fr.d.ts +0 -0
  448. /package/dist/esm/types/{_locales → locales}/hu.d.ts +0 -0
  449. /package/dist/esm/types/{_locales → locales}/id.d.ts +0 -0
  450. /package/dist/esm/types/{_locales → locales}/it.d.ts +0 -0
  451. /package/dist/esm/types/{_locales → locales}/ja.d.ts +0 -0
  452. /package/dist/esm/types/{_locales → locales}/nl.d.ts +0 -0
  453. /package/dist/esm/types/{_locales → locales}/no.d.ts +0 -0
  454. /package/dist/esm/types/{_locales → locales}/pl.d.ts +0 -0
  455. /package/dist/esm/types/{_locales → locales}/pt-BR.d.ts +0 -0
  456. /package/dist/esm/types/{_locales → locales}/pt.d.ts +0 -0
  457. /package/dist/esm/types/{_locales → locales}/ro.d.ts +0 -0
  458. /package/dist/esm/types/{_locales → locales}/ru.d.ts +0 -0
  459. /package/dist/esm/types/{_locales → locales}/sk.d.ts +0 -0
  460. /package/dist/esm/types/{_locales → locales}/sr-Cyrl-RS.d.ts +0 -0
  461. /package/dist/esm/types/{_locales → locales}/sr-Latn-RS.d.ts +0 -0
  462. /package/dist/esm/types/{_locales → locales}/sv.d.ts +0 -0
  463. /package/dist/esm/types/{_locales → locales}/tr.d.ts +0 -0
  464. /package/dist/esm/types/{_locales → locales}/uk.d.ts +0 -0
  465. /package/dist/esm/types/{_locales → locales}/vi.d.ts +0 -0
  466. /package/dist/esm/types/{_locales → locales}/zh-Hans.d.ts +0 -0
  467. /package/dist/esm/types/{_locales → locales}/zh-Hant.d.ts +0 -0
package/dist/index.d.ts CHANGED
@@ -1,15 +1,16 @@
1
1
  import * as react_jsx_runtime from 'react/jsx-runtime';
2
- import { MutableRefObject, Dispatch, SetStateAction, ReactNode, DragEventHandler } from 'react';
2
+ import { MutableRefObject, Dispatch, SetStateAction, ReactNode, RefObject, DragEventHandler, MouseEvent } from 'react';
3
3
  import { AlertProps } from '@mui/material/Alert';
4
4
  import { ButtonProps } from '@mui/material/Button';
5
5
  import { CheckboxProps } from '@mui/material/Checkbox';
6
6
  import { ChipProps } from '@mui/material/Chip';
7
+ import { DialogProps } from '@mui/material/Dialog';
7
8
  import { IconButtonProps } from '@mui/material/IconButton';
8
9
  import { LinearProgressProps } from '@mui/material/LinearProgress';
9
10
  import { PaperProps } from '@mui/material/Paper';
10
11
  import { RadioProps } from '@mui/material/Radio';
11
12
  import { SkeletonProps } from '@mui/material/Skeleton';
12
- import { SliderProps } from '@mui/material';
13
+ import { SliderProps } from '@mui/material/Slider';
13
14
  import { TableBodyProps } from '@mui/material/TableBody';
14
15
  import { TableCellProps } from '@mui/material/TableCell';
15
16
  import { TableContainerProps } from '@mui/material/TableContainer';
@@ -21,11 +22,13 @@ import { TableRowProps } from '@mui/material/TableRow';
21
22
  import { TextFieldProps } from '@mui/material/TextField';
22
23
  import { ToolbarProps } from '@mui/material/Toolbar';
23
24
  import * as _tanstack_react_table from '@tanstack/react-table';
24
- import { Row, Table, TableState, ColumnDef, DeepKeys, Column, Header, HeaderGroup, Cell, AggregationFn, SortingFn, FilterFn, TableOptions, OnChangeFn } from '@tanstack/react-table';
25
+ import { Row, Table, TableState, ColumnDef, DeepKeys, Column, Header, HeaderGroup, Cell, AggregationFn, SortingFn, FilterFn, TableOptions, OnChangeFn, ColumnOrderState, GroupingState, Renderable } from '@tanstack/react-table';
25
26
  export { ColumnFiltersState as MRT_ColumnFiltersState, ColumnOrderState as MRT_ColumnOrderState, ColumnPinningState as MRT_ColumnPinningState, ColumnSizingInfoState as MRT_ColumnSizingInfoState, ColumnSizingState as MRT_ColumnSizingState, ExpandedState as MRT_ExpandedState, GroupingState as MRT_GroupingState, PaginationState as MRT_PaginationState, RowSelectionState as MRT_RowSelectionState, SortingState as MRT_SortingState, Updater as MRT_Updater, VisibilityState as MRT_VisibilityState } from '@tanstack/react-table';
26
- import { Virtualizer, VirtualizerOptions } from '@tanstack/react-virtual';
27
+ import { Virtualizer, VirtualizerOptions, VirtualItem } from '@tanstack/react-virtual';
27
28
  export { VirtualItem as MRT_VirtualItem, Virtualizer as MRT_Virtualizer, VirtualizerOptions as MRT_VirtualizerOptions } from '@tanstack/react-virtual';
29
+ import * as _tanstack_match_sorter_utils from '@tanstack/match-sorter-utils';
28
30
  import { RankingInfo } from '@tanstack/match-sorter-utils';
31
+ import { Theme } from '@mui/material/styles';
29
32
 
30
33
  declare const MRT_AggregationFns: {
31
34
  sum: _tanstack_react_table.AggregationFn<any>;
@@ -41,59 +44,59 @@ declare const MRT_AggregationFns: {
41
44
 
42
45
  declare const MRT_FilterFns: {
43
46
  between: {
44
- <TData extends Record<string, any> = {}>(row: Row<TData>, id: string, filterValues: [string | number, string | number]): boolean;
47
+ <TData extends Record<string, any>>(row: Row<TData>, id: string, filterValues: [string | number, string | number]): boolean;
45
48
  autoRemove(val: any): boolean;
46
49
  };
47
50
  betweenInclusive: {
48
- <TData_1 extends Record<string, any> = {}>(row: Row<TData_1>, id: string, filterValues: [string | number, string | number]): boolean;
51
+ <TData_1 extends Record<string, any>>(row: Row<TData_1>, id: string, filterValues: [string | number, string | number]): boolean;
49
52
  autoRemove(val: any): boolean;
50
53
  };
51
54
  contains: {
52
- <TData_2 extends Record<string, any> = {}>(row: Row<TData_2>, id: string, filterValue: string | number): boolean;
55
+ <TData_2 extends Record<string, any>>(row: Row<TData_2>, id: string, filterValue: string | number): boolean;
53
56
  autoRemove(val: any): boolean;
54
57
  };
55
58
  empty: {
56
- <TData_3 extends Record<string, any> = {}>(row: Row<TData_3>, id: string, _filterValue: string | number): boolean;
59
+ <TData_3 extends Record<string, any>>(row: Row<TData_3>, id: string, _filterValue: string | number): boolean;
57
60
  autoRemove(val: any): boolean;
58
61
  };
59
62
  endsWith: {
60
- <TData_4 extends Record<string, any> = {}>(row: Row<TData_4>, id: string, filterValue: string | number): boolean;
63
+ <TData_4 extends Record<string, any>>(row: Row<TData_4>, id: string, filterValue: string | number): boolean;
61
64
  autoRemove(val: any): boolean;
62
65
  };
63
66
  equals: {
64
- <TData_5 extends Record<string, any> = {}>(row: Row<TData_5>, id: string, filterValue: string | number): boolean;
67
+ <TData_5 extends Record<string, any>>(row: Row<TData_5>, id: string, filterValue: string | number): boolean;
65
68
  autoRemove(val: any): boolean;
66
69
  };
67
70
  fuzzy: {
68
- <TData_6 extends Record<string, any> = {}>(row: Row<TData_6>, columnId: string, filterValue: string | number, addMeta: (item: RankingInfo) => void): boolean;
71
+ <TData_6 extends Record<string, any>>(row: Row<TData_6>, columnId: string, filterValue: string | number, addMeta: (item: RankingInfo) => void): boolean;
69
72
  autoRemove(val: any): boolean;
70
73
  };
71
74
  greaterThan: {
72
- <TData_7 extends Record<string, any> = {}>(row: Row<TData_7>, id: string, filterValue: string | number): boolean;
75
+ <TData_7 extends Record<string, any>>(row: Row<TData_7>, id: string, filterValue: string | number): boolean;
73
76
  autoRemove(val: any): boolean;
74
77
  };
75
78
  greaterThanOrEqualTo: {
76
- <TData_8 extends Record<string, any> = {}>(row: Row<TData_8>, id: string, filterValue: string | number): boolean;
79
+ <TData_8 extends Record<string, any>>(row: Row<TData_8>, id: string, filterValue: string | number): boolean;
77
80
  autoRemove(val: any): boolean;
78
81
  };
79
82
  lessThan: {
80
- <TData_9 extends Record<string, any> = {}>(row: Row<TData_9>, id: string, filterValue: string | number): boolean;
83
+ <TData_9 extends Record<string, any>>(row: Row<TData_9>, id: string, filterValue: string | number): boolean;
81
84
  autoRemove(val: any): boolean;
82
85
  };
83
86
  lessThanOrEqualTo: {
84
- <TData_10 extends Record<string, any> = {}>(row: Row<TData_10>, id: string, filterValue: string | number): boolean;
87
+ <TData_10 extends Record<string, any>>(row: Row<TData_10>, id: string, filterValue: string | number): boolean;
85
88
  autoRemove(val: any): boolean;
86
89
  };
87
90
  notEmpty: {
88
- <TData_11 extends Record<string, any> = {}>(row: Row<TData_11>, id: string, _filterValue: string | number): boolean;
91
+ <TData_11 extends Record<string, any>>(row: Row<TData_11>, id: string, _filterValue: string | number): boolean;
89
92
  autoRemove(val: any): boolean;
90
93
  };
91
94
  notEquals: {
92
- <TData_12 extends Record<string, any> = {}>(row: Row<TData_12>, id: string, filterValue: string | number): boolean;
95
+ <TData_12 extends Record<string, any>>(row: Row<TData_12>, id: string, filterValue: string | number): boolean;
93
96
  autoRemove(val: any): boolean;
94
97
  };
95
98
  startsWith: {
96
- <TData_13 extends Record<string, any> = {}>(row: Row<TData_13>, id: string, filterValue: string | number): boolean;
99
+ <TData_13 extends Record<string, any>>(row: Row<TData_13>, id: string, filterValue: string | number): boolean;
97
100
  autoRemove(val: any): boolean;
98
101
  };
99
102
  includesString: _tanstack_react_table.FilterFn<any>;
@@ -106,6 +109,17 @@ declare const MRT_FilterFns: {
106
109
  inNumberRange: _tanstack_react_table.FilterFn<any>;
107
110
  };
108
111
 
112
+ declare const MRT_SortingFns: {
113
+ fuzzy: <TData extends Record<string, any>>(rowA: Row<TData>, rowB: Row<TData>, columnId: string) => number;
114
+ alphanumeric: _tanstack_react_table.SortingFn<any>;
115
+ alphanumericCaseSensitive: _tanstack_react_table.SortingFn<any>;
116
+ text: _tanstack_react_table.SortingFn<any>;
117
+ textCaseSensitive: _tanstack_react_table.SortingFn<any>;
118
+ datetime: _tanstack_react_table.SortingFn<any>;
119
+ basic: _tanstack_react_table.SortingFn<any>;
120
+ };
121
+ declare const rankGlobalFuzzy: <TData extends Record<string, any>>(rowA: MRT_Row<TData>, rowB: MRT_Row<TData>) => number;
122
+
109
123
  interface MRT_Icons {
110
124
  ArrowDownwardIcon: any;
111
125
  ArrowRightIcon: any;
@@ -137,12 +151,17 @@ interface MRT_Icons {
137
151
  VisibilityOffIcon: any;
138
152
  }
139
153
 
154
+ type LiteralUnion<T extends U, U = string> = T | (U & Record<never, never>);
140
155
  type Prettify<T> = {
141
156
  [K in keyof T]: T[K];
142
- } & {};
143
- type LiteralUnion<T extends U, U = string> = T | (U & Record<never, never>);
157
+ } & unknown;
158
+ type Xor<A, B> = Prettify<A & {
159
+ [k in keyof B]?: never;
160
+ }> | Prettify<B & {
161
+ [k in keyof A]?: never;
162
+ }>;
144
163
  type MRT_DensityState = 'comfortable' | 'compact' | 'spacious';
145
- type MRT_FilterFnsState = Record<string, MRT_FilterOption>;
164
+ type MRT_ColumnFilterFnsState = Record<string, MRT_FilterOption>;
146
165
 
147
166
  interface MRT_Localization {
148
167
  actions: string;
@@ -154,6 +173,7 @@ interface MRT_Localization {
154
173
  clearSearch: string;
155
174
  clearSort: string;
156
175
  clickToCopy: string;
176
+ create?: string;
157
177
  collapse: string;
158
178
  collapseAll: string;
159
179
  columnActions: string;
@@ -233,16 +253,15 @@ interface MRT_Localization {
233
253
  ungroupByColumn: string;
234
254
  unpin: string;
235
255
  unpinAll: string;
236
- unsorted: string;
237
256
  }
238
- interface MRT_RowModel<TData extends Record<string, any> = {}> {
257
+ interface MRT_RowModel<TData extends Record<string, any>> {
239
258
  flatRows: MRT_Row<TData>[];
240
259
  rows: MRT_Row<TData>[];
241
260
  rowsById: {
242
261
  [key: string]: MRT_Row<TData>;
243
262
  };
244
263
  }
245
- type MRT_TableInstance<TData extends Record<string, any> = {}> = Prettify<Omit<Table<TData>, 'getAllColumns' | 'getAllFlatColumns' | 'getAllLeafColumns' | 'getCenterLeafColumns' | 'getColumn' | 'getExpandedRowModel' | 'getFlatHeaders' | 'getLeftLeafColumns' | 'getPaginationRowModel' | 'getPreFilteredRowModel' | 'getPrePaginationRowModel' | 'getRightLeafColumns' | 'getRowModel' | 'getSelectedRowModel' | 'getState' | 'options'> & {
264
+ type MRT_TableInstance<TData extends Record<string, any>> = Omit<Table<TData>, 'getAllColumns' | 'getAllFlatColumns' | 'getAllLeafColumns' | 'getCenterLeafColumns' | 'getColumn' | 'getExpandedRowModel' | 'getFlatHeaders' | 'getHeaderGroups' | 'getLeftLeafColumns' | 'getPaginationRowModel' | 'getPreFilteredRowModel' | 'getPrePaginationRowModel' | 'getRightLeafColumns' | 'getRowModel' | 'getSelectedRowModel' | 'getState' | 'options'> & {
246
265
  getAllColumns: () => MRT_Column<TData>[];
247
266
  getAllFlatColumns: () => MRT_Column<TData>[];
248
267
  getAllLeafColumns: () => MRT_Column<TData>[];
@@ -250,6 +269,7 @@ type MRT_TableInstance<TData extends Record<string, any> = {}> = Prettify<Omit<T
250
269
  getColumn: (columnId: string) => MRT_Column<TData>;
251
270
  getExpandedRowModel: () => MRT_RowModel<TData>;
252
271
  getFlatHeaders: () => MRT_Header<TData>[];
272
+ getHeaderGroups: () => MRT_HeaderGroup<TData>[];
253
273
  getLeftLeafColumns: () => MRT_Column<TData>[];
254
274
  getPaginationRowModel: () => MRT_RowModel<TData>;
255
275
  getPreFilteredRowModel: () => MRT_RowModel<TData>;
@@ -258,10 +278,7 @@ type MRT_TableInstance<TData extends Record<string, any> = {}> = Prettify<Omit<T
258
278
  getRowModel: () => MRT_RowModel<TData>;
259
279
  getSelectedRowModel: () => MRT_RowModel<TData>;
260
280
  getState: () => MRT_TableState<TData>;
261
- options: MaterialReactTableProps<TData> & {
262
- icons: MRT_Icons;
263
- localization: MRT_Localization;
264
- };
281
+ options: MRT_DefinedTableOptions<TData>;
265
282
  refs: {
266
283
  bottomToolbarRef: MutableRefObject<HTMLDivElement>;
267
284
  editInputRefs: MutableRefObject<Record<string, HTMLInputElement>>;
@@ -272,7 +289,8 @@ type MRT_TableInstance<TData extends Record<string, any> = {}> = Prettify<Omit<T
272
289
  tablePaperRef: MutableRefObject<HTMLDivElement>;
273
290
  topToolbarRef: MutableRefObject<HTMLDivElement>;
274
291
  };
275
- setColumnFilterFns: Dispatch<SetStateAction<MRT_FilterFnsState>>;
292
+ setCreatingRow: Dispatch<SetStateAction<MRT_Row<TData> | null | true>>;
293
+ setColumnFilterFns: Dispatch<SetStateAction<MRT_ColumnFilterFnsState>>;
276
294
  setDensity: Dispatch<SetStateAction<MRT_DensityState>>;
277
295
  setDraggingColumn: Dispatch<SetStateAction<MRT_Column<TData> | null>>;
278
296
  setDraggingRow: Dispatch<SetStateAction<MRT_Row<TData> | null>>;
@@ -290,9 +308,14 @@ type MRT_TableInstance<TData extends Record<string, any> = {}> = Prettify<Omit<T
290
308
  setShowColumnFilters: Dispatch<SetStateAction<boolean>>;
291
309
  setShowGlobalFilter: Dispatch<SetStateAction<boolean>>;
292
310
  setShowToolbarDropZone: Dispatch<SetStateAction<boolean>>;
293
- }>;
294
- type MRT_TableState<TData extends Record<string, any> = {}> = Prettify<TableState & {
295
- columnFilterFns: MRT_FilterFnsState;
311
+ };
312
+ type MRT_DefinedTableOptions<TData extends Record<string, any>> = MRT_TableOptions<TData> & {
313
+ localization: MRT_Localization;
314
+ icons: MRT_Icons;
315
+ };
316
+ type MRT_TableState<TData extends Record<string, any>> = TableState & {
317
+ columnFilterFns: MRT_ColumnFilterFnsState;
318
+ creatingRow: MRT_Row<TData> | null;
296
319
  density: MRT_DensityState;
297
320
  draggingColumn: MRT_Column<TData> | null;
298
321
  draggingRow: MRT_Row<TData> | null;
@@ -307,14 +330,15 @@ type MRT_TableState<TData extends Record<string, any> = {}> = Prettify<TableStat
307
330
  } | null;
308
331
  isFullScreen: boolean;
309
332
  isLoading: boolean;
333
+ isSaving: boolean;
310
334
  showAlertBanner: boolean;
311
335
  showColumnFilters: boolean;
312
336
  showGlobalFilter: boolean;
313
337
  showProgressBars: boolean;
314
338
  showSkeletons: boolean;
315
339
  showToolbarDropZone: boolean;
316
- }>;
317
- type MRT_ColumnDef<TData extends Record<string, any> = {}> = Omit<ColumnDef<TData, unknown>, 'accessorKey' | 'aggregatedCell' | 'aggregationFn' | 'cell' | 'columns' | 'filterFn' | 'footer' | 'header' | 'id' | 'sortingFn'> & {
340
+ };
341
+ type MRT_ColumnDef<TData extends Record<string, any>> = Omit<ColumnDef<TData, unknown>, 'accessorKey' | 'aggregatedCell' | 'aggregationFn' | 'cell' | 'columns' | 'filterFn' | 'footer' | 'header' | 'id' | 'sortingFn'> & {
318
342
  AggregatedCell?: (props: {
319
343
  cell: MRT_Cell<TData>;
320
344
  column: MRT_Column<TData>;
@@ -326,6 +350,7 @@ type MRT_ColumnDef<TData extends Record<string, any> = {}> = Omit<ColumnDef<TDat
326
350
  renderedCellValue: number | string | ReactNode;
327
351
  column: MRT_Column<TData>;
328
352
  row: MRT_Row<TData>;
353
+ rowRef?: RefObject<HTMLTableRowElement>;
329
354
  table: MRT_TableInstance<TData>;
330
355
  }) => ReactNode;
331
356
  Edit?: (props: {
@@ -377,7 +402,7 @@ type MRT_ColumnDef<TData extends Record<string, any> = {}> = Omit<ColumnDef<TDat
377
402
  * @example accessorKey: 'username' //simple
378
403
  * @example accessorKey: 'name.firstName' //deep key dot notation
379
404
  */
380
- accessorKey?: DeepKeys<TData>;
405
+ accessorKey?: (string & {}) | DeepKeys<TData>;
381
406
  aggregationFn?: MRT_AggregationFn<TData> | Array<MRT_AggregationFn<TData>>;
382
407
  /**
383
408
  * Specify what type of column this is. Either `data`, `display`, or `group`. Defaults to `data`.
@@ -426,13 +451,13 @@ type MRT_ColumnDef<TData extends Record<string, any> = {}> = Omit<ColumnDef<TDat
426
451
  * @default gets set to the same value as `accessorKey` by default
427
452
  */
428
453
  id?: LiteralUnion<string & keyof TData>;
429
- muiTableBodyCellCopyButtonProps?: ButtonProps | ((props: {
454
+ muiCopyButtonProps?: ButtonProps | ((props: {
430
455
  cell: MRT_Cell<TData>;
431
456
  column: MRT_Column<TData>;
432
457
  row: MRT_Row<TData>;
433
458
  table: MRT_TableInstance<TData>;
434
459
  }) => ButtonProps);
435
- muiTableBodyCellEditTextFieldProps?: TextFieldProps | ((props: {
460
+ muiEditTextFieldProps?: TextFieldProps | ((props: {
436
461
  cell: MRT_Cell<TData>;
437
462
  column: MRT_Column<TData>;
438
463
  row: MRT_Row<TData>;
@@ -448,24 +473,24 @@ type MRT_ColumnDef<TData extends Record<string, any> = {}> = Omit<ColumnDef<TDat
448
473
  table: MRT_TableInstance<TData>;
449
474
  column: MRT_Column<TData>;
450
475
  }) => TableCellProps);
451
- muiTableHeadCellColumnActionsButtonProps?: IconButtonProps | ((props: {
476
+ muiColumnActionsButtonProps?: IconButtonProps | ((props: {
452
477
  table: MRT_TableInstance<TData>;
453
478
  column: MRT_Column<TData>;
454
479
  }) => IconButtonProps);
455
- muiTableHeadCellDragHandleProps?: IconButtonProps | ((props: {
480
+ muiColumnDragHandleProps?: IconButtonProps | ((props: {
456
481
  table: MRT_TableInstance<TData>;
457
482
  column: MRT_Column<TData>;
458
483
  }) => IconButtonProps);
459
- muiTableHeadCellFilterCheckboxProps?: CheckboxProps | ((props: {
484
+ muiFilterCheckboxProps?: CheckboxProps | ((props: {
460
485
  column: MRT_Column<TData>;
461
486
  table: MRT_TableInstance<TData>;
462
487
  }) => CheckboxProps);
463
- muiTableHeadCellFilterTextFieldProps?: TextFieldProps | ((props: {
488
+ muiFilterTextFieldProps?: TextFieldProps | ((props: {
464
489
  table: MRT_TableInstance<TData>;
465
490
  column: MRT_Column<TData>;
466
491
  rangeFilterIndex?: number;
467
492
  }) => TextFieldProps);
468
- muiTableHeadCellFilterSliderProps?: SliderProps | ((props: {
493
+ muiFilterSliderProps?: SliderProps | ((props: {
469
494
  table: MRT_TableInstance<TData>;
470
495
  column: MRT_Column<TData>;
471
496
  }) => TextFieldProps);
@@ -487,40 +512,40 @@ type MRT_ColumnDef<TData extends Record<string, any> = {}> = Omit<ColumnDef<TDat
487
512
  }) => ReactNode[];
488
513
  sortingFn?: MRT_SortingFn<TData>;
489
514
  };
490
- type MRT_DefinedColumnDef<TData extends Record<string, any> = {}> = Omit<MRT_ColumnDef<TData>, 'id' | 'defaultDisplayColumn'> & {
515
+ type MRT_DefinedColumnDef<TData extends Record<string, any>> = Omit<MRT_ColumnDef<TData>, 'id' | 'defaultDisplayColumn'> & {
491
516
  defaultDisplayColumn: Partial<MRT_ColumnDef<TData>>;
492
517
  id: string;
493
518
  _filterFn: MRT_FilterOption;
494
519
  };
495
- type MRT_Column<TData extends Record<string, any> = {}> = Omit<Column<TData, unknown>, 'header' | 'footer' | 'columns' | 'columnDef' | 'filterFn'> & {
520
+ type MRT_Column<TData extends Record<string, any>> = Omit<Column<TData, unknown>, 'header' | 'footer' | 'columns' | 'columnDef' | 'filterFn'> & {
496
521
  columnDef: MRT_DefinedColumnDef<TData>;
497
522
  columns?: MRT_Column<TData>[];
498
523
  filterFn?: MRT_FilterFn<TData>;
499
524
  footer: string;
500
525
  header: string;
501
526
  };
502
- type MRT_Header<TData extends Record<string, any> = {}> = Prettify<Omit<Header<TData, unknown>, 'column'> & {
527
+ type MRT_Header<TData extends Record<string, any>> = Omit<Header<TData, unknown>, 'column'> & {
503
528
  column: MRT_Column<TData>;
504
- }>;
505
- type MRT_HeaderGroup<TData extends Record<string, any> = {}> = Prettify<Omit<HeaderGroup<TData>, 'headers'> & {
529
+ };
530
+ type MRT_HeaderGroup<TData extends Record<string, any>> = Omit<HeaderGroup<TData>, 'headers'> & {
506
531
  headers: MRT_Header<TData>[];
507
- }>;
508
- type MRT_Row<TData extends Record<string, any> = {}> = Prettify<Omit<Row<TData>, 'getVisibleCells' | 'getAllCells' | 'subRows' | '_valuesCache'> & {
532
+ };
533
+ type MRT_Row<TData extends Record<string, any>> = Omit<Row<TData>, 'getVisibleCells' | 'getAllCells' | 'subRows' | '_valuesCache'> & {
509
534
  getAllCells: () => MRT_Cell<TData>[];
510
535
  getVisibleCells: () => MRT_Cell<TData>[];
511
536
  subRows?: MRT_Row<TData>[];
512
537
  _valuesCache: Record<LiteralUnion<string & DeepKeys<TData>>, any>;
513
- }>;
514
- type MRT_Cell<TData extends Record<string, any> = {}> = Prettify<Omit<Cell<TData, unknown>, 'column' | 'row'> & {
538
+ };
539
+ type MRT_Cell<TData extends Record<string, any>> = Omit<Cell<TData, unknown>, 'column' | 'row'> & {
515
540
  column: MRT_Column<TData>;
516
541
  row: MRT_Row<TData>;
517
- }>;
542
+ };
518
543
  type MRT_AggregationOption = string & keyof typeof MRT_AggregationFns;
519
- type MRT_AggregationFn<TData extends Record<string, any> = {}> = AggregationFn<TData> | MRT_AggregationOption;
544
+ type MRT_AggregationFn<TData extends Record<string, any>> = AggregationFn<TData> | MRT_AggregationOption;
520
545
  type MRT_SortingOption = LiteralUnion<string & keyof typeof MRT_SortingFns>;
521
- type MRT_SortingFn<TData extends Record<string, any> = {}> = SortingFn<TData> | MRT_SortingOption;
546
+ type MRT_SortingFn<TData extends Record<string, any>> = SortingFn<TData> | MRT_SortingOption;
522
547
  type MRT_FilterOption = LiteralUnion<string & keyof typeof MRT_FilterFns>;
523
- type MRT_FilterFn<TData extends Record<string, any> = {}> = FilterFn<TData> | MRT_FilterOption;
548
+ type MRT_FilterFn<TData extends Record<string, any>> = FilterFn<TData> | MRT_FilterOption;
524
549
  type MRT_InternalFilterOption = {
525
550
  option: string;
526
551
  symbol: string;
@@ -528,7 +553,6 @@ type MRT_InternalFilterOption = {
528
553
  divider: boolean;
529
554
  };
530
555
  type MRT_DisplayColumnIds = 'mrt-row-actions' | 'mrt-row-drag' | 'mrt-row-expand' | 'mrt-row-numbers' | 'mrt-row-select';
531
- type MRT_CreateTableFeature<TData extends Record<string, any> = {}, TFeature = any> = (table: MRT_TableInstance<TData>) => TFeature;
532
556
  /**
533
557
  * `columns` and `data` props are the only required props, but there are over 170 other optional props.
534
558
  *
@@ -538,7 +562,7 @@ type MRT_CreateTableFeature<TData extends Record<string, any> = {}, TFeature = a
538
562
  * See the full props list on the official docs site:
539
563
  * @link https://www.material-react-table.com/docs/api/props
540
564
  */
541
- type MaterialReactTableProps<TData extends Record<string, any> = {}> = Prettify<Omit<Partial<TableOptions<TData>>, 'columns' | 'data' | 'defaultColumn' | 'enableRowSelection' | 'expandRowsFn' | 'getRowId' | 'globalFilterFn' | 'initialState' | 'onStateChange' | 'state'> & {
565
+ type MRT_TableOptions<TData extends Record<string, any>> = Omit<Partial<TableOptions<TData>>, 'columns' | 'data' | 'defaultColumn' | 'enableRowSelection' | 'expandRowsFn' | 'getRowId' | 'globalFilterFn' | 'initialState' | 'onStateChange' | 'state'> & {
542
566
  columnFilterModeOptions?: Array<LiteralUnion<string & MRT_FilterOption>> | null;
543
567
  /**
544
568
  * The columns to display in the table. `accessorKey`s or `accessorFn`s must match keys in the `data` prop.
@@ -551,6 +575,10 @@ type MaterialReactTableProps<TData extends Record<string, any> = {}> = Prettify<
551
575
  * @link https://www.material-react-table.com/docs/api/column-options
552
576
  */
553
577
  columns: MRT_ColumnDef<TData>[];
578
+ columnVirtualizerInstanceRef?: MutableRefObject<Virtualizer<HTMLDivElement, HTMLTableCellElement> | null>;
579
+ columnVirtualizerOptions?: Partial<VirtualizerOptions<HTMLDivElement, HTMLTableCellElement>> | ((props: {
580
+ table: MRT_TableInstance<TData>;
581
+ }) => Partial<VirtualizerOptions<HTMLDivElement, HTMLTableCellElement>>);
554
582
  /**
555
583
  * Pass your data as an array of objects. Objects can theoretically be any shape, but it's best to keep them consistent.
556
584
  *
@@ -567,9 +595,13 @@ type MaterialReactTableProps<TData extends Record<string, any> = {}> = Prettify<
567
595
  */
568
596
  defaultDisplayColumn?: Partial<MRT_ColumnDef<TData>>;
569
597
  displayColumnDefOptions?: Partial<{
570
- [key in MRT_DisplayColumnIds]: Partial<MRT_ColumnDef>;
598
+ [key in MRT_DisplayColumnIds]: Partial<MRT_ColumnDef<TData>>;
571
599
  }>;
572
- editingMode?: 'table' | 'modal' | 'row' | 'cell';
600
+ createDisplayMode?: 'modal' | 'row' | 'custom';
601
+ editDisplayMode?: 'modal' | 'row' | 'cell' | 'table' | 'custom';
602
+ columnFilterDisplayMode?: 'subheader' | 'popover' | 'custom';
603
+ paginationDisplayMode?: 'default' | 'pages' | 'custom';
604
+ selectDisplayMode?: 'checkbox' | 'radio' | 'switch';
573
605
  enableBottomToolbar?: boolean;
574
606
  enableClickToCopy?: boolean;
575
607
  enableColumnActions?: boolean;
@@ -647,13 +679,13 @@ type MaterialReactTableProps<TData extends Record<string, any> = {}> = Prettify<
647
679
  table: MRT_TableInstance<TData>;
648
680
  row: MRT_Row<TData>;
649
681
  }) => CheckboxProps | RadioProps);
650
- muiTableBodyCellCopyButtonProps?: ButtonProps | ((props: {
682
+ muiCopyButtonProps?: ButtonProps | ((props: {
651
683
  cell: MRT_Cell<TData>;
652
684
  column: MRT_Column<TData>;
653
685
  row: MRT_Row<TData>;
654
686
  table: MRT_TableInstance<TData>;
655
687
  }) => ButtonProps);
656
- muiTableBodyCellEditTextFieldProps?: TextFieldProps | ((props: {
688
+ muiEditTextFieldProps?: TextFieldProps | ((props: {
657
689
  cell: MRT_Cell<TData>;
658
690
  column: MRT_Column<TData>;
659
691
  row: MRT_Row<TData>;
@@ -665,7 +697,7 @@ type MaterialReactTableProps<TData extends Record<string, any> = {}> = Prettify<
665
697
  row: MRT_Row<TData>;
666
698
  table: MRT_TableInstance<TData>;
667
699
  }) => TableCellProps);
668
- muiTableBodyCellSkeletonProps?: SkeletonProps | ((props: {
700
+ muiSkeletonProps?: SkeletonProps | ((props: {
669
701
  cell: MRT_Cell<TData>;
670
702
  column: MRT_Column<TData>;
671
703
  row: MRT_Row<TData>;
@@ -674,7 +706,7 @@ type MaterialReactTableProps<TData extends Record<string, any> = {}> = Prettify<
674
706
  muiTableBodyProps?: TableBodyProps | ((props: {
675
707
  table: MRT_TableInstance<TData>;
676
708
  }) => TableBodyProps);
677
- muiTableBodyRowDragHandleProps?: IconButtonProps | ((props: {
709
+ muiRowDragHandleProps?: IconButtonProps | ((props: {
678
710
  table: MRT_TableInstance<TData>;
679
711
  row: MRT_Row<TData>;
680
712
  }) => IconButtonProps);
@@ -687,7 +719,7 @@ type MaterialReactTableProps<TData extends Record<string, any> = {}> = Prettify<
687
719
  muiTableContainerProps?: TableContainerProps | ((props: {
688
720
  table: MRT_TableInstance<TData>;
689
721
  }) => TableContainerProps);
690
- muiTableDetailPanelProps?: TableCellProps | ((props: {
722
+ muiDetailPanelProps?: TableCellProps | ((props: {
691
723
  table: MRT_TableInstance<TData>;
692
724
  row: MRT_Row<TData>;
693
725
  }) => TableCellProps);
@@ -702,27 +734,35 @@ type MaterialReactTableProps<TData extends Record<string, any> = {}> = Prettify<
702
734
  table: MRT_TableInstance<TData>;
703
735
  footerGroup: MRT_HeaderGroup<TData>;
704
736
  }) => TableRowProps);
705
- muiTableHeadCellColumnActionsButtonProps?: IconButtonProps | ((props: {
737
+ muiColumnActionsButtonProps?: IconButtonProps | ((props: {
706
738
  table: MRT_TableInstance<TData>;
707
739
  column: MRT_Column<TData>;
708
740
  }) => IconButtonProps);
709
- muiTableHeadCellDragHandleProps?: IconButtonProps | ((props: {
741
+ muiColumnDragHandleProps?: IconButtonProps | ((props: {
710
742
  table: MRT_TableInstance<TData>;
711
743
  column: MRT_Column<TData>;
712
744
  }) => IconButtonProps);
713
- muiTableHeadCellFilterCheckboxProps?: CheckboxProps | ((props: {
745
+ muiFilterCheckboxProps?: CheckboxProps | ((props: {
714
746
  column: MRT_Column<TData>;
715
747
  table: MRT_TableInstance<TData>;
716
748
  }) => CheckboxProps);
717
- muiTableHeadCellFilterTextFieldProps?: TextFieldProps | ((props: {
749
+ muiFilterTextFieldProps?: TextFieldProps | ((props: {
718
750
  table: MRT_TableInstance<TData>;
719
751
  column: MRT_Column<TData>;
720
752
  rangeFilterIndex?: number;
721
753
  }) => TextFieldProps);
722
- muiTableHeadCellFilterSliderProps?: SliderProps | ((props: {
754
+ muiFilterSliderProps?: SliderProps | ((props: {
723
755
  table: MRT_TableInstance<TData>;
724
756
  column: MRT_Column<TData>;
725
757
  }) => TextFieldProps);
758
+ muiCreateRowModalProps?: DialogProps | ((props: {
759
+ row: MRT_Row<TData>;
760
+ table: MRT_TableInstance<TData>;
761
+ }) => DialogProps);
762
+ muiEditRowModalProps?: DialogProps | ((props: {
763
+ row: MRT_Row<TData>;
764
+ table: MRT_TableInstance<TData>;
765
+ }) => DialogProps);
726
766
  muiTableHeadCellProps?: TableCellProps | ((props: {
727
767
  table: MRT_TableInstance<TData>;
728
768
  column: MRT_Column<TData>;
@@ -752,6 +792,20 @@ type MaterialReactTableProps<TData extends Record<string, any> = {}> = Prettify<
752
792
  muiTopToolbarProps?: ToolbarProps | ((props: {
753
793
  table: MRT_TableInstance<TData>;
754
794
  }) => ToolbarProps);
795
+ onCreatingRowCancel?: (props: {
796
+ row: MRT_Row<TData>;
797
+ table: MRT_TableInstance<TData>;
798
+ }) => void;
799
+ onCreatingRowChange?: OnChangeFn<MRT_Row<TData> | null>;
800
+ onCreatingRowSave?: (props: {
801
+ exitCreatingMode: () => void;
802
+ row: MRT_Row<TData>;
803
+ table: MRT_TableInstance<TData>;
804
+ values: Record<LiteralUnion<string & DeepKeys<TData>>, any>;
805
+ }) => void;
806
+ onColumnFilterFnsChange?: OnChangeFn<{
807
+ [key: string]: MRT_FilterOption;
808
+ }>;
755
809
  onDensityChange?: OnChangeFn<MRT_DensityState>;
756
810
  onDraggingColumnChange?: OnChangeFn<MRT_Column<TData> | null>;
757
811
  onDraggingRowChange?: OnChangeFn<MRT_Row<TData> | null>;
@@ -760,19 +814,20 @@ type MaterialReactTableProps<TData extends Record<string, any> = {}> = Prettify<
760
814
  row: MRT_Row<TData>;
761
815
  table: MRT_TableInstance<TData>;
762
816
  }) => void;
817
+ onEditingRowChange?: OnChangeFn<MRT_Row<TData> | null>;
763
818
  onEditingRowSave?: (props: {
764
819
  exitEditingMode: () => void;
765
820
  row: MRT_Row<TData>;
766
821
  table: MRT_TableInstance<TData>;
767
822
  values: Record<LiteralUnion<string & DeepKeys<TData>>, any>;
768
823
  }) => Promise<void> | void;
769
- onEditingRowChange?: OnChangeFn<MRT_Row<TData> | null>;
770
- onColumnFilterFnsChange?: OnChangeFn<{
771
- [key: string]: MRT_FilterOption;
772
- }>;
773
824
  onGlobalFilterFnChange?: OnChangeFn<MRT_FilterOption>;
774
- onHoveredColumnChange?: OnChangeFn<MRT_Column<TData> | null>;
775
- onHoveredRowChange?: OnChangeFn<MRT_Row<TData> | null>;
825
+ onHoveredColumnChange?: OnChangeFn<MRT_Column<TData> | {
826
+ id: string;
827
+ } | null>;
828
+ onHoveredRowChange?: OnChangeFn<MRT_Row<TData> | {
829
+ id: string;
830
+ } | null>;
776
831
  onIsFullScreenChange?: OnChangeFn<boolean>;
777
832
  onShowAlertBannerChange?: OnChangeFn<boolean>;
778
833
  onShowColumnFiltersChange?: OnChangeFn<boolean>;
@@ -790,6 +845,16 @@ type MaterialReactTableProps<TData extends Record<string, any> = {}> = Prettify<
790
845
  renderBottomToolbarCustomActions?: (props: {
791
846
  table: MRT_TableInstance<TData>;
792
847
  }) => ReactNode;
848
+ renderCreateRowModalContent?: (props: {
849
+ internalEditComponents: ReactNode[];
850
+ row: MRT_Row<TData>;
851
+ table: MRT_TableInstance<TData>;
852
+ }) => ReactNode;
853
+ renderEditRowModalContent?: (props: {
854
+ internalEditComponents: ReactNode[];
855
+ row: MRT_Row<TData>;
856
+ table: MRT_TableInstance<TData>;
857
+ }) => ReactNode;
793
858
  renderColumnActionsMenuItems?: (props: {
794
859
  column: MRT_Column<TData>;
795
860
  closeMenu: () => void;
@@ -835,76 +900,438 @@ type MaterialReactTableProps<TData extends Record<string, any> = {}> = Prettify<
835
900
  }) => ReactNode;
836
901
  rowCount?: number;
837
902
  rowNumberMode?: 'original' | 'static';
903
+ rowVirtualizerInstanceRef?: MutableRefObject<Virtualizer<HTMLDivElement, HTMLTableRowElement> | null>;
904
+ rowVirtualizerOptions?: Partial<VirtualizerOptions<HTMLDivElement, HTMLTableRowElement>> | ((props: {
905
+ table: MRT_TableInstance<TData>;
906
+ }) => Partial<VirtualizerOptions<HTMLDivElement, HTMLTableRowElement>>);
838
907
  selectAllMode?: 'all' | 'page';
839
908
  /**
840
909
  * Manage state externally any way you want, then pass it back into MRT.
841
910
  */
842
911
  state?: Partial<MRT_TableState<TData>>;
843
- /**
844
- * Sequence of features important any dependent feature must be defined first
845
- */
846
- tableFeatures?: Array<MRT_CreateTableFeature<TData>>;
847
- /**
848
- * Get access to the table instance via a ref to read state or call built-in methods
849
- */
850
- tableInstanceRef?: MutableRefObject<MRT_TableInstance<TData> | null>;
851
- /**
852
- * @deprecated Use `rowVirtualizerInstanceRef` instead
853
- */
854
- virtualizerInstanceRef?: any;
855
- /**
856
- * @deprecated Use `rowVirtualizerProps` instead
857
- */
858
- virtualizerProps?: any;
859
- }> & {
860
- columnVirtualizerInstanceRef?: MutableRefObject<Virtualizer<HTMLDivElement, HTMLTableCellElement> | null>;
861
- columnVirtualizerProps?: Partial<VirtualizerOptions<HTMLDivElement, HTMLTableCellElement>> | ((props: {
862
- table: MRT_TableInstance<TData>;
863
- }) => Partial<VirtualizerOptions<HTMLDivElement, HTMLTableCellElement>>);
864
- rowVirtualizerInstanceRef?: MutableRefObject<Virtualizer<HTMLDivElement, HTMLTableRowElement> | null>;
865
- rowVirtualizerProps?: Partial<VirtualizerOptions<HTMLDivElement, HTMLTableRowElement>> | ((props: {
866
- table: MRT_TableInstance<TData>;
867
- }) => Partial<VirtualizerOptions<HTMLDivElement, HTMLTableRowElement>>);
868
912
  };
869
913
 
870
- declare const MRT_SortingFns: {
871
- fuzzy: <TData extends Record<string, any> = {}>(rowA: Row<TData>, rowB: Row<TData>, columnId: string) => number;
872
- alphanumeric: _tanstack_react_table.SortingFn<any>;
873
- alphanumericCaseSensitive: _tanstack_react_table.SortingFn<any>;
874
- text: _tanstack_react_table.SortingFn<any>;
875
- textCaseSensitive: _tanstack_react_table.SortingFn<any>;
876
- datetime: _tanstack_react_table.SortingFn<any>;
877
- basic: _tanstack_react_table.SortingFn<any>;
914
+ type TableInstanceProp<TData extends Record<string, any> = {}> = {
915
+ table: MRT_TableInstance<TData>;
878
916
  };
917
+ type Props$R<TData extends Record<string, any> = {}> = Xor<TableInstanceProp<TData>, MRT_TableOptions<TData>>;
918
+ declare const MaterialReactTable: <TData extends Record<string, any> = {}>(props: Props$R<TData>) => react_jsx_runtime.JSX.Element;
919
+
920
+ interface Props$Q<TData extends Record<string, any>> {
921
+ columnVirtualizer?: Virtualizer<HTMLDivElement, HTMLTableCellElement>;
922
+ table: MRT_TableInstance<TData>;
923
+ virtualColumns?: VirtualItem[];
924
+ virtualPaddingLeft?: number;
925
+ virtualPaddingRight?: number;
926
+ }
927
+ declare const MRT_TableBody: <TData extends Record<string, any>>({ columnVirtualizer, table, virtualColumns, virtualPaddingLeft, virtualPaddingRight, }: Props$Q<TData>) => react_jsx_runtime.JSX.Element;
928
+ declare const Memo_MRT_TableBody: <TData extends Record<string, any>>({ columnVirtualizer, table, virtualColumns, virtualPaddingLeft, virtualPaddingRight, }: Props$Q<TData>) => react_jsx_runtime.JSX.Element;
879
929
 
880
- declare const MaterialReactTable: <TData extends Record<string, any> = {}>({ aggregationFns, autoResetExpanded, columnResizeMode, defaultColumn, defaultDisplayColumn, editingMode, enableBottomToolbar, enableColumnActions, enableColumnFilters, enableColumnOrdering, enableColumnResizing, enableDensityToggle, enableExpandAll, enableExpanding, enableFilterMatchHighlighting, enableFilters, enableFullScreenToggle, enableGlobalFilter, enableGlobalFilterRankedResults, enableGrouping, enableHiding, enableMultiRowSelection, enableMultiSort, enablePagination, enablePinning, enableRowSelection, enableSelectAll, enableSorting, enableStickyHeader, enableTableFooter, enableTableHead, enableToolbarInternalActions, enableTopToolbar, filterFns, icons, layoutMode, localization, manualFiltering, manualGrouping, manualPagination, manualSorting, positionActionsColumn, positionExpandColumn, positionGlobalFilter, positionPagination, positionToolbarAlertBanner, positionToolbarDropZone, rowNumberMode, selectAllMode, sortingFns, ...rest }: MaterialReactTableProps<TData>) => react_jsx_runtime.JSX.Element;
930
+ interface Props$P<TData extends Record<string, any>> {
931
+ cell: MRT_Cell<TData>;
932
+ measureElement?: (element: HTMLTableCellElement) => void;
933
+ numRows: number;
934
+ rowIndex: number;
935
+ rowRef: RefObject<HTMLTableRowElement>;
936
+ table: MRT_TableInstance<TData>;
937
+ virtualCell?: VirtualItem;
938
+ }
939
+ declare const MRT_TableBodyCell: <TData extends Record<string, any>>({ cell, measureElement, numRows, rowIndex, rowRef, table, virtualCell, }: Props$P<TData>) => react_jsx_runtime.JSX.Element;
940
+ declare const Memo_MRT_TableBodyCell: <TData extends Record<string, any>>({ cell, measureElement, numRows, rowIndex, rowRef, table, virtualCell, }: Props$P<TData>) => react_jsx_runtime.JSX.Element;
941
+
942
+ interface Props$O<TData extends Record<string, any>> {
943
+ cell: MRT_Cell<TData>;
944
+ table: MRT_TableInstance<TData>;
945
+ }
946
+ declare const MRT_TableBodyCellValue: <TData extends Record<string, any>>({ cell, table, }: Props$O<TData>) => react_jsx_runtime.JSX.Element;
947
+
948
+ interface Props$N<TData extends Record<string, any>> {
949
+ columnVirtualizer?: Virtualizer<HTMLDivElement, HTMLTableCellElement>;
950
+ measureElement?: (element: HTMLTableRowElement) => void;
951
+ numRows: number;
952
+ row: MRT_Row<TData>;
953
+ rowIndex: number;
954
+ table: MRT_TableInstance<TData>;
955
+ virtualColumns?: VirtualItem[];
956
+ virtualPaddingLeft?: number;
957
+ virtualPaddingRight?: number;
958
+ virtualRow?: VirtualItem;
959
+ }
960
+ declare const MRT_TableBodyRow: <TData extends Record<string, any>>({ columnVirtualizer, measureElement, numRows, row, rowIndex, table, virtualColumns, virtualPaddingLeft, virtualPaddingRight, virtualRow, }: Props$N<TData>) => react_jsx_runtime.JSX.Element;
961
+ declare const Memo_MRT_TableBodyRow: <TData extends Record<string, any>>({ columnVirtualizer, measureElement, numRows, row, rowIndex, table, virtualColumns, virtualPaddingLeft, virtualPaddingRight, virtualRow, }: Props$N<TData>) => react_jsx_runtime.JSX.Element;
962
+
963
+ interface Props$M<TData extends Record<string, any>> {
964
+ row: MRT_Row<TData>;
965
+ rowRef: RefObject<HTMLTableRowElement>;
966
+ table: MRT_TableInstance<TData>;
967
+ }
968
+ declare const MRT_TableBodyRowGrabHandle: <TData extends Record<string, any>>({ row, rowRef, table, }: Props$M<TData>) => react_jsx_runtime.JSX.Element;
881
969
 
882
- interface Props$i<TData extends Record<string, any> = {}> {
970
+ interface Props$L<TData extends Record<string, any>> {
971
+ parentRowRef: RefObject<HTMLTableRowElement>;
972
+ row: MRT_Row<TData>;
973
+ rowIndex: number;
883
974
  table: MRT_TableInstance<TData>;
975
+ virtualRow?: VirtualItem;
884
976
  }
885
- declare const MRT_BottomToolbar: <TData extends Record<string, any> = {}>({ table, }: Props$i<TData>) => react_jsx_runtime.JSX.Element;
977
+ declare const MRT_TableDetailPanel: <TData extends Record<string, any>>({ parentRowRef, row, rowIndex, table, virtualRow, }: Props$L<TData>) => react_jsx_runtime.JSX.Element;
886
978
 
887
- interface Props$h<TData extends Record<string, any> = {}> {
979
+ interface Props$K<TData extends Record<string, any>> {
980
+ column: MRT_Column<TData>;
981
+ table: MRT_TableInstance<TData>;
982
+ }
983
+ declare const MRT_ColumnPinningButtons: <TData extends Record<string, any>>({ column, table, }: Props$K<TData>) => react_jsx_runtime.JSX.Element;
984
+
985
+ interface Props$J<TData extends Record<string, any>> {
888
986
  cell: MRT_Cell<TData>;
889
987
  children: ReactNode;
890
988
  table: MRT_TableInstance<TData>;
891
989
  }
892
- declare const MRT_CopyButton: <TData extends Record<string, any> = {}>({ cell, children, table, }: Props$h<TData>) => react_jsx_runtime.JSX.Element;
990
+ declare const MRT_CopyButton: <TData extends Record<string, any>>({ cell, children, table, }: Props$J<TData>) => react_jsx_runtime.JSX.Element;
893
991
 
894
- interface Props$g<TData extends Record<string, any> = {}> {
992
+ interface Props$I<TData extends Record<string, any>> {
895
993
  row: MRT_Row<TData>;
896
994
  table: MRT_TableInstance<TData>;
897
995
  variant?: 'icon' | 'text';
898
996
  }
899
- declare const MRT_EditActionButtons: <TData extends Record<string, any> = {}>({ row, table, variant, }: Props$g<TData>) => react_jsx_runtime.JSX.Element;
997
+ declare const MRT_EditActionButtons: <TData extends Record<string, any>>({ row, table, variant, }: Props$I<TData>) => react_jsx_runtime.JSX.Element;
998
+
999
+ interface Props$H<TData extends Record<string, any>> {
1000
+ table: MRT_TableInstance<TData>;
1001
+ }
1002
+ declare const MRT_ExpandAllButton: <TData extends Record<string, any>>({ table, }: Props$H<TData>) => react_jsx_runtime.JSX.Element;
1003
+
1004
+ interface Props$G<TData extends Record<string, any>> {
1005
+ row: MRT_Row<TData>;
1006
+ table: MRT_TableInstance<TData>;
1007
+ }
1008
+ declare const MRT_ExpandButton: <TData extends Record<string, any>>({ row, table, }: Props$G<TData>) => react_jsx_runtime.JSX.Element;
1009
+
1010
+ interface Props$F<TData extends Record<string, any>> extends IconButtonProps {
1011
+ table: MRT_TableInstance<TData>;
1012
+ }
1013
+ declare const MRT_ToggleFullScreenButton: <TData extends Record<string, any>>({ table, ...rest }: Props$F<TData>) => react_jsx_runtime.JSX.Element;
1014
+
1015
+ interface Props$E<TData extends Record<string, any>> {
1016
+ iconButtonProps?: IconButtonProps;
1017
+ onDragStart: DragEventHandler<HTMLButtonElement>;
1018
+ onDragEnd: DragEventHandler<HTMLButtonElement>;
1019
+ table: MRT_TableInstance<TData>;
1020
+ }
1021
+ declare const MRT_GrabHandleButton: <TData extends Record<string, any>>({ iconButtonProps, onDragEnd, onDragStart, table, }: Props$E<TData>) => react_jsx_runtime.JSX.Element;
1022
+
1023
+ interface Props$D<TData extends Record<string, any>> extends IconButtonProps {
1024
+ table: MRT_TableInstance<TData>;
1025
+ }
1026
+ declare const MRT_ShowHideColumnsButton: <TData extends Record<string, any>>({ table, ...rest }: Props$D<TData>) => react_jsx_runtime.JSX.Element;
1027
+
1028
+ interface Props$C<TData extends Record<string, any>> extends IconButtonProps {
1029
+ table: MRT_TableInstance<TData>;
1030
+ }
1031
+ declare const MRT_ToggleDensePaddingButton: <TData extends Record<string, any>>({ table, ...rest }: Props$C<TData>) => react_jsx_runtime.JSX.Element;
900
1032
 
901
- interface Props$f<TData extends Record<string, any> = {}> {
1033
+ interface Props$B<TData extends Record<string, any>> extends IconButtonProps {
1034
+ table: MRT_TableInstance<TData>;
1035
+ }
1036
+ declare const MRT_ToggleFiltersButton: <TData extends Record<string, any>>({ table, ...rest }: Props$B<TData>) => react_jsx_runtime.JSX.Element;
1037
+
1038
+ interface Props$A<TData extends Record<string, any>> extends IconButtonProps {
1039
+ table: MRT_TableInstance<TData>;
1040
+ }
1041
+ declare const MRT_ToggleGlobalFilterButton: <TData extends Record<string, any>>({ table, ...rest }: Props$A<TData>) => react_jsx_runtime.JSX.Element;
1042
+
1043
+ interface Props$z<TData extends Record<string, any>> {
1044
+ cell: MRT_Cell<TData>;
902
1045
  row: MRT_Row<TData>;
903
1046
  table: MRT_TableInstance<TData>;
904
1047
  }
905
- declare const MRT_ExpandButton: <TData extends Record<string, any> = {}>({ row, table, }: Props$f<TData>) => react_jsx_runtime.JSX.Element;
1048
+ declare const MRT_ToggleRowActionMenuButton: <TData extends Record<string, any>>({ cell, row, table, }: Props$z<TData>) => react_jsx_runtime.JSX.Element;
1049
+
1050
+ declare const getColumnId: <TData extends Record<string, any>>(columnDef: MRT_ColumnDef<TData>) => string;
1051
+ declare const getAllLeafColumnDefs: <TData extends Record<string, any>>(columns: MRT_ColumnDef<TData>[]) => MRT_ColumnDef<TData>[];
1052
+ declare const prepareColumns: <TData extends Record<string, any>>({ aggregationFns, columnDefs, columnFilterFns, defaultDisplayColumn, filterFns, sortingFns, }: {
1053
+ aggregationFns: {
1054
+ sum: _tanstack_react_table.AggregationFn<any>;
1055
+ min: _tanstack_react_table.AggregationFn<any>;
1056
+ max: _tanstack_react_table.AggregationFn<any>;
1057
+ extent: _tanstack_react_table.AggregationFn<any>;
1058
+ mean: _tanstack_react_table.AggregationFn<any>;
1059
+ median: _tanstack_react_table.AggregationFn<any>;
1060
+ unique: _tanstack_react_table.AggregationFn<any>;
1061
+ uniqueCount: _tanstack_react_table.AggregationFn<any>;
1062
+ count: _tanstack_react_table.AggregationFn<any>;
1063
+ } & Record<string, _tanstack_react_table.AggregationFn<any>>;
1064
+ columnDefs: MRT_ColumnDef<TData>[];
1065
+ columnFilterFns: {
1066
+ [key: string]: MRT_FilterOption;
1067
+ };
1068
+ defaultDisplayColumn: Partial<MRT_ColumnDef<TData>>;
1069
+ filterFns: {
1070
+ between: {
1071
+ <TData_1 extends Record<string, any>>(row: Row<TData_1>, id: string, filterValues: [string | number, string | number]): boolean;
1072
+ autoRemove(val: any): boolean;
1073
+ };
1074
+ betweenInclusive: {
1075
+ <TData_2 extends Record<string, any>>(row: Row<TData_2>, id: string, filterValues: [string | number, string | number]): boolean;
1076
+ autoRemove(val: any): boolean;
1077
+ };
1078
+ contains: {
1079
+ <TData_3 extends Record<string, any>>(row: Row<TData_3>, id: string, filterValue: string | number): boolean;
1080
+ autoRemove(val: any): boolean;
1081
+ };
1082
+ empty: {
1083
+ <TData_4 extends Record<string, any>>(row: Row<TData_4>, id: string, _filterValue: string | number): boolean;
1084
+ autoRemove(val: any): boolean;
1085
+ };
1086
+ endsWith: {
1087
+ <TData_5 extends Record<string, any>>(row: Row<TData_5>, id: string, filterValue: string | number): boolean;
1088
+ autoRemove(val: any): boolean;
1089
+ };
1090
+ equals: {
1091
+ <TData_6 extends Record<string, any>>(row: Row<TData_6>, id: string, filterValue: string | number): boolean;
1092
+ autoRemove(val: any): boolean;
1093
+ };
1094
+ fuzzy: {
1095
+ <TData_7 extends Record<string, any>>(row: Row<TData_7>, columnId: string, filterValue: string | number, addMeta: (item: _tanstack_match_sorter_utils.RankingInfo) => void): boolean;
1096
+ autoRemove(val: any): boolean;
1097
+ };
1098
+ greaterThan: {
1099
+ <TData_8 extends Record<string, any>>(row: Row<TData_8>, id: string, filterValue: string | number): boolean;
1100
+ autoRemove(val: any): boolean;
1101
+ };
1102
+ greaterThanOrEqualTo: {
1103
+ <TData_9 extends Record<string, any>>(row: Row<TData_9>, id: string, filterValue: string | number): boolean;
1104
+ autoRemove(val: any): boolean;
1105
+ };
1106
+ lessThan: {
1107
+ <TData_10 extends Record<string, any>>(row: Row<TData_10>, id: string, filterValue: string | number): boolean;
1108
+ autoRemove(val: any): boolean;
1109
+ };
1110
+ lessThanOrEqualTo: {
1111
+ <TData_11 extends Record<string, any>>(row: Row<TData_11>, id: string, filterValue: string | number): boolean;
1112
+ autoRemove(val: any): boolean;
1113
+ };
1114
+ notEmpty: {
1115
+ <TData_12 extends Record<string, any>>(row: Row<TData_12>, id: string, _filterValue: string | number): boolean;
1116
+ autoRemove(val: any): boolean;
1117
+ };
1118
+ notEquals: {
1119
+ <TData_13 extends Record<string, any>>(row: Row<TData_13>, id: string, filterValue: string | number): boolean;
1120
+ autoRemove(val: any): boolean;
1121
+ };
1122
+ startsWith: {
1123
+ <TData_14 extends Record<string, any>>(row: Row<TData_14>, id: string, filterValue: string | number): boolean;
1124
+ autoRemove(val: any): boolean;
1125
+ };
1126
+ includesString: _tanstack_react_table.FilterFn<any>;
1127
+ includesStringSensitive: _tanstack_react_table.FilterFn<any>;
1128
+ equalsString: _tanstack_react_table.FilterFn<any>;
1129
+ arrIncludes: _tanstack_react_table.FilterFn<any>;
1130
+ arrIncludesAll: _tanstack_react_table.FilterFn<any>;
1131
+ arrIncludesSome: _tanstack_react_table.FilterFn<any>;
1132
+ weakEquals: _tanstack_react_table.FilterFn<any>;
1133
+ inNumberRange: _tanstack_react_table.FilterFn<any>;
1134
+ } & Record<string, _tanstack_react_table.FilterFn<any>>;
1135
+ sortingFns: {
1136
+ fuzzy: <TData_15 extends Record<string, any>>(rowA: Row<TData_15>, rowB: Row<TData_15>, columnId: string) => number;
1137
+ alphanumeric: _tanstack_react_table.SortingFn<any>;
1138
+ alphanumericCaseSensitive: _tanstack_react_table.SortingFn<any>;
1139
+ text: _tanstack_react_table.SortingFn<any>;
1140
+ textCaseSensitive: _tanstack_react_table.SortingFn<any>;
1141
+ datetime: _tanstack_react_table.SortingFn<any>;
1142
+ basic: _tanstack_react_table.SortingFn<any>;
1143
+ } & Record<string, _tanstack_react_table.SortingFn<any>>;
1144
+ }) => MRT_DefinedColumnDef<TData>[];
1145
+ declare const reorderColumn: <TData extends Record<string, any>>(draggedColumn: MRT_Column<TData>, targetColumn: MRT_Column<TData>, columnOrder: ColumnOrderState) => ColumnOrderState;
1146
+ declare const showExpandColumn: <TData extends Record<string, any>>(props: MRT_TableOptions<TData>, grouping?: GroupingState) => boolean;
1147
+ declare const getLeadingDisplayColumnIds: <TData extends Record<string, any>>(props: MRT_TableOptions<TData>) => MRT_DisplayColumnIds[];
1148
+ declare const getTrailingDisplayColumnIds: <TData extends Record<string, any>>(props: MRT_TableOptions<TData>) => MRT_DisplayColumnIds[];
1149
+ declare const getDefaultColumnOrderIds: <TData extends Record<string, any>>(props: MRT_TableOptions<TData>) => string[];
1150
+ declare const getDefaultColumnFilterFn: <TData extends Record<string, any>>(columnDef: MRT_ColumnDef<TData>) => MRT_FilterOption;
1151
+ declare const getIsFirstColumn: <TData extends Record<string, any>>(column: MRT_Column<TData>, table: MRT_TableInstance<TData>) => boolean;
1152
+ declare const getIsLastColumn: <TData extends Record<string, any>>(column: MRT_Column<TData>, table: MRT_TableInstance<TData>) => boolean;
1153
+ declare const getIsLastLeftPinnedColumn: <TData extends Record<string, any>>(table: MRT_TableInstance<TData>, column: MRT_Column<TData>) => boolean;
1154
+ declare const getIsFirstRightPinnedColumn: <TData extends Record<string, any>>(column: MRT_Column<TData>) => boolean;
1155
+ declare const getTotalRight: <TData extends Record<string, any>>(table: MRT_TableInstance<TData>, column: MRT_Column<TData>) => number;
1156
+ declare const getCanRankRows: <TData extends Record<string, any>>(table: MRT_TableInstance<TData>) => boolean | undefined;
1157
+ declare const getCommonCellStyles: <TData extends Record<string, any>>({ column, header, table, tableCellProps, theme, }: {
1158
+ column: MRT_Column<TData>;
1159
+ header?: MRT_Header<TData> | undefined;
1160
+ table: MRT_TableInstance<TData>;
1161
+ tableCellProps: TableCellProps;
1162
+ theme: Theme;
1163
+ }) => any;
1164
+ declare const MRT_DefaultColumn: {
1165
+ readonly filterVariant: "text";
1166
+ readonly minSize: 40;
1167
+ readonly maxSize: 1000;
1168
+ readonly size: 180;
1169
+ };
1170
+ declare const MRT_DefaultDisplayColumn: {
1171
+ readonly columnDefType: "display";
1172
+ readonly enableClickToCopy: false;
1173
+ readonly enableColumnActions: false;
1174
+ readonly enableColumnDragging: false;
1175
+ readonly enableColumnFilter: false;
1176
+ readonly enableColumnOrdering: false;
1177
+ readonly enableEditing: false;
1178
+ readonly enableGlobalFilter: false;
1179
+ readonly enableGrouping: false;
1180
+ readonly enableHiding: false;
1181
+ readonly enableResizing: false;
1182
+ readonly enableSorting: false;
1183
+ };
1184
+ declare const parseCSSVarId: (id: string) => string;
1185
+ declare const flexRender: (Comp: Renderable<any>, props: any) => ReactNode | JSX.Element;
1186
+ declare const createRow: <TData extends Record<string, any>>(table: MRT_TableInstance<TData>, originalRow?: TData | undefined) => MRT_Row<TData>;
1187
+
1188
+ interface Props$y<TData extends Record<string, any>> {
1189
+ table: MRT_TableInstance<TData>;
1190
+ virtualColumns?: VirtualItem[];
1191
+ virtualPaddingLeft?: number;
1192
+ virtualPaddingRight?: number;
1193
+ }
1194
+ declare const MRT_TableFooter: <TData extends Record<string, any>>({ table, virtualColumns, virtualPaddingLeft, virtualPaddingRight, }: Props$y<TData>) => react_jsx_runtime.JSX.Element;
1195
+
1196
+ interface Props$x<TData extends Record<string, any>> {
1197
+ footer: MRT_Header<TData>;
1198
+ table: MRT_TableInstance<TData>;
1199
+ }
1200
+ declare const MRT_TableFooterCell: <TData extends Record<string, any>>({ footer, table, }: Props$x<TData>) => react_jsx_runtime.JSX.Element;
1201
+
1202
+ interface Props$w<TData extends Record<string, any>> {
1203
+ footerGroup: MRT_HeaderGroup<TData>;
1204
+ table: MRT_TableInstance<TData>;
1205
+ virtualColumns?: VirtualItem[];
1206
+ virtualPaddingLeft?: number;
1207
+ virtualPaddingRight?: number;
1208
+ }
1209
+ declare const MRT_TableFooterRow: <TData extends Record<string, any>>({ footerGroup, table, virtualColumns, virtualPaddingLeft, virtualPaddingRight, }: Props$w<TData>) => react_jsx_runtime.JSX.Element | null;
1210
+
1211
+ interface Props$v<TData extends Record<string, any>> {
1212
+ table: MRT_TableInstance<TData>;
1213
+ virtualColumns?: VirtualItem[];
1214
+ virtualPaddingLeft?: number;
1215
+ virtualPaddingRight?: number;
1216
+ }
1217
+ declare const MRT_TableHead: <TData extends Record<string, any>>({ table, virtualColumns, virtualPaddingLeft, virtualPaddingRight, }: Props$v<TData>) => react_jsx_runtime.JSX.Element;
1218
+
1219
+ interface Props$u<TData extends Record<string, any>> {
1220
+ header: MRT_Header<TData>;
1221
+ table: MRT_TableInstance<TData>;
1222
+ }
1223
+ declare const MRT_TableHeadCell: <TData extends Record<string, any>>({ header, table, }: Props$u<TData>) => react_jsx_runtime.JSX.Element;
1224
+
1225
+ interface Props$t<TData extends Record<string, any>> {
1226
+ header: MRT_Header<TData>;
1227
+ table: MRT_TableInstance<TData>;
1228
+ }
1229
+ declare const MRT_TableHeadCellColumnActionsButton: <TData extends Record<string, any>>({ header, table, }: Props$t<TData>) => react_jsx_runtime.JSX.Element;
1230
+
1231
+ interface Props$s<TData extends Record<string, any>> {
1232
+ header: MRT_Header<TData>;
1233
+ table: MRT_TableInstance<TData>;
1234
+ }
1235
+ declare const MRT_TableHeadCellFilterContainer: <TData extends Record<string, any>>({ header, table, }: Props$s<TData>) => react_jsx_runtime.JSX.Element;
1236
+
1237
+ interface Props$r<TData extends Record<string, any>> {
1238
+ header: MRT_Header<TData>;
1239
+ table: MRT_TableInstance<TData>;
1240
+ }
1241
+ declare const MRT_TableHeadCellFilterLabel: <TData extends Record<string, any>>({ header, table, }: Props$r<TData>) => react_jsx_runtime.JSX.Element;
1242
+
1243
+ interface Props$q<TData extends Record<string, any>> {
1244
+ column: MRT_Column<TData>;
1245
+ table: MRT_TableInstance<TData>;
1246
+ tableHeadCellRef: RefObject<HTMLTableCellElement>;
1247
+ }
1248
+ declare const MRT_TableHeadCellGrabHandle: <TData extends Record<string, any>>({ column, table, tableHeadCellRef, }: Props$q<TData>) => react_jsx_runtime.JSX.Element;
1249
+
1250
+ interface Props$p<TData extends Record<string, any>> {
1251
+ header: MRT_Header<TData>;
1252
+ table: MRT_TableInstance<TData>;
1253
+ }
1254
+ declare const MRT_TableHeadCellResizeHandle: <TData extends Record<string, any>>({ header, table, }: Props$p<TData>) => react_jsx_runtime.JSX.Element;
1255
+
1256
+ interface Props$o<TData extends Record<string, any>> {
1257
+ header: MRT_Header<TData>;
1258
+ table: MRT_TableInstance<TData>;
1259
+ tableCellProps?: TableCellProps;
1260
+ }
1261
+ declare const MRT_TableHeadCellSortLabel: <TData extends Record<string, any>>({ header, table, tableCellProps, }: Props$o<TData>) => react_jsx_runtime.JSX.Element;
1262
+
1263
+ interface Props$n<TData extends Record<string, any>> {
1264
+ headerGroup: MRT_HeaderGroup<TData>;
1265
+ table: MRT_TableInstance<TData>;
1266
+ virtualColumns?: VirtualItem[];
1267
+ virtualPaddingLeft?: number;
1268
+ virtualPaddingRight?: number;
1269
+ }
1270
+ declare const MRT_TableHeadRow: <TData extends Record<string, any>>({ headerGroup, table, virtualColumns, virtualPaddingLeft, virtualPaddingRight, }: Props$n<TData>) => react_jsx_runtime.JSX.Element;
1271
+
1272
+ interface Props$m<TData extends Record<string, any>> {
1273
+ cell: MRT_Cell<TData>;
1274
+ table: MRT_TableInstance<TData>;
1275
+ }
1276
+ declare const MRT_EditCellTextField: <TData extends Record<string, any>>({ cell, table, }: Props$m<TData>) => react_jsx_runtime.JSX.Element;
1277
+
1278
+ interface Props$l<TData extends Record<string, any>> {
1279
+ column: MRT_Column<TData>;
1280
+ table: MRT_TableInstance<TData>;
1281
+ }
1282
+ declare const MRT_FilterCheckbox: <TData extends Record<string, any>>({ column, table, }: Props$l<TData>) => react_jsx_runtime.JSX.Element;
1283
+
1284
+ interface Props$k<TData extends Record<string, any>> {
1285
+ header: MRT_Header<TData>;
1286
+ table: MRT_TableInstance<TData>;
1287
+ }
1288
+ declare const MRT_FilterRangeFields: <TData extends Record<string, any>>({ header, table, }: Props$k<TData>) => react_jsx_runtime.JSX.Element;
1289
+
1290
+ interface Props$j<TData extends Record<string, any>> {
1291
+ header: MRT_Header<TData>;
1292
+ table: MRT_TableInstance<TData>;
1293
+ }
1294
+ declare const MRT_FilterRangeSlider: <TData extends Record<string, any>>({ header, table, }: Props$j<TData>) => react_jsx_runtime.JSX.Element;
1295
+
1296
+ interface Props$i<TData extends Record<string, any>> {
1297
+ header: MRT_Header<TData>;
1298
+ rangeFilterIndex?: number;
1299
+ table: MRT_TableInstance<TData>;
1300
+ }
1301
+ declare const MRT_FilterTextField: <TData extends Record<string, any>>({ header, rangeFilterIndex, table, }: Props$i<TData>) => react_jsx_runtime.JSX.Element;
1302
+
1303
+ interface Props$h<TData extends Record<string, any>> {
1304
+ table: MRT_TableInstance<TData>;
1305
+ }
1306
+ declare const MRT_GlobalFilterTextField: <TData extends Record<string, any>>({ table, }: Props$h<TData>) => react_jsx_runtime.JSX.Element;
1307
+
1308
+ interface Props$g<TData extends Record<string, any>> {
1309
+ row?: MRT_Row<TData>;
1310
+ selectAll?: boolean;
1311
+ table: MRT_TableInstance<TData>;
1312
+ }
1313
+ declare const MRT_SelectCheckbox: <TData extends Record<string, any>>({ row, selectAll, table, }: Props$g<TData>) => react_jsx_runtime.JSX.Element;
1314
+
1315
+ declare const commonMenuItemStyles: {
1316
+ py: string;
1317
+ my: number;
1318
+ justifyContent: string;
1319
+ alignItems: string;
1320
+ };
1321
+ declare const commonListItemStyles: {
1322
+ display: string;
1323
+ alignItems: string;
1324
+ };
1325
+ interface Props$f<TData extends Record<string, any>> {
1326
+ anchorEl: HTMLElement | null;
1327
+ header: MRT_Header<TData>;
1328
+ setAnchorEl: (anchorEl: HTMLElement | null) => void;
1329
+ table: MRT_TableInstance<TData>;
1330
+ }
1331
+ declare const MRT_ColumnActionMenu: <TData extends Record<string, any>>({ anchorEl, header, setAnchorEl, table, }: Props$f<TData>) => react_jsx_runtime.JSX.Element;
906
1332
 
907
- interface Props$e<TData extends Record<string, any> = {}> {
1333
+ declare const mrtFilterOptions: (localization: MRT_Localization) => MRT_InternalFilterOption[];
1334
+ interface Props$e<TData extends Record<string, any>> {
908
1335
  anchorEl: HTMLElement | null;
909
1336
  header?: MRT_Header<TData>;
910
1337
  onSelect?: () => void;
@@ -912,84 +1339,107 @@ interface Props$e<TData extends Record<string, any> = {}> {
912
1339
  setFilterValue?: (filterValue: any) => void;
913
1340
  table: MRT_TableInstance<TData>;
914
1341
  }
915
- declare const MRT_FilterOptionMenu: <TData extends Record<string, any> = {}>({ anchorEl, header, onSelect, setAnchorEl, setFilterValue, table, }: Props$e<TData>) => react_jsx_runtime.JSX.Element;
1342
+ declare const MRT_FilterOptionMenu: <TData extends Record<string, any>>({ anchorEl, header, onSelect, setAnchorEl, setFilterValue, table, }: Props$e<TData>) => react_jsx_runtime.JSX.Element;
916
1343
 
917
- interface Props$d<TData extends Record<string, any> = {}> extends IconButtonProps {
1344
+ interface Props$d<TData extends Record<string, any>> {
1345
+ anchorEl: HTMLElement | null;
1346
+ handleEdit: (event: MouseEvent) => void;
1347
+ row: MRT_Row<TData>;
1348
+ setAnchorEl: (anchorEl: HTMLElement | null) => void;
918
1349
  table: MRT_TableInstance<TData>;
919
1350
  }
920
- declare const MRT_FullScreenToggleButton: <TData extends Record<string, any> = {}>({ table, ...rest }: Props$d<TData>) => react_jsx_runtime.JSX.Element;
1351
+ declare const MRT_RowActionMenu: <TData extends Record<string, any>>({ anchorEl, handleEdit, row, setAnchorEl, table, }: Props$d<TData>) => react_jsx_runtime.JSX.Element;
921
1352
 
922
- interface Props$c<TData extends Record<string, any> = {}> {
1353
+ interface Props$c<TData extends Record<string, any>> {
1354
+ anchorEl: HTMLElement | null;
1355
+ isSubMenu?: boolean;
1356
+ setAnchorEl: (anchorEl: HTMLElement | null) => void;
923
1357
  table: MRT_TableInstance<TData>;
924
1358
  }
925
- declare const MRT_GlobalFilterTextField: <TData extends Record<string, any> = {}>({ table, }: Props$c<TData>) => react_jsx_runtime.JSX.Element;
1359
+ declare const MRT_ShowHideColumnsMenu: <TData extends Record<string, any>>({ anchorEl, setAnchorEl, table, }: Props$c<TData>) => react_jsx_runtime.JSX.Element;
926
1360
 
927
- interface Props$b<TData extends Record<string, any> = {}> {
928
- iconButtonProps?: IconButtonProps;
929
- onDragStart: DragEventHandler<HTMLButtonElement>;
930
- onDragEnd: DragEventHandler<HTMLButtonElement>;
1361
+ interface Props$b<TData extends Record<string, any>> {
1362
+ allColumns: MRT_Column<TData>[];
1363
+ column: MRT_Column<TData>;
1364
+ hoveredColumn: MRT_Column<TData> | null;
1365
+ setHoveredColumn: Dispatch<SetStateAction<MRT_Column<TData> | null>>;
931
1366
  table: MRT_TableInstance<TData>;
932
1367
  }
933
- declare const MRT_GrabHandleButton: <TData extends Record<string, any> = {}>({ iconButtonProps, onDragEnd, onDragStart, table, }: Props$b<TData>) => react_jsx_runtime.JSX.Element;
1368
+ declare const MRT_ShowHideColumnsMenuItems: <TData extends Record<string, any>>({ allColumns, hoveredColumn, setHoveredColumn, column, table, }: Props$b<TData>) => react_jsx_runtime.JSX.Element;
934
1369
 
935
- interface Props$a<TData extends Record<string, any> = {}> extends IconButtonProps {
1370
+ interface Props$a<TData extends Record<string, any>> {
1371
+ open: boolean;
936
1372
  table: MRT_TableInstance<TData>;
937
1373
  }
938
- declare const MRT_ShowHideColumnsButton: <TData extends Record<string, any> = {}>({ table, ...rest }: Props$a<TData>) => react_jsx_runtime.JSX.Element;
1374
+ declare const MRT_EditRowModal: <TData extends Record<string, any>>({ open, table, }: Props$a<TData>) => react_jsx_runtime.JSX.Element;
939
1375
 
940
- interface Props$9 {
941
- header: MRT_Header;
942
- table: MRT_TableInstance;
1376
+ interface Props$9<TData extends Record<string, any>> {
1377
+ table: MRT_TableInstance<TData>;
943
1378
  }
944
- declare const MRT_TableHeadCellFilterContainer: ({ header, table }: Props$9) => react_jsx_runtime.JSX.Element;
1379
+ declare const MRT_Table: <TData extends Record<string, any>>({ table, }: Props$9<TData>) => react_jsx_runtime.JSX.Element;
945
1380
 
946
- interface Props$8<TData extends Record<string, any> = {}> {
947
- position?: 'top' | 'bottom';
1381
+ interface Props$8<TData extends Record<string, any>> {
948
1382
  table: MRT_TableInstance<TData>;
949
1383
  }
950
- declare const MRT_TablePagination: <TData extends Record<string, any> = {}>({ table, position, }: Props$8<TData>) => react_jsx_runtime.JSX.Element;
1384
+ declare const MRT_TableContainer: <TData extends Record<string, any>>({ table, }: Props$8<TData>) => react_jsx_runtime.JSX.Element;
951
1385
 
952
- interface Props$7<TData extends Record<string, any> = {}> extends IconButtonProps {
1386
+ interface Props$7<TData extends Record<string, any>> {
953
1387
  table: MRT_TableInstance<TData>;
954
1388
  }
955
- declare const MRT_ToggleDensePaddingButton: <TData extends Record<string, any> = {}>({ table, ...rest }: Props$7<TData>) => react_jsx_runtime.JSX.Element;
1389
+ declare const MRT_TablePaper: <TData extends Record<string, any>>({ table, }: Props$7<TData>) => react_jsx_runtime.JSX.Element;
956
1390
 
957
- interface Props$6<TData extends Record<string, any> = {}> extends IconButtonProps {
1391
+ interface Props$6<TData extends Record<string, any>> {
958
1392
  table: MRT_TableInstance<TData>;
959
1393
  }
960
- declare const MRT_ToggleFiltersButton: <TData extends Record<string, any> = {}>({ table, ...rest }: Props$6<TData>) => react_jsx_runtime.JSX.Element;
1394
+ declare const MRT_BottomToolbar: <TData extends Record<string, any>>({ table, }: Props$6<TData>) => react_jsx_runtime.JSX.Element;
961
1395
 
962
- interface Props$5<TData extends Record<string, any> = {}> extends IconButtonProps {
1396
+ interface Props$5<TData extends Record<string, any>> {
1397
+ isTopToolbar: boolean;
963
1398
  table: MRT_TableInstance<TData>;
964
1399
  }
965
- declare const MRT_ToggleGlobalFilterButton: <TData extends Record<string, any> = {}>({ table, ...rest }: Props$5<TData>) => react_jsx_runtime.JSX.Element;
1400
+ declare const MRT_LinearProgressBar: <TData extends Record<string, any>>({ isTopToolbar, table, }: Props$5<TData>) => react_jsx_runtime.JSX.Element;
966
1401
 
967
- interface Props$4<TData extends Record<string, any> = {}> {
968
- cell: MRT_Cell<TData>;
969
- row: MRT_Row<TData>;
1402
+ interface Props$4<TData extends Record<string, any>> {
1403
+ position?: 'top' | 'bottom';
970
1404
  table: MRT_TableInstance<TData>;
971
1405
  }
972
- declare const MRT_ToggleRowActionMenuButton: <TData extends Record<string, any> = {}>({ cell, row, table, }: Props$4<TData>) => react_jsx_runtime.JSX.Element;
1406
+ declare const MRT_TablePagination: <TData extends Record<string, any>>({ table, position, }: Props$4<TData>) => react_jsx_runtime.JSX.Element;
973
1407
 
974
- interface Props$3<TData extends Record<string, any> = {}> {
1408
+ interface Props$3<TData extends Record<string, any>> {
975
1409
  stackAlertBanner: boolean;
976
1410
  table: MRT_TableInstance<TData>;
977
1411
  }
978
- declare const MRT_ToolbarAlertBanner: <TData extends Record<string, any> = {}>({ stackAlertBanner, table, }: Props$3<TData>) => react_jsx_runtime.JSX.Element;
1412
+ declare const MRT_ToolbarAlertBanner: <TData extends Record<string, any>>({ stackAlertBanner, table, }: Props$3<TData>) => react_jsx_runtime.JSX.Element;
979
1413
 
980
- interface Props$2<TData extends Record<string, any> = {}> {
1414
+ interface Props$2<TData extends Record<string, any>> {
981
1415
  table: MRT_TableInstance<TData>;
982
1416
  }
983
- declare const MRT_ToolbarDropZone: <TData extends Record<string, any> = {}>({ table, }: Props$2<TData>) => react_jsx_runtime.JSX.Element;
1417
+ declare const MRT_ToolbarDropZone: <TData extends Record<string, any>>({ table, }: Props$2<TData>) => react_jsx_runtime.JSX.Element;
984
1418
 
985
- interface Props$1<TData extends Record<string, any> = {}> {
1419
+ interface Props$1<TData extends Record<string, any>> {
986
1420
  table: MRT_TableInstance<TData>;
987
1421
  }
988
- declare const MRT_ToolbarInternalButtons: <TData extends Record<string, any> = {}>({ table, }: Props$1<TData>) => react_jsx_runtime.JSX.Element;
1422
+ declare const MRT_ToolbarInternalButtons: <TData extends Record<string, any>>({ table, }: Props$1<TData>) => react_jsx_runtime.JSX.Element;
989
1423
 
990
- interface Props<TData extends Record<string, any> = {}> {
1424
+ declare const commonToolbarStyles: ({ theme }: {
1425
+ theme: Theme;
1426
+ }) => {
1427
+ alignItems: string;
1428
+ backgroundColor: string;
1429
+ backgroundImage: string;
1430
+ display: string;
1431
+ flexWrap: string;
1432
+ minHeight: string;
1433
+ overflow: string;
1434
+ p: string;
1435
+ transition: string;
1436
+ zIndex: number;
1437
+ };
1438
+ interface Props<TData extends Record<string, any>> {
991
1439
  table: MRT_TableInstance<TData>;
992
1440
  }
993
- declare const MRT_TopToolbar: <TData extends Record<string, any> = {}>({ table, }: Props<TData>) => react_jsx_runtime.JSX.Element;
1441
+ declare const MRT_TopToolbar: <TData extends Record<string, any>>({ table, }: Props<TData>) => react_jsx_runtime.JSX.Element;
1442
+
1443
+ declare const useMaterialReactTable: <TData extends Record<string, any>>(tableOptions: MRT_TableOptions<TData>) => MRT_TableInstance<TData>;
994
1444
 
995
- export { MRT_AggregationFn, MRT_AggregationFns, MRT_AggregationOption, MRT_BottomToolbar, MRT_Cell, MRT_Column, MRT_ColumnDef, MRT_CopyButton, MRT_CreateTableFeature, MRT_DefinedColumnDef, MRT_DensityState, MRT_DisplayColumnIds, MRT_EditActionButtons, MRT_ExpandButton, MRT_FilterFn, MRT_FilterFns, MRT_FilterFnsState, MRT_FilterOption, MRT_FilterOptionMenu, MRT_FullScreenToggleButton, MRT_GlobalFilterTextField, MRT_GrabHandleButton, MRT_Header, MRT_HeaderGroup, MRT_Icons, MRT_InternalFilterOption, MRT_Localization, MRT_Row, MRT_RowModel, MRT_ShowHideColumnsButton, MRT_SortingFn, MRT_SortingFns, MRT_SortingOption, MRT_TableHeadCellFilterContainer, MRT_TableInstance, MRT_TablePagination, MRT_TableState, MRT_ToggleDensePaddingButton, MRT_ToggleFiltersButton, MRT_ToggleGlobalFilterButton, MRT_ToggleRowActionMenuButton, MRT_ToolbarAlertBanner, MRT_ToolbarDropZone, MRT_ToolbarInternalButtons, MRT_TopToolbar, MaterialReactTable, MaterialReactTableProps, MaterialReactTable as default };
1445
+ export { type LiteralUnion, type MRT_AggregationFn, MRT_AggregationFns, type MRT_AggregationOption, MRT_BottomToolbar, type MRT_Cell, type MRT_Column, MRT_ColumnActionMenu, type MRT_ColumnDef, type MRT_ColumnFilterFnsState, MRT_ColumnPinningButtons, MRT_CopyButton, MRT_DefaultColumn, MRT_DefaultDisplayColumn, type MRT_DefinedColumnDef, type MRT_DefinedTableOptions, type MRT_DensityState, type MRT_DisplayColumnIds, MRT_EditActionButtons, MRT_EditCellTextField, MRT_EditRowModal, MRT_ExpandAllButton, MRT_ExpandButton, MRT_FilterCheckbox, type MRT_FilterFn, MRT_FilterFns, type MRT_FilterOption, MRT_FilterOptionMenu, MRT_FilterRangeFields, MRT_FilterRangeSlider, MRT_FilterTextField, MRT_GlobalFilterTextField, MRT_GrabHandleButton, type MRT_Header, type MRT_HeaderGroup, type MRT_Icons, type MRT_InternalFilterOption, MRT_LinearProgressBar, type MRT_Localization, type MRT_Row, MRT_RowActionMenu, type MRT_RowModel, MRT_SelectCheckbox, MRT_ShowHideColumnsButton, MRT_ShowHideColumnsMenu, MRT_ShowHideColumnsMenuItems, type MRT_SortingFn, MRT_SortingFns, type MRT_SortingOption, MRT_Table, MRT_TableBody, MRT_TableBodyCell, MRT_TableBodyCellValue, MRT_TableBodyRow, MRT_TableBodyRowGrabHandle, MRT_TableContainer, MRT_TableDetailPanel, MRT_TableFooter, MRT_TableFooterCell, MRT_TableFooterRow, MRT_TableHead, MRT_TableHeadCell, MRT_TableHeadCellColumnActionsButton, MRT_TableHeadCellFilterContainer, MRT_TableHeadCellFilterLabel, MRT_TableHeadCellGrabHandle, MRT_TableHeadCellResizeHandle, MRT_TableHeadCellSortLabel, MRT_TableHeadRow, type MRT_TableInstance, type MRT_TableOptions, MRT_TablePagination, MRT_TablePaper, type MRT_TableState, MRT_ToggleDensePaddingButton, MRT_ToggleFiltersButton, MRT_ToggleFullScreenButton, MRT_ToggleGlobalFilterButton, MRT_ToggleRowActionMenuButton, MRT_ToolbarAlertBanner, MRT_ToolbarDropZone, MRT_ToolbarInternalButtons, MRT_TopToolbar, MaterialReactTable, Memo_MRT_TableBody, Memo_MRT_TableBodyCell, Memo_MRT_TableBodyRow, type Prettify, type Xor, commonListItemStyles, commonMenuItemStyles, commonToolbarStyles, createRow, flexRender, getAllLeafColumnDefs, getCanRankRows, getColumnId, getCommonCellStyles, getDefaultColumnFilterFn, getDefaultColumnOrderIds, getIsFirstColumn, getIsFirstRightPinnedColumn, getIsLastColumn, getIsLastLeftPinnedColumn, getLeadingDisplayColumnIds, getTotalRight, getTrailingDisplayColumnIds, mrtFilterOptions, parseCSSVarId, prepareColumns, rankGlobalFuzzy, reorderColumn, showExpandColumn, useMaterialReactTable };