material-react-table 2.0.0-beta.3 → 2.0.0-beta.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (600) hide show
  1. package/dist/cjs/index.js +704 -774
  2. package/dist/cjs/index.js.map +1 -1
  3. package/dist/esm/material-react-table.esm.js +613 -595
  4. package/dist/esm/material-react-table.esm.js.map +1 -1
  5. package/dist/index.d.ts +167 -161
  6. package/locales/ar/index.d.ts +3 -0
  7. package/locales/ar/index.esm.d.ts +3 -0
  8. package/locales/{ar.esm.js → ar/index.esm.js} +0 -1
  9. package/locales/{ar.js → ar/index.js} +0 -3
  10. package/locales/ar/package.json +6 -0
  11. package/locales/az/index.d.ts +3 -0
  12. package/locales/az/index.esm.d.ts +3 -0
  13. package/locales/az/index.esm.js +93 -0
  14. package/locales/az/index.js +95 -0
  15. package/locales/az/package.json +6 -0
  16. package/locales/bg/index.d.ts +3 -0
  17. package/locales/bg/index.esm.d.ts +3 -0
  18. package/locales/{bg.esm.js → bg/index.esm.js} +0 -1
  19. package/locales/{bg.js → bg/index.js} +0 -3
  20. package/locales/bg/package.json +6 -0
  21. package/locales/cs/index.d.ts +3 -0
  22. package/locales/cs/index.esm.d.ts +3 -0
  23. package/locales/{cs.esm.js → cs/index.esm.js} +0 -1
  24. package/locales/{cs.js → cs/index.js} +0 -3
  25. package/locales/cs/package.json +6 -0
  26. package/locales/da/index.d.ts +3 -0
  27. package/locales/da/index.esm.d.ts +3 -0
  28. package/locales/{da.esm.js → da/index.esm.js} +0 -1
  29. package/locales/{da.js → da/index.js} +0 -3
  30. package/locales/da/package.json +6 -0
  31. package/locales/de/index.d.ts +3 -0
  32. package/locales/de/index.esm.d.ts +3 -0
  33. package/locales/{de.esm.js → de/index.esm.js} +0 -1
  34. package/locales/{de.js → de/index.js} +0 -3
  35. package/locales/de/package.json +6 -0
  36. package/locales/en/index.d.ts +3 -0
  37. package/locales/en/index.esm.d.ts +3 -0
  38. package/locales/{en.esm.js → en/index.esm.js} +0 -1
  39. package/locales/{en.js → en/index.js} +0 -3
  40. package/locales/en/package.json +6 -0
  41. package/locales/es/index.d.ts +3 -0
  42. package/locales/es/index.esm.d.ts +3 -0
  43. package/locales/{es.esm.js → es/index.esm.js} +0 -1
  44. package/locales/{es.js → es/index.js} +0 -3
  45. package/locales/es/package.json +6 -0
  46. package/locales/et/index.d.ts +3 -0
  47. package/locales/et/index.esm.d.ts +3 -0
  48. package/locales/{et.esm.js → et/index.esm.js} +0 -1
  49. package/locales/{et.js → et/index.js} +0 -3
  50. package/locales/et/package.json +6 -0
  51. package/locales/fa/index.d.ts +3 -0
  52. package/locales/fa/index.esm.d.ts +3 -0
  53. package/locales/{fa.esm.js → fa/index.esm.js} +0 -1
  54. package/locales/{fa.js → fa/index.js} +0 -3
  55. package/locales/fa/package.json +6 -0
  56. package/locales/fi/index.d.ts +3 -0
  57. package/locales/fi/index.esm.d.ts +3 -0
  58. package/locales/{fi.esm.js → fi/index.esm.js} +0 -1
  59. package/locales/{fi.js → fi/index.js} +0 -3
  60. package/locales/fi/package.json +6 -0
  61. package/locales/fr/index.d.ts +3 -0
  62. package/locales/fr/index.esm.d.ts +3 -0
  63. package/locales/{fr.esm.js → fr/index.esm.js} +0 -1
  64. package/locales/{fr.js → fr/index.js} +0 -3
  65. package/locales/fr/package.json +6 -0
  66. package/locales/hu/index.d.ts +3 -0
  67. package/locales/hu/index.esm.d.ts +3 -0
  68. package/locales/{hu.esm.js → hu/index.esm.js} +0 -1
  69. package/locales/{hu.js → hu/index.js} +0 -3
  70. package/locales/hu/package.json +6 -0
  71. package/locales/hy/index.d.ts +3 -0
  72. package/locales/hy/index.esm.d.ts +3 -0
  73. package/locales/{hy.esm.js → hy/index.esm.js} +0 -1
  74. package/locales/{hy.js → hy/index.js} +0 -3
  75. package/locales/hy/package.json +6 -0
  76. package/locales/id/index.d.ts +3 -0
  77. package/locales/id/index.esm.d.ts +3 -0
  78. package/locales/{id.esm.js → id/index.esm.js} +0 -1
  79. package/locales/{id.js → id/index.js} +0 -3
  80. package/locales/id/package.json +6 -0
  81. package/locales/it/index.d.ts +3 -0
  82. package/locales/it/index.esm.d.ts +3 -0
  83. package/locales/{it.esm.js → it/index.esm.js} +0 -1
  84. package/locales/{it.js → it/index.js} +0 -3
  85. package/locales/it/package.json +6 -0
  86. package/locales/ja/index.d.ts +3 -0
  87. package/locales/ja/index.esm.d.ts +3 -0
  88. package/locales/{ja.esm.js → ja/index.esm.js} +0 -1
  89. package/locales/{ja.js → ja/index.js} +0 -3
  90. package/locales/ja/package.json +6 -0
  91. package/locales/ko/index.d.ts +3 -0
  92. package/locales/ko/index.esm.d.ts +3 -0
  93. package/locales/{ko.esm.js → ko/index.esm.js} +0 -1
  94. package/locales/{ko.js → ko/index.js} +0 -3
  95. package/locales/ko/package.json +6 -0
  96. package/locales/nl/index.d.ts +3 -0
  97. package/locales/nl/index.esm.d.ts +3 -0
  98. package/locales/{nl.esm.js → nl/index.esm.js} +0 -1
  99. package/locales/{nl.js → nl/index.js} +0 -3
  100. package/locales/nl/package.json +6 -0
  101. package/locales/no/index.d.ts +3 -0
  102. package/locales/no/index.esm.d.ts +3 -0
  103. package/locales/{no.esm.js → no/index.esm.js} +0 -1
  104. package/locales/{no.js → no/index.js} +0 -3
  105. package/locales/no/package.json +6 -0
  106. package/locales/np/index.d.ts +3 -0
  107. package/locales/np/index.esm.d.ts +3 -0
  108. package/locales/{np.esm.js → np/index.esm.js} +0 -1
  109. package/locales/{np.js → np/index.js} +0 -3
  110. package/locales/np/package.json +6 -0
  111. package/locales/pl/index.d.ts +3 -0
  112. package/locales/pl/index.esm.d.ts +3 -0
  113. package/locales/{pl.esm.js → pl/index.esm.js} +0 -1
  114. package/locales/{pl.js → pl/index.js} +0 -3
  115. package/locales/pl/package.json +6 -0
  116. package/locales/pt/index.d.ts +3 -0
  117. package/locales/pt/index.esm.d.ts +3 -0
  118. package/locales/{pt.esm.js → pt/index.esm.js} +0 -1
  119. package/locales/{pt.js → pt/index.js} +0 -3
  120. package/locales/pt/package.json +6 -0
  121. package/locales/pt-BR/index.d.ts +3 -0
  122. package/locales/pt-BR/index.esm.d.ts +3 -0
  123. package/locales/{pt-BR.esm.js → pt-BR/index.esm.js} +0 -1
  124. package/locales/{pt-BR.js → pt-BR/index.js} +0 -3
  125. package/locales/pt-BR/package.json +6 -0
  126. package/locales/ro/index.d.ts +3 -0
  127. package/locales/ro/index.esm.d.ts +3 -0
  128. package/locales/{ro.esm.js → ro/index.esm.js} +0 -1
  129. package/locales/{ro.js → ro/index.js} +0 -3
  130. package/locales/ro/package.json +6 -0
  131. package/locales/ru/index.d.ts +3 -0
  132. package/locales/ru/index.esm.d.ts +3 -0
  133. package/locales/{ru.esm.js → ru/index.esm.js} +0 -1
  134. package/locales/{ru.js → ru/index.js} +0 -3
  135. package/locales/ru/package.json +6 -0
  136. package/locales/sk/index.d.ts +3 -0
  137. package/locales/sk/index.esm.d.ts +3 -0
  138. package/locales/{sk.esm.js → sk/index.esm.js} +0 -1
  139. package/locales/{sk.js → sk/index.js} +0 -3
  140. package/locales/sk/package.json +6 -0
  141. package/locales/sr-Cyrl-RS/index.d.ts +3 -0
  142. package/locales/sr-Cyrl-RS/index.esm.d.ts +3 -0
  143. package/locales/{sr-Cyrl-RS.esm.js → sr-Cyrl-RS/index.esm.js} +0 -1
  144. package/locales/{sr-Cyrl-RS.js → sr-Cyrl-RS/index.js} +0 -3
  145. package/locales/sr-Cyrl-RS/package.json +6 -0
  146. package/locales/sr-Latn-RS/index.d.ts +3 -0
  147. package/locales/sr-Latn-RS/index.esm.d.ts +3 -0
  148. package/locales/{sr-Latn-RS.esm.js → sr-Latn-RS/index.esm.js} +0 -1
  149. package/locales/{sr-Latn-RS.js → sr-Latn-RS/index.js} +0 -3
  150. package/locales/sr-Latn-RS/package.json +6 -0
  151. package/locales/sv/index.d.ts +3 -0
  152. package/locales/sv/index.esm.d.ts +3 -0
  153. package/locales/{sv.esm.js → sv/index.esm.js} +0 -1
  154. package/locales/{sv.js → sv/index.js} +0 -3
  155. package/locales/sv/package.json +6 -0
  156. package/locales/tr/index.d.ts +3 -0
  157. package/locales/tr/index.esm.d.ts +3 -0
  158. package/locales/{tr.esm.js → tr/index.esm.js} +0 -1
  159. package/locales/{tr.js → tr/index.js} +0 -3
  160. package/locales/tr/package.json +6 -0
  161. package/locales/uk/index.d.ts +3 -0
  162. package/locales/uk/index.esm.d.ts +3 -0
  163. package/locales/{uk.esm.js → uk/index.esm.js} +0 -1
  164. package/locales/{uk.js → uk/index.js} +0 -3
  165. package/locales/uk/package.json +6 -0
  166. package/locales/vi/index.d.ts +3 -0
  167. package/locales/vi/index.esm.d.ts +3 -0
  168. package/locales/{vi.esm.js → vi/index.esm.js} +0 -1
  169. package/locales/{vi.js → vi/index.js} +0 -3
  170. package/locales/vi/package.json +6 -0
  171. package/locales/zh-Hans/index.d.ts +3 -0
  172. package/locales/zh-Hans/index.esm.d.ts +3 -0
  173. package/locales/{zh-Hans.esm.js → zh-Hans/index.esm.js} +0 -1
  174. package/locales/{zh-Hans.js → zh-Hans/index.js} +0 -3
  175. package/locales/zh-Hans/package.json +6 -0
  176. package/locales/zh-Hant/index.d.ts +3 -0
  177. package/locales/zh-Hant/index.esm.d.ts +3 -0
  178. package/locales/{zh-Hant.esm.js → zh-Hant/index.esm.js} +0 -1
  179. package/locales/{zh-Hant.js → zh-Hant/index.js} +0 -3
  180. package/locales/zh-Hant/package.json +6 -0
  181. package/package.json +37 -28
  182. package/src/body/MRT_TableBody.tsx +8 -6
  183. package/src/body/MRT_TableBodyCell.tsx +67 -66
  184. package/src/body/MRT_TableBodyCellValue.tsx +6 -6
  185. package/src/body/MRT_TableBodyRow.tsx +16 -12
  186. package/src/body/MRT_TableBodyRowGrabHandle.tsx +10 -5
  187. package/src/body/MRT_TableBodyRowPinButton.tsx +12 -5
  188. package/src/body/MRT_TableDetailPanel.tsx +13 -9
  189. package/src/buttons/MRT_ColumnPinningButtons.tsx +12 -3
  190. package/src/buttons/MRT_CopyButton.tsx +6 -8
  191. package/src/buttons/MRT_EditActionButtons.tsx +9 -3
  192. package/src/buttons/MRT_ExpandAllButton.tsx +9 -5
  193. package/src/buttons/MRT_ExpandButton.tsx +2 -2
  194. package/src/buttons/MRT_GrabHandleButton.tsx +8 -5
  195. package/src/buttons/MRT_RowPinButton.tsx +8 -4
  196. package/src/buttons/MRT_ToggleRowActionMenuButton.tsx +7 -3
  197. package/src/column.utils.ts +2 -121
  198. package/src/footer/MRT_TableFooter.tsx +9 -5
  199. package/src/footer/MRT_TableFooterCell.tsx +15 -14
  200. package/src/footer/MRT_TableFooterRow.tsx +12 -8
  201. package/src/head/MRT_TableHead.tsx +8 -4
  202. package/src/head/MRT_TableHeadCell.tsx +96 -89
  203. package/src/head/MRT_TableHeadCellColumnActionsButton.tsx +7 -9
  204. package/src/head/MRT_TableHeadCellFilterContainer.tsx +4 -2
  205. package/src/head/MRT_TableHeadCellFilterLabel.tsx +8 -4
  206. package/src/head/MRT_TableHeadCellGrabHandle.tsx +4 -1
  207. package/src/head/MRT_TableHeadCellResizeHandle.tsx +7 -4
  208. package/src/head/MRT_TableHeadCellSortLabel.tsx +31 -15
  209. package/src/head/MRT_TableHeadRow.tsx +13 -8
  210. package/src/hooks/useMRT_DisplayColumns.tsx +1 -0
  211. package/src/hooks/useMRT_TableOptions.ts +22 -1
  212. package/src/index.ts +1 -0
  213. package/src/inputs/MRT_EditCellTextField.tsx +15 -1
  214. package/src/inputs/MRT_FilterCheckbox.tsx +4 -2
  215. package/src/inputs/MRT_FilterRangeFields.tsx +13 -3
  216. package/src/inputs/MRT_FilterRangeSlider.tsx +4 -2
  217. package/src/inputs/MRT_FilterTextField.tsx +3 -1
  218. package/src/inputs/MRT_GlobalFilterTextField.tsx +23 -6
  219. package/src/inputs/MRT_SelectCheckbox.tsx +8 -4
  220. package/src/locales/az.ts +94 -0
  221. package/src/locales/no.ts +1 -1
  222. package/src/menus/MRT_ColumnActionMenu.tsx +4 -2
  223. package/src/menus/MRT_FilterOptionMenu.tsx +4 -2
  224. package/src/menus/MRT_RowActionMenu.tsx +4 -2
  225. package/src/menus/MRT_ShowHideColumnsMenu.tsx +4 -2
  226. package/src/menus/MRT_ShowHideColumnsMenuItems.tsx +9 -5
  227. package/src/modals/MRT_EditRowModal.tsx +5 -3
  228. package/src/style.utils.ts +149 -0
  229. package/src/table/MRT_Table.tsx +26 -32
  230. package/src/table/MRT_TableContainer.tsx +15 -44
  231. package/src/table/MRT_TableLoadingOverlay.tsx +54 -0
  232. package/src/table/MRT_TablePaper.tsx +8 -4
  233. package/src/table/index.ts +1 -0
  234. package/src/toolbar/MRT_BottomToolbar.tsx +14 -12
  235. package/src/toolbar/MRT_LinearProgressBar.tsx +14 -8
  236. package/src/toolbar/MRT_TablePagination.tsx +18 -8
  237. package/src/toolbar/MRT_ToolbarAlertBanner.tsx +9 -5
  238. package/src/toolbar/MRT_ToolbarDropZone.tsx +6 -2
  239. package/src/toolbar/MRT_ToolbarInternalButtons.tsx +8 -4
  240. package/src/toolbar/MRT_TopToolbar.tsx +8 -21
  241. package/src/types.ts +13 -5
  242. package/src/useMaterialReactTable.ts +2 -5
  243. package/dist/cjs/types/MaterialReactTable.d.ts +0 -7
  244. package/dist/cjs/types/aggregationFns.d.ts +0 -11
  245. package/dist/cjs/types/body/MRT_TableBody.d.ts +0 -12
  246. package/dist/cjs/types/body/MRT_TableBodyCell.d.ts +0 -15
  247. package/dist/cjs/types/body/MRT_TableBodyCellValue.d.ts +0 -7
  248. package/dist/cjs/types/body/MRT_TableBodyRow.d.ts +0 -18
  249. package/dist/cjs/types/body/MRT_TableBodyRowGrabHandle.d.ts +0 -9
  250. package/dist/cjs/types/body/MRT_TableBodyRowPinButton.d.ts +0 -7
  251. package/dist/cjs/types/body/MRT_TableDetailPanel.d.ts +0 -12
  252. package/dist/cjs/types/body/index.d.ts +0 -7
  253. package/dist/cjs/types/buttons/MRT_ColumnPinningButtons.d.ts +0 -7
  254. package/dist/cjs/types/buttons/MRT_CopyButton.d.ts +0 -9
  255. package/dist/cjs/types/buttons/MRT_EditActionButtons.d.ts +0 -8
  256. package/dist/cjs/types/buttons/MRT_ExpandAllButton.d.ts +0 -6
  257. package/dist/cjs/types/buttons/MRT_ExpandButton.d.ts +0 -7
  258. package/dist/cjs/types/buttons/MRT_GrabHandleButton.d.ts +0 -12
  259. package/dist/cjs/types/buttons/MRT_RowPinButton.d.ts +0 -9
  260. package/dist/cjs/types/buttons/MRT_ShowHideColumnsButton.d.ts +0 -7
  261. package/dist/cjs/types/buttons/MRT_ToggleDensePaddingButton.d.ts +0 -7
  262. package/dist/cjs/types/buttons/MRT_ToggleFiltersButton.d.ts +0 -7
  263. package/dist/cjs/types/buttons/MRT_ToggleFullScreenButton.d.ts +0 -7
  264. package/dist/cjs/types/buttons/MRT_ToggleGlobalFilterButton.d.ts +0 -7
  265. package/dist/cjs/types/buttons/MRT_ToggleRowActionMenuButton.d.ts +0 -8
  266. package/dist/cjs/types/buttons/index.d.ts +0 -13
  267. package/dist/cjs/types/column.utils.d.ts +0 -149
  268. package/dist/cjs/types/filterFns.d.ts +0 -69
  269. package/dist/cjs/types/footer/MRT_TableFooter.d.ts +0 -10
  270. package/dist/cjs/types/footer/MRT_TableFooterCell.d.ts +0 -7
  271. package/dist/cjs/types/footer/MRT_TableFooterRow.d.ts +0 -11
  272. package/dist/cjs/types/footer/index.d.ts +0 -3
  273. package/dist/cjs/types/head/MRT_TableHead.d.ts +0 -10
  274. package/dist/cjs/types/head/MRT_TableHeadCell.d.ts +0 -7
  275. package/dist/cjs/types/head/MRT_TableHeadCellColumnActionsButton.d.ts +0 -7
  276. package/dist/cjs/types/head/MRT_TableHeadCellFilterContainer.d.ts +0 -7
  277. package/dist/cjs/types/head/MRT_TableHeadCellFilterLabel.d.ts +0 -7
  278. package/dist/cjs/types/head/MRT_TableHeadCellGrabHandle.d.ts +0 -9
  279. package/dist/cjs/types/head/MRT_TableHeadCellResizeHandle.d.ts +0 -7
  280. package/dist/cjs/types/head/MRT_TableHeadCellSortLabel.d.ts +0 -9
  281. package/dist/cjs/types/head/MRT_TableHeadRow.d.ts +0 -11
  282. package/dist/cjs/types/head/index.d.ts +0 -9
  283. package/dist/cjs/types/hooks/useMRT_DisplayColumns.d.ts +0 -9
  284. package/dist/cjs/types/hooks/useMRT_Effects.d.ts +0 -2
  285. package/dist/cjs/types/hooks/useMRT_TableInstance.d.ts +0 -2
  286. package/dist/cjs/types/hooks/useMRT_TableOptions.d.ts +0 -2
  287. package/dist/cjs/types/icons.d.ts +0 -36
  288. package/dist/cjs/types/index.d.ts +0 -16
  289. package/dist/cjs/types/inputs/MRT_EditCellTextField.d.ts +0 -7
  290. package/dist/cjs/types/inputs/MRT_FilterCheckbox.d.ts +0 -7
  291. package/dist/cjs/types/inputs/MRT_FilterRangeFields.d.ts +0 -7
  292. package/dist/cjs/types/inputs/MRT_FilterRangeSlider.d.ts +0 -7
  293. package/dist/cjs/types/inputs/MRT_FilterTextField.d.ts +0 -8
  294. package/dist/cjs/types/inputs/MRT_GlobalFilterTextField.d.ts +0 -6
  295. package/dist/cjs/types/inputs/MRT_SelectCheckbox.d.ts +0 -8
  296. package/dist/cjs/types/inputs/index.d.ts +0 -7
  297. package/dist/cjs/types/locales/ar.d.ts +0 -2
  298. package/dist/cjs/types/locales/bg.d.ts +0 -2
  299. package/dist/cjs/types/locales/cs.d.ts +0 -2
  300. package/dist/cjs/types/locales/da.d.ts +0 -2
  301. package/dist/cjs/types/locales/de.d.ts +0 -2
  302. package/dist/cjs/types/locales/en.d.ts +0 -2
  303. package/dist/cjs/types/locales/es.d.ts +0 -2
  304. package/dist/cjs/types/locales/et.d.ts +0 -2
  305. package/dist/cjs/types/locales/fa.d.ts +0 -2
  306. package/dist/cjs/types/locales/fi.d.ts +0 -2
  307. package/dist/cjs/types/locales/fr.d.ts +0 -2
  308. package/dist/cjs/types/locales/hu.d.ts +0 -2
  309. package/dist/cjs/types/locales/hy.d.ts +0 -2
  310. package/dist/cjs/types/locales/id.d.ts +0 -2
  311. package/dist/cjs/types/locales/it.d.ts +0 -2
  312. package/dist/cjs/types/locales/ja.d.ts +0 -2
  313. package/dist/cjs/types/locales/ko.d.ts +0 -2
  314. package/dist/cjs/types/locales/nl.d.ts +0 -2
  315. package/dist/cjs/types/locales/no.d.ts +0 -2
  316. package/dist/cjs/types/locales/np.d.ts +0 -2
  317. package/dist/cjs/types/locales/pl.d.ts +0 -2
  318. package/dist/cjs/types/locales/pt-BR.d.ts +0 -2
  319. package/dist/cjs/types/locales/pt.d.ts +0 -2
  320. package/dist/cjs/types/locales/ro.d.ts +0 -2
  321. package/dist/cjs/types/locales/ru.d.ts +0 -2
  322. package/dist/cjs/types/locales/sk.d.ts +0 -2
  323. package/dist/cjs/types/locales/sr-Cyrl-RS.d.ts +0 -2
  324. package/dist/cjs/types/locales/sr-Latn-RS.d.ts +0 -2
  325. package/dist/cjs/types/locales/sv.d.ts +0 -2
  326. package/dist/cjs/types/locales/tr.d.ts +0 -2
  327. package/dist/cjs/types/locales/uk.d.ts +0 -2
  328. package/dist/cjs/types/locales/vi.d.ts +0 -2
  329. package/dist/cjs/types/locales/zh-Hans.d.ts +0 -2
  330. package/dist/cjs/types/locales/zh-Hant.d.ts +0 -2
  331. package/dist/cjs/types/menus/MRT_ColumnActionMenu.d.ts +0 -19
  332. package/dist/cjs/types/menus/MRT_FilterOptionMenu.d.ts +0 -12
  333. package/dist/cjs/types/menus/MRT_RowActionMenu.d.ts +0 -11
  334. package/dist/cjs/types/menus/MRT_ShowHideColumnsMenu.d.ts +0 -9
  335. package/dist/cjs/types/menus/MRT_ShowHideColumnsMenuItems.d.ts +0 -11
  336. package/dist/cjs/types/menus/index.d.ts +0 -5
  337. package/dist/cjs/types/modals/MRT_EditRowModal.d.ts +0 -7
  338. package/dist/cjs/types/modals/index.d.ts +0 -1
  339. package/dist/cjs/types/sortingFns.d.ts +0 -12
  340. package/dist/cjs/types/table/MRT_Table.d.ts +0 -6
  341. package/dist/cjs/types/table/MRT_TableContainer.d.ts +0 -6
  342. package/dist/cjs/types/table/MRT_TablePaper.d.ts +0 -6
  343. package/dist/cjs/types/table/index.d.ts +0 -4
  344. package/dist/cjs/types/toolbar/MRT_BottomToolbar.d.ts +0 -6
  345. package/dist/cjs/types/toolbar/MRT_LinearProgressBar.d.ts +0 -7
  346. package/dist/cjs/types/toolbar/MRT_TablePagination.d.ts +0 -7
  347. package/dist/cjs/types/toolbar/MRT_ToolbarAlertBanner.d.ts +0 -7
  348. package/dist/cjs/types/toolbar/MRT_ToolbarDropZone.d.ts +0 -6
  349. package/dist/cjs/types/toolbar/MRT_ToolbarInternalButtons.d.ts +0 -6
  350. package/dist/cjs/types/toolbar/MRT_TopToolbar.d.ts +0 -21
  351. package/dist/cjs/types/toolbar/index.d.ts +0 -7
  352. package/dist/cjs/types/types.d.ts +0 -828
  353. package/dist/cjs/types/useMaterialReactTable.d.ts +0 -2
  354. package/dist/esm/types/MaterialReactTable.d.ts +0 -7
  355. package/dist/esm/types/aggregationFns.d.ts +0 -11
  356. package/dist/esm/types/body/MRT_TableBody.d.ts +0 -12
  357. package/dist/esm/types/body/MRT_TableBodyCell.d.ts +0 -15
  358. package/dist/esm/types/body/MRT_TableBodyCellValue.d.ts +0 -7
  359. package/dist/esm/types/body/MRT_TableBodyRow.d.ts +0 -18
  360. package/dist/esm/types/body/MRT_TableBodyRowGrabHandle.d.ts +0 -9
  361. package/dist/esm/types/body/MRT_TableBodyRowPinButton.d.ts +0 -7
  362. package/dist/esm/types/body/MRT_TableDetailPanel.d.ts +0 -12
  363. package/dist/esm/types/body/index.d.ts +0 -7
  364. package/dist/esm/types/buttons/MRT_ColumnPinningButtons.d.ts +0 -7
  365. package/dist/esm/types/buttons/MRT_CopyButton.d.ts +0 -9
  366. package/dist/esm/types/buttons/MRT_EditActionButtons.d.ts +0 -8
  367. package/dist/esm/types/buttons/MRT_ExpandAllButton.d.ts +0 -6
  368. package/dist/esm/types/buttons/MRT_ExpandButton.d.ts +0 -7
  369. package/dist/esm/types/buttons/MRT_GrabHandleButton.d.ts +0 -12
  370. package/dist/esm/types/buttons/MRT_RowPinButton.d.ts +0 -9
  371. package/dist/esm/types/buttons/MRT_ShowHideColumnsButton.d.ts +0 -7
  372. package/dist/esm/types/buttons/MRT_ToggleDensePaddingButton.d.ts +0 -7
  373. package/dist/esm/types/buttons/MRT_ToggleFiltersButton.d.ts +0 -7
  374. package/dist/esm/types/buttons/MRT_ToggleFullScreenButton.d.ts +0 -7
  375. package/dist/esm/types/buttons/MRT_ToggleGlobalFilterButton.d.ts +0 -7
  376. package/dist/esm/types/buttons/MRT_ToggleRowActionMenuButton.d.ts +0 -8
  377. package/dist/esm/types/buttons/index.d.ts +0 -13
  378. package/dist/esm/types/column.utils.d.ts +0 -149
  379. package/dist/esm/types/filterFns.d.ts +0 -69
  380. package/dist/esm/types/footer/MRT_TableFooter.d.ts +0 -10
  381. package/dist/esm/types/footer/MRT_TableFooterCell.d.ts +0 -7
  382. package/dist/esm/types/footer/MRT_TableFooterRow.d.ts +0 -11
  383. package/dist/esm/types/footer/index.d.ts +0 -3
  384. package/dist/esm/types/head/MRT_TableHead.d.ts +0 -10
  385. package/dist/esm/types/head/MRT_TableHeadCell.d.ts +0 -7
  386. package/dist/esm/types/head/MRT_TableHeadCellColumnActionsButton.d.ts +0 -7
  387. package/dist/esm/types/head/MRT_TableHeadCellFilterContainer.d.ts +0 -7
  388. package/dist/esm/types/head/MRT_TableHeadCellFilterLabel.d.ts +0 -7
  389. package/dist/esm/types/head/MRT_TableHeadCellGrabHandle.d.ts +0 -9
  390. package/dist/esm/types/head/MRT_TableHeadCellResizeHandle.d.ts +0 -7
  391. package/dist/esm/types/head/MRT_TableHeadCellSortLabel.d.ts +0 -9
  392. package/dist/esm/types/head/MRT_TableHeadRow.d.ts +0 -11
  393. package/dist/esm/types/head/index.d.ts +0 -9
  394. package/dist/esm/types/hooks/useMRT_DisplayColumns.d.ts +0 -9
  395. package/dist/esm/types/hooks/useMRT_Effects.d.ts +0 -2
  396. package/dist/esm/types/hooks/useMRT_TableInstance.d.ts +0 -2
  397. package/dist/esm/types/hooks/useMRT_TableOptions.d.ts +0 -2
  398. package/dist/esm/types/icons.d.ts +0 -36
  399. package/dist/esm/types/index.d.ts +0 -16
  400. package/dist/esm/types/inputs/MRT_EditCellTextField.d.ts +0 -7
  401. package/dist/esm/types/inputs/MRT_FilterCheckbox.d.ts +0 -7
  402. package/dist/esm/types/inputs/MRT_FilterRangeFields.d.ts +0 -7
  403. package/dist/esm/types/inputs/MRT_FilterRangeSlider.d.ts +0 -7
  404. package/dist/esm/types/inputs/MRT_FilterTextField.d.ts +0 -8
  405. package/dist/esm/types/inputs/MRT_GlobalFilterTextField.d.ts +0 -6
  406. package/dist/esm/types/inputs/MRT_SelectCheckbox.d.ts +0 -8
  407. package/dist/esm/types/inputs/index.d.ts +0 -7
  408. package/dist/esm/types/locales/ar.d.ts +0 -2
  409. package/dist/esm/types/locales/bg.d.ts +0 -2
  410. package/dist/esm/types/locales/cs.d.ts +0 -2
  411. package/dist/esm/types/locales/da.d.ts +0 -2
  412. package/dist/esm/types/locales/de.d.ts +0 -2
  413. package/dist/esm/types/locales/en.d.ts +0 -2
  414. package/dist/esm/types/locales/es.d.ts +0 -2
  415. package/dist/esm/types/locales/et.d.ts +0 -2
  416. package/dist/esm/types/locales/fa.d.ts +0 -2
  417. package/dist/esm/types/locales/fi.d.ts +0 -2
  418. package/dist/esm/types/locales/fr.d.ts +0 -2
  419. package/dist/esm/types/locales/hu.d.ts +0 -2
  420. package/dist/esm/types/locales/hy.d.ts +0 -2
  421. package/dist/esm/types/locales/id.d.ts +0 -2
  422. package/dist/esm/types/locales/it.d.ts +0 -2
  423. package/dist/esm/types/locales/ja.d.ts +0 -2
  424. package/dist/esm/types/locales/ko.d.ts +0 -2
  425. package/dist/esm/types/locales/nl.d.ts +0 -2
  426. package/dist/esm/types/locales/no.d.ts +0 -2
  427. package/dist/esm/types/locales/np.d.ts +0 -2
  428. package/dist/esm/types/locales/pl.d.ts +0 -2
  429. package/dist/esm/types/locales/pt-BR.d.ts +0 -2
  430. package/dist/esm/types/locales/pt.d.ts +0 -2
  431. package/dist/esm/types/locales/ro.d.ts +0 -2
  432. package/dist/esm/types/locales/ru.d.ts +0 -2
  433. package/dist/esm/types/locales/sk.d.ts +0 -2
  434. package/dist/esm/types/locales/sr-Cyrl-RS.d.ts +0 -2
  435. package/dist/esm/types/locales/sr-Latn-RS.d.ts +0 -2
  436. package/dist/esm/types/locales/sv.d.ts +0 -2
  437. package/dist/esm/types/locales/tr.d.ts +0 -2
  438. package/dist/esm/types/locales/uk.d.ts +0 -2
  439. package/dist/esm/types/locales/vi.d.ts +0 -2
  440. package/dist/esm/types/locales/zh-Hans.d.ts +0 -2
  441. package/dist/esm/types/locales/zh-Hant.d.ts +0 -2
  442. package/dist/esm/types/menus/MRT_ColumnActionMenu.d.ts +0 -19
  443. package/dist/esm/types/menus/MRT_FilterOptionMenu.d.ts +0 -12
  444. package/dist/esm/types/menus/MRT_RowActionMenu.d.ts +0 -11
  445. package/dist/esm/types/menus/MRT_ShowHideColumnsMenu.d.ts +0 -9
  446. package/dist/esm/types/menus/MRT_ShowHideColumnsMenuItems.d.ts +0 -11
  447. package/dist/esm/types/menus/index.d.ts +0 -5
  448. package/dist/esm/types/modals/MRT_EditRowModal.d.ts +0 -7
  449. package/dist/esm/types/modals/index.d.ts +0 -1
  450. package/dist/esm/types/sortingFns.d.ts +0 -12
  451. package/dist/esm/types/table/MRT_Table.d.ts +0 -6
  452. package/dist/esm/types/table/MRT_TableContainer.d.ts +0 -6
  453. package/dist/esm/types/table/MRT_TablePaper.d.ts +0 -6
  454. package/dist/esm/types/table/index.d.ts +0 -4
  455. package/dist/esm/types/toolbar/MRT_BottomToolbar.d.ts +0 -6
  456. package/dist/esm/types/toolbar/MRT_LinearProgressBar.d.ts +0 -7
  457. package/dist/esm/types/toolbar/MRT_TablePagination.d.ts +0 -7
  458. package/dist/esm/types/toolbar/MRT_ToolbarAlertBanner.d.ts +0 -7
  459. package/dist/esm/types/toolbar/MRT_ToolbarDropZone.d.ts +0 -6
  460. package/dist/esm/types/toolbar/MRT_ToolbarInternalButtons.d.ts +0 -6
  461. package/dist/esm/types/toolbar/MRT_TopToolbar.d.ts +0 -21
  462. package/dist/esm/types/toolbar/index.d.ts +0 -7
  463. package/dist/esm/types/types.d.ts +0 -828
  464. package/dist/esm/types/useMaterialReactTable.d.ts +0 -2
  465. package/locales/ar.d.ts +0 -2
  466. package/locales/ar.esm.d.ts +0 -2
  467. package/locales/ar.esm.js.map +0 -1
  468. package/locales/ar.js.map +0 -1
  469. package/locales/bg.d.ts +0 -2
  470. package/locales/bg.esm.d.ts +0 -2
  471. package/locales/bg.esm.js.map +0 -1
  472. package/locales/bg.js.map +0 -1
  473. package/locales/cs.d.ts +0 -2
  474. package/locales/cs.esm.d.ts +0 -2
  475. package/locales/cs.esm.js.map +0 -1
  476. package/locales/cs.js.map +0 -1
  477. package/locales/da.d.ts +0 -2
  478. package/locales/da.esm.d.ts +0 -2
  479. package/locales/da.esm.js.map +0 -1
  480. package/locales/da.js.map +0 -1
  481. package/locales/de.d.ts +0 -2
  482. package/locales/de.esm.d.ts +0 -2
  483. package/locales/de.esm.js.map +0 -1
  484. package/locales/de.js.map +0 -1
  485. package/locales/en.d.ts +0 -2
  486. package/locales/en.esm.d.ts +0 -2
  487. package/locales/en.esm.js.map +0 -1
  488. package/locales/en.js.map +0 -1
  489. package/locales/es.d.ts +0 -2
  490. package/locales/es.esm.d.ts +0 -2
  491. package/locales/es.esm.js.map +0 -1
  492. package/locales/es.js.map +0 -1
  493. package/locales/et.d.ts +0 -2
  494. package/locales/et.esm.d.ts +0 -2
  495. package/locales/et.esm.js.map +0 -1
  496. package/locales/et.js.map +0 -1
  497. package/locales/fa.d.ts +0 -2
  498. package/locales/fa.esm.d.ts +0 -2
  499. package/locales/fa.esm.js.map +0 -1
  500. package/locales/fa.js.map +0 -1
  501. package/locales/fi.d.ts +0 -2
  502. package/locales/fi.esm.d.ts +0 -2
  503. package/locales/fi.esm.js.map +0 -1
  504. package/locales/fi.js.map +0 -1
  505. package/locales/fr.d.ts +0 -2
  506. package/locales/fr.esm.d.ts +0 -2
  507. package/locales/fr.esm.js.map +0 -1
  508. package/locales/fr.js.map +0 -1
  509. package/locales/hu.d.ts +0 -2
  510. package/locales/hu.esm.d.ts +0 -2
  511. package/locales/hu.esm.js.map +0 -1
  512. package/locales/hu.js.map +0 -1
  513. package/locales/hy.d.ts +0 -2
  514. package/locales/hy.esm.d.ts +0 -2
  515. package/locales/hy.esm.js.map +0 -1
  516. package/locales/hy.js.map +0 -1
  517. package/locales/id.d.ts +0 -2
  518. package/locales/id.esm.d.ts +0 -2
  519. package/locales/id.esm.js.map +0 -1
  520. package/locales/id.js.map +0 -1
  521. package/locales/it.d.ts +0 -2
  522. package/locales/it.esm.d.ts +0 -2
  523. package/locales/it.esm.js.map +0 -1
  524. package/locales/it.js.map +0 -1
  525. package/locales/ja.d.ts +0 -2
  526. package/locales/ja.esm.d.ts +0 -2
  527. package/locales/ja.esm.js.map +0 -1
  528. package/locales/ja.js.map +0 -1
  529. package/locales/ko.d.ts +0 -2
  530. package/locales/ko.esm.d.ts +0 -2
  531. package/locales/ko.esm.js.map +0 -1
  532. package/locales/ko.js.map +0 -1
  533. package/locales/nl.d.ts +0 -2
  534. package/locales/nl.esm.d.ts +0 -2
  535. package/locales/nl.esm.js.map +0 -1
  536. package/locales/nl.js.map +0 -1
  537. package/locales/no.d.ts +0 -2
  538. package/locales/no.esm.d.ts +0 -2
  539. package/locales/no.esm.js.map +0 -1
  540. package/locales/no.js.map +0 -1
  541. package/locales/np.d.ts +0 -2
  542. package/locales/np.esm.d.ts +0 -2
  543. package/locales/np.esm.js.map +0 -1
  544. package/locales/np.js.map +0 -1
  545. package/locales/pl.d.ts +0 -2
  546. package/locales/pl.esm.d.ts +0 -2
  547. package/locales/pl.esm.js.map +0 -1
  548. package/locales/pl.js.map +0 -1
  549. package/locales/pt-BR.d.ts +0 -2
  550. package/locales/pt-BR.esm.d.ts +0 -2
  551. package/locales/pt-BR.esm.js.map +0 -1
  552. package/locales/pt-BR.js.map +0 -1
  553. package/locales/pt.d.ts +0 -2
  554. package/locales/pt.esm.d.ts +0 -2
  555. package/locales/pt.esm.js.map +0 -1
  556. package/locales/pt.js.map +0 -1
  557. package/locales/ro.d.ts +0 -2
  558. package/locales/ro.esm.d.ts +0 -2
  559. package/locales/ro.esm.js.map +0 -1
  560. package/locales/ro.js.map +0 -1
  561. package/locales/ru.d.ts +0 -2
  562. package/locales/ru.esm.d.ts +0 -2
  563. package/locales/ru.esm.js.map +0 -1
  564. package/locales/ru.js.map +0 -1
  565. package/locales/sk.d.ts +0 -2
  566. package/locales/sk.esm.d.ts +0 -2
  567. package/locales/sk.esm.js.map +0 -1
  568. package/locales/sk.js.map +0 -1
  569. package/locales/sr-Cyrl-RS.d.ts +0 -2
  570. package/locales/sr-Cyrl-RS.esm.d.ts +0 -2
  571. package/locales/sr-Cyrl-RS.esm.js.map +0 -1
  572. package/locales/sr-Cyrl-RS.js.map +0 -1
  573. package/locales/sr-Latn-RS.d.ts +0 -2
  574. package/locales/sr-Latn-RS.esm.d.ts +0 -2
  575. package/locales/sr-Latn-RS.esm.js.map +0 -1
  576. package/locales/sr-Latn-RS.js.map +0 -1
  577. package/locales/sv.d.ts +0 -2
  578. package/locales/sv.esm.d.ts +0 -2
  579. package/locales/sv.esm.js.map +0 -1
  580. package/locales/sv.js.map +0 -1
  581. package/locales/tr.d.ts +0 -2
  582. package/locales/tr.esm.d.ts +0 -2
  583. package/locales/tr.esm.js.map +0 -1
  584. package/locales/tr.js.map +0 -1
  585. package/locales/uk.d.ts +0 -2
  586. package/locales/uk.esm.d.ts +0 -2
  587. package/locales/uk.esm.js.map +0 -1
  588. package/locales/uk.js.map +0 -1
  589. package/locales/vi.d.ts +0 -2
  590. package/locales/vi.esm.d.ts +0 -2
  591. package/locales/vi.esm.js.map +0 -1
  592. package/locales/vi.js.map +0 -1
  593. package/locales/zh-Hans.d.ts +0 -2
  594. package/locales/zh-Hans.esm.d.ts +0 -2
  595. package/locales/zh-Hans.esm.js.map +0 -1
  596. package/locales/zh-Hans.js.map +0 -1
  597. package/locales/zh-Hant.d.ts +0 -2
  598. package/locales/zh-Hant.esm.d.ts +0 -2
  599. package/locales/zh-Hant.esm.js.map +0 -1
  600. package/locales/zh-Hant.js.map +0 -1
