material-react-table 2.0.0-beta.1 → 2.0.0-beta.11

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 (571) hide show
  1. package/dist/index.d.ts +279 -261
  2. package/dist/{esm/material-react-table.esm.js → index.esm.js} +943 -921
  3. package/dist/index.esm.js.map +1 -0
  4. package/dist/{cjs/index.js → index.js} +948 -926
  5. package/dist/index.js.map +1 -0
  6. package/dist/types/MaterialReactTable.d.ts +7 -0
  7. package/dist/types/body/MRT_TableBody.d.ts +13 -0
  8. package/dist/types/body/MRT_TableBodyCell.d.ts +15 -0
  9. package/dist/types/body/MRT_TableBodyCellValue.d.ts +8 -0
  10. package/dist/types/body/MRT_TableBodyRow.d.ts +18 -0
  11. package/dist/types/body/MRT_TableBodyRowGrabHandle.d.ts +10 -0
  12. package/dist/types/body/MRT_TableBodyRowPinButton.d.ts +8 -0
  13. package/dist/types/body/MRT_TableDetailPanel.d.ts +13 -0
  14. package/dist/types/buttons/MRT_ColumnPinningButtons.d.ts +8 -0
  15. package/dist/types/buttons/MRT_CopyButton.d.ts +8 -0
  16. package/dist/types/buttons/MRT_EditActionButtons.d.ts +9 -0
  17. package/dist/types/buttons/MRT_ExpandAllButton.d.ts +7 -0
  18. package/dist/types/buttons/MRT_ExpandButton.d.ts +8 -0
  19. package/dist/{cjs/types → types}/buttons/MRT_GrabHandleButton.d.ts +3 -3
  20. package/dist/types/buttons/MRT_RowPinButton.d.ts +10 -0
  21. package/dist/types/buttons/MRT_ShowHideColumnsButton.d.ts +7 -0
  22. package/dist/types/buttons/MRT_ToggleDensePaddingButton.d.ts +7 -0
  23. package/dist/types/buttons/MRT_ToggleFiltersButton.d.ts +7 -0
  24. package/dist/types/buttons/MRT_ToggleFullScreenButton.d.ts +7 -0
  25. package/dist/types/buttons/MRT_ToggleGlobalFilterButton.d.ts +7 -0
  26. package/dist/types/buttons/MRT_ToggleRowActionMenuButton.d.ts +9 -0
  27. package/dist/types/column.utils.d.ts +119 -0
  28. package/dist/types/filterFns.d.ts +69 -0
  29. package/dist/types/footer/MRT_TableFooter.d.ts +11 -0
  30. package/dist/types/footer/MRT_TableFooterCell.d.ts +8 -0
  31. package/dist/types/footer/MRT_TableFooterRow.d.ts +12 -0
  32. package/dist/types/head/MRT_TableHead.d.ts +11 -0
  33. package/dist/types/head/MRT_TableHeadCell.d.ts +8 -0
  34. package/dist/types/head/MRT_TableHeadCellColumnActionsButton.d.ts +8 -0
  35. package/dist/types/head/MRT_TableHeadCellFilterContainer.d.ts +8 -0
  36. package/dist/types/head/MRT_TableHeadCellFilterLabel.d.ts +8 -0
  37. package/dist/{cjs/types → types}/head/MRT_TableHeadCellGrabHandle.d.ts +4 -3
  38. package/dist/types/head/MRT_TableHeadCellResizeHandle.d.ts +8 -0
  39. package/dist/types/head/MRT_TableHeadCellSortLabel.d.ts +8 -0
  40. package/dist/types/head/MRT_TableHeadRow.d.ts +12 -0
  41. package/dist/types/hooks/useMRT_DisplayColumns.d.ts +9 -0
  42. package/dist/types/hooks/useMRT_Effects.d.ts +2 -0
  43. package/dist/types/hooks/useMRT_TableInstance.d.ts +2 -0
  44. package/dist/types/hooks/useMRT_TableOptions.d.ts +22 -0
  45. package/dist/{cjs/types → types}/index.d.ts +1 -0
  46. package/dist/types/inputs/MRT_EditCellTextField.d.ts +8 -0
  47. package/dist/types/inputs/MRT_FilterCheckbox.d.ts +8 -0
  48. package/dist/types/inputs/MRT_FilterRangeFields.d.ts +8 -0
  49. package/dist/types/inputs/MRT_FilterRangeSlider.d.ts +8 -0
  50. package/dist/types/inputs/MRT_FilterTextField.d.ts +9 -0
  51. package/dist/types/inputs/MRT_GlobalFilterTextField.d.ts +7 -0
  52. package/dist/types/inputs/MRT_SelectCheckbox.d.ts +9 -0
  53. package/dist/types/locales/az.d.ts +2 -0
  54. package/dist/{cjs/types → types}/locales/no.d.ts +1 -1
  55. package/dist/{esm/types → types}/menus/MRT_ColumnActionMenu.d.ts +4 -3
  56. package/dist/{esm/types → types}/menus/MRT_FilterOptionMenu.d.ts +4 -3
  57. package/dist/types/menus/MRT_RowActionMenu.d.ts +12 -0
  58. package/dist/types/menus/MRT_ShowHideColumnsMenu.d.ts +10 -0
  59. package/dist/types/menus/MRT_ShowHideColumnsMenuItems.d.ts +12 -0
  60. package/dist/types/modals/MRT_EditRowModal.d.ts +8 -0
  61. package/dist/{esm/types → types}/sortingFns.d.ts +3 -3
  62. package/dist/types/style.utils.d.ts +32 -0
  63. package/dist/types/table/MRT_Table.d.ts +7 -0
  64. package/dist/types/table/MRT_TableContainer.d.ts +7 -0
  65. package/dist/types/table/MRT_TableLoadingOverlay.d.ts +7 -0
  66. package/dist/types/table/MRT_TablePaper.d.ts +7 -0
  67. package/dist/{cjs/types → types}/table/index.d.ts +1 -0
  68. package/dist/types/toolbar/MRT_BottomToolbar.d.ts +7 -0
  69. package/dist/types/toolbar/MRT_LinearProgressBar.d.ts +8 -0
  70. package/dist/types/toolbar/MRT_TablePagination.d.ts +11 -0
  71. package/dist/types/toolbar/MRT_ToolbarAlertBanner.d.ts +8 -0
  72. package/dist/types/toolbar/MRT_ToolbarDropZone.d.ts +7 -0
  73. package/dist/types/toolbar/MRT_ToolbarInternalButtons.d.ts +7 -0
  74. package/dist/types/toolbar/MRT_TopToolbar.d.ts +6 -0
  75. package/dist/{cjs/types → types}/types.d.ts +69 -50
  76. package/dist/types/useMaterialReactTable.d.ts +2 -0
  77. package/locales/ar.d.ts +1 -0
  78. package/locales/ar.js +0 -1
  79. package/locales/{ar.esm.js → ar.mjs} +0 -1
  80. package/locales/az.d.ts +3 -0
  81. package/locales/az.js +97 -0
  82. package/locales/az.mjs +93 -0
  83. package/locales/bg.d.ts +1 -0
  84. package/locales/bg.js +0 -1
  85. package/locales/{bg.esm.js → bg.mjs} +0 -1
  86. package/locales/cs.d.ts +1 -0
  87. package/locales/cs.js +0 -1
  88. package/locales/{cs.esm.js → cs.mjs} +0 -1
  89. package/locales/da.d.ts +1 -0
  90. package/locales/da.js +0 -1
  91. package/locales/{da.esm.js → da.mjs} +0 -1
  92. package/locales/de.d.ts +1 -0
  93. package/locales/de.js +0 -1
  94. package/locales/{de.esm.js → de.mjs} +0 -1
  95. package/locales/en.d.ts +1 -0
  96. package/locales/en.js +0 -1
  97. package/locales/{en.esm.js → en.mjs} +0 -1
  98. package/locales/es.d.ts +1 -0
  99. package/locales/es.js +0 -1
  100. package/locales/{es.esm.js → es.mjs} +0 -1
  101. package/locales/et.d.ts +1 -0
  102. package/locales/et.js +0 -1
  103. package/locales/{et.esm.js → et.mjs} +0 -1
  104. package/locales/fa.d.ts +1 -0
  105. package/locales/fa.js +0 -1
  106. package/locales/{fa.esm.js → fa.mjs} +0 -1
  107. package/locales/fi.d.ts +1 -0
  108. package/locales/fi.js +0 -1
  109. package/locales/{fi.esm.js → fi.mjs} +0 -1
  110. package/locales/fr.d.ts +1 -0
  111. package/locales/fr.js +0 -1
  112. package/locales/{fr.esm.js → fr.mjs} +0 -1
  113. package/locales/hu.d.ts +1 -0
  114. package/locales/hu.js +0 -1
  115. package/locales/{hu.esm.js → hu.mjs} +0 -1
  116. package/locales/hy.d.ts +1 -0
  117. package/locales/hy.js +0 -1
  118. package/locales/{hy.esm.js → hy.mjs} +0 -1
  119. package/locales/id.d.ts +1 -0
  120. package/locales/id.js +0 -1
  121. package/locales/{id.esm.js → id.mjs} +0 -1
  122. package/locales/it.d.ts +1 -0
  123. package/locales/it.js +0 -1
  124. package/locales/{it.esm.js → it.mjs} +0 -1
  125. package/locales/ja.d.ts +1 -0
  126. package/locales/ja.js +0 -1
  127. package/locales/{ja.esm.js → ja.mjs} +0 -1
  128. package/locales/ko.d.ts +1 -0
  129. package/locales/ko.js +0 -1
  130. package/locales/{ko.esm.js → ko.mjs} +0 -1
  131. package/locales/nl.d.ts +1 -0
  132. package/locales/nl.js +0 -1
  133. package/locales/{nl.esm.js → nl.mjs} +0 -1
  134. package/locales/no.d.ts +2 -1
  135. package/locales/no.js +0 -1
  136. package/locales/{no.esm.js → no.mjs} +0 -1
  137. package/locales/np.d.ts +1 -0
  138. package/locales/np.js +0 -1
  139. package/locales/{np.esm.js → np.mjs} +0 -1
  140. package/locales/pl.d.ts +1 -0
  141. package/locales/pl.js +0 -1
  142. package/locales/{pl.esm.js → pl.mjs} +0 -1
  143. package/locales/pt-BR.d.ts +1 -0
  144. package/locales/pt-BR.js +0 -1
  145. package/locales/{pt-BR.esm.js → pt-BR.mjs} +0 -1
  146. package/locales/pt.d.ts +1 -0
  147. package/locales/pt.js +0 -1
  148. package/locales/{pt.esm.js → pt.mjs} +0 -1
  149. package/locales/ro.d.ts +1 -0
  150. package/locales/ro.js +0 -1
  151. package/locales/{ro.esm.js → ro.mjs} +0 -1
  152. package/locales/ru.d.ts +1 -0
  153. package/locales/ru.js +0 -1
  154. package/locales/{ru.esm.js → ru.mjs} +0 -1
  155. package/locales/sk.d.ts +1 -0
  156. package/locales/sk.js +0 -1
  157. package/locales/{sk.esm.js → sk.mjs} +0 -1
  158. package/locales/sr-Cyrl-RS.d.ts +1 -0
  159. package/locales/sr-Cyrl-RS.js +0 -1
  160. package/locales/{sr-Cyrl-RS.esm.js → sr-Cyrl-RS.mjs} +0 -1
  161. package/locales/sr-Latn-RS.d.ts +1 -0
  162. package/locales/sr-Latn-RS.js +0 -1
  163. package/locales/{sr-Latn-RS.esm.js → sr-Latn-RS.mjs} +0 -1
  164. package/locales/sv.d.ts +1 -0
  165. package/locales/sv.js +0 -1
  166. package/locales/{sv.esm.js → sv.mjs} +0 -1
  167. package/locales/tr.d.ts +1 -0
  168. package/locales/tr.js +0 -1
  169. package/locales/{tr.esm.js → tr.mjs} +0 -1
  170. package/locales/uk.d.ts +1 -0
  171. package/locales/uk.js +0 -1
  172. package/locales/{uk.esm.js → uk.mjs} +0 -1
  173. package/locales/vi.d.ts +1 -0
  174. package/locales/vi.js +0 -1
  175. package/locales/{vi.esm.js → vi.mjs} +0 -1
  176. package/locales/zh-Hans.d.ts +1 -0
  177. package/locales/zh-Hans.js +17 -18
  178. package/locales/{zh-Hans.esm.js → zh-Hans.mjs} +17 -18
  179. package/locales/zh-Hant.d.ts +1 -0
  180. package/locales/zh-Hant.js +0 -1
  181. package/locales/{zh-Hant.esm.js → zh-Hant.mjs} +0 -1
  182. package/package.json +215 -31
  183. package/src/MaterialReactTable.tsx +5 -4
  184. package/src/body/MRT_TableBody.tsx +14 -8
  185. package/src/body/MRT_TableBodyCell.tsx +77 -70
  186. package/src/body/MRT_TableBodyCellValue.tsx +13 -9
  187. package/src/body/MRT_TableBodyRow.tsx +26 -15
  188. package/src/body/MRT_TableBodyRowGrabHandle.tsx +16 -7
  189. package/src/body/MRT_TableBodyRowPinButton.tsx +18 -7
  190. package/src/body/MRT_TableDetailPanel.tsx +19 -11
  191. package/src/buttons/MRT_ColumnPinningButtons.tsx +21 -8
  192. package/src/buttons/MRT_CopyButton.tsx +12 -11
  193. package/src/buttons/MRT_EditActionButtons.tsx +17 -7
  194. package/src/buttons/MRT_ExpandAllButton.tsx +13 -11
  195. package/src/buttons/MRT_ExpandButton.tsx +10 -8
  196. package/src/buttons/MRT_GrabHandleButton.tsx +10 -8
  197. package/src/buttons/MRT_RowPinButton.tsx +14 -7
  198. package/src/buttons/MRT_ShowHideColumnsButton.tsx +4 -4
  199. package/src/buttons/MRT_ToggleDensePaddingButton.tsx +4 -6
  200. package/src/buttons/MRT_ToggleFiltersButton.tsx +4 -4
  201. package/src/buttons/MRT_ToggleFullScreenButton.tsx +3 -4
  202. package/src/buttons/MRT_ToggleGlobalFilterButton.tsx +4 -6
  203. package/src/buttons/MRT_ToggleRowActionMenuButton.tsx +15 -9
  204. package/src/column.utils.ts +46 -141
  205. package/src/filterFns.ts +15 -14
  206. package/src/footer/MRT_TableFooter.tsx +11 -7
  207. package/src/footer/MRT_TableFooterCell.tsx +21 -16
  208. package/src/footer/MRT_TableFooterRow.tsx +14 -9
  209. package/src/head/MRT_TableHead.tsx +10 -6
  210. package/src/head/MRT_TableHeadCell.tsx +102 -91
  211. package/src/head/MRT_TableHeadCellColumnActionsButton.tsx +13 -12
  212. package/src/head/MRT_TableHeadCellFilterContainer.tsx +10 -6
  213. package/src/head/MRT_TableHeadCellFilterLabel.tsx +15 -9
  214. package/src/head/MRT_TableHeadCellGrabHandle.tsx +10 -3
  215. package/src/head/MRT_TableHeadCellResizeHandle.tsx +14 -9
  216. package/src/head/MRT_TableHeadCellSortLabel.tsx +38 -18
  217. package/src/head/MRT_TableHeadRow.tsx +15 -9
  218. package/src/hooks/useMRT_DisplayColumns.tsx +14 -10
  219. package/src/hooks/useMRT_Effects.ts +6 -2
  220. package/src/hooks/useMRT_TableInstance.ts +3 -2
  221. package/src/hooks/useMRT_TableOptions.ts +29 -4
  222. package/src/index.ts +1 -0
  223. package/src/inputs/MRT_EditCellTextField.tsx +18 -4
  224. package/src/inputs/MRT_FilterCheckbox.tsx +10 -5
  225. package/src/inputs/MRT_FilterRangeFields.tsx +19 -5
  226. package/src/inputs/MRT_FilterRangeSlider.tsx +10 -4
  227. package/src/inputs/MRT_FilterTextField.tsx +13 -5
  228. package/src/inputs/MRT_GlobalFilterTextField.tsx +27 -10
  229. package/src/inputs/MRT_SelectCheckbox.tsx +14 -7
  230. package/src/locales/az.ts +94 -0
  231. package/src/locales/no.ts +1 -1
  232. package/src/locales/zh-Hans.ts +17 -17
  233. package/src/menus/MRT_ColumnActionMenu.tsx +10 -4
  234. package/src/menus/MRT_FilterOptionMenu.tsx +6 -3
  235. package/src/menus/MRT_RowActionMenu.tsx +10 -4
  236. package/src/menus/MRT_ShowHideColumnsMenu.tsx +10 -4
  237. package/src/menus/MRT_ShowHideColumnsMenuItems.tsx +17 -10
  238. package/src/modals/MRT_EditRowModal.tsx +17 -11
  239. package/src/sortingFns.ts +3 -3
  240. package/src/style.utils.ts +149 -0
  241. package/src/table/MRT_Table.tsx +28 -34
  242. package/src/table/MRT_TableContainer.tsx +17 -46
  243. package/src/table/MRT_TableLoadingOverlay.tsx +54 -0
  244. package/src/table/MRT_TablePaper.tsx +13 -6
  245. package/src/table/index.ts +1 -0
  246. package/src/toolbar/MRT_BottomToolbar.tsx +16 -14
  247. package/src/toolbar/MRT_LinearProgressBar.tsx +16 -10
  248. package/src/toolbar/MRT_TablePagination.tsx +20 -10
  249. package/src/toolbar/MRT_ToolbarAlertBanner.tsx +11 -7
  250. package/src/toolbar/MRT_ToolbarDropZone.tsx +8 -4
  251. package/src/toolbar/MRT_ToolbarInternalButtons.tsx +10 -6
  252. package/src/toolbar/MRT_TopToolbar.tsx +11 -24
  253. package/src/types.ts +98 -56
  254. package/src/useMaterialReactTable.ts +8 -7
  255. package/dist/cjs/index.js.map +0 -1
  256. package/dist/cjs/types/MaterialReactTable.d.ts +0 -7
  257. package/dist/cjs/types/body/MRT_TableBody.d.ts +0 -12
  258. package/dist/cjs/types/body/MRT_TableBodyCell.d.ts +0 -15
  259. package/dist/cjs/types/body/MRT_TableBodyCellValue.d.ts +0 -7
  260. package/dist/cjs/types/body/MRT_TableBodyRow.d.ts +0 -18
  261. package/dist/cjs/types/body/MRT_TableBodyRowGrabHandle.d.ts +0 -9
  262. package/dist/cjs/types/body/MRT_TableBodyRowPinButton.d.ts +0 -7
  263. package/dist/cjs/types/body/MRT_TableDetailPanel.d.ts +0 -12
  264. package/dist/cjs/types/buttons/MRT_ColumnPinningButtons.d.ts +0 -7
  265. package/dist/cjs/types/buttons/MRT_CopyButton.d.ts +0 -9
  266. package/dist/cjs/types/buttons/MRT_EditActionButtons.d.ts +0 -8
  267. package/dist/cjs/types/buttons/MRT_ExpandAllButton.d.ts +0 -6
  268. package/dist/cjs/types/buttons/MRT_ExpandButton.d.ts +0 -7
  269. package/dist/cjs/types/buttons/MRT_RowPinButton.d.ts +0 -9
  270. package/dist/cjs/types/buttons/MRT_ShowHideColumnsButton.d.ts +0 -7
  271. package/dist/cjs/types/buttons/MRT_ToggleDensePaddingButton.d.ts +0 -7
  272. package/dist/cjs/types/buttons/MRT_ToggleFiltersButton.d.ts +0 -7
  273. package/dist/cjs/types/buttons/MRT_ToggleFullScreenButton.d.ts +0 -7
  274. package/dist/cjs/types/buttons/MRT_ToggleGlobalFilterButton.d.ts +0 -7
  275. package/dist/cjs/types/buttons/MRT_ToggleRowActionMenuButton.d.ts +0 -8
  276. package/dist/cjs/types/column.utils.d.ts +0 -148
  277. package/dist/cjs/types/filterFns.d.ts +0 -68
  278. package/dist/cjs/types/footer/MRT_TableFooter.d.ts +0 -10
  279. package/dist/cjs/types/footer/MRT_TableFooterCell.d.ts +0 -7
  280. package/dist/cjs/types/footer/MRT_TableFooterRow.d.ts +0 -11
  281. package/dist/cjs/types/head/MRT_TableHead.d.ts +0 -10
  282. package/dist/cjs/types/head/MRT_TableHeadCell.d.ts +0 -7
  283. package/dist/cjs/types/head/MRT_TableHeadCellColumnActionsButton.d.ts +0 -7
  284. package/dist/cjs/types/head/MRT_TableHeadCellFilterContainer.d.ts +0 -7
  285. package/dist/cjs/types/head/MRT_TableHeadCellFilterLabel.d.ts +0 -7
  286. package/dist/cjs/types/head/MRT_TableHeadCellResizeHandle.d.ts +0 -7
  287. package/dist/cjs/types/head/MRT_TableHeadCellSortLabel.d.ts +0 -9
  288. package/dist/cjs/types/head/MRT_TableHeadRow.d.ts +0 -11
  289. package/dist/cjs/types/hooks/useMRT_DisplayColumns.d.ts +0 -9
  290. package/dist/cjs/types/hooks/useMRT_Effects.d.ts +0 -2
  291. package/dist/cjs/types/hooks/useMRT_TableInstance.d.ts +0 -2
  292. package/dist/cjs/types/hooks/useMRT_TableOptions.d.ts +0 -2
  293. package/dist/cjs/types/inputs/MRT_EditCellTextField.d.ts +0 -7
  294. package/dist/cjs/types/inputs/MRT_FilterCheckbox.d.ts +0 -7
  295. package/dist/cjs/types/inputs/MRT_FilterRangeFields.d.ts +0 -7
  296. package/dist/cjs/types/inputs/MRT_FilterRangeSlider.d.ts +0 -7
  297. package/dist/cjs/types/inputs/MRT_FilterTextField.d.ts +0 -8
  298. package/dist/cjs/types/inputs/MRT_GlobalFilterTextField.d.ts +0 -6
  299. package/dist/cjs/types/inputs/MRT_SelectCheckbox.d.ts +0 -8
  300. package/dist/cjs/types/menus/MRT_ColumnActionMenu.d.ts +0 -19
  301. package/dist/cjs/types/menus/MRT_FilterOptionMenu.d.ts +0 -12
  302. package/dist/cjs/types/menus/MRT_RowActionMenu.d.ts +0 -11
  303. package/dist/cjs/types/menus/MRT_ShowHideColumnsMenu.d.ts +0 -9
  304. package/dist/cjs/types/menus/MRT_ShowHideColumnsMenuItems.d.ts +0 -11
  305. package/dist/cjs/types/modals/MRT_EditRowModal.d.ts +0 -7
  306. package/dist/cjs/types/sortingFns.d.ts +0 -12
  307. package/dist/cjs/types/table/MRT_Table.d.ts +0 -6
  308. package/dist/cjs/types/table/MRT_TableContainer.d.ts +0 -6
  309. package/dist/cjs/types/table/MRT_TablePaper.d.ts +0 -6
  310. package/dist/cjs/types/toolbar/MRT_BottomToolbar.d.ts +0 -6
  311. package/dist/cjs/types/toolbar/MRT_LinearProgressBar.d.ts +0 -7
  312. package/dist/cjs/types/toolbar/MRT_TablePagination.d.ts +0 -7
  313. package/dist/cjs/types/toolbar/MRT_ToolbarAlertBanner.d.ts +0 -7
  314. package/dist/cjs/types/toolbar/MRT_ToolbarDropZone.d.ts +0 -6
  315. package/dist/cjs/types/toolbar/MRT_ToolbarInternalButtons.d.ts +0 -6
  316. package/dist/cjs/types/toolbar/MRT_TopToolbar.d.ts +0 -21
  317. package/dist/cjs/types/useMaterialReactTable.d.ts +0 -2
  318. package/dist/esm/material-react-table.esm.js.map +0 -1
  319. package/dist/esm/types/MaterialReactTable.d.ts +0 -7
  320. package/dist/esm/types/aggregationFns.d.ts +0 -11
  321. package/dist/esm/types/body/MRT_TableBody.d.ts +0 -12
  322. package/dist/esm/types/body/MRT_TableBodyCell.d.ts +0 -15
  323. package/dist/esm/types/body/MRT_TableBodyCellValue.d.ts +0 -7
  324. package/dist/esm/types/body/MRT_TableBodyRow.d.ts +0 -18
  325. package/dist/esm/types/body/MRT_TableBodyRowGrabHandle.d.ts +0 -9
  326. package/dist/esm/types/body/MRT_TableBodyRowPinButton.d.ts +0 -7
  327. package/dist/esm/types/body/MRT_TableDetailPanel.d.ts +0 -12
  328. package/dist/esm/types/body/index.d.ts +0 -7
  329. package/dist/esm/types/buttons/MRT_ColumnPinningButtons.d.ts +0 -7
  330. package/dist/esm/types/buttons/MRT_CopyButton.d.ts +0 -9
  331. package/dist/esm/types/buttons/MRT_EditActionButtons.d.ts +0 -8
  332. package/dist/esm/types/buttons/MRT_ExpandAllButton.d.ts +0 -6
  333. package/dist/esm/types/buttons/MRT_ExpandButton.d.ts +0 -7
  334. package/dist/esm/types/buttons/MRT_GrabHandleButton.d.ts +0 -12
  335. package/dist/esm/types/buttons/MRT_RowPinButton.d.ts +0 -9
  336. package/dist/esm/types/buttons/MRT_ShowHideColumnsButton.d.ts +0 -7
  337. package/dist/esm/types/buttons/MRT_ToggleDensePaddingButton.d.ts +0 -7
  338. package/dist/esm/types/buttons/MRT_ToggleFiltersButton.d.ts +0 -7
  339. package/dist/esm/types/buttons/MRT_ToggleFullScreenButton.d.ts +0 -7
  340. package/dist/esm/types/buttons/MRT_ToggleGlobalFilterButton.d.ts +0 -7
  341. package/dist/esm/types/buttons/MRT_ToggleRowActionMenuButton.d.ts +0 -8
  342. package/dist/esm/types/buttons/index.d.ts +0 -13
  343. package/dist/esm/types/column.utils.d.ts +0 -148
  344. package/dist/esm/types/filterFns.d.ts +0 -68
  345. package/dist/esm/types/footer/MRT_TableFooter.d.ts +0 -10
  346. package/dist/esm/types/footer/MRT_TableFooterCell.d.ts +0 -7
  347. package/dist/esm/types/footer/MRT_TableFooterRow.d.ts +0 -11
  348. package/dist/esm/types/footer/index.d.ts +0 -3
  349. package/dist/esm/types/head/MRT_TableHead.d.ts +0 -10
  350. package/dist/esm/types/head/MRT_TableHeadCell.d.ts +0 -7
  351. package/dist/esm/types/head/MRT_TableHeadCellColumnActionsButton.d.ts +0 -7
  352. package/dist/esm/types/head/MRT_TableHeadCellFilterContainer.d.ts +0 -7
  353. package/dist/esm/types/head/MRT_TableHeadCellFilterLabel.d.ts +0 -7
  354. package/dist/esm/types/head/MRT_TableHeadCellGrabHandle.d.ts +0 -9
  355. package/dist/esm/types/head/MRT_TableHeadCellResizeHandle.d.ts +0 -7
  356. package/dist/esm/types/head/MRT_TableHeadCellSortLabel.d.ts +0 -9
  357. package/dist/esm/types/head/MRT_TableHeadRow.d.ts +0 -11
  358. package/dist/esm/types/head/index.d.ts +0 -9
  359. package/dist/esm/types/hooks/useMRT_DisplayColumns.d.ts +0 -9
  360. package/dist/esm/types/hooks/useMRT_Effects.d.ts +0 -2
  361. package/dist/esm/types/hooks/useMRT_TableInstance.d.ts +0 -2
  362. package/dist/esm/types/hooks/useMRT_TableOptions.d.ts +0 -2
  363. package/dist/esm/types/icons.d.ts +0 -36
  364. package/dist/esm/types/index.d.ts +0 -16
  365. package/dist/esm/types/inputs/MRT_EditCellTextField.d.ts +0 -7
  366. package/dist/esm/types/inputs/MRT_FilterCheckbox.d.ts +0 -7
  367. package/dist/esm/types/inputs/MRT_FilterRangeFields.d.ts +0 -7
  368. package/dist/esm/types/inputs/MRT_FilterRangeSlider.d.ts +0 -7
  369. package/dist/esm/types/inputs/MRT_FilterTextField.d.ts +0 -8
  370. package/dist/esm/types/inputs/MRT_GlobalFilterTextField.d.ts +0 -6
  371. package/dist/esm/types/inputs/MRT_SelectCheckbox.d.ts +0 -8
  372. package/dist/esm/types/inputs/index.d.ts +0 -7
  373. package/dist/esm/types/locales/ar.d.ts +0 -2
  374. package/dist/esm/types/locales/bg.d.ts +0 -2
  375. package/dist/esm/types/locales/cs.d.ts +0 -2
  376. package/dist/esm/types/locales/da.d.ts +0 -2
  377. package/dist/esm/types/locales/de.d.ts +0 -2
  378. package/dist/esm/types/locales/en.d.ts +0 -2
  379. package/dist/esm/types/locales/es.d.ts +0 -2
  380. package/dist/esm/types/locales/et.d.ts +0 -2
  381. package/dist/esm/types/locales/fa.d.ts +0 -2
  382. package/dist/esm/types/locales/fi.d.ts +0 -2
  383. package/dist/esm/types/locales/fr.d.ts +0 -2
  384. package/dist/esm/types/locales/hu.d.ts +0 -2
  385. package/dist/esm/types/locales/hy.d.ts +0 -2
  386. package/dist/esm/types/locales/id.d.ts +0 -2
  387. package/dist/esm/types/locales/it.d.ts +0 -2
  388. package/dist/esm/types/locales/ja.d.ts +0 -2
  389. package/dist/esm/types/locales/ko.d.ts +0 -2
  390. package/dist/esm/types/locales/nl.d.ts +0 -2
  391. package/dist/esm/types/locales/no.d.ts +0 -2
  392. package/dist/esm/types/locales/np.d.ts +0 -2
  393. package/dist/esm/types/locales/pl.d.ts +0 -2
  394. package/dist/esm/types/locales/pt-BR.d.ts +0 -2
  395. package/dist/esm/types/locales/pt.d.ts +0 -2
  396. package/dist/esm/types/locales/ro.d.ts +0 -2
  397. package/dist/esm/types/locales/ru.d.ts +0 -2
  398. package/dist/esm/types/locales/sk.d.ts +0 -2
  399. package/dist/esm/types/locales/sr-Cyrl-RS.d.ts +0 -2
  400. package/dist/esm/types/locales/sr-Latn-RS.d.ts +0 -2
  401. package/dist/esm/types/locales/sv.d.ts +0 -2
  402. package/dist/esm/types/locales/tr.d.ts +0 -2
  403. package/dist/esm/types/locales/uk.d.ts +0 -2
  404. package/dist/esm/types/locales/vi.d.ts +0 -2
  405. package/dist/esm/types/locales/zh-Hans.d.ts +0 -2
  406. package/dist/esm/types/locales/zh-Hant.d.ts +0 -2
  407. package/dist/esm/types/menus/MRT_RowActionMenu.d.ts +0 -11
  408. package/dist/esm/types/menus/MRT_ShowHideColumnsMenu.d.ts +0 -9
  409. package/dist/esm/types/menus/MRT_ShowHideColumnsMenuItems.d.ts +0 -11
  410. package/dist/esm/types/menus/index.d.ts +0 -5
  411. package/dist/esm/types/modals/MRT_EditRowModal.d.ts +0 -7
  412. package/dist/esm/types/modals/index.d.ts +0 -1
  413. package/dist/esm/types/table/MRT_Table.d.ts +0 -6
  414. package/dist/esm/types/table/MRT_TableContainer.d.ts +0 -6
  415. package/dist/esm/types/table/MRT_TablePaper.d.ts +0 -6
  416. package/dist/esm/types/table/index.d.ts +0 -4
  417. package/dist/esm/types/toolbar/MRT_BottomToolbar.d.ts +0 -6
  418. package/dist/esm/types/toolbar/MRT_LinearProgressBar.d.ts +0 -7
  419. package/dist/esm/types/toolbar/MRT_TablePagination.d.ts +0 -7
  420. package/dist/esm/types/toolbar/MRT_ToolbarAlertBanner.d.ts +0 -7
  421. package/dist/esm/types/toolbar/MRT_ToolbarDropZone.d.ts +0 -6
  422. package/dist/esm/types/toolbar/MRT_ToolbarInternalButtons.d.ts +0 -6
  423. package/dist/esm/types/toolbar/MRT_TopToolbar.d.ts +0 -21
  424. package/dist/esm/types/toolbar/index.d.ts +0 -7
  425. package/dist/esm/types/types.d.ts +0 -818
  426. package/dist/esm/types/useMaterialReactTable.d.ts +0 -2
  427. package/locales/ar.esm.d.ts +0 -2
  428. package/locales/ar.esm.js.map +0 -1
  429. package/locales/ar.js.map +0 -1
  430. package/locales/bg.esm.d.ts +0 -2
  431. package/locales/bg.esm.js.map +0 -1
  432. package/locales/bg.js.map +0 -1
  433. package/locales/cs.esm.d.ts +0 -2
  434. package/locales/cs.esm.js.map +0 -1
  435. package/locales/cs.js.map +0 -1
  436. package/locales/da.esm.d.ts +0 -2
  437. package/locales/da.esm.js.map +0 -1
  438. package/locales/da.js.map +0 -1
  439. package/locales/de.esm.d.ts +0 -2
  440. package/locales/de.esm.js.map +0 -1
  441. package/locales/de.js.map +0 -1
  442. package/locales/en.esm.d.ts +0 -2
  443. package/locales/en.esm.js.map +0 -1
  444. package/locales/en.js.map +0 -1
  445. package/locales/es.esm.d.ts +0 -2
  446. package/locales/es.esm.js.map +0 -1
  447. package/locales/es.js.map +0 -1
  448. package/locales/et.esm.d.ts +0 -2
  449. package/locales/et.esm.js.map +0 -1
  450. package/locales/et.js.map +0 -1
  451. package/locales/fa.esm.d.ts +0 -2
  452. package/locales/fa.esm.js.map +0 -1
  453. package/locales/fa.js.map +0 -1
  454. package/locales/fi.esm.d.ts +0 -2
  455. package/locales/fi.esm.js.map +0 -1
  456. package/locales/fi.js.map +0 -1
  457. package/locales/fr.esm.d.ts +0 -2
  458. package/locales/fr.esm.js.map +0 -1
  459. package/locales/fr.js.map +0 -1
  460. package/locales/hu.esm.d.ts +0 -2
  461. package/locales/hu.esm.js.map +0 -1
  462. package/locales/hu.js.map +0 -1
  463. package/locales/hy.esm.d.ts +0 -2
  464. package/locales/hy.esm.js.map +0 -1
  465. package/locales/hy.js.map +0 -1
  466. package/locales/id.esm.d.ts +0 -2
  467. package/locales/id.esm.js.map +0 -1
  468. package/locales/id.js.map +0 -1
  469. package/locales/it.esm.d.ts +0 -2
  470. package/locales/it.esm.js.map +0 -1
  471. package/locales/it.js.map +0 -1
  472. package/locales/ja.esm.d.ts +0 -2
  473. package/locales/ja.esm.js.map +0 -1
  474. package/locales/ja.js.map +0 -1
  475. package/locales/ko.esm.d.ts +0 -2
  476. package/locales/ko.esm.js.map +0 -1
  477. package/locales/ko.js.map +0 -1
  478. package/locales/nl.esm.d.ts +0 -2
  479. package/locales/nl.esm.js.map +0 -1
  480. package/locales/nl.js.map +0 -1
  481. package/locales/no.esm.d.ts +0 -2
  482. package/locales/no.esm.js.map +0 -1
  483. package/locales/no.js.map +0 -1
  484. package/locales/np.esm.d.ts +0 -2
  485. package/locales/np.esm.js.map +0 -1
  486. package/locales/np.js.map +0 -1
  487. package/locales/pl.esm.d.ts +0 -2
  488. package/locales/pl.esm.js.map +0 -1
  489. package/locales/pl.js.map +0 -1
  490. package/locales/pt-BR.esm.d.ts +0 -2
  491. package/locales/pt-BR.esm.js.map +0 -1
  492. package/locales/pt-BR.js.map +0 -1
  493. package/locales/pt.esm.d.ts +0 -2
  494. package/locales/pt.esm.js.map +0 -1
  495. package/locales/pt.js.map +0 -1
  496. package/locales/ro.esm.d.ts +0 -2
  497. package/locales/ro.esm.js.map +0 -1
  498. package/locales/ro.js.map +0 -1
  499. package/locales/ru.esm.d.ts +0 -2
  500. package/locales/ru.esm.js.map +0 -1
  501. package/locales/ru.js.map +0 -1
  502. package/locales/sk.esm.d.ts +0 -2
  503. package/locales/sk.esm.js.map +0 -1
  504. package/locales/sk.js.map +0 -1
  505. package/locales/sr-Cyrl-RS.esm.d.ts +0 -2
  506. package/locales/sr-Cyrl-RS.esm.js.map +0 -1
  507. package/locales/sr-Cyrl-RS.js.map +0 -1
  508. package/locales/sr-Latn-RS.esm.d.ts +0 -2
  509. package/locales/sr-Latn-RS.esm.js.map +0 -1
  510. package/locales/sr-Latn-RS.js.map +0 -1
  511. package/locales/sv.esm.d.ts +0 -2
  512. package/locales/sv.esm.js.map +0 -1
  513. package/locales/sv.js.map +0 -1
  514. package/locales/tr.esm.d.ts +0 -2
  515. package/locales/tr.esm.js.map +0 -1
  516. package/locales/tr.js.map +0 -1
  517. package/locales/uk.esm.d.ts +0 -2
  518. package/locales/uk.esm.js.map +0 -1
  519. package/locales/uk.js.map +0 -1
  520. package/locales/vi.esm.d.ts +0 -2
  521. package/locales/vi.esm.js.map +0 -1
  522. package/locales/vi.js.map +0 -1
  523. package/locales/zh-Hans.esm.d.ts +0 -2
  524. package/locales/zh-Hans.esm.js.map +0 -1
  525. package/locales/zh-Hans.js.map +0 -1
  526. package/locales/zh-Hant.esm.d.ts +0 -2
  527. package/locales/zh-Hant.esm.js.map +0 -1
  528. package/locales/zh-Hant.js.map +0 -1
  529. /package/dist/{cjs/types → types}/aggregationFns.d.ts +0 -0
  530. /package/dist/{cjs/types → types}/body/index.d.ts +0 -0
  531. /package/dist/{cjs/types → types}/buttons/index.d.ts +0 -0
  532. /package/dist/{cjs/types → types}/footer/index.d.ts +0 -0
  533. /package/dist/{cjs/types → types}/head/index.d.ts +0 -0
  534. /package/dist/{cjs/types → types}/icons.d.ts +0 -0
  535. /package/dist/{cjs/types → types}/inputs/index.d.ts +0 -0
  536. /package/dist/{cjs/types → types}/locales/ar.d.ts +0 -0
  537. /package/dist/{cjs/types → types}/locales/bg.d.ts +0 -0
  538. /package/dist/{cjs/types → types}/locales/cs.d.ts +0 -0
  539. /package/dist/{cjs/types → types}/locales/da.d.ts +0 -0
  540. /package/dist/{cjs/types → types}/locales/de.d.ts +0 -0
  541. /package/dist/{cjs/types → types}/locales/en.d.ts +0 -0
  542. /package/dist/{cjs/types → types}/locales/es.d.ts +0 -0
  543. /package/dist/{cjs/types → types}/locales/et.d.ts +0 -0
  544. /package/dist/{cjs/types → types}/locales/fa.d.ts +0 -0
  545. /package/dist/{cjs/types → types}/locales/fi.d.ts +0 -0
  546. /package/dist/{cjs/types → types}/locales/fr.d.ts +0 -0
  547. /package/dist/{cjs/types → types}/locales/hu.d.ts +0 -0
  548. /package/dist/{cjs/types → types}/locales/hy.d.ts +0 -0
  549. /package/dist/{cjs/types → types}/locales/id.d.ts +0 -0
  550. /package/dist/{cjs/types → types}/locales/it.d.ts +0 -0
  551. /package/dist/{cjs/types → types}/locales/ja.d.ts +0 -0
  552. /package/dist/{cjs/types → types}/locales/ko.d.ts +0 -0
  553. /package/dist/{cjs/types → types}/locales/nl.d.ts +0 -0
  554. /package/dist/{cjs/types → types}/locales/np.d.ts +0 -0
  555. /package/dist/{cjs/types → types}/locales/pl.d.ts +0 -0
  556. /package/dist/{cjs/types → types}/locales/pt-BR.d.ts +0 -0
  557. /package/dist/{cjs/types → types}/locales/pt.d.ts +0 -0
  558. /package/dist/{cjs/types → types}/locales/ro.d.ts +0 -0
  559. /package/dist/{cjs/types → types}/locales/ru.d.ts +0 -0
  560. /package/dist/{cjs/types → types}/locales/sk.d.ts +0 -0
  561. /package/dist/{cjs/types → types}/locales/sr-Cyrl-RS.d.ts +0 -0
  562. /package/dist/{cjs/types → types}/locales/sr-Latn-RS.d.ts +0 -0
  563. /package/dist/{cjs/types → types}/locales/sv.d.ts +0 -0
  564. /package/dist/{cjs/types → types}/locales/tr.d.ts +0 -0
  565. /package/dist/{cjs/types → types}/locales/uk.d.ts +0 -0
  566. /package/dist/{cjs/types → types}/locales/vi.d.ts +0 -0
  567. /package/dist/{cjs/types → types}/locales/zh-Hans.d.ts +0 -0
  568. /package/dist/{cjs/types → types}/locales/zh-Hant.d.ts +0 -0
  569. /package/dist/{cjs/types → types}/menus/index.d.ts +0 -0
  570. /package/dist/{cjs/types → types}/modals/index.d.ts +0 -0
  571. /package/dist/{cjs/types → types}/toolbar/index.d.ts +0 -0
