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

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 (509) hide show
  1. package/dist/index.d.ts +279 -261
  2. package/dist/{esm/material-react-table.esm.js → index.esm.js} +945 -921
  3. package/dist/index.esm.js.map +1 -0
  4. package/dist/{cjs/index.js → index.js} +1027 -1090
  5. package/dist/index.js.map +1 -0
  6. package/locales/ar.d.ts +1 -0
  7. package/locales/ar.js +0 -3
  8. package/locales/{ar.esm.js → ar.mjs} +0 -1
  9. package/locales/az.d.ts +3 -0
  10. package/locales/az.js +95 -0
  11. package/locales/az.mjs +93 -0
  12. package/locales/bg.d.ts +1 -0
  13. package/locales/bg.js +0 -3
  14. package/locales/{bg.esm.js → bg.mjs} +0 -1
  15. package/locales/cs.d.ts +1 -0
  16. package/locales/cs.js +0 -3
  17. package/locales/{cs.esm.js → cs.mjs} +0 -1
  18. package/locales/da.d.ts +1 -0
  19. package/locales/da.js +0 -3
  20. package/locales/{da.esm.js → da.mjs} +0 -1
  21. package/locales/de.d.ts +1 -0
  22. package/locales/de.js +0 -3
  23. package/locales/{de.esm.js → de.mjs} +0 -1
  24. package/locales/en.d.ts +1 -0
  25. package/locales/en.js +0 -3
  26. package/locales/{en.esm.js → en.mjs} +0 -1
  27. package/locales/es.d.ts +1 -0
  28. package/locales/es.js +0 -3
  29. package/locales/{es.esm.js → es.mjs} +0 -1
  30. package/locales/et.d.ts +1 -0
  31. package/locales/et.js +0 -3
  32. package/locales/{et.esm.js → et.mjs} +0 -1
  33. package/locales/fa.d.ts +1 -0
  34. package/locales/fa.js +0 -3
  35. package/locales/{fa.esm.js → fa.mjs} +0 -1
  36. package/locales/fi.d.ts +1 -0
  37. package/locales/fi.js +0 -3
  38. package/locales/{fi.esm.js → fi.mjs} +0 -1
  39. package/locales/fr.d.ts +1 -0
  40. package/locales/fr.js +0 -3
  41. package/locales/{fr.esm.js → fr.mjs} +0 -1
  42. package/locales/hu.d.ts +1 -0
  43. package/locales/hu.js +0 -3
  44. package/locales/{hu.esm.js → hu.mjs} +0 -1
  45. package/locales/hy.d.ts +1 -0
  46. package/locales/hy.js +0 -3
  47. package/locales/{hy.esm.js → hy.mjs} +0 -1
  48. package/locales/id.d.ts +1 -0
  49. package/locales/id.js +0 -3
  50. package/locales/{id.esm.js → id.mjs} +0 -1
  51. package/locales/it.d.ts +1 -0
  52. package/locales/it.js +0 -3
  53. package/locales/{it.esm.js → it.mjs} +0 -1
  54. package/locales/ja.d.ts +1 -0
  55. package/locales/ja.js +0 -3
  56. package/locales/{ja.esm.js → ja.mjs} +0 -1
  57. package/locales/ko.d.ts +1 -0
  58. package/locales/ko.js +0 -3
  59. package/locales/{ko.esm.js → ko.mjs} +0 -1
  60. package/locales/nl.d.ts +1 -0
  61. package/locales/nl.js +0 -3
  62. package/locales/{nl.esm.js → nl.mjs} +0 -1
  63. package/locales/no.d.ts +2 -1
  64. package/locales/no.js +0 -3
  65. package/locales/{no.esm.js → no.mjs} +0 -1
  66. package/locales/np.d.ts +1 -0
  67. package/locales/np.js +0 -3
  68. package/locales/{np.esm.js → np.mjs} +0 -1
  69. package/locales/pl.d.ts +1 -0
  70. package/locales/pl.js +0 -3
  71. package/locales/{pl.esm.js → pl.mjs} +0 -1
  72. package/locales/pt-BR.d.ts +1 -0
  73. package/locales/pt-BR.js +0 -3
  74. package/locales/{pt-BR.esm.js → pt-BR.mjs} +0 -1
  75. package/locales/pt.d.ts +1 -0
  76. package/locales/pt.js +0 -3
  77. package/locales/{pt.esm.js → pt.mjs} +0 -1
  78. package/locales/ro.d.ts +1 -0
  79. package/locales/ro.js +0 -3
  80. package/locales/{ro.esm.js → ro.mjs} +0 -1
  81. package/locales/ru.d.ts +1 -0
  82. package/locales/ru.js +0 -3
  83. package/locales/{ru.esm.js → ru.mjs} +0 -1
  84. package/locales/sk.d.ts +1 -0
  85. package/locales/sk.js +0 -3
  86. package/locales/{sk.esm.js → sk.mjs} +0 -1
  87. package/locales/sr-Cyrl-RS.d.ts +1 -0
  88. package/locales/sr-Cyrl-RS.js +0 -3
  89. package/locales/{sr-Cyrl-RS.esm.js → sr-Cyrl-RS.mjs} +0 -1
  90. package/locales/sr-Latn-RS.d.ts +1 -0
  91. package/locales/sr-Latn-RS.js +0 -3
  92. package/locales/{sr-Latn-RS.esm.js → sr-Latn-RS.mjs} +0 -1
  93. package/locales/sv.d.ts +1 -0
  94. package/locales/sv.js +0 -3
  95. package/locales/{sv.esm.js → sv.mjs} +0 -1
  96. package/locales/tr.d.ts +1 -0
  97. package/locales/tr.js +0 -3
  98. package/locales/{tr.esm.js → tr.mjs} +0 -1
  99. package/locales/uk.d.ts +1 -0
  100. package/locales/uk.js +0 -3
  101. package/locales/{uk.esm.js → uk.mjs} +0 -1
  102. package/locales/vi.d.ts +1 -0
  103. package/locales/vi.js +0 -3
  104. package/locales/{vi.esm.js → vi.mjs} +0 -1
  105. package/locales/zh-Hans.d.ts +1 -0
  106. package/locales/zh-Hans.js +17 -20
  107. package/locales/{zh-Hans.esm.js → zh-Hans.mjs} +17 -18
  108. package/locales/zh-Hant.d.ts +1 -0
  109. package/locales/zh-Hant.js +0 -3
  110. package/locales/{zh-Hant.esm.js → zh-Hant.mjs} +0 -1
  111. package/package.json +215 -32
  112. package/src/MaterialReactTable.tsx +5 -4
  113. package/src/body/MRT_TableBody.tsx +14 -8
  114. package/src/body/MRT_TableBodyCell.tsx +77 -70
  115. package/src/body/MRT_TableBodyCellValue.tsx +13 -9
  116. package/src/body/MRT_TableBodyRow.tsx +26 -15
  117. package/src/body/MRT_TableBodyRowGrabHandle.tsx +16 -7
  118. package/src/body/MRT_TableBodyRowPinButton.tsx +18 -7
  119. package/src/body/MRT_TableDetailPanel.tsx +19 -11
  120. package/src/buttons/MRT_ColumnPinningButtons.tsx +21 -8
  121. package/src/buttons/MRT_CopyButton.tsx +12 -11
  122. package/src/buttons/MRT_EditActionButtons.tsx +17 -7
  123. package/src/buttons/MRT_ExpandAllButton.tsx +13 -11
  124. package/src/buttons/MRT_ExpandButton.tsx +10 -8
  125. package/src/buttons/MRT_GrabHandleButton.tsx +10 -8
  126. package/src/buttons/MRT_RowPinButton.tsx +14 -7
  127. package/src/buttons/MRT_ShowHideColumnsButton.tsx +4 -4
  128. package/src/buttons/MRT_ToggleDensePaddingButton.tsx +4 -6
  129. package/src/buttons/MRT_ToggleFiltersButton.tsx +4 -4
  130. package/src/buttons/MRT_ToggleFullScreenButton.tsx +3 -4
  131. package/src/buttons/MRT_ToggleGlobalFilterButton.tsx +4 -6
  132. package/src/buttons/MRT_ToggleRowActionMenuButton.tsx +15 -9
  133. package/src/column.utils.ts +46 -141
  134. package/src/filterFns.ts +15 -14
  135. package/src/footer/MRT_TableFooter.tsx +11 -7
  136. package/src/footer/MRT_TableFooterCell.tsx +21 -16
  137. package/src/footer/MRT_TableFooterRow.tsx +14 -9
  138. package/src/head/MRT_TableHead.tsx +10 -6
  139. package/src/head/MRT_TableHeadCell.tsx +102 -91
  140. package/src/head/MRT_TableHeadCellColumnActionsButton.tsx +13 -12
  141. package/src/head/MRT_TableHeadCellFilterContainer.tsx +10 -6
  142. package/src/head/MRT_TableHeadCellFilterLabel.tsx +15 -9
  143. package/src/head/MRT_TableHeadCellGrabHandle.tsx +10 -3
  144. package/src/head/MRT_TableHeadCellResizeHandle.tsx +14 -9
  145. package/src/head/MRT_TableHeadCellSortLabel.tsx +38 -18
  146. package/src/head/MRT_TableHeadRow.tsx +15 -9
  147. package/src/hooks/useMRT_DisplayColumns.tsx +14 -10
  148. package/src/hooks/useMRT_Effects.ts +6 -2
  149. package/src/hooks/useMRT_TableInstance.ts +3 -2
  150. package/src/hooks/useMRT_TableOptions.ts +29 -4
  151. package/src/index.ts +1 -0
  152. package/src/inputs/MRT_EditCellTextField.tsx +18 -4
  153. package/src/inputs/MRT_FilterCheckbox.tsx +10 -5
  154. package/src/inputs/MRT_FilterRangeFields.tsx +19 -5
  155. package/src/inputs/MRT_FilterRangeSlider.tsx +10 -4
  156. package/src/inputs/MRT_FilterTextField.tsx +13 -5
  157. package/src/inputs/MRT_GlobalFilterTextField.tsx +27 -10
  158. package/src/inputs/MRT_SelectCheckbox.tsx +14 -7
  159. package/src/locales/az.ts +94 -0
  160. package/src/locales/no.ts +1 -1
  161. package/src/locales/zh-Hans.ts +17 -17
  162. package/src/menus/MRT_ColumnActionMenu.tsx +10 -4
  163. package/src/menus/MRT_FilterOptionMenu.tsx +6 -3
  164. package/src/menus/MRT_RowActionMenu.tsx +10 -4
  165. package/src/menus/MRT_ShowHideColumnsMenu.tsx +10 -4
  166. package/src/menus/MRT_ShowHideColumnsMenuItems.tsx +17 -10
  167. package/src/modals/MRT_EditRowModal.tsx +17 -11
  168. package/src/sortingFns.ts +3 -3
  169. package/src/style.utils.ts +149 -0
  170. package/src/table/MRT_Table.tsx +28 -34
  171. package/src/table/MRT_TableContainer.tsx +17 -46
  172. package/src/table/MRT_TableLoadingOverlay.tsx +54 -0
  173. package/src/table/MRT_TablePaper.tsx +13 -6
  174. package/src/table/index.ts +1 -0
  175. package/src/toolbar/MRT_BottomToolbar.tsx +16 -14
  176. package/src/toolbar/MRT_LinearProgressBar.tsx +16 -10
  177. package/src/toolbar/MRT_TablePagination.tsx +20 -10
  178. package/src/toolbar/MRT_ToolbarAlertBanner.tsx +11 -7
  179. package/src/toolbar/MRT_ToolbarDropZone.tsx +8 -4
  180. package/src/toolbar/MRT_ToolbarInternalButtons.tsx +10 -6
  181. package/src/toolbar/MRT_TopToolbar.tsx +11 -24
  182. package/src/types.ts +98 -56
  183. package/src/useMaterialReactTable.ts +8 -7
  184. package/dist/cjs/index.js.map +0 -1
  185. package/dist/cjs/types/MaterialReactTable.d.ts +0 -7
  186. package/dist/cjs/types/aggregationFns.d.ts +0 -11
  187. package/dist/cjs/types/body/MRT_TableBody.d.ts +0 -12
  188. package/dist/cjs/types/body/MRT_TableBodyCell.d.ts +0 -15
  189. package/dist/cjs/types/body/MRT_TableBodyCellValue.d.ts +0 -7
  190. package/dist/cjs/types/body/MRT_TableBodyRow.d.ts +0 -18
  191. package/dist/cjs/types/body/MRT_TableBodyRowGrabHandle.d.ts +0 -9
  192. package/dist/cjs/types/body/MRT_TableBodyRowPinButton.d.ts +0 -7
  193. package/dist/cjs/types/body/MRT_TableDetailPanel.d.ts +0 -12
  194. package/dist/cjs/types/body/index.d.ts +0 -7
  195. package/dist/cjs/types/buttons/MRT_ColumnPinningButtons.d.ts +0 -7
  196. package/dist/cjs/types/buttons/MRT_CopyButton.d.ts +0 -9
  197. package/dist/cjs/types/buttons/MRT_EditActionButtons.d.ts +0 -8
  198. package/dist/cjs/types/buttons/MRT_ExpandAllButton.d.ts +0 -6
  199. package/dist/cjs/types/buttons/MRT_ExpandButton.d.ts +0 -7
  200. package/dist/cjs/types/buttons/MRT_GrabHandleButton.d.ts +0 -12
  201. package/dist/cjs/types/buttons/MRT_RowPinButton.d.ts +0 -9
  202. package/dist/cjs/types/buttons/MRT_ShowHideColumnsButton.d.ts +0 -7
  203. package/dist/cjs/types/buttons/MRT_ToggleDensePaddingButton.d.ts +0 -7
  204. package/dist/cjs/types/buttons/MRT_ToggleFiltersButton.d.ts +0 -7
  205. package/dist/cjs/types/buttons/MRT_ToggleFullScreenButton.d.ts +0 -7
  206. package/dist/cjs/types/buttons/MRT_ToggleGlobalFilterButton.d.ts +0 -7
  207. package/dist/cjs/types/buttons/MRT_ToggleRowActionMenuButton.d.ts +0 -8
  208. package/dist/cjs/types/buttons/index.d.ts +0 -13
  209. package/dist/cjs/types/column.utils.d.ts +0 -148
  210. package/dist/cjs/types/filterFns.d.ts +0 -68
  211. package/dist/cjs/types/footer/MRT_TableFooter.d.ts +0 -10
  212. package/dist/cjs/types/footer/MRT_TableFooterCell.d.ts +0 -7
  213. package/dist/cjs/types/footer/MRT_TableFooterRow.d.ts +0 -11
  214. package/dist/cjs/types/footer/index.d.ts +0 -3
  215. package/dist/cjs/types/head/MRT_TableHead.d.ts +0 -10
  216. package/dist/cjs/types/head/MRT_TableHeadCell.d.ts +0 -7
  217. package/dist/cjs/types/head/MRT_TableHeadCellColumnActionsButton.d.ts +0 -7
  218. package/dist/cjs/types/head/MRT_TableHeadCellFilterContainer.d.ts +0 -7
  219. package/dist/cjs/types/head/MRT_TableHeadCellFilterLabel.d.ts +0 -7
  220. package/dist/cjs/types/head/MRT_TableHeadCellGrabHandle.d.ts +0 -9
  221. package/dist/cjs/types/head/MRT_TableHeadCellResizeHandle.d.ts +0 -7
  222. package/dist/cjs/types/head/MRT_TableHeadCellSortLabel.d.ts +0 -9
  223. package/dist/cjs/types/head/MRT_TableHeadRow.d.ts +0 -11
  224. package/dist/cjs/types/head/index.d.ts +0 -9
  225. package/dist/cjs/types/hooks/useMRT_DisplayColumns.d.ts +0 -9
  226. package/dist/cjs/types/hooks/useMRT_Effects.d.ts +0 -2
  227. package/dist/cjs/types/hooks/useMRT_TableInstance.d.ts +0 -2
  228. package/dist/cjs/types/hooks/useMRT_TableOptions.d.ts +0 -2
  229. package/dist/cjs/types/icons.d.ts +0 -36
  230. package/dist/cjs/types/index.d.ts +0 -16
  231. package/dist/cjs/types/inputs/MRT_EditCellTextField.d.ts +0 -7
  232. package/dist/cjs/types/inputs/MRT_FilterCheckbox.d.ts +0 -7
  233. package/dist/cjs/types/inputs/MRT_FilterRangeFields.d.ts +0 -7
  234. package/dist/cjs/types/inputs/MRT_FilterRangeSlider.d.ts +0 -7
  235. package/dist/cjs/types/inputs/MRT_FilterTextField.d.ts +0 -8
  236. package/dist/cjs/types/inputs/MRT_GlobalFilterTextField.d.ts +0 -6
  237. package/dist/cjs/types/inputs/MRT_SelectCheckbox.d.ts +0 -8
  238. package/dist/cjs/types/inputs/index.d.ts +0 -7
  239. package/dist/cjs/types/locales/ar.d.ts +0 -2
  240. package/dist/cjs/types/locales/bg.d.ts +0 -2
  241. package/dist/cjs/types/locales/cs.d.ts +0 -2
  242. package/dist/cjs/types/locales/da.d.ts +0 -2
  243. package/dist/cjs/types/locales/de.d.ts +0 -2
  244. package/dist/cjs/types/locales/en.d.ts +0 -2
  245. package/dist/cjs/types/locales/es.d.ts +0 -2
  246. package/dist/cjs/types/locales/et.d.ts +0 -2
  247. package/dist/cjs/types/locales/fa.d.ts +0 -2
  248. package/dist/cjs/types/locales/fi.d.ts +0 -2
  249. package/dist/cjs/types/locales/fr.d.ts +0 -2
  250. package/dist/cjs/types/locales/hu.d.ts +0 -2
  251. package/dist/cjs/types/locales/hy.d.ts +0 -2
  252. package/dist/cjs/types/locales/id.d.ts +0 -2
  253. package/dist/cjs/types/locales/it.d.ts +0 -2
  254. package/dist/cjs/types/locales/ja.d.ts +0 -2
  255. package/dist/cjs/types/locales/ko.d.ts +0 -2
  256. package/dist/cjs/types/locales/nl.d.ts +0 -2
  257. package/dist/cjs/types/locales/no.d.ts +0 -2
  258. package/dist/cjs/types/locales/np.d.ts +0 -2
  259. package/dist/cjs/types/locales/pl.d.ts +0 -2
  260. package/dist/cjs/types/locales/pt-BR.d.ts +0 -2
  261. package/dist/cjs/types/locales/pt.d.ts +0 -2
  262. package/dist/cjs/types/locales/ro.d.ts +0 -2
  263. package/dist/cjs/types/locales/ru.d.ts +0 -2
  264. package/dist/cjs/types/locales/sk.d.ts +0 -2
  265. package/dist/cjs/types/locales/sr-Cyrl-RS.d.ts +0 -2
  266. package/dist/cjs/types/locales/sr-Latn-RS.d.ts +0 -2
  267. package/dist/cjs/types/locales/sv.d.ts +0 -2
  268. package/dist/cjs/types/locales/tr.d.ts +0 -2
  269. package/dist/cjs/types/locales/uk.d.ts +0 -2
  270. package/dist/cjs/types/locales/vi.d.ts +0 -2
  271. package/dist/cjs/types/locales/zh-Hans.d.ts +0 -2
  272. package/dist/cjs/types/locales/zh-Hant.d.ts +0 -2
  273. package/dist/cjs/types/menus/MRT_ColumnActionMenu.d.ts +0 -19
  274. package/dist/cjs/types/menus/MRT_FilterOptionMenu.d.ts +0 -12
  275. package/dist/cjs/types/menus/MRT_RowActionMenu.d.ts +0 -11
  276. package/dist/cjs/types/menus/MRT_ShowHideColumnsMenu.d.ts +0 -9
  277. package/dist/cjs/types/menus/MRT_ShowHideColumnsMenuItems.d.ts +0 -11
  278. package/dist/cjs/types/menus/index.d.ts +0 -5
  279. package/dist/cjs/types/modals/MRT_EditRowModal.d.ts +0 -7
  280. package/dist/cjs/types/modals/index.d.ts +0 -1
  281. package/dist/cjs/types/sortingFns.d.ts +0 -12
  282. package/dist/cjs/types/table/MRT_Table.d.ts +0 -6
  283. package/dist/cjs/types/table/MRT_TableContainer.d.ts +0 -6
  284. package/dist/cjs/types/table/MRT_TablePaper.d.ts +0 -6
  285. package/dist/cjs/types/table/index.d.ts +0 -4
  286. package/dist/cjs/types/toolbar/MRT_BottomToolbar.d.ts +0 -6
  287. package/dist/cjs/types/toolbar/MRT_LinearProgressBar.d.ts +0 -7
  288. package/dist/cjs/types/toolbar/MRT_TablePagination.d.ts +0 -7
  289. package/dist/cjs/types/toolbar/MRT_ToolbarAlertBanner.d.ts +0 -7
  290. package/dist/cjs/types/toolbar/MRT_ToolbarDropZone.d.ts +0 -6
  291. package/dist/cjs/types/toolbar/MRT_ToolbarInternalButtons.d.ts +0 -6
  292. package/dist/cjs/types/toolbar/MRT_TopToolbar.d.ts +0 -21
  293. package/dist/cjs/types/toolbar/index.d.ts +0 -7
  294. package/dist/cjs/types/types.d.ts +0 -818
  295. package/dist/cjs/types/useMaterialReactTable.d.ts +0 -2
  296. package/dist/esm/material-react-table.esm.js.map +0 -1
  297. package/dist/esm/types/MaterialReactTable.d.ts +0 -7
  298. package/dist/esm/types/aggregationFns.d.ts +0 -11
  299. package/dist/esm/types/body/MRT_TableBody.d.ts +0 -12
  300. package/dist/esm/types/body/MRT_TableBodyCell.d.ts +0 -15
  301. package/dist/esm/types/body/MRT_TableBodyCellValue.d.ts +0 -7
  302. package/dist/esm/types/body/MRT_TableBodyRow.d.ts +0 -18
  303. package/dist/esm/types/body/MRT_TableBodyRowGrabHandle.d.ts +0 -9
  304. package/dist/esm/types/body/MRT_TableBodyRowPinButton.d.ts +0 -7
  305. package/dist/esm/types/body/MRT_TableDetailPanel.d.ts +0 -12
  306. package/dist/esm/types/body/index.d.ts +0 -7
  307. package/dist/esm/types/buttons/MRT_ColumnPinningButtons.d.ts +0 -7
  308. package/dist/esm/types/buttons/MRT_CopyButton.d.ts +0 -9
  309. package/dist/esm/types/buttons/MRT_EditActionButtons.d.ts +0 -8
  310. package/dist/esm/types/buttons/MRT_ExpandAllButton.d.ts +0 -6
  311. package/dist/esm/types/buttons/MRT_ExpandButton.d.ts +0 -7
  312. package/dist/esm/types/buttons/MRT_GrabHandleButton.d.ts +0 -12
  313. package/dist/esm/types/buttons/MRT_RowPinButton.d.ts +0 -9
  314. package/dist/esm/types/buttons/MRT_ShowHideColumnsButton.d.ts +0 -7
  315. package/dist/esm/types/buttons/MRT_ToggleDensePaddingButton.d.ts +0 -7
  316. package/dist/esm/types/buttons/MRT_ToggleFiltersButton.d.ts +0 -7
  317. package/dist/esm/types/buttons/MRT_ToggleFullScreenButton.d.ts +0 -7
  318. package/dist/esm/types/buttons/MRT_ToggleGlobalFilterButton.d.ts +0 -7
  319. package/dist/esm/types/buttons/MRT_ToggleRowActionMenuButton.d.ts +0 -8
  320. package/dist/esm/types/buttons/index.d.ts +0 -13
  321. package/dist/esm/types/column.utils.d.ts +0 -148
  322. package/dist/esm/types/filterFns.d.ts +0 -68
  323. package/dist/esm/types/footer/MRT_TableFooter.d.ts +0 -10
  324. package/dist/esm/types/footer/MRT_TableFooterCell.d.ts +0 -7
  325. package/dist/esm/types/footer/MRT_TableFooterRow.d.ts +0 -11
  326. package/dist/esm/types/footer/index.d.ts +0 -3
  327. package/dist/esm/types/head/MRT_TableHead.d.ts +0 -10
  328. package/dist/esm/types/head/MRT_TableHeadCell.d.ts +0 -7
  329. package/dist/esm/types/head/MRT_TableHeadCellColumnActionsButton.d.ts +0 -7
  330. package/dist/esm/types/head/MRT_TableHeadCellFilterContainer.d.ts +0 -7
  331. package/dist/esm/types/head/MRT_TableHeadCellFilterLabel.d.ts +0 -7
  332. package/dist/esm/types/head/MRT_TableHeadCellGrabHandle.d.ts +0 -9
  333. package/dist/esm/types/head/MRT_TableHeadCellResizeHandle.d.ts +0 -7
  334. package/dist/esm/types/head/MRT_TableHeadCellSortLabel.d.ts +0 -9
  335. package/dist/esm/types/head/MRT_TableHeadRow.d.ts +0 -11
  336. package/dist/esm/types/head/index.d.ts +0 -9
  337. package/dist/esm/types/hooks/useMRT_DisplayColumns.d.ts +0 -9
  338. package/dist/esm/types/hooks/useMRT_Effects.d.ts +0 -2
  339. package/dist/esm/types/hooks/useMRT_TableInstance.d.ts +0 -2
  340. package/dist/esm/types/hooks/useMRT_TableOptions.d.ts +0 -2
  341. package/dist/esm/types/icons.d.ts +0 -36
  342. package/dist/esm/types/index.d.ts +0 -16
  343. package/dist/esm/types/inputs/MRT_EditCellTextField.d.ts +0 -7
  344. package/dist/esm/types/inputs/MRT_FilterCheckbox.d.ts +0 -7
  345. package/dist/esm/types/inputs/MRT_FilterRangeFields.d.ts +0 -7
  346. package/dist/esm/types/inputs/MRT_FilterRangeSlider.d.ts +0 -7
  347. package/dist/esm/types/inputs/MRT_FilterTextField.d.ts +0 -8
  348. package/dist/esm/types/inputs/MRT_GlobalFilterTextField.d.ts +0 -6
  349. package/dist/esm/types/inputs/MRT_SelectCheckbox.d.ts +0 -8
  350. package/dist/esm/types/inputs/index.d.ts +0 -7
  351. package/dist/esm/types/locales/ar.d.ts +0 -2
  352. package/dist/esm/types/locales/bg.d.ts +0 -2
  353. package/dist/esm/types/locales/cs.d.ts +0 -2
  354. package/dist/esm/types/locales/da.d.ts +0 -2
  355. package/dist/esm/types/locales/de.d.ts +0 -2
  356. package/dist/esm/types/locales/en.d.ts +0 -2
  357. package/dist/esm/types/locales/es.d.ts +0 -2
  358. package/dist/esm/types/locales/et.d.ts +0 -2
  359. package/dist/esm/types/locales/fa.d.ts +0 -2
  360. package/dist/esm/types/locales/fi.d.ts +0 -2
  361. package/dist/esm/types/locales/fr.d.ts +0 -2
  362. package/dist/esm/types/locales/hu.d.ts +0 -2
  363. package/dist/esm/types/locales/hy.d.ts +0 -2
  364. package/dist/esm/types/locales/id.d.ts +0 -2
  365. package/dist/esm/types/locales/it.d.ts +0 -2
  366. package/dist/esm/types/locales/ja.d.ts +0 -2
  367. package/dist/esm/types/locales/ko.d.ts +0 -2
  368. package/dist/esm/types/locales/nl.d.ts +0 -2
  369. package/dist/esm/types/locales/no.d.ts +0 -2
  370. package/dist/esm/types/locales/np.d.ts +0 -2
  371. package/dist/esm/types/locales/pl.d.ts +0 -2
  372. package/dist/esm/types/locales/pt-BR.d.ts +0 -2
  373. package/dist/esm/types/locales/pt.d.ts +0 -2
  374. package/dist/esm/types/locales/ro.d.ts +0 -2
  375. package/dist/esm/types/locales/ru.d.ts +0 -2
  376. package/dist/esm/types/locales/sk.d.ts +0 -2
  377. package/dist/esm/types/locales/sr-Cyrl-RS.d.ts +0 -2
  378. package/dist/esm/types/locales/sr-Latn-RS.d.ts +0 -2
  379. package/dist/esm/types/locales/sv.d.ts +0 -2
  380. package/dist/esm/types/locales/tr.d.ts +0 -2
  381. package/dist/esm/types/locales/uk.d.ts +0 -2
  382. package/dist/esm/types/locales/vi.d.ts +0 -2
  383. package/dist/esm/types/locales/zh-Hans.d.ts +0 -2
  384. package/dist/esm/types/locales/zh-Hant.d.ts +0 -2
  385. package/dist/esm/types/menus/MRT_ColumnActionMenu.d.ts +0 -19
  386. package/dist/esm/types/menus/MRT_FilterOptionMenu.d.ts +0 -12
  387. package/dist/esm/types/menus/MRT_RowActionMenu.d.ts +0 -11
  388. package/dist/esm/types/menus/MRT_ShowHideColumnsMenu.d.ts +0 -9
  389. package/dist/esm/types/menus/MRT_ShowHideColumnsMenuItems.d.ts +0 -11
  390. package/dist/esm/types/menus/index.d.ts +0 -5
  391. package/dist/esm/types/modals/MRT_EditRowModal.d.ts +0 -7
  392. package/dist/esm/types/modals/index.d.ts +0 -1
  393. package/dist/esm/types/sortingFns.d.ts +0 -12
  394. package/dist/esm/types/table/MRT_Table.d.ts +0 -6
  395. package/dist/esm/types/table/MRT_TableContainer.d.ts +0 -6
  396. package/dist/esm/types/table/MRT_TablePaper.d.ts +0 -6
  397. package/dist/esm/types/table/index.d.ts +0 -4
  398. package/dist/esm/types/toolbar/MRT_BottomToolbar.d.ts +0 -6
  399. package/dist/esm/types/toolbar/MRT_LinearProgressBar.d.ts +0 -7
  400. package/dist/esm/types/toolbar/MRT_TablePagination.d.ts +0 -7
  401. package/dist/esm/types/toolbar/MRT_ToolbarAlertBanner.d.ts +0 -7
  402. package/dist/esm/types/toolbar/MRT_ToolbarDropZone.d.ts +0 -6
  403. package/dist/esm/types/toolbar/MRT_ToolbarInternalButtons.d.ts +0 -6
  404. package/dist/esm/types/toolbar/MRT_TopToolbar.d.ts +0 -21
  405. package/dist/esm/types/toolbar/index.d.ts +0 -7
  406. package/dist/esm/types/types.d.ts +0 -818
  407. package/dist/esm/types/useMaterialReactTable.d.ts +0 -2
  408. package/locales/ar.esm.d.ts +0 -2
  409. package/locales/ar.esm.js.map +0 -1
  410. package/locales/ar.js.map +0 -1
  411. package/locales/bg.esm.d.ts +0 -2
  412. package/locales/bg.esm.js.map +0 -1
  413. package/locales/bg.js.map +0 -1
  414. package/locales/cs.esm.d.ts +0 -2
  415. package/locales/cs.esm.js.map +0 -1
  416. package/locales/cs.js.map +0 -1
  417. package/locales/da.esm.d.ts +0 -2
  418. package/locales/da.esm.js.map +0 -1
  419. package/locales/da.js.map +0 -1
  420. package/locales/de.esm.d.ts +0 -2
  421. package/locales/de.esm.js.map +0 -1
  422. package/locales/de.js.map +0 -1
  423. package/locales/en.esm.d.ts +0 -2
  424. package/locales/en.esm.js.map +0 -1
  425. package/locales/en.js.map +0 -1
  426. package/locales/es.esm.d.ts +0 -2
  427. package/locales/es.esm.js.map +0 -1
  428. package/locales/es.js.map +0 -1
  429. package/locales/et.esm.d.ts +0 -2
  430. package/locales/et.esm.js.map +0 -1
  431. package/locales/et.js.map +0 -1
  432. package/locales/fa.esm.d.ts +0 -2
  433. package/locales/fa.esm.js.map +0 -1
  434. package/locales/fa.js.map +0 -1
  435. package/locales/fi.esm.d.ts +0 -2
  436. package/locales/fi.esm.js.map +0 -1
  437. package/locales/fi.js.map +0 -1
  438. package/locales/fr.esm.d.ts +0 -2
  439. package/locales/fr.esm.js.map +0 -1
  440. package/locales/fr.js.map +0 -1
  441. package/locales/hu.esm.d.ts +0 -2
  442. package/locales/hu.esm.js.map +0 -1
  443. package/locales/hu.js.map +0 -1
  444. package/locales/hy.esm.d.ts +0 -2
  445. package/locales/hy.esm.js.map +0 -1
  446. package/locales/hy.js.map +0 -1
  447. package/locales/id.esm.d.ts +0 -2
  448. package/locales/id.esm.js.map +0 -1
  449. package/locales/id.js.map +0 -1
  450. package/locales/it.esm.d.ts +0 -2
  451. package/locales/it.esm.js.map +0 -1
  452. package/locales/it.js.map +0 -1
  453. package/locales/ja.esm.d.ts +0 -2
  454. package/locales/ja.esm.js.map +0 -1
  455. package/locales/ja.js.map +0 -1
  456. package/locales/ko.esm.d.ts +0 -2
  457. package/locales/ko.esm.js.map +0 -1
  458. package/locales/ko.js.map +0 -1
  459. package/locales/nl.esm.d.ts +0 -2
  460. package/locales/nl.esm.js.map +0 -1
  461. package/locales/nl.js.map +0 -1
  462. package/locales/no.esm.d.ts +0 -2
  463. package/locales/no.esm.js.map +0 -1
  464. package/locales/no.js.map +0 -1
  465. package/locales/np.esm.d.ts +0 -2
  466. package/locales/np.esm.js.map +0 -1
  467. package/locales/np.js.map +0 -1
  468. package/locales/pl.esm.d.ts +0 -2
  469. package/locales/pl.esm.js.map +0 -1
  470. package/locales/pl.js.map +0 -1
  471. package/locales/pt-BR.esm.d.ts +0 -2
  472. package/locales/pt-BR.esm.js.map +0 -1
  473. package/locales/pt-BR.js.map +0 -1
  474. package/locales/pt.esm.d.ts +0 -2
  475. package/locales/pt.esm.js.map +0 -1
  476. package/locales/pt.js.map +0 -1
  477. package/locales/ro.esm.d.ts +0 -2
  478. package/locales/ro.esm.js.map +0 -1
  479. package/locales/ro.js.map +0 -1
  480. package/locales/ru.esm.d.ts +0 -2
  481. package/locales/ru.esm.js.map +0 -1
  482. package/locales/ru.js.map +0 -1
  483. package/locales/sk.esm.d.ts +0 -2
  484. package/locales/sk.esm.js.map +0 -1
  485. package/locales/sk.js.map +0 -1
  486. package/locales/sr-Cyrl-RS.esm.d.ts +0 -2
  487. package/locales/sr-Cyrl-RS.esm.js.map +0 -1
  488. package/locales/sr-Cyrl-RS.js.map +0 -1
  489. package/locales/sr-Latn-RS.esm.d.ts +0 -2
  490. package/locales/sr-Latn-RS.esm.js.map +0 -1
  491. package/locales/sr-Latn-RS.js.map +0 -1
  492. package/locales/sv.esm.d.ts +0 -2
  493. package/locales/sv.esm.js.map +0 -1
  494. package/locales/sv.js.map +0 -1
  495. package/locales/tr.esm.d.ts +0 -2
  496. package/locales/tr.esm.js.map +0 -1
  497. package/locales/tr.js.map +0 -1
  498. package/locales/uk.esm.d.ts +0 -2
  499. package/locales/uk.esm.js.map +0 -1
  500. package/locales/uk.js.map +0 -1
  501. package/locales/vi.esm.d.ts +0 -2
  502. package/locales/vi.esm.js.map +0 -1
  503. package/locales/vi.js.map +0 -1
  504. package/locales/zh-Hans.esm.d.ts +0 -2
  505. package/locales/zh-Hans.esm.js.map +0 -1
  506. package/locales/zh-Hans.js.map +0 -1
  507. package/locales/zh-Hant.esm.d.ts +0 -2
  508. package/locales/zh-Hant.esm.js.map +0 -1
  509. package/locales/zh-Hant.js.map +0 -1