@@ -1,4 +1,4 @@
1
- import { type CSSProperties, type ReactNode } from 'react';
1
+ import { type ReactNode } from 'react';
2
2
  import {
3
3
  createRow as _createRow,
4
4
  flexRender as _flexRender,
@@ -6,9 +6,6 @@ import {
6
6
  type Row,
7
7
  } from '@tanstack/react-table';
8
8
  import { type Range, defaultRangeExtractor } from '@tanstack/react-virtual';
9
- import { type TableCellProps } from '@mui/material/TableCell';
10
- import { alpha, lighten } from '@mui/material/styles';
11
- import { type Theme } from '@mui/material/styles';
12
9
  import { type MRT_AggregationFns } from './aggregationFns';
13
10
  import { type MRT_FilterFns } from './filterFns';
14
11
  import { type MRT_SortingFns } from './sortingFns';
@@ -23,7 +20,6 @@ import {
23
20
  type MRT_FilterOption,
24
21
  type MRT_GroupColumnDef,
25
22
  type MRT_GroupingState,
26
- type MRT_Header,
27
23
  type MRT_Row,
28
24
  type MRT_RowData,
29
25
  type MRT_TableInstance,
@@ -171,7 +167,6 @@ export const getLeadingDisplayColumnIds = <TData extends MRT_RowData>(
171
167
  'mrt-row-expand',
172
168
  props.enableRowSelection && 'mrt-row-select',
173
169
  props.enableRowNumbers && 'mrt-row-numbers',
174
- props.layoutMode === 'grid-no-grow' && 'mrt-row-spacer',
175
170
  ].filter(Boolean) as MRT_DisplayColumnIds[];
176
171
 
177
172
  export const getTrailingDisplayColumnIds = <TData extends MRT_RowData>(
@@ -186,6 +181,7 @@ export const getTrailingDisplayColumnIds = <TData extends MRT_RowData>(
186
181
  props.positionExpandColumn === 'last' &&
187
182
  showExpandColumn(props) &&
188
183
  'mrt-row-expand',
184
+ props.layoutMode === 'grid-no-grow' && 'mrt-row-spacer',
189
185
  ].filter(Boolean) as MRT_DisplayColumnIds[];
190
186
 
191
187
  export const getDefaultColumnOrderIds = <TData extends MRT_RowData>(
@@ -288,126 +284,11 @@ export const getCanRankRows = <TData extends MRT_RowData>(
288
284
  );
289
285
  };
290
286
 
291
- export const getCommonCellStyles = <TData extends MRT_RowData>({
292
- column,
293
- header,
294
- table,
295
- tableCellProps,
296
- theme,
297
- }: {
298
- column: MRT_Column<TData>;
299
- header?: MRT_Header<TData>;
300
- table: MRT_TableInstance<TData>;
301
- tableCellProps: TableCellProps;
302
- theme: Theme;
303
- }) => {
304
- const {
305
- options: { layoutMode },
306
- } = table;
307
- const widthStyles: CSSProperties = {
308
- minWidth: `max(calc(var(--${header ? 'header' : 'col'}-${parseCSSVarId(
309
- header?.id ?? column.id,
310
- )}-size) * 1px), ${column.columnDef.minSize ?? 30}px)`,
311
- width: `calc(var(--${header ? 'header' : 'col'}-${parseCSSVarId(
312
- header?.id ?? column.id,
313
- )}-size) * 1px)`,
314
- };
315
-
316
- if (layoutMode === 'grid') {
317
- widthStyles.flex = `var(--${header ? 'header' : 'col'}-${parseCSSVarId(
318
- header?.id ?? column.id,
319
- )}-size) 0 auto`;
320
- } else if (layoutMode === 'grid-no-grow') {
321
- widthStyles.flex = '0 0 auto';
322
- }
323
-
324
- return {
325
- backgroundColor:
326
- column.getIsPinned() && column.columnDef.columnDefType !== 'group'
327
- ? alpha(lighten(theme.palette.background.default, 0.04), 0.97)
328
- : 'inherit',
329
- backgroundImage: 'inherit',
330
- boxShadow: getIsLastLeftPinnedColumn(table, column)
331
- ? `-4px 0 8px -6px ${alpha(theme.palette.common.black, 0.2)} inset`
332
- : getIsFirstRightPinnedColumn(column)
333
- ? `4px 0 8px -6px ${alpha(theme.palette.common.black, 0.2)} inset`
334
- : undefined,
335
- display: layoutMode?.startsWith('grid') ? 'flex' : undefined,
336
- left:
337
- column.getIsPinned() === 'left'
338
- ? `${column.getStart('left')}px`
339
- : undefined,
340
- ml:
341
- table.options.enableColumnVirtualization &&
342
- column.getIsPinned() === 'left' &&
343
- column.getPinnedIndex() === 0
344
- ? `-${
345
- column.getSize() *
346
- (table.getState().columnPinning.left?.length ?? 1)
347
- }px`
348
- : undefined,
349
- mr:
350
- table.options.enableColumnVirtualization &&
351
- column.getIsPinned() === 'right' &&
352
- column.getPinnedIndex() === table.getVisibleLeafColumns().length - 1
353
- ? `-${
354
- column.getSize() *
355
- (table.getState().columnPinning.right?.length ?? 1) *
356
- 1.2
357
- }px`
358
- : undefined,
359
- opacity:
360
- table.getState().draggingColumn?.id === column.id ||
361
- table.getState().hoveredColumn?.id === column.id
362
- ? 0.5
363
- : 1,
364
- position:
365
- column.getIsPinned() && column.columnDef.columnDefType !== 'group'
366
- ? 'sticky'
367
- : undefined,
368
- right:
369
- column.getIsPinned() === 'right'
370
- ? `${getTotalRight(table, column)}px`
371
- : undefined,
372
- transition: table.options.enableColumnVirtualization
373
- ? 'none'
374
- : `padding 150ms ease-in-out`,
375
- ...widthStyles,
376
- // ...(!table.options.enableColumnResizing && widthStyles), //let devs pass in width styles if column resizing is disabled
377
- ...(parseFromValuesOrFunc(tableCellProps?.sx, theme) as any),
378
- // ...(table.options.enableColumnResizing && widthStyles), //don't let devs pass in width styles if column resizing is enabled
379
- };
380
- };
381
-
382
- export const MRT_DefaultColumn = {
383
- filterVariant: 'text',
384
- maxSize: 1000,
385
- minSize: 40,
386
- size: 180,
387
- } as const;
388
-
389
- export const MRT_DefaultDisplayColumn = {
390
- columnDefType: 'display',
391
- enableClickToCopy: false,
392
- enableColumnActions: false,
393
- enableColumnDragging: false,
394
- enableColumnFilter: false,
395
- enableColumnOrdering: false,
396
- enableEditing: false,
397
- enableGlobalFilter: false,
398
- enableGrouping: false,
399
- enableHiding: false,
400
- enableResizing: false,
401
- enableSorting: false,
402
- } as const;
403
-
404
287
  export const parseFromValuesOrFunc = <T, U>(
405
288
  fn: ((arg: U) => T) | T | undefined,
406
289
  arg: U,
407
290
  ): T | undefined => (fn instanceof Function ? fn(arg) : fn);
408
291
 
409
- export const parseCSSVarId = (id: string) => id.replace(/[^a-zA-Z0-9]/g, '_');
410
-
411
292
  export const flexRender = _flexRender as (
412
293
  Comp: Renderable<any>,
413
294
  props: any,
@@ -1,10 +1,10 @@
1
1
  import { type VirtualItem } from '@tanstack/react-virtual';
2
- import TableFooter from '@mui/material/TableFooter';
2
+ import TableFooter, { type TableFooterProps } from '@mui/material/TableFooter';
3
3
  import { MRT_TableFooterRow } from './MRT_TableFooterRow';
4
4
  import { parseFromValuesOrFunc } from '../column.utils';
5
5
  import { type MRT_RowData, type MRT_TableInstance } from '../types';
6
6
 
7
- interface Props<TData extends MRT_RowData> {
7
+ interface Props<TData extends MRT_RowData> extends TableFooterProps {
8
8
  table: MRT_TableInstance<TData>;
9
9
  virtualColumns?: VirtualItem[];
10
10
  virtualPaddingLeft?: number;
@@ -16,6 +16,7 @@ export const MRT_TableFooter = <TData extends MRT_RowData>({
16
16
  virtualColumns,
17
17
  virtualPaddingLeft,
18
18
  virtualPaddingRight,
19
+ ...rest
19
20
  }: Props<TData>) => {
20
21
  const {
21
22
  getFooterGroups,
@@ -25,9 +26,12 @@ export const MRT_TableFooter = <TData extends MRT_RowData>({
25
26
  } = table;
26
27
  const { isFullScreen } = getState();
27
28
 
28
- const tableFooterProps = parseFromValuesOrFunc(muiTableFooterProps, {
29
- table,
30
- });
29
+ const tableFooterProps = {
30
+ ...parseFromValuesOrFunc(muiTableFooterProps, {
31
+ table,
32
+ }),
33
+ ...rest,
34
+ };
31
35
 
32
36
  const stickFooter =
33
37
  (isFullScreen || enableStickyFooter) && enableStickyFooter !== false;
@@ -1,12 +1,13 @@
1
- import TableCell from '@mui/material/TableCell';
2
- import { getCommonCellStyles, parseFromValuesOrFunc } from '../column.utils';
1
+ import TableCell, { type TableCellProps } from '@mui/material/TableCell';
2
+ import { parseFromValuesOrFunc } from '../column.utils';
3
+ import { getCommonMRTCellStyles } from '../style.utils';
3
4
  import {
4
5
  type MRT_Header,
5
6
  type MRT_RowData,
6
7
  type MRT_TableInstance,
7
8
  } from '../types';
8
9
 
9
- interface Props<TData extends MRT_RowData> {
10
+ interface Props<TData extends MRT_RowData> extends TableCellProps {
10
11
  footer: MRT_Header<TData>;
11
12
  table: MRT_TableInstance<TData>;
12
13
  }
@@ -14,6 +15,7 @@ interface Props<TData extends MRT_RowData> {
14
15
  export const MRT_TableFooterCell = <TData extends MRT_RowData>({
15
16
  footer,
16
17
  table,
18
+ ...rest
17
19
  }: Props<TData>) => {
18
20
  const {
19
21
  getState,
@@ -24,12 +26,11 @@ export const MRT_TableFooterCell = <TData extends MRT_RowData>({
24
26
  const { columnDef } = column;
25
27
  const { columnDefType } = columnDef;
26
28
 
29
+ const args = { column, table };
27
30
  const tableCellProps = {
28
- ...parseFromValuesOrFunc(muiTableFooterCellProps, { column, table }),
29
- ...parseFromValuesOrFunc(columnDef.muiTableFooterCellProps, {
30
- column,
31
- table,
32
- }),
31
+ ...parseFromValuesOrFunc(muiTableFooterCellProps, args),
32
+ ...parseFromValuesOrFunc(columnDef.muiTableFooterCellProps, args),
33
+ ...rest,
33
34
  };
34
35
 
35
36
  return (
@@ -39,7 +40,7 @@ export const MRT_TableFooterCell = <TData extends MRT_RowData>({
39
40
  variant="head"
40
41
  {...tableCellProps}
41
42
  sx={(theme) => ({
42
- display: layoutMode?.startsWith('grid') ? 'grid' : 'table-cell',
43
+ display: layoutMode?.startsWith('grid') ? 'grid' : undefined,
43
44
  fontWeight: 'bold',
44
45
  justifyContent: columnDefType === 'group' ? 'center' : undefined,
45
46
  p:
@@ -50,16 +51,17 @@ export const MRT_TableFooterCell = <TData extends MRT_RowData>({
50
51
  : '1.5rem',
51
52
  verticalAlign: 'top',
52
53
  zIndex: column.getIsPinned() && columnDefType !== 'group' ? 2 : 1,
53
- ...getCommonCellStyles({
54
+ ...getCommonMRTCellStyles({
54
55
  column,
55
56
  table,
56
57
  tableCellProps,
57
58
  theme,
58
59
  }),
60
+ ...(parseFromValuesOrFunc(tableCellProps?.sx, theme) as any),
59
61
  })}
60
62
  >
61
- <>
62
- {footer.isPlaceholder
63
+ {tableCellProps.children ??
64
+ (footer.isPlaceholder
63
65
  ? null
64
66
  : parseFromValuesOrFunc(columnDef.Footer, {
65
67
  column,
@@ -67,8 +69,7 @@ export const MRT_TableFooterCell = <TData extends MRT_RowData>({
67
69
  table,
68
70
  }) ??
69
71
  columnDef.footer ??
70
- null}
71
- </>
72
+ null)}
72
73
  </TableCell>
73
74
  );
74
75
  };
@@ -1,8 +1,8 @@
1
1
  import { type VirtualItem } from '@tanstack/react-virtual';
2
- import TableRow from '@mui/material/TableRow';
3
- import { lighten } from '@mui/material/styles';
2
+ import TableRow, { type TableRowProps } from '@mui/material/TableRow';
4
3
  import { MRT_TableFooterCell } from './MRT_TableFooterCell';
5
4
  import { parseFromValuesOrFunc } from '../column.utils';
5
+ import { getMRTTheme } from '../style.utils';
6
6
  import {
7
7
  type MRT_Header,
8
8
  type MRT_HeaderGroup,
@@ -10,7 +10,7 @@ import {
10
10
  type MRT_TableInstance,
11
11
  } from '../types';
12
12
 
13
- interface Props<TData extends MRT_RowData> {
13
+ interface Props<TData extends MRT_RowData> extends TableRowProps {
14
14
  footerGroup: MRT_HeaderGroup<TData>;
15
15
  table: MRT_TableInstance<TData>;
16
16
  virtualColumns?: VirtualItem[];
@@ -24,6 +24,7 @@ export const MRT_TableFooterRow = <TData extends MRT_RowData>({
24
24
  virtualColumns,
25
25
  virtualPaddingLeft,
26
26
  virtualPaddingRight,
27
+ ...rest
27
28
  }: Props<TData>) => {
28
29
  const {
29
30
  options: { layoutMode, muiTableFooterRowProps },
@@ -40,16 +41,19 @@ export const MRT_TableFooterRow = <TData extends MRT_RowData>({
40
41
  )
41
42
  return null;
42
43
 
43
- const tableRowProps = parseFromValuesOrFunc(muiTableFooterRowProps, {
44
- footerGroup,
45
- table,
46
- });
44
+ const tableRowProps = {
45
+ ...parseFromValuesOrFunc(muiTableFooterRowProps, {
46
+ footerGroup,
47
+ table,
48
+ }),
49
+ ...rest,
50
+ };
47
51
 
48
52
  return (
49
53
  <TableRow
50
54
  {...tableRowProps}
51
55
  sx={(theme) => ({
52
- backgroundColor: lighten(theme.palette.background.default, 0.05),
56
+ backgroundColor: getMRTTheme(table, theme).baseBackgroundColor,
53
57
  display: layoutMode?.startsWith('grid') ? 'flex' : undefined,
54
58
  width: '100%',
55
59
  ...(parseFromValuesOrFunc(tableRowProps?.sx, theme) as any),
@@ -1,11 +1,11 @@
1
1
  import { type VirtualItem } from '@tanstack/react-virtual';
2
- import TableHead from '@mui/material/TableHead';
2
+ import TableHead, { type TableHeadProps } from '@mui/material/TableHead';
3
3
  import { MRT_TableHeadRow } from './MRT_TableHeadRow';
4
4
  import { parseFromValuesOrFunc } from '../column.utils';
5
5
  import { MRT_ToolbarAlertBanner } from '../toolbar';
6
6
  import { type MRT_RowData, type MRT_TableInstance } from '../types';
7
7
 
8
- interface Props<TData extends MRT_RowData> {
8
+ interface Props<TData extends MRT_RowData> extends TableHeadProps {
9
9
  table: MRT_TableInstance<TData>;
10
10
  virtualColumns?: VirtualItem[];
11
11
  virtualPaddingLeft?: number;
@@ -17,6 +17,7 @@ export const MRT_TableHead = <TData extends MRT_RowData>({
17
17
  virtualColumns,
18
18
  virtualPaddingLeft,
19
19
  virtualPaddingRight,
20
+ ...rest
20
21
  }: Props<TData>) => {
21
22
  const {
22
23
  getHeaderGroups,
@@ -32,7 +33,10 @@ export const MRT_TableHead = <TData extends MRT_RowData>({
32
33
  } = table;
33
34
  const { isFullScreen, showAlertBanner } = getState();
34
35
 
35
- const tableHeadProps = parseFromValuesOrFunc(muiTableHeadProps, { table });
36
+ const tableHeadProps = {
37
+ ...parseFromValuesOrFunc(muiTableHeadProps, { table }),
38
+ ...rest,
39
+ };
36
40
 
37
41
  const stickyHeader = enableStickyHeader || isFullScreen;
38
42
 
@@ -65,7 +69,7 @@ export const MRT_TableHead = <TData extends MRT_RowData>({
65
69
  <th
66
70
  colSpan={table.getVisibleLeafColumns().length}
67
71
  style={{
68
- display: layoutMode?.startsWith('grid') ? 'grid' : 'table-cell',
72
+ display: layoutMode?.startsWith('grid') ? 'grid' : undefined,
69
73
  padding: 0,
70
74
  }}
71
75
  >
@@ -1,6 +1,6 @@
1
1
  import { type DragEvent, useMemo } from 'react';
2
2
  import Box from '@mui/material/Box';
3
- import TableCell from '@mui/material/TableCell';
3
+ import TableCell, { type TableCellProps } from '@mui/material/TableCell';
4
4
  import { useTheme } from '@mui/material/styles';
5
5
  import { type Theme } from '@mui/material/styles';
6
6
  import { MRT_TableHeadCellColumnActionsButton } from './MRT_TableHeadCellColumnActionsButton';
@@ -9,15 +9,15 @@ import { MRT_TableHeadCellFilterLabel } from './MRT_TableHeadCellFilterLabel';
9
9
  import { MRT_TableHeadCellGrabHandle } from './MRT_TableHeadCellGrabHandle';
10
10
  import { MRT_TableHeadCellResizeHandle } from './MRT_TableHeadCellResizeHandle';
11
11
  import { MRT_TableHeadCellSortLabel } from './MRT_TableHeadCellSortLabel';
12
- import { getCommonCellStyles } from '../column.utils';
13
12
  import { parseFromValuesOrFunc } from '../column.utils';
13
+ import { getCommonMRTCellStyles, getMRTTheme } from '../style.utils';
14
14
  import {
15
15
  type MRT_Header,
16
16
  type MRT_RowData,
17
17
  type MRT_TableInstance,
18
18
  } from '../types';
19
19
 
20
- interface Props<TData extends MRT_RowData> {
20
+ interface Props<TData extends MRT_RowData> extends TableCellProps {
21
21
  header: MRT_Header<TData>;
22
22
  table: MRT_TableInstance<TData>;
23
23
  }
@@ -25,6 +25,7 @@ interface Props<TData extends MRT_RowData> {
25
25
  export const MRT_TableHeadCell = <TData extends MRT_RowData>({
26
26
  header,
27
27
  table,
28
+ ...rest
28
29
  }: Props<TData>) => {
29
30
  const theme = useTheme();
30
31
  const {
@@ -60,8 +61,11 @@ export const MRT_TableHeadCell = <TData extends MRT_RowData>({
60
61
  column,
61
62
  table,
62
63
  }),
64
+ ...rest,
63
65
  };
64
66
 
67
+ const { draggingBorderColor } = getMRTTheme(table, theme);
68
+
65
69
  const showColumnActions =
66
70
  (enableColumnActions || columnDef.enableColumnActions) &&
67
71
  columnDef.enableColumnActions !== false;
@@ -87,11 +91,11 @@ export const MRT_TableHeadCell = <TData extends MRT_RowData>({
87
91
  const borderStyle =
88
92
  columnSizingInfo.isResizingColumn === column.id &&
89
93
  !header.subHeaders.length
90
- ? `2px solid ${theme.palette.primary.main} !important`
94
+ ? `2px solid ${draggingBorderColor} !important`
91
95
  : draggingColumn?.id === column.id
92
- ? `1px dashed ${theme.palette.text.secondary}`
96
+ ? `1px dashed ${theme.palette.grey[500]}`
93
97
  : hoveredColumn?.id === column.id
94
- ? `2px dashed ${theme.palette.primary.main}`
98
+ ? `2px dashed ${draggingBorderColor}`
95
99
  : undefined;
96
100
 
97
101
  if (columnSizingInfo.isResizingColumn === column.id) {
@@ -176,7 +180,7 @@ export const MRT_TableHeadCell = <TData extends MRT_RowData>({
176
180
  : column.getIsPinned() && columnDefType !== 'group'
177
181
  ? 2
178
182
  : 1,
179
- ...getCommonCellStyles({
183
+ ...getCommonMRTCellStyles({
180
184
  column,
181
185
  header,
182
186
  table,
@@ -186,97 +190,100 @@ export const MRT_TableHeadCell = <TData extends MRT_RowData>({
186
190
  ...draggingBorders,
187
191
  })}
188
192
  >
189
- {header.isPlaceholder || column.id === 'mrt-row-spacer' ? null : (
190
- <Box
191
- className="Mui-TableHeadCell-Content"
192
- sx={{
193
- alignItems: 'center',
194
- display: 'flex',
195
- flexDirection:
196
- tableCellProps?.align === 'right' ? 'row-reverse' : 'row',
197
- justifyContent:
198
- columnDefType === 'group' || tableCellProps?.align === 'center'
199
- ? 'center'
200
- : column.getCanResize()
201
- ? 'space-between'
202
- : 'flex-start',
203
- position: 'relative',
204
- width: '100%',
205
- }}
206
- >
207
- <Box
208
- className="Mui-TableHeadCell-Content-Labels"
209
- onClick={column.getToggleSortingHandler()}
210
- sx={{
211
- alignItems: 'center',
212
- cursor:
213
- column.getCanSort() && columnDefType !== 'group'
214
- ? 'pointer'
215
- : undefined,
216
- display: 'flex',
217
- flexDirection:
218
- tableCellProps?.align === 'right' ? 'row-reverse' : 'row',
219
- overflow: columnDefType === 'data' ? 'hidden' : undefined,
220
- pl:
221
- tableCellProps?.align === 'center'
222
- ? `${headerPL}rem`
223
- : undefined,
224
- }}
225
- >
193
+ {header.isPlaceholder
194
+ ? null
195
+ : tableCellProps.children ?? (
226
196
  <Box
227
- className="Mui-TableHeadCell-Content-Wrapper"
197
+ className="Mui-TableHeadCell-Content"
228
198
  sx={{
229
- '&:hover': {
230
- textOverflow: 'clip',
231
- },
232
- minWidth: `${Math.min(columnDef.header?.length ?? 0, 4)}ch`,
233
- overflow: columnDefType === 'data' ? 'hidden' : undefined,
234
- textOverflow: 'ellipsis',
235
- whiteSpace:
236
- (columnDef.header?.length ?? 0) < 20 ? 'nowrap' : 'normal',
199
+ alignItems: 'center',
200
+ display: 'flex',
201
+ flexDirection:
202
+ tableCellProps?.align === 'right' ? 'row-reverse' : 'row',
203
+ justifyContent:
204
+ columnDefType === 'group' ||
205
+ tableCellProps?.align === 'center'
206
+ ? 'center'
207
+ : column.getCanResize()
208
+ ? 'space-between'
209
+ : 'flex-start',
210
+ position: 'relative',
211
+ width: '100%',
237
212
  }}
238
- title={columnDefType === 'data' ? columnDef.header : undefined}
239
- >
240
- {headerElement}
241
- </Box>
242
- {column.getCanFilter() && (
243
- <MRT_TableHeadCellFilterLabel header={header} table={table} />
244
- )}
245
- {column.getCanSort() && (
246
- <MRT_TableHeadCellSortLabel
247
- header={header}
248
- table={table}
249
- tableCellProps={tableCellProps}
250
- />
251
- )}
252
- </Box>
253
- {columnDefType !== 'group' && (
254
- <Box
255
- className="Mui-TableHeadCell-Content-Actions"
256
- sx={{ whiteSpace: 'nowrap' }}
257
213
  >
258
- {showDragHandle && (
259
- <MRT_TableHeadCellGrabHandle
260
- column={column}
261
- table={table}
262
- tableHeadCellRef={{
263
- current: tableHeadCellRefs.current[column.id],
214
+ <Box
215
+ className="Mui-TableHeadCell-Content-Labels"
216
+ onClick={column.getToggleSortingHandler()}
217
+ sx={{
218
+ alignItems: 'center',
219
+ cursor:
220
+ column.getCanSort() && columnDefType !== 'group'
221
+ ? 'pointer'
222
+ : undefined,
223
+ display: 'flex',
224
+ flexDirection:
225
+ tableCellProps?.align === 'right' ? 'row-reverse' : 'row',
226
+ overflow: columnDefType === 'data' ? 'hidden' : undefined,
227
+ pl:
228
+ tableCellProps?.align === 'center'
229
+ ? `${headerPL}rem`
230
+ : undefined,
231
+ }}
232
+ >
233
+ <Box
234
+ className="Mui-TableHeadCell-Content-Wrapper"
235
+ sx={{
236
+ '&:hover': {
237
+ textOverflow: 'clip',
238
+ },
239
+ minWidth: `${Math.min(columnDef.header?.length ?? 0, 4)}ch`,
240
+ overflow: columnDefType === 'data' ? 'hidden' : undefined,
241
+ textOverflow: 'ellipsis',
242
+ whiteSpace:
243
+ (columnDef.header?.length ?? 0) < 20
244
+ ? 'nowrap'
245
+ : 'normal',
264
246
  }}
265
- />
247
+ title={
248
+ columnDefType === 'data' ? columnDef.header : undefined
249
+ }
250
+ >
251
+ {headerElement}
252
+ </Box>
253
+ {column.getCanFilter() && (
254
+ <MRT_TableHeadCellFilterLabel header={header} table={table} />
255
+ )}
256
+ {column.getCanSort() && (
257
+ <MRT_TableHeadCellSortLabel header={header} table={table} />
258
+ )}
259
+ </Box>
260
+ {columnDefType !== 'group' && (
261
+ <Box
262
+ className="Mui-TableHeadCell-Content-Actions"
263
+ sx={{ whiteSpace: 'nowrap' }}
264
+ >
265
+ {showDragHandle && (
266
+ <MRT_TableHeadCellGrabHandle
267
+ column={column}
268
+ table={table}
269
+ tableHeadCellRef={{
270
+ current: tableHeadCellRefs.current[column.id],
271
+ }}
272
+ />
273
+ )}
274
+ {showColumnActions && (
275
+ <MRT_TableHeadCellColumnActionsButton
276
+ header={header}
277
+ table={table}
278
+ />
279
+ )}
280
+ </Box>
266
281
  )}
267
- {showColumnActions && (
268
- <MRT_TableHeadCellColumnActionsButton
269
- header={header}
270
- table={table}
271
- />
282
+ {column.getCanResize() && (
283
+ <MRT_TableHeadCellResizeHandle header={header} table={table} />
272
284
  )}
273
285
  </Box>
274
286
  )}
275
- {column.getCanResize() && (
276
- <MRT_TableHeadCellResizeHandle header={header} table={table} />
277
- )}
278
- </Box>
279
- )}
280
287
  {columnFilterDisplayMode === 'subheader' && column.getCanFilter() && (
281
288
  <MRT_TableHeadCellFilterContainer header={header} table={table} />
282
289
  )}
@@ -1,5 +1,5 @@
1
1
  import { type MouseEvent, useState } from 'react';
2
- import IconButton from '@mui/material/IconButton';
2
+ import IconButton, { type IconButtonProps } from '@mui/material/IconButton';
3
3
  import Tooltip from '@mui/material/Tooltip';
4
4
  import { parseFromValuesOrFunc } from '../column.utils';
5
5
  import { MRT_ColumnActionMenu } from '../menus/MRT_ColumnActionMenu';
@@ -9,7 +9,7 @@ import {
9
9
  type MRT_TableInstance,
10
10
  } from '../types';
11
11
 
12
- interface Props<TData extends MRT_RowData> {
12
+ interface Props<TData extends MRT_RowData> extends IconButtonProps {
13
13
  header: MRT_Header<TData>;
14
14
  table: MRT_TableInstance<TData>;
15
15
  }
@@ -19,10 +19,10 @@ export const MRT_TableHeadCellColumnActionsButton = <
19
19
  >({
20
20
  header,
21
21
  table,
22
+ ...rest
22
23
  }: Props<TData>) => {
23
24
  const {
24
25
  options: {
25
- columnFilterDisplayMode,
26
26
  icons: { MoreVertIcon },
27
27
  localization,
28
28
  muiColumnActionsButtonProps,
@@ -48,6 +48,7 @@ export const MRT_TableHeadCellColumnActionsButton = <
48
48
  column,
49
49
  table,
50
50
  }),
51
+ ...rest,
51
52
  };
52
53
 
53
54
  return (
@@ -69,18 +70,15 @@ export const MRT_TableHeadCellColumnActionsButton = <
69
70
  opacity: 1,
70
71
  },
71
72
  height: '2rem',
72
- m: '-4px',
73
+ m: '-8px -4px',
73
74
  opacity: 0.3,
74
- transform: `scale(0.85) ${
75
- columnFilterDisplayMode !== 'popover' ? 'translateX(-4px)' : ''
76
- }`,
77
- transition: 'opacity 150ms',
75
+ transition: 'all 150ms',
78
76
  width: '2rem',
79
77
  ...(parseFromValuesOrFunc(iconButtonProps?.sx, theme) as any),
80
78
  })}
81
79
  title={undefined}
82
80
  >
83
- <MoreVertIcon />
81
+ <MoreVertIcon style={{ transform: 'scale(0.9)' }} />
84
82
  </IconButton>
85
83
  </Tooltip>
86
84
  {anchorEl && (