package/src/types.ts CHANGED
@@ -1,4 +1,5 @@
1
1
  import {
2
+ type CSSProperties,
2
3
  type Dispatch,
3
4
  type MutableRefObject,
4
5
  type ReactNode,
@@ -6,6 +7,7 @@ import {
6
7
  type SetStateAction,
7
8
  } from 'react';
8
9
  import {
10
+ type AccessorFn,
9
11
  type AggregationFn,
10
12
  type Cell,
11
13
  type Column,
@@ -16,6 +18,7 @@ import {
16
18
  type ColumnSizingInfoState,
17
19
  type ColumnSizingState,
18
20
  type DeepKeys,
21
+ type DeepValue,
19
22
  type ExpandedState,
20
23
  type FilterFn,
21
24
  type GroupingState,
@@ -40,6 +43,7 @@ import {
40
43
  } from '@tanstack/react-virtual';
41
44
  import { type AlertProps } from '@mui/material/Alert';
42
45
  import { type AutocompleteProps } from '@mui/material/Autocomplete';
46
+ import { type BoxProps } from '@mui/material/Box';
43
47
  import { type ButtonProps } from '@mui/material/Button';
44
48
  import { type CheckboxProps } from '@mui/material/Checkbox';
45
49
  import { type ChipProps } from '@mui/material/Chip';
@@ -60,7 +64,7 @@ import { type TableFooterProps } from '@mui/material/TableFooter';
60
64
  import { type TableHeadProps } from '@mui/material/TableHead';
61
65
  import { type TableRowProps } from '@mui/material/TableRow';
62
66
  import { type TextFieldProps } from '@mui/material/TextField';
63
- import { type ToolbarProps } from '@mui/material/Toolbar';
67
+ import { type Theme } from '@mui/material/styles';
64
68
  import { type DatePickerProps } from '@mui/x-date-pickers';
65
69
  import { type MRT_AggregationFns } from './aggregationFns';
66
70
  import { type MRT_FilterFns } from './filterFns';
@@ -82,6 +86,8 @@ export type MRT_DensityState = 'comfortable' | 'compact' | 'spacious';
82
86
 
83
87
  export type MRT_ColumnFilterFnsState = Record<string, MRT_FilterOption>;
84
88
 
89
+ export type MRT_RowData = Record<string, any>;
90
+
85
91
  export type {
86
92
  ColumnFiltersState as MRT_ColumnFiltersState,
87
93
  ColumnOrderState as MRT_ColumnOrderState,
@@ -100,6 +106,22 @@ export type {
100
106
  VisibilityState as MRT_VisibilityState,
101
107
  };
102
108
 
109
+ export type MRT_ColumnHelper<TData extends MRT_RowData> = {
110
+ accessor: <
111
+ TAccessor extends AccessorFn<TData> | DeepKeys<TData>,
112
+ TValue extends TAccessor extends AccessorFn<TData, infer TReturn>
113
+ ? TReturn
114
+ : TAccessor extends DeepKeys<TData>
115
+ ? DeepValue<TData, TAccessor>
116
+ : never,
117
+ >(
118
+ accessor: TAccessor,
119
+ column: MRT_DisplayColumnDef<TData, TValue>,
120
+ ) => MRT_ColumnDef<TData, TValue>;
121
+ display: (column: MRT_DisplayColumnDef<TData>) => MRT_ColumnDef<TData>;
122
+ group: (column: MRT_GroupColumnDef<TData>) => MRT_ColumnDef<TData>;
123
+ };
124
+
103
125
  export interface MRT_Localization {
104
126
  actions: string;
105
127
  and: string;
@@ -192,13 +214,21 @@ export interface MRT_Localization {
192
214
  unpinAll: string;
193
215
  }
194
216
 
195
- export interface MRT_RowModel<TData extends Record<string, any>> {
217
+ export interface MRT_Theme {
218
+ baseBackgroundColor?: CSSProperties['backgroundColor'];
219
+ draggingBorderColor?: CSSProperties['borderColor'];
220
+ matchHighlightColor?: CSSProperties['backgroundColor'];
221
+ pinnedRowBackgroundColor?: CSSProperties['backgroundColor'];
222
+ selectedRowBackgroundColor?: CSSProperties['backgroundColor'];
223
+ }
224
+
225
+ export interface MRT_RowModel<TData extends MRT_RowData> {
196
226
  flatRows: MRT_Row<TData>[];
197
227
  rows: MRT_Row<TData>[];
198
228
  rowsById: { [key: string]: MRT_Row<TData> };
199
229
  }
200
230
 
201
- export type MRT_TableInstance<TData extends Record<string, any>> = Omit<
231
+ export type MRT_TableInstance<TData extends MRT_RowData> = Omit<
202
232
  Table<TData>,
203
233
  | 'getAllColumns'
204
234
  | 'getAllFlatColumns'
@@ -270,13 +300,13 @@ export type MRT_TableInstance<TData extends Record<string, any>> = Omit<
270
300
  setShowToolbarDropZone: Dispatch<SetStateAction<boolean>>;
271
301
  };
272
302
 
273
- export type MRT_DefinedTableOptions<TData extends Record<string, any>> =
303
+ export type MRT_DefinedTableOptions<TData extends MRT_RowData> =
274
304
  MRT_TableOptions<TData> & {
275
305
  icons: MRT_Icons;
276
306
  localization: MRT_Localization;
277
307
  };
278
308
 
279
- export type MRT_TableState<TData extends Record<string, any>> = TableState & {
309
+ export type MRT_TableState<TData extends MRT_RowData> = TableState & {
280
310
  columnFilterFns: MRT_ColumnFilterFnsState;
281
311
  creatingRow: MRT_Row<TData> | null;
282
312
  density: MRT_DensityState;
@@ -299,8 +329,8 @@ export type MRT_TableState<TData extends Record<string, any>> = TableState & {
299
329
  showToolbarDropZone: boolean;
300
330
  };
301
331
 
302
- export type MRT_ColumnDef<TData extends Record<string, any>> = Omit<
303
- ColumnDef<TData, unknown>,
332
+ export type MRT_ColumnDef<TData extends MRT_RowData, TValue = unknown> = Omit<
333
+ ColumnDef<TData, TValue>,
304
334
  | 'accessorKey'
305
335
  | 'aggregatedCell'
306
336
  | 'aggregationFn'
@@ -313,54 +343,54 @@ export type MRT_ColumnDef<TData extends Record<string, any>> = Omit<
313
343
  | 'sortingFn'
314
344
  > & {
315
345
  AggregatedCell?: (props: {
316
- cell: MRT_Cell<TData>;
317
- column: MRT_Column<TData>;
346
+ cell: MRT_Cell<TData, TValue>;
347
+ column: MRT_Column<TData, TValue>;
318
348
  row: MRT_Row<TData>;
319
349
  table: MRT_TableInstance<TData>;
320
350
  }) => ReactNode;
321
351
  Cell?: (props: {
322
- cell: MRT_Cell<TData>;
323
- column: MRT_Column<TData>;
324
- renderedCellValue: ReactNode | number | string;
352
+ cell: MRT_Cell<TData, TValue>;
353
+ column: MRT_Column<TData, TValue>;
354
+ renderedCellValue: ReactNode;
325
355
  row: MRT_Row<TData>;
326
356
  rowRef?: RefObject<HTMLTableRowElement>;
327
357
  table: MRT_TableInstance<TData>;
328
358
  }) => ReactNode;
329
359
  Edit?: (props: {
330
- cell: MRT_Cell<TData>;
331
- column: MRT_Column<TData>;
360
+ cell: MRT_Cell<TData, TValue>;
361
+ column: MRT_Column<TData, TValue>;
332
362
  row: MRT_Row<TData>;
333
363
  table: MRT_TableInstance<TData>;
334
364
  }) => ReactNode;
335
365
  Filter?: (props: {
336
- column: MRT_Column<TData>;
366
+ column: MRT_Column<TData, TValue>;
337
367
  header: MRT_Header<TData>;
338
368
  rangeFilterIndex?: number;
339
369
  table: MRT_TableInstance<TData>;
340
370
  }) => ReactNode;
341
371
  Footer?:
342
372
  | ((props: {
343
- column: MRT_Column<TData>;
373
+ column: MRT_Column<TData, TValue>;
344
374
  footer: MRT_Header<TData>;
345
375
  table: MRT_TableInstance<TData>;
346
376
  }) => ReactNode)
347
377
  | ReactNode;
348
378
  GroupedCell?: (props: {
349
- cell: MRT_Cell<TData>;
350
- column: MRT_Column<TData>;
379
+ cell: MRT_Cell<TData, TValue>;
380
+ column: MRT_Column<TData, TValue>;
351
381
  row: MRT_Row<TData>;
352
382
  table: MRT_TableInstance<TData>;
353
383
  }) => ReactNode;
354
384
  Header?:
355
385
  | ((props: {
356
- column: MRT_Column<TData>;
386
+ column: MRT_Column<TData, TValue>;
357
387
  header: MRT_Header<TData>;
358
388
  table: MRT_TableInstance<TData>;
359
389
  }) => ReactNode)
360
390
  | ReactNode;
361
391
  PlaceholderCell?: (props: {
362
- cell: MRT_Cell<TData>;
363
- column: MRT_Column<TData>;
392
+ cell: MRT_Cell<TData, TValue>;
393
+ column: MRT_Column<TData, TValue>;
364
394
  row: MRT_Row<TData>;
365
395
  table: MRT_TableInstance<TData>;
366
396
  }) => ReactNode;
@@ -370,7 +400,7 @@ export type MRT_ColumnDef<TData extends Record<string, any>> = Omit<
370
400
  *
371
401
  * @example accessorFn: (row) => row.username
372
402
  */
373
- accessorFn?: (originalRow: TData) => any;
403
+ accessorFn?: (originalRow: TData) => TValue;
374
404
  /**
375
405
  * Either an `accessorKey` or a combination of an `accessorFn` and `id` are required for a data column definition.
376
406
  * Specify which key in the row this column should use to access the correct data.
@@ -393,7 +423,7 @@ export type MRT_ColumnDef<TData extends Record<string, any>> = Omit<
393
423
  columnFilterModeOptions?: Array<
394
424
  LiteralUnion<string & MRT_FilterOption>
395
425
  > | null;
396
- columns?: MRT_ColumnDef<TData>[];
426
+ columns?: MRT_ColumnDef<TData, TValue>[];
397
427
  editSelectOptions?: ({ text: string; value: any } | string)[];
398
428
  editVariant?: 'select' | 'text';
399
429
  enableClickToCopy?: boolean;
@@ -447,7 +477,7 @@ export type MRT_ColumnDef<TData extends Record<string, any>> = Omit<
447
477
  | IconButtonProps;
448
478
  muiCopyButtonProps?:
449
479
  | ((props: {
450
- cell: MRT_Cell<TData>;
480
+ cell: MRT_Cell<TData, TValue>;
451
481
  column: MRT_Column<TData>;
452
482
  row: MRT_Row<TData>;
453
483
  table: MRT_TableInstance<TData>;
@@ -455,7 +485,7 @@ export type MRT_ColumnDef<TData extends Record<string, any>> = Omit<
455
485
  | ButtonProps;
456
486
  muiEditTextFieldProps?:
457
487
  | ((props: {
458
- cell: MRT_Cell<TData>;
488
+ cell: MRT_Cell<TData, TValue>;
459
489
  column: MRT_Column<TData>;
460
490
  row: MRT_Row<TData>;
461
491
  table: MRT_TableInstance<TData>;
@@ -495,7 +525,7 @@ export type MRT_ColumnDef<TData extends Record<string, any>> = Omit<
495
525
  | TextFieldProps;
496
526
  muiTableBodyCellProps?:
497
527
  | ((props: {
498
- cell: MRT_Cell<TData>;
528
+ cell: MRT_Cell<TData, TValue>;
499
529
  column: MRT_Column<TData>;
500
530
  row: MRT_Row<TData>;
501
531
  table: MRT_TableInstance<TData>;
@@ -528,41 +558,51 @@ export type MRT_ColumnDef<TData extends Record<string, any>> = Omit<
528
558
  sortingFn?: MRT_SortingFn<TData>;
529
559
  };
530
560
 
531
- export type MRT_DefinedColumnDef<TData extends Record<string, any>> = Omit<
532
- MRT_ColumnDef<TData>,
533
- 'defaultDisplayColumn' | 'id'
534
- > & {
561
+ export type MRT_DisplayColumnDef<
562
+ TData extends MRT_RowData,
563
+ TValue = unknown,
564
+ > = Omit<MRT_ColumnDef<TData, TValue>, 'accessorFn' | 'accessorKey'>;
565
+
566
+ export type MRT_GroupColumnDef<TData extends MRT_RowData> =
567
+ MRT_DisplayColumnDef<TData, any> & {
568
+ columns: MRT_ColumnDef<TData>[];
569
+ };
570
+
571
+ export type MRT_DefinedColumnDef<
572
+ TData extends MRT_RowData,
573
+ TValue = unknown,
574
+ > = Omit<MRT_ColumnDef<TData, TValue>, 'defaultDisplayColumn' | 'id'> & {
535
575
  _filterFn: MRT_FilterOption;
536
- defaultDisplayColumn: Partial<MRT_ColumnDef<TData>>;
576
+ defaultDisplayColumn: Partial<MRT_ColumnDef<TData, TValue>>;
537
577
  id: string;
538
578
  };
539
579
 
540
- export type MRT_Column<TData extends Record<string, any>> = Omit<
541
- Column<TData, unknown>,
580
+ export type MRT_Column<TData extends MRT_RowData, TValue = unknown> = Omit<
581
+ Column<TData, TValue>,
542
582
  'columnDef' | 'columns' | 'filterFn' | 'footer' | 'header'
543
583
  > & {
544
- columnDef: MRT_DefinedColumnDef<TData>;
545
- columns?: MRT_Column<TData>[];
584
+ columnDef: MRT_DefinedColumnDef<TData, TValue>;
585
+ columns?: MRT_Column<TData, TValue>[];
546
586
  filterFn?: MRT_FilterFn<TData>;
547
587
  footer: string;
548
588
  header: string;
549
589
  };
550
590
 
551
- export type MRT_Header<TData extends Record<string, any>> = Omit<
591
+ export type MRT_Header<TData extends MRT_RowData> = Omit<
552
592
  Header<TData, unknown>,
553
593
  'column'
554
594
  > & {
555
595
  column: MRT_Column<TData>;
556
596
  };
557
597
 
558
- export type MRT_HeaderGroup<TData extends Record<string, any>> = Omit<
598
+ export type MRT_HeaderGroup<TData extends MRT_RowData> = Omit<
559
599
  HeaderGroup<TData>,
560
600
  'headers'
561
601
  > & {
562
602
  headers: MRT_Header<TData>[];
563
603
  };
564
604
 
565
- export type MRT_Row<TData extends Record<string, any>> = Omit<
605
+ export type MRT_Row<TData extends MRT_RowData> = Omit<
566
606
  Row<TData>,
567
607
  '_valuesCache' | 'getAllCells' | 'getVisibleCells' | 'subRows'
568
608
  > & {
@@ -572,17 +612,17 @@ export type MRT_Row<TData extends Record<string, any>> = Omit<
572
612
  subRows?: MRT_Row<TData>[];
573
613
  };
574
614
 
575
- export type MRT_Cell<TData extends Record<string, any>> = Omit<
576
- Cell<TData, unknown>,
615
+ export type MRT_Cell<TData extends MRT_RowData, TValue = unknown> = Omit<
616
+ Cell<TData, TValue>,
577
617
  'column' | 'row'
578
618
  > & {
579
- column: MRT_Column<TData>;
619
+ column: MRT_Column<TData, TValue>;
580
620
  row: MRT_Row<TData>;
581
621
  };
582
622
 
583
623
  export type MRT_AggregationOption = string & keyof typeof MRT_AggregationFns;
584
624
 
585
- export type MRT_AggregationFn<TData extends Record<string, any>> =
625
+ export type MRT_AggregationFn<TData extends MRT_RowData> =
586
626
  | AggregationFn<TData>
587
627
  | MRT_AggregationOption;
588
628
 
@@ -590,7 +630,7 @@ export type MRT_SortingOption = LiteralUnion<
590
630
  string & keyof typeof MRT_SortingFns
591
631
  >;
592
632
 
593
- export type MRT_SortingFn<TData extends Record<string, any>> =
633
+ export type MRT_SortingFn<TData extends MRT_RowData> =
594
634
  | MRT_SortingOption
595
635
  | SortingFn<TData>;
596
636
 
@@ -598,7 +638,7 @@ export type MRT_FilterOption = LiteralUnion<
598
638
  string & keyof typeof MRT_FilterFns
599
639
  >;
600
640
 
601
- export type MRT_FilterFn<TData extends Record<string, any>> =
641
+ export type MRT_FilterFn<TData extends MRT_RowData> =
602
642
  | FilterFn<TData>
603
643
  | MRT_FilterOption;
604
644
 
@@ -615,7 +655,8 @@ export type MRT_DisplayColumnIds =
615
655
  | 'mrt-row-expand'
616
656
  | 'mrt-row-numbers'
617
657
  | 'mrt-row-pin'
618
- | 'mrt-row-select';
658
+ | 'mrt-row-select'
659
+ | 'mrt-row-spacer';
619
660
 
620
661
  /**
621
662
  * `columns` and `data` props are the only required props, but there are over 170 other optional props.
@@ -626,7 +667,7 @@ export type MRT_DisplayColumnIds =
626
667
  * See the full props list on the official docs site:
627
668
  * @link https://www.material-react-table.com/docs/api/props
628
669
  */
629
- export type MRT_TableOptions<TData extends Record<string, any>> = Omit<
670
+ export type MRT_TableOptions<TData extends MRT_RowData> = Omit<
630
671
  Partial<TableOptions<TData>>,
631
672
  | 'columns'
632
673
  | 'data'
@@ -662,7 +703,7 @@ export type MRT_TableOptions<TData extends Record<string, any>> = Omit<
662
703
  * See all Columns Options on the official docs site:
663
704
  * @link https://www.material-react-table.com/docs/api/column-options
664
705
  */
665
- columns: MRT_ColumnDef<TData>[];
706
+ columns: MRT_ColumnDef<TData, any>[];
666
707
  createDisplayMode?: 'custom' | 'modal' | 'row';
667
708
  /**
668
709
  * Pass your data as an array of objects. Objects can theoretically be any shape, but it's best to keep them consistent.
@@ -678,9 +719,9 @@ export type MRT_TableOptions<TData extends Record<string, any>> = Omit<
678
719
  /**
679
720
  * Change the default options for display columns.
680
721
  */
681
- defaultDisplayColumn?: Partial<MRT_ColumnDef<TData>>;
722
+ defaultDisplayColumn?: Partial<MRT_DisplayColumnDef<TData>>;
682
723
  displayColumnDefOptions?: Partial<{
683
- [key in MRT_DisplayColumnIds]: Partial<MRT_ColumnDef<TData>>;
724
+ [key in MRT_DisplayColumnIds]: Partial<MRT_DisplayColumnDef<TData>>;
684
725
  }>;
685
726
  editDisplayMode?: 'cell' | 'custom' | 'modal' | 'row' | 'table';
686
727
  enableBottomToolbar?: boolean;
@@ -740,9 +781,10 @@ export type MRT_TableOptions<TData extends Record<string, any>> = Omit<
740
781
  * @link https://www.material-react-table.com/docs/guides/memoize-components
741
782
  */
742
783
  memoMode?: 'cells' | 'rows' | 'table-body';
784
+ mrtTheme?: ((theme: Theme) => MRT_Theme) | MRT_Theme;
743
785
  muiBottomToolbarProps?:
744
- | ((props: { table: MRT_TableInstance<TData> }) => ToolbarProps)
745
- | ToolbarProps;
786
+ | ((props: { table: MRT_TableInstance<TData> }) => BoxProps)
787
+ | BoxProps;
746
788
  muiCircularProgressProps?:
747
789
  | ((props: { table: MRT_TableInstance<TData> }) => CircularProgressProps)
748
790
  | CircularProgressProps;
@@ -778,7 +820,7 @@ export type MRT_TableOptions<TData extends Record<string, any>> = Omit<
778
820
  table: MRT_TableInstance<TData>;
779
821
  }) => TableCellProps)
780
822
  | TableCellProps;
781
- muiEditRowModalProps?:
823
+ muiEditRowDialogProps?:
782
824
  | ((props: {
783
825
  row: MRT_Row<TData>;
784
826
  table: MRT_TableInstance<TData>;
@@ -943,8 +985,8 @@ export type MRT_TableOptions<TData extends Record<string, any>> = Omit<
943
985
  | ((props: { table: MRT_TableInstance<TData> }) => AlertProps)
944
986
  | AlertProps;
945
987
  muiTopToolbarProps?:
946
- | ((props: { table: MRT_TableInstance<TData> }) => ToolbarProps)
947
- | ToolbarProps;
988
+ | ((props: { table: MRT_TableInstance<TData> }) => BoxProps)
989
+ | BoxProps;
948
990
  onColumnFilterFnsChange?: OnChangeFn<{ [key: string]: MRT_FilterOption }>;
949
991
  onCreatingRowCancel?: (props: {
950
992
  row: MRT_Row<TData>;
@@ -1005,7 +1047,7 @@ export type MRT_TableOptions<TData extends Record<string, any>> = Omit<
1005
1047
  onSelectFilterMode: (filterMode: MRT_FilterOption) => void;
1006
1048
  table: MRT_TableInstance<TData>;
1007
1049
  }) => ReactNode[];
1008
- renderCreateRowModalContent?: (props: {
1050
+ renderCreateRowDialogContent?: (props: {
1009
1051
  internalEditComponents: ReactNode[];
1010
1052
  row: MRT_Row<TData>;
1011
1053
  table: MRT_TableInstance<TData>;
@@ -1014,7 +1056,7 @@ export type MRT_TableOptions<TData extends Record<string, any>> = Omit<
1014
1056
  row: MRT_Row<TData>;
1015
1057
  table: MRT_TableInstance<TData>;
1016
1058
  }) => ReactNode;
1017
- renderEditRowModalContent?: (props: {
1059
+ renderEditRowDialogContent?: (props: {
1018
1060
  internalEditComponents: ReactNode[];
1019
1061
  row: MRT_Row<TData>;
1020
1062
  table: MRT_TableInstance<TData>;
@@ -1,11 +1,12 @@
1
1
  import { useMRT_TableInstance } from './hooks/useMRT_TableInstance';
2
2
  import { useMRT_TableOptions } from './hooks/useMRT_TableOptions';
3
- import { type MRT_TableInstance, type MRT_TableOptions } from './types';
3
+ import {
4
+ type MRT_RowData,
5
+ type MRT_TableInstance,
6
+ type MRT_TableOptions,
7
+ } from './types';
4
8
 
5
- export const useMaterialReactTable = <TData extends Record<string, any>>(
9
+ export const useMaterialReactTable = <TData extends MRT_RowData>(
6
10
  tableOptions: MRT_TableOptions<TData>,
7
- ): MRT_TableInstance<TData> => {
8
- const parsedTableOptions = useMRT_TableOptions(tableOptions);
9
- const tableInstance = useMRT_TableInstance(parsedTableOptions);
10
- return tableInstance;
11
- };
11
+ ): MRT_TableInstance<TData> =>
12
+ useMRT_TableInstance(useMRT_TableOptions(tableOptions));