@@ -1,21 +1,21 @@
1
- import Box from '@mui/material/Box';
2
- import Toolbar from '@mui/material/Toolbar';
3
- import { alpha } from '@mui/material/styles';
1
+ import { alpha } from '@mui/material';
2
+ import Box, { type BoxProps } from '@mui/material/Box';
4
3
  import useMediaQuery from '@mui/material/useMediaQuery';
5
4
  import { MRT_LinearProgressBar } from './MRT_LinearProgressBar';
6
5
  import { MRT_TablePagination } from './MRT_TablePagination';
7
6
  import { MRT_ToolbarAlertBanner } from './MRT_ToolbarAlertBanner';
8
7
  import { MRT_ToolbarDropZone } from './MRT_ToolbarDropZone';
9
- import { commonToolbarStyles } from './MRT_TopToolbar';
10
8
  import { parseFromValuesOrFunc } from '../column.utils';
11
- import { type MRT_TableInstance } from '../types';
9
+ import { getCommonToolbarStyles } from '../style.utils';
10
+ import { type MRT_RowData, type MRT_TableInstance } from '../types';
12
11
 
13
- interface Props<TData extends Record<string, any>> {
12
+ interface Props<TData extends MRT_RowData> extends BoxProps {
14
13
  table: MRT_TableInstance<TData>;
15
14
  }
16
15
 
17
- export const MRT_BottomToolbar = <TData extends Record<string, any>>({
16
+ export const MRT_BottomToolbar = <TData extends MRT_RowData>({
18
17
  table,
18
+ ...rest
19
19
  }: Props<TData>) => {
20
20
  const {
21
21
  getState,
@@ -33,13 +33,15 @@ export const MRT_BottomToolbar = <TData extends Record<string, any>>({
33
33
 
34
34
  const isMobile = useMediaQuery('(max-width:720px)');
35
35
 
36
- const toolbarProps = parseFromValuesOrFunc(muiBottomToolbarProps, { table });
36
+ const toolbarProps = {
37
+ ...parseFromValuesOrFunc(muiBottomToolbarProps, { table }),
38
+ ...rest,
39
+ };
37
40
 
38
41
  const stackAlertBanner = isMobile || !!renderBottomToolbarCustomActions;
39
42
 
40
43
  return (
41
- <Toolbar
42
- variant="dense"
44
+ <Box
43
45
  {...toolbarProps}
44
46
  ref={(node: HTMLDivElement) => {
45
47
  if (node) {
@@ -51,11 +53,11 @@ export const MRT_BottomToolbar = <TData extends Record<string, any>>({
51
53
  }
52
54
  }}
53
55
  sx={(theme) => ({
54
- ...commonToolbarStyles({ theme }),
56
+ ...getCommonToolbarStyles({ table, theme }),
55
57
  bottom: isFullScreen ? '0' : undefined,
56
58
  boxShadow: `0 1px 2px -1px ${alpha(
57
- theme.palette.common.black,
58
- 0.1,
59
+ theme.palette.grey[700],
60
+ 0.5,
59
61
  )} inset`,
60
62
  left: 0,
61
63
  position: isFullScreen ? 'fixed' : 'relative',
@@ -103,6 +105,6 @@ export const MRT_BottomToolbar = <TData extends Record<string, any>>({
103
105
  )}
104
106
  </Box>
105
107
  </Box>
106
- </Toolbar>
108
+ </Box>
107
109
  );
108
110
  };
@@ -1,31 +1,37 @@
1
1
  import Collapse from '@mui/material/Collapse';
2
- import LinearProgress from '@mui/material/LinearProgress';
2
+ import LinearProgress, {
3
+ type LinearProgressProps,
4
+ } from '@mui/material/LinearProgress';
3
5
  import { parseFromValuesOrFunc } from '../column.utils';
4
- import { type MRT_TableInstance } from '../types';
6
+ import { type MRT_RowData, type MRT_TableInstance } from '../types';
5
7
 
6
- interface Props<TData extends Record<string, any>> {
8
+ interface Props<TData extends MRT_RowData> extends LinearProgressProps {
7
9
  isTopToolbar: boolean;
8
10
  table: MRT_TableInstance<TData>;
9
11
  }
10
12
 
11
- export const MRT_LinearProgressBar = <TData extends Record<string, any>>({
13
+ export const MRT_LinearProgressBar = <TData extends MRT_RowData>({
12
14
  isTopToolbar,
13
15
  table,
16
+ ...rest
14
17
  }: Props<TData>) => {
15
18
  const {
16
19
  getState,
17
20
  options: { muiLinearProgressProps },
18
21
  } = table;
19
- const { showProgressBars } = getState();
22
+ const { isSaving, showProgressBars } = getState();
20
23
 
21
- const linearProgressProps = parseFromValuesOrFunc(muiLinearProgressProps, {
22
- isTopToolbar,
23
- table,
24
- });
24
+ const linearProgressProps = {
25
+ ...parseFromValuesOrFunc(muiLinearProgressProps, {
26
+ isTopToolbar,
27
+ table,
28
+ }),
29
+ ...rest,
30
+ };
25
31
 
26
32
  return (
27
33
  <Collapse
28
- in={showProgressBars}
34
+ in={showProgressBars !== false && (showProgressBars || isSaving)}
29
35
  mountOnEnter
30
36
  sx={{
31
37
  bottom: isTopToolbar ? 0 : undefined,
@@ -7,18 +7,25 @@ import PaginationItem from '@mui/material/PaginationItem';
7
7
  import Select from '@mui/material/Select';
8
8
  import Typography from '@mui/material/Typography';
9
9
  import { parseFromValuesOrFunc } from '../column.utils';
10
- import { type MRT_TableInstance } from '../types';
10
+ import { type MRT_RowData, type MRT_TableInstance } from '../types';
11
11
 
12
12
  const defaultRowsPerPage = [5, 10, 15, 20, 25, 30, 50, 100];
13
13
 
14
- interface Props<TData extends Record<string, any> = {}> {
14
+ interface Props<TData extends MRT_RowData>
15
+ extends Partial<
16
+ PaginationProps & {
17
+ rowsPerPageOptions?: number[];
18
+ showRowsPerPage?: boolean;
19
+ }
20
+ > {
15
21
  position?: 'bottom' | 'top';
16
22
  table: MRT_TableInstance<TData>;
17
23
  }
18
24
 
19
- export const MRT_TablePagination = <TData extends Record<string, any> = {}>({
25
+ export const MRT_TablePagination = <TData extends MRT_RowData>({
20
26
  position = 'bottom',
21
27
  table,
28
+ ...rest
22
29
  }: Props<TData>) => {
23
30
  const {
24
31
  getPrePaginationRowModel,
@@ -39,9 +46,12 @@ export const MRT_TablePagination = <TData extends Record<string, any> = {}>({
39
46
  showGlobalFilter,
40
47
  } = getState();
41
48
 
42
- const paginationProps = parseFromValuesOrFunc(muiPaginationProps, {
43
- table,
44
- });
49
+ const paginationProps = {
50
+ ...parseFromValuesOrFunc(muiPaginationProps, {
51
+ table,
52
+ }),
53
+ ...rest,
54
+ };
45
55
 
46
56
  const totalRowCount = rowCount ?? getPrePaginationRowModel().rows.length;
47
57
  const numberOfPages = Math.ceil(totalRowCount / pageSize);
@@ -54,7 +64,7 @@ export const MRT_TablePagination = <TData extends Record<string, any> = {}>({
54
64
  showFirstButton = showFirstLastPageButtons,
55
65
  showLastButton = showFirstLastPageButtons,
56
66
  showRowsPerPage = true,
57
- ...rest
67
+ ..._rest
58
68
  } = paginationProps ?? {};
59
69
 
60
70
  return (
@@ -73,7 +83,7 @@ export const MRT_TablePagination = <TData extends Record<string, any> = {}>({
73
83
  ? '3rem'
74
84
  : undefined,
75
85
  position: 'relative',
76
- px: '4px',
86
+ px: '8px',
77
87
  py: '12px',
78
88
  zIndex: 2,
79
89
  }}
@@ -119,13 +129,13 @@ export const MRT_TablePagination = <TData extends Record<string, any> = {}>({
119
129
  )}
120
130
  showFirstButton={showFirstButton}
121
131
  showLastButton={showLastButton}
122
- {...(rest as PaginationProps)}
132
+ {..._rest}
123
133
  />
124
134
  ) : paginationDisplayMode === 'default' ? (
125
135
  <>
126
136
  <Typography
127
137
  align="center"
128
- sx={{ mb: 0, minWidth: '10ch', mx: '4px' }}
138
+ sx={{ mb: 0, minWidth: '8ch', mx: '4px' }}
129
139
  variant="body2"
130
140
  >{`${
131
141
  lastRowIndex === 0 ? 0 : (firstRowIndex + 1).toLocaleString()
@@ -1,5 +1,5 @@
1
1
  import { Fragment } from 'react';
2
- import Alert from '@mui/material/Alert';
2
+ import Alert, { type AlertProps } from '@mui/material/Alert';
3
3
  import AlertTitle from '@mui/material/AlertTitle';
4
4
  import Box from '@mui/material/Box';
5
5
  import Chip from '@mui/material/Chip';
@@ -7,16 +7,17 @@ import Collapse from '@mui/material/Collapse';
7
7
  import Stack from '@mui/material/Stack';
8
8
  import { parseFromValuesOrFunc } from '../column.utils';
9
9
  import { MRT_SelectCheckbox } from '../inputs';
10
- import { type MRT_TableInstance } from '../types';
10
+ import { type MRT_RowData, type MRT_TableInstance } from '../types';
11
11
 
12
- interface Props<TData extends Record<string, any>> {
12
+ interface Props<TData extends MRT_RowData> extends AlertProps {
13
13
  stackAlertBanner?: boolean;
14
14
  table: MRT_TableInstance<TData>;
15
15
  }
16
16
 
17
- export const MRT_ToolbarAlertBanner = <TData extends Record<string, any>>({
17
+ export const MRT_ToolbarAlertBanner = <TData extends MRT_RowData>({
18
18
  stackAlertBanner,
19
19
  table,
20
+ ...rest
20
21
  }: Props<TData>) => {
21
22
  const {
22
23
  getPrePaginationRowModel,
@@ -36,9 +37,12 @@ export const MRT_ToolbarAlertBanner = <TData extends Record<string, any>>({
36
37
  } = table;
37
38
  const { density, grouping, showAlertBanner } = getState();
38
39
 
39
- const alertProps = parseFromValuesOrFunc(muiToolbarAlertBannerProps, {
40
- table,
41
- });
40
+ const alertProps = {
41
+ ...parseFromValuesOrFunc(muiToolbarAlertBannerProps, {
42
+ table,
43
+ }),
44
+ ...rest,
45
+ };
42
46
 
43
47
  const chipProps = parseFromValuesOrFunc(muiToolbarAlertBannerChipProps, {
44
48
  table,
@@ -1,16 +1,18 @@
1
1
  import { type DragEvent, useEffect } from 'react';
2
- import Box from '@mui/material/Box';
2
+ import Box, { type BoxProps } from '@mui/material/Box';
3
3
  import Fade from '@mui/material/Fade';
4
4
  import Typography from '@mui/material/Typography';
5
5
  import { alpha } from '@mui/material/styles';
6
- import { type MRT_TableInstance } from '../types';
6
+ import { parseFromValuesOrFunc } from '../column.utils';
7
+ import { type MRT_RowData, type MRT_TableInstance } from '../types';
7
8
 
8
- interface Props<TData extends Record<string, any>> {
9
+ interface Props<TData extends MRT_RowData> extends BoxProps {
9
10
  table: MRT_TableInstance<TData>;
10
11
  }
11
12
 
12
- export const MRT_ToolbarDropZone = <TData extends Record<string, any>>({
13
+ export const MRT_ToolbarDropZone = <TData extends MRT_RowData>({
13
14
  table,
15
+ ...rest
14
16
  }: Props<TData>) => {
15
17
  const {
16
18
  getState,
@@ -42,6 +44,7 @@ export const MRT_ToolbarDropZone = <TData extends Record<string, any>>({
42
44
  <Box
43
45
  className="Mui-ToolbarDropZone"
44
46
  onDragEnter={handleDragEnter}
47
+ {...rest}
45
48
  sx={(theme) => ({
46
49
  alignItems: 'center',
47
50
  backdropFilter: 'blur(4px)',
@@ -57,6 +60,7 @@ export const MRT_ToolbarDropZone = <TData extends Record<string, any>>({
57
60
  position: 'absolute',
58
61
  width: '100%',
59
62
  zIndex: 4,
63
+ ...(parseFromValuesOrFunc(rest?.sx, theme) as any),
60
64
  })}
61
65
  >
62
66
  <Typography fontStyle="italic">
@@ -1,17 +1,19 @@
1
- import Box from '@mui/material/Box';
1
+ import Box, { type BoxProps } from '@mui/material/Box';
2
2
  import { MRT_ShowHideColumnsButton } from '../buttons/MRT_ShowHideColumnsButton';
3
3
  import { MRT_ToggleDensePaddingButton } from '../buttons/MRT_ToggleDensePaddingButton';
4
4
  import { MRT_ToggleFiltersButton } from '../buttons/MRT_ToggleFiltersButton';
5
5
  import { MRT_ToggleFullScreenButton } from '../buttons/MRT_ToggleFullScreenButton';
6
6
  import { MRT_ToggleGlobalFilterButton } from '../buttons/MRT_ToggleGlobalFilterButton';
7
- import { type MRT_TableInstance } from '../types';
7
+ import { parseFromValuesOrFunc } from '../column.utils';
8
+ import { type MRT_RowData, type MRT_TableInstance } from '../types';
8
9
 
9
- interface Props<TData extends Record<string, any>> {
10
+ interface Props<TData extends MRT_RowData> extends BoxProps {
10
11
  table: MRT_TableInstance<TData>;
11
12
  }
12
13
 
13
- export const MRT_ToolbarInternalButtons = <TData extends Record<string, any>>({
14
+ export const MRT_ToolbarInternalButtons = <TData extends MRT_RowData>({
14
15
  table,
16
+ ...rest
15
17
  }: Props<TData>) => {
16
18
  const {
17
19
  options: {
@@ -31,11 +33,13 @@ export const MRT_ToolbarInternalButtons = <TData extends Record<string, any>>({
31
33
 
32
34
  return (
33
35
  <Box
34
- sx={{
36
+ {...rest}
37
+ sx={(theme) => ({
35
38
  alignItems: 'center',
36
39
  display: 'flex',
37
40
  zIndex: 3,
38
- }}
41
+ ...(parseFromValuesOrFunc(rest?.sx, theme) as any),
42
+ })}
39
43
  >
40
44
  {renderToolbarInternalActions?.({
41
45
  table,
@@ -1,7 +1,4 @@
1
1
  import Box from '@mui/material/Box';
2
- import Toolbar from '@mui/material/Toolbar';
3
- import { lighten } from '@mui/material/styles';
4
- import { type Theme } from '@mui/material/styles';
5
2
  import useMediaQuery from '@mui/material/useMediaQuery';
6
3
  import { MRT_LinearProgressBar } from './MRT_LinearProgressBar';
7
4
  import { MRT_TablePagination } from './MRT_TablePagination';
@@ -10,26 +7,14 @@ import { MRT_ToolbarDropZone } from './MRT_ToolbarDropZone';
10
7
  import { MRT_ToolbarInternalButtons } from './MRT_ToolbarInternalButtons';
11
8
  import { parseFromValuesOrFunc } from '../column.utils';
12
9
  import { MRT_GlobalFilterTextField } from '../inputs/MRT_GlobalFilterTextField';
13
- import { type MRT_TableInstance } from '../types';
10
+ import { getCommonToolbarStyles } from '../style.utils';
11
+ import { type MRT_RowData, type MRT_TableInstance } from '../types';
14
12
 
15
- export const commonToolbarStyles = ({ theme }: { theme: Theme }) => ({
16
- alignItems: 'flex-start',
17
- backgroundColor: lighten(theme.palette.background.default, 0.05),
18
- backgroundImage: 'none',
19
- display: 'grid',
20
- flexWrap: 'wrap-reverse',
21
- minHeight: '3.5rem',
22
- overflow: 'hidden',
23
- p: '0 !important',
24
- transition: 'all 150ms ease-in-out',
25
- zIndex: 1,
26
- });
27
-
28
- interface Props<TData extends Record<string, any>> {
13
+ interface Props<TData extends MRT_RowData> {
29
14
  table: MRT_TableInstance<TData>;
30
15
  }
31
16
 
32
- export const MRT_TopToolbar = <TData extends Record<string, any>>({
17
+ export const MRT_TopToolbar = <TData extends MRT_RowData>({
33
18
  table,
34
19
  }: Props<TData>) => {
35
20
  const {
@@ -58,8 +43,7 @@ export const MRT_TopToolbar = <TData extends Record<string, any>>({
58
43
  isMobile || !!renderTopToolbarCustomActions || showGlobalFilter;
59
44
 
60
45
  return (
61
- <Toolbar
62
- variant="dense"
46
+ <Box
63
47
  {...toolbarProps}
64
48
  ref={(ref: HTMLDivElement) => {
65
49
  topToolbarRef.current = ref;
@@ -69,9 +53,9 @@ export const MRT_TopToolbar = <TData extends Record<string, any>>({
69
53
  }
70
54
  }}
71
55
  sx={(theme) => ({
72
- position: isFullScreen ? 'sticky' : undefined,
56
+ ...getCommonToolbarStyles({ table, theme }),
57
+ position: isFullScreen ? 'sticky' : 'relative',
73
58
  top: isFullScreen ? '0' : undefined,
74
- ...commonToolbarStyles({ theme }),
75
59
  ...(parseFromValuesOrFunc(toolbarProps?.sx, theme) as any),
76
60
  })}
77
61
  >
@@ -89,6 +73,7 @@ export const MRT_TopToolbar = <TData extends Record<string, any>>({
89
73
  alignItems: 'flex-start',
90
74
  boxSizing: 'border-box',
91
75
  display: 'flex',
76
+ gap: '0.5rem',
92
77
  justifyContent: 'space-between',
93
78
  p: '0.5rem',
94
79
  position: stackAlertBanner ? 'relative' : 'absolute',
@@ -104,8 +89,10 @@ export const MRT_TopToolbar = <TData extends Record<string, any>>({
104
89
  {enableToolbarInternalActions ? (
105
90
  <Box
106
91
  sx={{
92
+ alignItems: 'center',
107
93
  display: 'flex',
108
94
  flexWrap: 'wrap-reverse',
95
+ gap: '0.5rem',
109
96
  justifyContent: 'flex-end',
110
97
  }}
111
98
  >
@@ -126,6 +113,6 @@ export const MRT_TopToolbar = <TData extends Record<string, any>>({
126
113
  <MRT_TablePagination position="top" table={table} />
127
114
  )}
128
115
  <MRT_LinearProgressBar isTopToolbar table={table} />
129
- </Toolbar>
116
+ </Box>
130
117
  );
131
118
  };