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
@@ -1,20 +1,23 @@
1
- import Collapse from '@mui/material/Collapse';
1
+ import Collapse, { type CollapseProps } from '@mui/material/Collapse';
2
2
  import { MRT_FilterCheckbox } from '../inputs/MRT_FilterCheckbox';
3
3
  import { MRT_FilterRangeFields } from '../inputs/MRT_FilterRangeFields';
4
4
  import { MRT_FilterRangeSlider } from '../inputs/MRT_FilterRangeSlider';
5
5
  import { MRT_FilterTextField } from '../inputs/MRT_FilterTextField';
6
- import { type MRT_Header, type MRT_TableInstance } from '../types';
6
+ import {
7
+ type MRT_Header,
8
+ type MRT_RowData,
9
+ type MRT_TableInstance,
10
+ } from '../types';
7
11
 
8
- interface Props<TData extends Record<string, any>> {
12
+ interface Props<TData extends MRT_RowData> extends CollapseProps {
9
13
  header: MRT_Header<TData>;
10
14
  table: MRT_TableInstance<TData>;
11
15
  }
12
16
 
13
- export const MRT_TableHeadCellFilterContainer = <
14
- TData extends Record<string, any>,
15
- >({
17
+ export const MRT_TableHeadCellFilterContainer = <TData extends MRT_RowData>({
16
18
  header,
17
19
  table,
20
+ ...rest
18
21
  }: Props<TData>) => {
19
22
  const {
20
23
  getState,
@@ -29,6 +32,7 @@ export const MRT_TableHeadCellFilterContainer = <
29
32
  in={showColumnFilters || columnFilterDisplayMode === 'popover'}
30
33
  mountOnEnter
31
34
  unmountOnExit
35
+ {...rest}
32
36
  >
33
37
  {columnDef.filterVariant === 'checkbox' ? (
34
38
  <MRT_FilterCheckbox column={column} table={table} />
@@ -1,22 +1,26 @@
1
1
  import { type MouseEvent, useState } from 'react';
2
2
  import Box from '@mui/material/Box';
3
3
  import Grow from '@mui/material/Grow';
4
- import IconButton from '@mui/material/IconButton';
4
+ import IconButton, { type IconButtonProps } from '@mui/material/IconButton';
5
5
  import Popover from '@mui/material/Popover';
6
6
  import Tooltip from '@mui/material/Tooltip';
7
7
  import { MRT_TableHeadCellFilterContainer } from './MRT_TableHeadCellFilterContainer';
8
- import { type MRT_Header, type MRT_TableInstance } from '../types';
8
+ import { parseFromValuesOrFunc } from '../column.utils';
9
+ import {
10
+ type MRT_Header,
11
+ type MRT_RowData,
12
+ type MRT_TableInstance,
13
+ } from '../types';
9
14
 
10
- interface Props<TData extends Record<string, any>> {
15
+ interface Props<TData extends MRT_RowData> extends IconButtonProps {
11
16
  header: MRT_Header<TData>;
12
17
  table: MRT_TableInstance<TData>;
13
18
  }
14
19
 
15
- export const MRT_TableHeadCellFilterLabel = <
16
- TData extends Record<string, any> = {},
17
- >({
20
+ export const MRT_TableHeadCellFilterLabel = <TData extends MRT_RowData = {}>({
18
21
  header,
19
22
  table,
23
+ ...rest
20
24
  }: Props<TData>) => {
21
25
  const {
22
26
  options: {
@@ -88,7 +92,7 @@ export const MRT_TableHeadCellFilterLabel = <
88
92
  unmountOnExit
89
93
  >
90
94
  <Box component="span" sx={{ flex: '0 0' }}>
91
- <Tooltip arrow placement="top" title={filterTooltip}>
95
+ <Tooltip placement="top" title={filterTooltip}>
92
96
  <IconButton
93
97
  disableRipple
94
98
  onClick={(event: MouseEvent<HTMLButtonElement>) => {
@@ -104,7 +108,8 @@ export const MRT_TableHeadCellFilterLabel = <
104
108
  event.stopPropagation();
105
109
  }}
106
110
  size="small"
107
- sx={{
111
+ {...rest}
112
+ sx={(theme) => ({
108
113
  height: '16px',
109
114
  ml: '4px',
110
115
  opacity: isFilterActive ? 1 : 0.3,
@@ -112,7 +117,8 @@ export const MRT_TableHeadCellFilterLabel = <
112
117
  transform: 'scale(0.75)',
113
118
  transition: 'all 150ms ease-in-out',
114
119
  width: '16px',
115
- }}
120
+ ...(parseFromValuesOrFunc(rest?.sx, theme) as any),
121
+ })}
116
122
  >
117
123
  <FilterAltIcon />
118
124
  </IconButton>
@@ -1,18 +1,24 @@
1
1
  import { type DragEvent, type RefObject } from 'react';
2
+ import { type IconButtonProps } from '@mui/material/IconButton';
2
3
  import { MRT_GrabHandleButton } from '../buttons/MRT_GrabHandleButton';
3
4
  import { parseFromValuesOrFunc, reorderColumn } from '../column.utils';
4
- import { type MRT_Column, type MRT_TableInstance } from '../types';
5
+ import {
6
+ type MRT_Column,
7
+ type MRT_RowData,
8
+ type MRT_TableInstance,
9
+ } from '../types';
5
10
 
6
- interface Props<TData extends Record<string, any>> {
11
+ interface Props<TData extends MRT_RowData> extends IconButtonProps {
7
12
  column: MRT_Column<TData>;
8
13
  table: MRT_TableInstance<TData>;
9
14
  tableHeadCellRef: RefObject<HTMLTableCellElement>;
10
15
  }
11
16
 
12
- export const MRT_TableHeadCellGrabHandle = <TData extends Record<string, any>>({
17
+ export const MRT_TableHeadCellGrabHandle = <TData extends MRT_RowData>({
13
18
  column,
14
19
  table,
15
20
  tableHeadCellRef,
21
+ ...rest
16
22
  }: Props<TData>) => {
17
23
  const {
18
24
  getState,
@@ -30,6 +36,7 @@ export const MRT_TableHeadCellGrabHandle = <TData extends Record<string, any>>({
30
36
  column,
31
37
  table,
32
38
  }),
39
+ ...rest,
33
40
  };
34
41
 
35
42
  const handleDragStart = (event: DragEvent<HTMLButtonElement>) => {
@@ -1,17 +1,21 @@
1
1
  import Box from '@mui/material/Box';
2
- import Divider from '@mui/material/Divider';
3
- import { type MRT_Header, type MRT_TableInstance } from '../types';
2
+ import Divider, { type DividerProps } from '@mui/material/Divider';
3
+ import { parseFromValuesOrFunc } from '../column.utils';
4
+ import {
5
+ type MRT_Header,
6
+ type MRT_RowData,
7
+ type MRT_TableInstance,
8
+ } from '../types';
4
9
 
5
- interface Props<TData extends Record<string, any>> {
10
+ interface Props<TData extends MRT_RowData> extends DividerProps {
6
11
  header: MRT_Header<TData>;
7
12
  table: MRT_TableInstance<TData>;
8
13
  }
9
14
 
10
- export const MRT_TableHeadCellResizeHandle = <
11
- TData extends Record<string, any>,
12
- >({
15
+ export const MRT_TableHeadCellResizeHandle = <TData extends MRT_RowData>({
13
16
  header,
14
17
  table,
18
+ ...rest
15
19
  }: Props<TData>) => {
16
20
  const {
17
21
  getState,
@@ -53,14 +57,14 @@ export const MRT_TableHeadCellResizeHandle = <
53
57
  : '-28px',
54
58
  position: 'absolute',
55
59
  px: '4px',
56
- right: '0',
60
+ right: column.columnDef.columnDefType === 'display' ? '4px' : '0',
57
61
  })}
58
62
  >
59
63
  <Divider
60
64
  className="Mui-TableHeadCell-ResizeHandle-Divider"
61
65
  flexItem
62
66
  orientation="vertical"
63
- sx={{
67
+ sx={(theme) => ({
64
68
  borderRadius: '2px',
65
69
  borderWidth: '2px',
66
70
  height: '24px',
@@ -70,7 +74,8 @@ export const MRT_TableHeadCellResizeHandle = <
70
74
  : 'all 150ms ease-in-out',
71
75
  userSelect: 'none',
72
76
  zIndex: 4,
73
- }}
77
+ ...(parseFromValuesOrFunc(rest?.sx, theme) as any),
78
+ })}
74
79
  />
75
80
  </Box>
76
81
  );
@@ -1,18 +1,24 @@
1
1
  import Badge from '@mui/material/Badge';
2
- import { type TableCellProps } from '@mui/material/TableCell';
3
- import TableSortLabel from '@mui/material/TableSortLabel';
2
+ import TableSortLabel, {
3
+ type TableSortLabelProps,
4
+ } from '@mui/material/TableSortLabel';
4
5
  import Tooltip from '@mui/material/Tooltip';
5
- import { type MRT_Header, type MRT_TableInstance } from '../types';
6
+ import { parseFromValuesOrFunc } from '../column.utils';
7
+ import {
8
+ type MRT_Header,
9
+ type MRT_RowData,
10
+ type MRT_TableInstance,
11
+ } from '../types';
6
12
 
7
- interface Props<TData extends Record<string, any>> {
13
+ interface Props<TData extends MRT_RowData> extends TableSortLabelProps {
8
14
  header: MRT_Header<TData>;
9
15
  table: MRT_TableInstance<TData>;
10
- tableCellProps?: TableCellProps;
11
16
  }
12
17
 
13
- export const MRT_TableHeadCellSortLabel = <TData extends Record<string, any>>({
18
+ export const MRT_TableHeadCellSortLabel = <TData extends MRT_RowData>({
14
19
  header,
15
20
  table,
21
+ ...rest
16
22
  }: Props<TData>) => {
17
23
  const {
18
24
  getState,
@@ -23,20 +29,23 @@ export const MRT_TableHeadCellSortLabel = <TData extends Record<string, any>>({
23
29
  } = table;
24
30
  const { column } = header;
25
31
  const { columnDef } = column;
26
- const { sorting } = getState();
32
+ const { isLoading, showSkeletons, sorting } = getState();
27
33
 
28
34
  const isSorted = !!column.getIsSorted();
29
35
 
30
- const sortTooltip = column.getIsSorted()
31
- ? column.getIsSorted() === 'desc'
32
- ? localization.sortedByColumnDesc.replace('{column}', columnDef.header)
33
- : localization.sortedByColumnAsc.replace('{column}', columnDef.header)
34
- : column.getNextSortingOrder() === 'desc'
35
- ? localization.sortByColumnDesc.replace('{column}', columnDef.header)
36
- : localization.sortByColumnAsc.replace('{column}', columnDef.header);
36
+ const sortTooltip =
37
+ isLoading || showSkeletons
38
+ ? ''
39
+ : column.getIsSorted()
40
+ ? column.getIsSorted() === 'desc'
41
+ ? localization.sortedByColumnDesc.replace('{column}', columnDef.header)
42
+ : localization.sortedByColumnAsc.replace('{column}', columnDef.header)
43
+ : column.getNextSortingOrder() === 'desc'
44
+ ? localization.sortByColumnDesc.replace('{column}', columnDef.header)
45
+ : localization.sortByColumnAsc.replace('{column}', columnDef.header);
37
46
 
38
47
  return (
39
- <Tooltip arrow placement="top" title={sortTooltip}>
48
+ <Tooltip placement="top" title={sortTooltip}>
40
49
  <Badge
41
50
  badgeContent={sorting.length > 1 ? column.getSortIndex() + 1 : 0}
42
51
  overlap="circular"
@@ -47,7 +56,9 @@ export const MRT_TableHeadCellSortLabel = <TData extends Record<string, any>>({
47
56
  ? (props) => (
48
57
  <SyncAltIcon
49
58
  {...props}
50
- style={{ transform: 'rotate(-90deg) scaleX(0.8)' }}
59
+ style={{
60
+ transform: 'rotate(-90deg) scaleX(0.9) translateX(-1px)',
61
+ }}
51
62
  />
52
63
  )
53
64
  : ArrowDownwardIcon
@@ -61,12 +72,21 @@ export const MRT_TableHeadCellSortLabel = <TData extends Record<string, any>>({
61
72
  e.stopPropagation();
62
73
  header.column.getToggleSortingHandler()?.(e);
63
74
  }}
64
- sx={{
75
+ {...rest}
76
+ sx={(theme) => ({
77
+ '.MuiTableSortLabel-icon': {
78
+ color: `${
79
+ theme.palette.mode === 'dark'
80
+ ? theme.palette.text.primary
81
+ : theme.palette.text.secondary
82
+ } !important`,
83
+ },
65
84
  flex: '0 0',
66
85
  opacity: isSorted ? 1 : 0.3,
67
86
  transition: 'all 150ms ease-in-out',
68
87
  width: '3ch',
69
- }}
88
+ ...(parseFromValuesOrFunc(rest?.sx, theme) as any),
89
+ })}
70
90
  />
71
91
  </Badge>
72
92
  </Tooltip>
@@ -1,15 +1,17 @@
1
1
  import { type VirtualItem } from '@tanstack/react-virtual';
2
- import TableRow from '@mui/material/TableRow';
3
- import { alpha, lighten } from '@mui/material/styles';
2
+ import { alpha } from '@mui/material';
3
+ import TableRow, { type TableRowProps } from '@mui/material/TableRow';
4
4
  import { MRT_TableHeadCell } from './MRT_TableHeadCell';
5
5
  import { parseFromValuesOrFunc } from '../column.utils';
6
+ import { getMRTTheme } from '../style.utils';
6
7
  import {
7
8
  type MRT_Header,
8
9
  type MRT_HeaderGroup,
10
+ type MRT_RowData,
9
11
  type MRT_TableInstance,
10
12
  } from '../types';
11
13
 
12
- interface Props<TData extends Record<string, any>> {
14
+ interface Props<TData extends MRT_RowData> extends TableRowProps {
13
15
  headerGroup: MRT_HeaderGroup<TData>;
14
16
  table: MRT_TableInstance<TData>;
15
17
  virtualColumns?: VirtualItem[];
@@ -17,27 +19,31 @@ interface Props<TData extends Record<string, any>> {
17
19
  virtualPaddingRight?: number;
18
20
  }
19
21
 
20
- export const MRT_TableHeadRow = <TData extends Record<string, any>>({
22
+ export const MRT_TableHeadRow = <TData extends MRT_RowData>({
21
23
  headerGroup,
22
24
  table,
23
25
  virtualColumns,
24
26
  virtualPaddingLeft,
25
27
  virtualPaddingRight,
28
+ ...rest
26
29
  }: Props<TData>) => {
27
30
  const {
28
31
  options: { layoutMode, muiTableHeadRowProps },
29
32
  } = table;
30
33
 
31
- const tableRowProps = parseFromValuesOrFunc(muiTableHeadRowProps, {
32
- headerGroup,
33
- table,
34
- });
34
+ const tableRowProps = {
35
+ ...parseFromValuesOrFunc(muiTableHeadRowProps, {
36
+ headerGroup,
37
+ table,
38
+ }),
39
+ rest,
40
+ };
35
41
 
36
42
  return (
37
43
  <TableRow
38
44
  {...tableRowProps}
39
45
  sx={(theme) => ({
40
- backgroundColor: lighten(theme.palette.background.default, 0.05),
46
+ backgroundColor: getMRTTheme(table, theme).baseBackgroundColor,
41
47
  boxShadow: `4px 0 8px ${alpha(theme.palette.common.black, 0.1)}`,
42
48
  display: layoutMode?.startsWith('grid') ? 'flex' : undefined,
43
49
  top: 0,
@@ -12,9 +12,12 @@ import {
12
12
  type MRT_DefinedTableOptions,
13
13
  type MRT_GroupingState,
14
14
  type MRT_Row,
15
+ type MRT_RowData,
15
16
  } from '../types';
17
+ import { MRT_DefaultDisplayColumn } from './useMRT_TableOptions';
16
18
 
17
19
  const blankColProps = {
20
+ children: null,
18
21
  sx: {
19
22
  flex: '1 0 auto',
20
23
  minWidth: 0,
@@ -23,14 +26,14 @@ const blankColProps = {
23
26
  },
24
27
  };
25
28
 
26
- interface Params<TData extends Record<string, any>> {
29
+ interface Params<TData extends MRT_RowData> {
27
30
  columnOrder: MRT_ColumnOrderState;
28
31
  creatingRow: MRT_Row<TData> | null;
29
32
  grouping: MRT_GroupingState;
30
33
  tableOptions: MRT_DefinedTableOptions<TData>;
31
34
  }
32
35
 
33
- export const useMRT_DisplayColumns = <TData extends Record<string, any>>({
36
+ export const useMRT_DisplayColumns = <TData extends MRT_RowData>({
34
37
  columnOrder,
35
38
  creatingRow,
36
39
  grouping,
@@ -48,8 +51,8 @@ export const useMRT_DisplayColumns = <TData extends Record<string, any>>({
48
51
  ),
49
52
  header: tableOptions.localization.pin,
50
53
  size: 60,
51
- ...tableOptions.defaultDisplayColumn,
52
54
  ...tableOptions.displayColumnDefOptions?.['mrt-row-pin'],
55
+ columnDefType: 'display',
53
56
  id: 'mrt-row-pin',
54
57
  },
55
58
  (tableOptions.state?.columnOrder ?? columnOrder).includes(
@@ -64,8 +67,8 @@ export const useMRT_DisplayColumns = <TData extends Record<string, any>>({
64
67
  ),
65
68
  header: tableOptions.localization.move,
66
69
  size: 60,
67
- ...tableOptions.defaultDisplayColumn,
68
70
  ...tableOptions.displayColumnDefOptions?.['mrt-row-drag'],
71
+ columnDefType: 'display',
69
72
  id: 'mrt-row-drag',
70
73
  },
71
74
  ((tableOptions.state?.columnOrder ?? columnOrder).includes(
@@ -81,8 +84,8 @@ export const useMRT_DisplayColumns = <TData extends Record<string, any>>({
81
84
  ),
82
85
  header: tableOptions.localization.actions,
83
86
  size: 70,
84
- ...tableOptions.defaultDisplayColumn,
85
87
  ...tableOptions.displayColumnDefOptions?.['mrt-row-actions'],
88
+ columnDefType: 'display',
86
89
  id: 'mrt-row-actions',
87
90
  },
88
91
  (tableOptions.state?.columnOrder ?? columnOrder).includes(
@@ -100,8 +103,8 @@ export const useMRT_DisplayColumns = <TData extends Record<string, any>>({
100
103
  : null,
101
104
  header: tableOptions.localization.expand,
102
105
  size: 60,
103
- ...tableOptions.defaultDisplayColumn,
104
106
  ...tableOptions.displayColumnDefOptions?.['mrt-row-expand'],
107
+ columnDefType: 'display',
105
108
  id: 'mrt-row-expand',
106
109
  },
107
110
  (tableOptions.state?.columnOrder ?? columnOrder).includes(
@@ -117,8 +120,8 @@ export const useMRT_DisplayColumns = <TData extends Record<string, any>>({
117
120
  : null,
118
121
  header: tableOptions.localization.select,
119
122
  size: 60,
120
- ...tableOptions.defaultDisplayColumn,
121
123
  ...tableOptions.displayColumnDefOptions?.['mrt-row-select'],
124
+ columnDefType: 'display',
122
125
  id: 'mrt-row-select',
123
126
  },
124
127
  (tableOptions.state?.columnOrder ?? columnOrder).includes(
@@ -128,17 +131,18 @@ export const useMRT_DisplayColumns = <TData extends Record<string, any>>({
128
131
  Header: () => tableOptions.localization.rowNumber,
129
132
  header: tableOptions.localization.rowNumbers,
130
133
  size: 60,
131
- ...tableOptions.defaultDisplayColumn,
132
134
  ...tableOptions.displayColumnDefOptions?.['mrt-row-numbers'],
135
+ columnDefType: 'display',
133
136
  id: 'mrt-row-numbers',
134
137
  },
135
-
136
138
  (tableOptions.state?.columnOrder ?? columnOrder).includes(
137
139
  'mrt-row-spacer',
138
140
  ) && {
141
+ ...tableOptions.displayColumnDefOptions?.['mrt-row-spacer'],
142
+ ...MRT_DefaultDisplayColumn,
139
143
  columnDefType: 'display',
140
144
  header: '',
141
- id: 'spacer',
145
+ id: 'mrt-row-spacer',
142
146
  muiTableBodyCellProps: blankColProps,
143
147
  muiTableFooterCellProps: blankColProps,
144
148
  muiTableHeadCellProps: blankColProps,
@@ -1,8 +1,12 @@
1
1
  import { useEffect, useReducer, useRef } from 'react';
2
2
  import { getCanRankRows } from '../column.utils';
3
- import { type MRT_SortingState, type MRT_TableInstance } from '../types';
3
+ import {
4
+ type MRT_RowData,
5
+ type MRT_SortingState,
6
+ type MRT_TableInstance,
7
+ } from '../types';
4
8
 
5
- export const useMRT_Effects = <TData extends Record<string, any> = {}>(
9
+ export const useMRT_Effects = <TData extends MRT_RowData>(
6
10
  table: MRT_TableInstance<TData>,
7
11
  ) => {
8
12
  const {
@@ -30,6 +30,7 @@ import {
30
30
  type MRT_FilterOption,
31
31
  type MRT_GroupingState,
32
32
  type MRT_Row,
33
+ type MRT_RowData,
33
34
  type MRT_TableInstance,
34
35
  type MRT_TableState,
35
36
  type MRT_Updater,
@@ -37,9 +38,9 @@ import {
37
38
  import { useMRT_DisplayColumns } from './useMRT_DisplayColumns';
38
39
  import { useMRT_Effects } from './useMRT_Effects';
39
40
 
40
- export const useMRT_TableInstance: <TData extends Record<string, any>>(
41
+ export const useMRT_TableInstance: <TData extends MRT_RowData>(
41
42
  tableOptions: MRT_DefinedTableOptions<TData>,
42
- ) => MRT_TableInstance<TData> = <TData extends Record<string, any>>(
43
+ ) => MRT_TableInstance<TData> = <TData extends MRT_RowData>(
43
44
  tableOptions: MRT_DefinedTableOptions<TData>,
44
45
  ) => {
45
46
  const bottomToolbarRef = useRef<HTMLDivElement>(null);
@@ -1,15 +1,40 @@
1
1
  import { useMemo } from 'react';
2
2
  import { MRT_AggregationFns } from '../aggregationFns';
3
- import { MRT_DefaultColumn, MRT_DefaultDisplayColumn } from '../column.utils';
4
3
  import { MRT_FilterFns } from '../filterFns';
5
4
  import { MRT_Default_Icons } from '../icons';
6
5
  import { MRT_Localization_EN } from '../locales/en';
7
6
  import { MRT_SortingFns } from '../sortingFns';
8
- import { type MRT_DefinedTableOptions, type MRT_TableOptions } from '../types';
7
+ import {
8
+ type MRT_DefinedTableOptions,
9
+ type MRT_RowData,
10
+ type MRT_TableOptions,
11
+ } from '../types';
9
12
 
10
- export const useMRT_TableOptions: <TData extends Record<string, any>>(
13
+ export const MRT_DefaultColumn = {
14
+ filterVariant: 'text',
15
+ maxSize: 1000,
16
+ minSize: 40,
17
+ size: 180,
18
+ } as const;
19
+
20
+ export const MRT_DefaultDisplayColumn = {
21
+ columnDefType: 'display',
22
+ enableClickToCopy: false,
23
+ enableColumnActions: false,
24
+ enableColumnDragging: false,
25
+ enableColumnFilter: false,
26
+ enableColumnOrdering: false,
27
+ enableEditing: false,
28
+ enableGlobalFilter: false,
29
+ enableGrouping: false,
30
+ enableHiding: false,
31
+ enableResizing: false,
32
+ enableSorting: false,
33
+ } as const;
34
+
35
+ export const useMRT_TableOptions: <TData extends MRT_RowData>(
11
36
  tableOptions: MRT_TableOptions<TData>,
12
- ) => MRT_DefinedTableOptions<TData> = <TData extends Record<string, any>>({
37
+ ) => MRT_DefinedTableOptions<TData> = <TData extends MRT_RowData>({
13
38
  aggregationFns,
14
39
  autoResetExpanded = false,
15
40
  columnFilterDisplayMode = 'subheader',
package/src/index.ts CHANGED
@@ -10,6 +10,7 @@ export * from './inputs';
10
10
  export * from './menus';
11
11
  export * from './modals';
12
12
  export * from './sortingFns';
13
+ export * from './style.utils';
13
14
  export * from './table';
14
15
  export * from './toolbar';
15
16
  export * from './types';
@@ -8,16 +8,21 @@ import MenuItem from '@mui/material/MenuItem';
8
8
  import TextField from '@mui/material/TextField';
9
9
  import { type TextFieldProps } from '@mui/material/TextField';
10
10
  import { parseFromValuesOrFunc } from '../column.utils';
11
- import { type MRT_Cell, type MRT_TableInstance } from '../types';
11
+ import {
12
+ type MRT_Cell,
13
+ type MRT_RowData,
14
+ type MRT_TableInstance,
15
+ } from '../types';
12
16
 
13
- interface Props<TData extends Record<string, any>> {
17
+ interface Props<TData extends MRT_RowData> extends TextFieldProps<'standard'> {
14
18
  cell: MRT_Cell<TData>;
15
19
  table: MRT_TableInstance<TData>;
16
20
  }
17
21
 
18
- export const MRT_EditCellTextField = <TData extends Record<string, any>>({
22
+ export const MRT_EditCellTextField = <TData extends MRT_RowData>({
19
23
  cell,
20
24
  table,
25
+ ...rest
21
26
  }: Props<TData>) => {
22
27
  const {
23
28
  getState,
@@ -50,6 +55,7 @@ export const MRT_EditCellTextField = <TData extends Record<string, any>>({
50
55
  row,
51
56
  table,
52
57
  }),
58
+ ...rest,
53
59
  };
54
60
 
55
61
  const saveInputValueToRowCache = (newValue: string) => {
@@ -100,7 +106,7 @@ export const MRT_EditCellTextField = <TData extends Record<string, any>>({
100
106
  }
101
107
  }}
102
108
  label={
103
- !['custom', 'modal'].includes(
109
+ ['custom', 'modal'].includes(
104
110
  (isCreating ? createDisplayMode : editDisplayMode) as string,
105
111
  )
106
112
  ? columnDef.header
@@ -116,12 +122,20 @@ export const MRT_EditCellTextField = <TData extends Record<string, any>>({
116
122
  : undefined
117
123
  }
118
124
  select={isSelectEdit}
125
+ size="small"
119
126
  value={value}
120
127
  variant="standard"
121
128
  {...textFieldProps}
122
129
  InputProps={{
123
130
  disableUnderline: editDisplayMode === 'table',
124
131
  ...textFieldProps.InputProps,
132
+ sx: (theme) => ({
133
+ mb: 0,
134
+ ...(parseFromValuesOrFunc(
135
+ textFieldProps?.InputProps?.sx,
136
+ theme,
137
+ ) as any),
138
+ }),
125
139
  }}
126
140
  inputProps={{
127
141
  autoComplete: 'new-password', // disable autocomplete and autofill
@@ -1,17 +1,22 @@
1
- import Checkbox from '@mui/material/Checkbox';
1
+ import Checkbox, { type CheckboxProps } from '@mui/material/Checkbox';
2
2
  import FormControlLabel from '@mui/material/FormControlLabel';
3
3
  import Tooltip from '@mui/material/Tooltip';
4
4
  import { parseFromValuesOrFunc } from '../column.utils';
5
- import { type MRT_Column, type MRT_TableInstance } from '../types';
5
+ import {
6
+ type MRT_Column,
7
+ type MRT_RowData,
8
+ type MRT_TableInstance,
9
+ } from '../types';
6
10
 
7
- interface Props<TData extends Record<string, any>> {
11
+ interface Props<TData extends MRT_RowData> extends CheckboxProps {
8
12
  column: MRT_Column<TData>;
9
13
  table: MRT_TableInstance<TData>;
10
14
  }
11
15
 
12
- export const MRT_FilterCheckbox = <TData extends Record<string, any>>({
16
+ export const MRT_FilterCheckbox = <TData extends MRT_RowData>({
13
17
  column,
14
18
  table,
19
+ ...rest
15
20
  }: Props<TData>) => {
16
21
  const {
17
22
  getState,
@@ -29,6 +34,7 @@ export const MRT_FilterCheckbox = <TData extends Record<string, any>>({
29
34
  column,
30
35
  table,
31
36
  }),
37
+ ...rest,
32
38
  };
33
39
 
34
40
  const filterLabel = localization.filterByColumn?.replace(
@@ -38,7 +44,6 @@ export const MRT_FilterCheckbox = <TData extends Record<string, any>>({
38
44
 
39
45
  return (
40
46
  <Tooltip
41
- arrow
42
47
  enterDelay={1000}
43
48
  enterNextDelay={1000}
44
49
  title={checkboxProps?.title ?? filterLabel}