@mui/x-data-grid-premium 8.0.0-alpha.8 → 8.0.0-beta.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (419) hide show
  1. package/CHANGELOG.md +2566 -687
  2. package/DataGridPremium/DataGrid.d.ts +1 -1
  3. package/DataGridPremium/DataGridPremium.d.ts +6 -6
  4. package/DataGridPremium/DataGridPremium.js +61 -35
  5. package/DataGridPremium/index.d.ts +3 -3
  6. package/DataGridPremium/useDataGridPremiumComponent.d.ts +4 -4
  7. package/DataGridPremium/useDataGridPremiumComponent.js +5 -4
  8. package/DataGridPremium/useDataGridPremiumProps.d.ts +2 -2
  9. package/DataGridPremium/useDataGridPremiumProps.js +2 -2
  10. package/README.md +1 -1
  11. package/components/GridAggregationHeader.d.ts +3 -3
  12. package/components/GridAggregationHeader.js +13 -12
  13. package/components/GridAggregationRowOverlay.d.ts +3 -0
  14. package/components/GridAggregationRowOverlay.js +44 -0
  15. package/components/GridBottomContainer.d.ts +3 -0
  16. package/components/GridBottomContainer.js +51 -0
  17. package/components/GridColumnMenuAggregationItem.d.ts +2 -2
  18. package/components/GridColumnMenuAggregationItem.js +36 -46
  19. package/components/GridColumnMenuRowGroupItem.d.ts +1 -1
  20. package/components/GridColumnMenuRowUngroupItem.d.ts +1 -1
  21. package/components/GridDataSourceGroupingCriteriaCell.d.ts +2 -2
  22. package/components/GridDataSourceGroupingCriteriaCell.js +8 -12
  23. package/components/GridExcelExportMenuItem.d.ts +3 -3
  24. package/components/GridFooterCell.d.ts +2 -2
  25. package/components/GridFooterCell.js +5 -6
  26. package/components/GridGroupingColumnFooterCell.d.ts +1 -1
  27. package/components/GridGroupingColumnFooterCell.js +2 -1
  28. package/components/GridGroupingColumnLeafCell.d.ts +1 -1
  29. package/components/GridGroupingColumnLeafCell.js +3 -9
  30. package/components/GridGroupingCriteriaCell.d.ts +2 -2
  31. package/components/GridGroupingCriteriaCell.js +3 -8
  32. package/components/GridPremiumColumnMenu.d.ts +26 -26
  33. package/components/GridPremiumToolbar.d.ts +3 -0
  34. package/components/GridPremiumToolbar.js +31 -0
  35. package/components/export/ExportExcel.d.ts +29 -0
  36. package/components/export/ExportExcel.js +216 -0
  37. package/components/export/index.d.ts +1 -0
  38. package/components/export/index.js +16 -0
  39. package/components/index.d.ts +6 -5
  40. package/components/index.js +13 -1
  41. package/components/promptControl/GridToolbarPromptControl.d.ts +22 -22
  42. package/components/promptControl/GridToolbarPromptControl.js +33 -20
  43. package/components/promptControl/RecordButton.d.ts +9 -9
  44. package/components/promptControl/index.d.ts +1 -1
  45. package/components/reexports.d.ts +1 -1
  46. package/constants/dataGridPremiumDefaultSlotsComponents.d.ts +1 -1
  47. package/constants/dataGridPremiumDefaultSlotsComponents.js +5 -1
  48. package/esm/DataGridPremium/DataGrid.d.ts +8 -0
  49. package/esm/DataGridPremium/DataGridPremium.d.ts +16 -0
  50. package/esm/DataGridPremium/DataGridPremium.js +61 -35
  51. package/esm/DataGridPremium/index.d.ts +3 -0
  52. package/esm/DataGridPremium/useDataGridPremiumComponent.d.ts +4 -0
  53. package/esm/DataGridPremium/useDataGridPremiumComponent.js +6 -5
  54. package/esm/DataGridPremium/useDataGridPremiumProps.d.ts +6 -0
  55. package/esm/DataGridPremium/useDataGridPremiumProps.js +2 -2
  56. package/esm/components/GridAggregationHeader.d.ts +7 -0
  57. package/esm/components/GridAggregationHeader.js +13 -12
  58. package/esm/components/GridAggregationRowOverlay.d.ts +3 -0
  59. package/esm/components/GridAggregationRowOverlay.js +37 -0
  60. package/esm/components/GridBottomContainer.d.ts +3 -0
  61. package/esm/components/GridBottomContainer.js +43 -0
  62. package/esm/components/GridColumnMenuAggregationItem.d.ts +7 -0
  63. package/esm/components/GridColumnMenuAggregationItem.js +36 -46
  64. package/esm/components/GridColumnMenuRowGroupItem.d.ts +3 -0
  65. package/esm/components/GridColumnMenuRowUngroupItem.d.ts +3 -0
  66. package/esm/components/GridDataSourceGroupingCriteriaCell.d.ts +7 -0
  67. package/esm/components/GridDataSourceGroupingCriteriaCell.js +9 -13
  68. package/esm/components/GridExcelExportMenuItem.d.ts +9 -0
  69. package/esm/components/GridFooterCell.d.ts +9 -0
  70. package/esm/components/GridFooterCell.js +5 -6
  71. package/esm/components/GridGroupingColumnFooterCell.d.ts +4 -0
  72. package/esm/components/GridGroupingColumnFooterCell.js +2 -1
  73. package/esm/components/GridGroupingColumnLeafCell.d.ts +4 -0
  74. package/esm/components/GridGroupingColumnLeafCell.js +3 -8
  75. package/esm/components/GridGroupingCriteriaCell.d.ts +7 -0
  76. package/esm/components/GridGroupingCriteriaCell.js +3 -8
  77. package/esm/components/GridPremiumColumnMenu.d.ts +33 -0
  78. package/esm/components/GridPremiumToolbar.d.ts +3 -0
  79. package/esm/components/GridPremiumToolbar.js +23 -0
  80. package/esm/components/export/ExportExcel.d.ts +29 -0
  81. package/esm/components/export/ExportExcel.js +209 -0
  82. package/esm/components/export/index.d.ts +1 -0
  83. package/esm/components/export/index.js +1 -0
  84. package/esm/components/index.d.ts +6 -0
  85. package/esm/components/index.js +2 -1
  86. package/esm/components/promptControl/GridToolbarPromptControl.d.ts +26 -0
  87. package/esm/components/promptControl/GridToolbarPromptControl.js +33 -20
  88. package/esm/components/promptControl/RecordButton.d.ts +16 -0
  89. package/esm/components/promptControl/index.d.ts +1 -0
  90. package/esm/components/reexports.d.ts +1 -0
  91. package/esm/constants/dataGridPremiumDefaultSlotsComponents.d.ts +2 -0
  92. package/esm/constants/dataGridPremiumDefaultSlotsComponents.js +5 -1
  93. package/esm/hooks/features/aggregation/createAggregationLookup.d.ts +17 -0
  94. package/esm/hooks/features/aggregation/createAggregationLookup.js +3 -3
  95. package/esm/hooks/features/aggregation/gridAggregationFunctions.d.ts +8 -0
  96. package/esm/hooks/features/aggregation/gridAggregationInterfaces.d.ts +129 -0
  97. package/esm/hooks/features/aggregation/gridAggregationSelectors.d.ts +13 -0
  98. package/esm/hooks/features/aggregation/gridAggregationSelectors.js +2 -2
  99. package/esm/hooks/features/aggregation/gridAggregationUtils.d.ts +62 -0
  100. package/esm/hooks/features/aggregation/gridAggregationUtils.js +1 -1
  101. package/esm/hooks/features/aggregation/index.d.ts +4 -0
  102. package/esm/hooks/features/aggregation/useGridAggregation.d.ts +6 -0
  103. package/esm/hooks/features/aggregation/useGridAggregation.js +6 -8
  104. package/esm/hooks/features/aggregation/useGridAggregationPreProcessors.d.ts +4 -0
  105. package/esm/hooks/features/aggregation/useGridAggregationPreProcessors.js +7 -6
  106. package/esm/hooks/features/aggregation/wrapColumnWithAggregation.d.ts +81 -0
  107. package/esm/hooks/features/aggregation/wrapColumnWithAggregation.js +6 -5
  108. package/esm/hooks/features/cellSelection/gridCellSelectionInterfaces.d.ts +40 -0
  109. package/esm/hooks/features/cellSelection/gridCellSelectionSelector.d.ts +2 -0
  110. package/esm/hooks/features/cellSelection/gridCellSelectionSelector.js +2 -1
  111. package/esm/hooks/features/cellSelection/index.d.ts +1 -0
  112. package/esm/hooks/features/cellSelection/useGridCellSelection.d.ts +6 -0
  113. package/esm/hooks/features/cellSelection/useGridCellSelection.js +15 -13
  114. package/esm/hooks/features/clipboard/useGridClipboardImport.d.ts +4 -0
  115. package/esm/hooks/features/clipboard/useGridClipboardImport.js +5 -5
  116. package/esm/hooks/features/dataSource/models.d.ts +54 -0
  117. package/esm/hooks/features/dataSource/useGridDataSourcePremium.d.ts +4 -0
  118. package/esm/hooks/features/dataSource/useGridDataSourcePremium.js +13 -7
  119. package/esm/hooks/features/export/gridExcelExportInterface.d.ts +71 -0
  120. package/esm/hooks/features/export/index.d.ts +2 -0
  121. package/esm/hooks/features/export/index.js +1 -1
  122. package/esm/hooks/features/export/serializer/excelSerializer.d.ts +40 -0
  123. package/esm/hooks/features/export/serializer/excelSerializer.js +69 -180
  124. package/esm/hooks/features/export/serializer/setupExcelExportWebWorker.d.ts +2 -0
  125. package/esm/hooks/features/export/serializer/setupExcelExportWebWorker.js +53 -0
  126. package/esm/hooks/features/export/serializer/utils.d.ts +36 -0
  127. package/esm/hooks/features/export/serializer/utils.js +93 -0
  128. package/esm/hooks/features/export/useGridExcelExport.d.ts +11 -0
  129. package/esm/hooks/features/export/useGridExcelExport.js +11 -5
  130. package/esm/hooks/features/index.d.ts +5 -0
  131. package/esm/hooks/features/promptControl/api.d.ts +2 -0
  132. package/esm/hooks/features/promptControl/index.d.ts +2 -0
  133. package/esm/hooks/features/promptControl/types.d.ts +25 -0
  134. package/esm/hooks/features/rowGrouping/createGroupingColDef.d.ts +57 -0
  135. package/esm/hooks/features/rowGrouping/createGroupingColDef.js +5 -5
  136. package/esm/hooks/features/rowGrouping/gridRowGroupingInterfaces.d.ts +44 -0
  137. package/esm/hooks/features/rowGrouping/gridRowGroupingSelector.d.ts +3 -0
  138. package/esm/hooks/features/rowGrouping/gridRowGroupingSelector.js +2 -2
  139. package/esm/hooks/features/rowGrouping/gridRowGroupingUtils.d.ts +54 -0
  140. package/esm/hooks/features/rowGrouping/gridRowGroupingUtils.js +5 -3
  141. package/esm/hooks/features/rowGrouping/index.d.ts +3 -0
  142. package/esm/hooks/features/rowGrouping/useGridDataSourceRowGroupingPreProcessors.d.ts +4 -0
  143. package/esm/hooks/features/rowGrouping/useGridDataSourceRowGroupingPreProcessors.js +3 -3
  144. package/esm/hooks/features/rowGrouping/useGridRowGrouping.d.ts +11 -0
  145. package/esm/hooks/features/rowGrouping/useGridRowGrouping.js +4 -5
  146. package/esm/hooks/features/rowGrouping/useGridRowGroupingPreProcessors.d.ts +4 -0
  147. package/esm/hooks/features/rowGrouping/useGridRowGroupingPreProcessors.js +5 -5
  148. package/esm/hooks/features/rows/index.d.ts +1 -0
  149. package/esm/hooks/features/rows/useGridRowAriaAttributes.d.ts +1 -0
  150. package/esm/hooks/index.d.ts +2 -0
  151. package/esm/hooks/utils/index.d.ts +1 -0
  152. package/esm/hooks/utils/useGridApiContext.d.ts +4 -0
  153. package/esm/hooks/utils/useGridApiRef.d.ts +4 -0
  154. package/esm/hooks/utils/useGridAriaAttributes.d.ts +2 -0
  155. package/esm/hooks/utils/useGridPrivateApiContext.d.ts +2 -0
  156. package/esm/hooks/utils/useGridRootProps.d.ts +2 -0
  157. package/esm/hooks/utils/useKeepGroupedColumnsHidden.d.ts +12 -0
  158. package/esm/hooks/utils/useKeepGroupedColumnsHidden.js +2 -2
  159. package/esm/index.d.ts +23 -0
  160. package/esm/index.js +6 -5
  161. package/esm/locales.d.ts +1 -0
  162. package/esm/material/icons.d.ts +15 -0
  163. package/esm/material/index.d.ts +8 -0
  164. package/esm/models/dataGridPremiumProps.d.ts +162 -0
  165. package/esm/models/gridApiPremium.d.ts +14 -0
  166. package/esm/models/gridGroupingValueGetter.d.ts +4 -0
  167. package/esm/models/gridPastedValueParser.d.ts +4 -0
  168. package/esm/models/gridPremiumIconSlotsComponent.d.ts +28 -0
  169. package/esm/models/gridPremiumSlotsComponent.d.ts +7 -0
  170. package/esm/models/gridStatePremium.d.ts +18 -0
  171. package/esm/models/index.d.ts +4 -0
  172. package/esm/package.json +1 -0
  173. package/esm/setupExcelExportWebWorker.d.ts +1 -0
  174. package/esm/setupExcelExportWebWorker.js +1 -0
  175. package/esm/themeAugmentation/index.d.ts +2 -0
  176. package/esm/themeAugmentation/overrides.d.ts +7 -0
  177. package/esm/themeAugmentation/props.d.ts +15 -0
  178. package/esm/typeOverloads/index.d.ts +2 -0
  179. package/esm/typeOverloads/modules.d.ts +97 -0
  180. package/esm/typeOverloads/reexports.d.ts +17 -0
  181. package/esm/utils/releaseInfo.d.ts +1 -0
  182. package/esm/utils/releaseInfo.js +1 -1
  183. package/hooks/features/aggregation/createAggregationLookup.d.ts +17 -11
  184. package/hooks/features/aggregation/createAggregationLookup.js +2 -2
  185. package/hooks/features/aggregation/gridAggregationFunctions.d.ts +7 -7
  186. package/hooks/features/aggregation/gridAggregationInterfaces.d.ts +81 -82
  187. package/hooks/features/aggregation/gridAggregationSelectors.d.ts +3 -3
  188. package/hooks/features/aggregation/gridAggregationSelectors.js +1 -2
  189. package/hooks/features/aggregation/gridAggregationUtils.d.ts +43 -26
  190. package/hooks/features/aggregation/gridAggregationUtils.js +1 -1
  191. package/hooks/features/aggregation/index.d.ts +4 -4
  192. package/hooks/features/aggregation/useGridAggregation.d.ts +4 -4
  193. package/hooks/features/aggregation/useGridAggregation.js +6 -8
  194. package/hooks/features/aggregation/useGridAggregationPreProcessors.d.ts +4 -4
  195. package/hooks/features/aggregation/useGridAggregationPreProcessors.js +7 -6
  196. package/hooks/features/aggregation/wrapColumnWithAggregation.d.ts +68 -62
  197. package/hooks/features/aggregation/wrapColumnWithAggregation.js +6 -5
  198. package/hooks/features/cellSelection/gridCellSelectionInterfaces.d.ts +34 -34
  199. package/hooks/features/cellSelection/gridCellSelectionSelector.d.ts +2 -2
  200. package/hooks/features/cellSelection/gridCellSelectionSelector.js +2 -2
  201. package/hooks/features/cellSelection/index.d.ts +1 -1
  202. package/hooks/features/cellSelection/useGridCellSelection.d.ts +4 -4
  203. package/hooks/features/cellSelection/useGridCellSelection.js +13 -11
  204. package/hooks/features/clipboard/useGridClipboardImport.d.ts +3 -3
  205. package/hooks/features/clipboard/useGridClipboardImport.js +4 -4
  206. package/hooks/features/dataSource/models.d.ts +41 -34
  207. package/hooks/features/dataSource/useGridDataSourcePremium.d.ts +4 -4
  208. package/hooks/features/dataSource/useGridDataSourcePremium.js +13 -7
  209. package/hooks/features/export/gridExcelExportInterface.d.ts +52 -52
  210. package/hooks/features/export/index.d.ts +2 -2
  211. package/hooks/features/export/index.js +2 -2
  212. package/hooks/features/export/serializer/excelSerializer.d.ts +25 -52
  213. package/hooks/features/export/serializer/excelSerializer.js +74 -187
  214. package/hooks/features/export/serializer/setupExcelExportWebWorker.d.ts +2 -0
  215. package/hooks/features/export/serializer/setupExcelExportWebWorker.js +59 -0
  216. package/hooks/features/export/serializer/utils.d.ts +36 -0
  217. package/hooks/features/export/serializer/utils.js +106 -0
  218. package/hooks/features/export/useGridExcelExport.d.ts +4 -4
  219. package/hooks/features/export/useGridExcelExport.js +10 -3
  220. package/hooks/features/index.d.ts +5 -5
  221. package/hooks/features/promptControl/api.d.ts +2 -2
  222. package/hooks/features/promptControl/index.d.ts +2 -2
  223. package/hooks/features/promptControl/types.d.ts +15 -15
  224. package/hooks/features/rowGrouping/createGroupingColDef.d.ts +45 -33
  225. package/hooks/features/rowGrouping/createGroupingColDef.js +4 -4
  226. package/hooks/features/rowGrouping/gridRowGroupingInterfaces.d.ts +32 -32
  227. package/hooks/features/rowGrouping/gridRowGroupingSelector.d.ts +2 -2
  228. package/hooks/features/rowGrouping/gridRowGroupingSelector.js +2 -2
  229. package/hooks/features/rowGrouping/gridRowGroupingUtils.d.ts +32 -24
  230. package/hooks/features/rowGrouping/gridRowGroupingUtils.js +4 -2
  231. package/hooks/features/rowGrouping/index.d.ts +3 -3
  232. package/hooks/features/rowGrouping/useGridDataSourceRowGroupingPreProcessors.d.ts +4 -4
  233. package/hooks/features/rowGrouping/useGridDataSourceRowGroupingPreProcessors.js +3 -3
  234. package/hooks/features/rowGrouping/useGridRowGrouping.d.ts +4 -4
  235. package/hooks/features/rowGrouping/useGridRowGrouping.js +4 -5
  236. package/hooks/features/rowGrouping/useGridRowGroupingPreProcessors.d.ts +4 -4
  237. package/hooks/features/rowGrouping/useGridRowGroupingPreProcessors.js +5 -5
  238. package/hooks/features/rows/index.d.ts +1 -1
  239. package/hooks/features/rows/useGridRowAriaAttributes.d.ts +1 -1
  240. package/hooks/index.d.ts +2 -2
  241. package/hooks/utils/index.d.ts +1 -1
  242. package/hooks/utils/useGridApiContext.d.ts +4 -2
  243. package/hooks/utils/useGridApiRef.d.ts +4 -2
  244. package/hooks/utils/useGridAriaAttributes.d.ts +1 -1
  245. package/hooks/utils/useGridPrivateApiContext.d.ts +2 -2
  246. package/hooks/utils/useGridRootProps.d.ts +2 -2
  247. package/hooks/utils/useKeepGroupedColumnsHidden.d.ts +5 -5
  248. package/hooks/utils/useKeepGroupedColumnsHidden.js +2 -2
  249. package/index.d.ts +9 -17
  250. package/index.js +2 -11
  251. package/locales.d.ts +1 -1
  252. package/material/icons.d.ts +6 -6
  253. package/material/index.d.ts +6 -6
  254. package/models/dataGridPremiumProps.d.ts +141 -136
  255. package/models/gridApiPremium.d.ts +4 -6
  256. package/models/gridGroupingValueGetter.d.ts +3 -2
  257. package/models/gridPastedValueParser.d.ts +3 -2
  258. package/models/gridPremiumIconSlotsComponent.d.ts +26 -26
  259. package/models/gridPremiumSlotsComponent.d.ts +2 -3
  260. package/models/gridStatePremium.d.ts +7 -7
  261. package/models/index.d.ts +4 -4
  262. package/modern/DataGridPremium/DataGrid.d.ts +8 -0
  263. package/modern/DataGridPremium/DataGridPremium.d.ts +16 -0
  264. package/modern/DataGridPremium/DataGridPremium.js +61 -35
  265. package/modern/DataGridPremium/index.d.ts +3 -0
  266. package/modern/DataGridPremium/useDataGridPremiumComponent.d.ts +4 -0
  267. package/modern/DataGridPremium/useDataGridPremiumComponent.js +6 -5
  268. package/modern/DataGridPremium/useDataGridPremiumProps.d.ts +6 -0
  269. package/modern/DataGridPremium/useDataGridPremiumProps.js +2 -2
  270. package/modern/components/GridAggregationHeader.d.ts +7 -0
  271. package/modern/components/GridAggregationHeader.js +13 -12
  272. package/modern/components/GridAggregationRowOverlay.d.ts +3 -0
  273. package/modern/components/GridAggregationRowOverlay.js +37 -0
  274. package/modern/components/GridBottomContainer.d.ts +3 -0
  275. package/modern/components/GridBottomContainer.js +43 -0
  276. package/modern/components/GridColumnMenuAggregationItem.d.ts +7 -0
  277. package/modern/components/GridColumnMenuAggregationItem.js +36 -46
  278. package/modern/components/GridColumnMenuRowGroupItem.d.ts +3 -0
  279. package/modern/components/GridColumnMenuRowUngroupItem.d.ts +3 -0
  280. package/modern/components/GridDataSourceGroupingCriteriaCell.d.ts +7 -0
  281. package/modern/components/GridDataSourceGroupingCriteriaCell.js +9 -13
  282. package/modern/components/GridExcelExportMenuItem.d.ts +9 -0
  283. package/modern/components/GridFooterCell.d.ts +9 -0
  284. package/modern/components/GridFooterCell.js +5 -6
  285. package/modern/components/GridGroupingColumnFooterCell.d.ts +4 -0
  286. package/modern/components/GridGroupingColumnFooterCell.js +2 -1
  287. package/modern/components/GridGroupingColumnLeafCell.d.ts +4 -0
  288. package/modern/components/GridGroupingColumnLeafCell.js +3 -8
  289. package/modern/components/GridGroupingCriteriaCell.d.ts +7 -0
  290. package/modern/components/GridGroupingCriteriaCell.js +3 -8
  291. package/modern/components/GridPremiumColumnMenu.d.ts +33 -0
  292. package/modern/components/GridPremiumToolbar.d.ts +3 -0
  293. package/modern/components/GridPremiumToolbar.js +23 -0
  294. package/modern/components/export/ExportExcel.d.ts +29 -0
  295. package/modern/components/export/ExportExcel.js +209 -0
  296. package/modern/components/export/index.d.ts +1 -0
  297. package/modern/components/export/index.js +1 -0
  298. package/modern/components/index.d.ts +6 -0
  299. package/modern/components/index.js +2 -1
  300. package/modern/components/promptControl/GridToolbarPromptControl.d.ts +26 -0
  301. package/modern/components/promptControl/GridToolbarPromptControl.js +33 -20
  302. package/modern/components/promptControl/RecordButton.d.ts +16 -0
  303. package/modern/components/promptControl/index.d.ts +1 -0
  304. package/modern/components/reexports.d.ts +1 -0
  305. package/modern/constants/dataGridPremiumDefaultSlotsComponents.d.ts +2 -0
  306. package/modern/constants/dataGridPremiumDefaultSlotsComponents.js +5 -1
  307. package/modern/hooks/features/aggregation/createAggregationLookup.d.ts +17 -0
  308. package/modern/hooks/features/aggregation/createAggregationLookup.js +3 -3
  309. package/modern/hooks/features/aggregation/gridAggregationFunctions.d.ts +8 -0
  310. package/modern/hooks/features/aggregation/gridAggregationInterfaces.d.ts +129 -0
  311. package/modern/hooks/features/aggregation/gridAggregationSelectors.d.ts +13 -0
  312. package/modern/hooks/features/aggregation/gridAggregationSelectors.js +2 -2
  313. package/modern/hooks/features/aggregation/gridAggregationUtils.d.ts +62 -0
  314. package/modern/hooks/features/aggregation/gridAggregationUtils.js +1 -1
  315. package/modern/hooks/features/aggregation/index.d.ts +4 -0
  316. package/modern/hooks/features/aggregation/useGridAggregation.d.ts +6 -0
  317. package/modern/hooks/features/aggregation/useGridAggregation.js +6 -8
  318. package/modern/hooks/features/aggregation/useGridAggregationPreProcessors.d.ts +4 -0
  319. package/modern/hooks/features/aggregation/useGridAggregationPreProcessors.js +7 -6
  320. package/modern/hooks/features/aggregation/wrapColumnWithAggregation.d.ts +81 -0
  321. package/modern/hooks/features/aggregation/wrapColumnWithAggregation.js +6 -5
  322. package/modern/hooks/features/cellSelection/gridCellSelectionInterfaces.d.ts +40 -0
  323. package/modern/hooks/features/cellSelection/gridCellSelectionSelector.d.ts +2 -0
  324. package/modern/hooks/features/cellSelection/gridCellSelectionSelector.js +2 -1
  325. package/modern/hooks/features/cellSelection/index.d.ts +1 -0
  326. package/modern/hooks/features/cellSelection/useGridCellSelection.d.ts +6 -0
  327. package/modern/hooks/features/cellSelection/useGridCellSelection.js +15 -13
  328. package/modern/hooks/features/clipboard/useGridClipboardImport.d.ts +4 -0
  329. package/modern/hooks/features/clipboard/useGridClipboardImport.js +5 -5
  330. package/modern/hooks/features/dataSource/models.d.ts +54 -0
  331. package/modern/hooks/features/dataSource/useGridDataSourcePremium.d.ts +4 -0
  332. package/modern/hooks/features/dataSource/useGridDataSourcePremium.js +13 -7
  333. package/modern/hooks/features/export/gridExcelExportInterface.d.ts +71 -0
  334. package/modern/hooks/features/export/index.d.ts +2 -0
  335. package/modern/hooks/features/export/index.js +1 -1
  336. package/modern/hooks/features/export/serializer/excelSerializer.d.ts +40 -0
  337. package/modern/hooks/features/export/serializer/excelSerializer.js +69 -180
  338. package/modern/hooks/features/export/serializer/setupExcelExportWebWorker.d.ts +2 -0
  339. package/modern/hooks/features/export/serializer/setupExcelExportWebWorker.js +53 -0
  340. package/modern/hooks/features/export/serializer/utils.d.ts +36 -0
  341. package/modern/hooks/features/export/serializer/utils.js +93 -0
  342. package/modern/hooks/features/export/useGridExcelExport.d.ts +11 -0
  343. package/modern/hooks/features/export/useGridExcelExport.js +11 -5
  344. package/modern/hooks/features/index.d.ts +5 -0
  345. package/modern/hooks/features/promptControl/api.d.ts +2 -0
  346. package/modern/hooks/features/promptControl/index.d.ts +2 -0
  347. package/modern/hooks/features/promptControl/types.d.ts +25 -0
  348. package/modern/hooks/features/rowGrouping/createGroupingColDef.d.ts +57 -0
  349. package/modern/hooks/features/rowGrouping/createGroupingColDef.js +5 -5
  350. package/modern/hooks/features/rowGrouping/gridRowGroupingInterfaces.d.ts +44 -0
  351. package/modern/hooks/features/rowGrouping/gridRowGroupingSelector.d.ts +3 -0
  352. package/modern/hooks/features/rowGrouping/gridRowGroupingSelector.js +2 -2
  353. package/modern/hooks/features/rowGrouping/gridRowGroupingUtils.d.ts +54 -0
  354. package/modern/hooks/features/rowGrouping/gridRowGroupingUtils.js +5 -3
  355. package/modern/hooks/features/rowGrouping/index.d.ts +3 -0
  356. package/modern/hooks/features/rowGrouping/useGridDataSourceRowGroupingPreProcessors.d.ts +4 -0
  357. package/modern/hooks/features/rowGrouping/useGridDataSourceRowGroupingPreProcessors.js +3 -3
  358. package/modern/hooks/features/rowGrouping/useGridRowGrouping.d.ts +11 -0
  359. package/modern/hooks/features/rowGrouping/useGridRowGrouping.js +4 -5
  360. package/modern/hooks/features/rowGrouping/useGridRowGroupingPreProcessors.d.ts +4 -0
  361. package/modern/hooks/features/rowGrouping/useGridRowGroupingPreProcessors.js +5 -5
  362. package/modern/hooks/features/rows/index.d.ts +1 -0
  363. package/modern/hooks/features/rows/useGridRowAriaAttributes.d.ts +1 -0
  364. package/modern/hooks/index.d.ts +2 -0
  365. package/modern/hooks/utils/index.d.ts +1 -0
  366. package/modern/hooks/utils/useGridApiContext.d.ts +4 -0
  367. package/modern/hooks/utils/useGridApiRef.d.ts +4 -0
  368. package/modern/hooks/utils/useGridAriaAttributes.d.ts +2 -0
  369. package/modern/hooks/utils/useGridPrivateApiContext.d.ts +2 -0
  370. package/modern/hooks/utils/useGridRootProps.d.ts +2 -0
  371. package/modern/hooks/utils/useKeepGroupedColumnsHidden.d.ts +12 -0
  372. package/modern/hooks/utils/useKeepGroupedColumnsHidden.js +2 -2
  373. package/modern/index.d.ts +23 -0
  374. package/modern/index.js +1 -7
  375. package/modern/locales.d.ts +1 -0
  376. package/modern/material/icons.d.ts +15 -0
  377. package/modern/material/index.d.ts +8 -0
  378. package/modern/models/dataGridPremiumProps.d.ts +162 -0
  379. package/modern/models/gridApiPremium.d.ts +14 -0
  380. package/modern/models/gridGroupingValueGetter.d.ts +4 -0
  381. package/modern/models/gridPastedValueParser.d.ts +4 -0
  382. package/modern/models/gridPremiumIconSlotsComponent.d.ts +28 -0
  383. package/modern/models/gridPremiumSlotsComponent.d.ts +7 -0
  384. package/modern/models/gridStatePremium.d.ts +18 -0
  385. package/modern/models/index.d.ts +4 -0
  386. package/modern/package.json +1 -0
  387. package/modern/setupExcelExportWebWorker.d.ts +1 -0
  388. package/modern/setupExcelExportWebWorker.js +1 -0
  389. package/modern/themeAugmentation/index.d.ts +2 -0
  390. package/modern/themeAugmentation/overrides.d.ts +7 -0
  391. package/modern/themeAugmentation/props.d.ts +15 -0
  392. package/modern/typeOverloads/index.d.ts +2 -0
  393. package/modern/typeOverloads/modules.d.ts +97 -0
  394. package/modern/typeOverloads/reexports.d.ts +17 -0
  395. package/modern/utils/releaseInfo.d.ts +1 -0
  396. package/modern/utils/releaseInfo.js +1 -1
  397. package/package.json +42 -9
  398. package/setupExcelExportWebWorker.d.ts +1 -0
  399. package/setupExcelExportWebWorker.js +12 -0
  400. package/themeAugmentation/index.d.ts +2 -2
  401. package/themeAugmentation/overrides.d.ts +3 -4
  402. package/themeAugmentation/props.d.ts +9 -11
  403. package/tsconfig.build.tsbuildinfo +1 -0
  404. package/typeOverloads/index.d.ts +1 -1
  405. package/typeOverloads/modules.d.ts +75 -82
  406. package/typeOverloads/reexports.d.ts +5 -5
  407. package/utils/releaseInfo.d.ts +1 -1
  408. package/utils/releaseInfo.js +1 -1
  409. package/DataGridPremium/package.json +0 -6
  410. package/components/package.json +0 -6
  411. package/esm/hooks/features/dataSource/cache.js +0 -3
  412. package/hooks/features/dataSource/cache.d.ts +0 -2
  413. package/hooks/features/dataSource/cache.js +0 -9
  414. package/hooks/package.json +0 -6
  415. package/material/package.json +0 -6
  416. package/models/package.json +0 -6
  417. package/modern/hooks/features/dataSource/cache.js +0 -3
  418. package/themeAugmentation/package.json +0 -6
  419. package/typeOverloads/package.json +0 -6
@@ -5,8 +5,6 @@ const _excluded = ["native"];
5
5
  import * as React from 'react';
6
6
  import PropTypes from 'prop-types';
7
7
  import { useGridSelector } from '@mui/x-data-grid-pro';
8
- import FormControl from '@mui/material/FormControl';
9
- import InputLabel from '@mui/material/InputLabel';
10
8
  import { unstable_useId as useId } from '@mui/utils';
11
9
  import { useGridApiContext } from "../hooks/utils/useGridApiContext.js";
12
10
  import { useGridRootProps } from "../hooks/utils/useGridRootProps.js";
@@ -26,8 +24,8 @@ function GridColumnMenuAggregationItem(props) {
26
24
  const availableAggregationFunctions = React.useMemo(() => getAvailableAggregationFunctions({
27
25
  aggregationFunctions: rootProps.aggregationFunctions,
28
26
  colDef,
29
- isDataSource: !!rootProps.unstable_dataSource
30
- }), [colDef, rootProps.aggregationFunctions, rootProps.unstable_dataSource]);
27
+ isDataSource: !!rootProps.dataSource
28
+ }), [colDef, rootProps.aggregationFunctions, rootProps.dataSource]);
31
29
  const _ref = rootProps.slotProps?.baseSelect || {},
32
30
  {
33
31
  native: isBaseSelectNative = false
@@ -43,12 +41,12 @@ function GridColumnMenuAggregationItem(props) {
43
41
  colDef,
44
42
  aggregationFunctionName,
45
43
  aggregationFunction: rootProps.aggregationFunctions[aggregationFunctionName],
46
- isDataSource: !!rootProps.unstable_dataSource
44
+ isDataSource: !!rootProps.dataSource
47
45
  })) {
48
46
  return aggregationFunctionName;
49
47
  }
50
48
  return '';
51
- }, [rootProps.aggregationFunctions, rootProps.unstable_dataSource, aggregationModel, colDef]);
49
+ }, [rootProps.aggregationFunctions, rootProps.dataSource, aggregationModel, colDef]);
52
50
  const handleAggregationItemChange = event => {
53
51
  const newAggregationItem = event.target?.value || undefined;
54
52
  const currentModel = gridAggregationModelSelector(apiRef);
@@ -77,50 +75,42 @@ function GridColumnMenuAggregationItem(props) {
77
75
  fontSize: "small"
78
76
  }),
79
77
  onKeyDown: handleMenuItemKeyDown,
80
- children: /*#__PURE__*/_jsxs(FormControl, {
81
- size: "small",
78
+ children: /*#__PURE__*/_jsxs(rootProps.slots.baseSelect, _extends({
79
+ labelId: `${id}-label`,
80
+ id: `${id}-input`,
81
+ value: selectedAggregationRule,
82
+ label: label,
83
+ onChange: handleAggregationItemChange,
84
+ onKeyDown: handleSelectKeyDown,
85
+ onBlur: event => event.stopPropagation(),
86
+ native: isBaseSelectNative,
82
87
  fullWidth: true,
83
- sx: {
88
+ size: "small",
89
+ style: {
84
90
  minWidth: 150
85
91
  },
86
- children: [/*#__PURE__*/_jsx(InputLabel, {
87
- id: `${id}-label`,
88
- htmlFor: `${id}-input`,
89
- children: label
90
- }), /*#__PURE__*/_jsxs(rootProps.slots.baseSelect, _extends({
91
- labelId: `${id}-label`,
92
- inputRef: inputRef,
93
- id: `${id}-input`,
94
- value: selectedAggregationRule,
95
- label: label,
96
- color: "primary",
97
- onChange: handleAggregationItemChange,
98
- MenuProps: {
99
- PaperProps: {
100
- onKeyDown: handleSelectKeyDown
101
- }
102
- },
103
- onBlur: event => event.stopPropagation(),
92
+ slotProps: {
93
+ htmlInput: {
94
+ ref: inputRef
95
+ }
96
+ }
97
+ }, baseSelectProps, {
98
+ children: [/*#__PURE__*/_jsx(rootProps.slots.baseSelectOption, _extends({}, baseSelectOptionProps, {
104
99
  native: isBaseSelectNative,
105
- fullWidth: true
106
- }, baseSelectProps, {
107
- children: [/*#__PURE__*/_jsx(rootProps.slots.baseSelectOption, _extends({}, baseSelectOptionProps, {
108
- native: isBaseSelectNative,
109
- value: "",
110
- children: "..."
111
- })), availableAggregationFunctions.map(aggFunc => /*#__PURE__*/_createElement(rootProps.slots.baseSelectOption, _extends({}, baseSelectOptionProps, {
112
- key: aggFunc,
113
- value: aggFunc,
114
- native: isBaseSelectNative
115
- }), getAggregationFunctionLabel({
116
- apiRef,
117
- aggregationRule: {
118
- aggregationFunctionName: aggFunc,
119
- aggregationFunction: rootProps.aggregationFunctions[aggFunc]
120
- }
121
- })))]
122
- }))]
123
- })
100
+ value: "",
101
+ children: "..."
102
+ })), availableAggregationFunctions.map(aggFunc => /*#__PURE__*/_createElement(rootProps.slots.baseSelectOption, _extends({}, baseSelectOptionProps, {
103
+ key: aggFunc,
104
+ value: aggFunc,
105
+ native: isBaseSelectNative
106
+ }), getAggregationFunctionLabel({
107
+ apiRef,
108
+ aggregationRule: {
109
+ aggregationFunctionName: aggFunc,
110
+ aggregationFunction: rootProps.aggregationFunctions[aggFunc]
111
+ }
112
+ })))]
113
+ }))
124
114
  });
125
115
  }
126
116
  process.env.NODE_ENV !== "production" ? GridColumnMenuAggregationItem.propTypes = {
@@ -0,0 +1,3 @@
1
+ import * as React from 'react';
2
+ import { GridColumnMenuItemProps } from '@mui/x-data-grid-pro';
3
+ export declare function GridColumnMenuRowGroupItem(props: GridColumnMenuItemProps): React.JSX.Element | null;
@@ -0,0 +1,3 @@
1
+ import * as React from 'react';
2
+ import { GridColumnMenuItemProps } from '@mui/x-data-grid-pro';
3
+ export declare function GridColumnMenuRowUngroupItem(props: GridColumnMenuItemProps): React.JSX.Element | null;
@@ -0,0 +1,7 @@
1
+ import * as React from 'react';
2
+ import { GridRenderCellParams, GridGroupNode } from '@mui/x-data-grid-pro';
3
+ interface GridGroupingCriteriaCellProps extends GridRenderCellParams<any, any, any, GridGroupNode> {
4
+ hideDescendantCount?: boolean;
5
+ }
6
+ export declare function GridDataSourceGroupingCriteriaCell(props: GridGroupingCriteriaCellProps): React.JSX.Element;
7
+ export {};
@@ -1,8 +1,7 @@
1
1
  import _extends from "@babel/runtime/helpers/esm/extends";
2
2
  import * as React from 'react';
3
3
  import { unstable_composeClasses as composeClasses } from '@mui/utils';
4
- import Box from '@mui/material/Box';
5
- import { useGridPrivateApiContext } from '@mui/x-data-grid-pro/internals';
4
+ import { useGridPrivateApiContext, gridDataSourceErrorSelector, gridDataSourceLoadingIdSelector, gridRowSelector, vars } from '@mui/x-data-grid-pro/internals';
6
5
  import { useGridSelector, getDataGridUtilityClass } from '@mui/x-data-grid-pro';
7
6
  import { useGridApiContext } from "../hooks/utils/useGridApiContext.js";
8
7
  import { useGridRootProps } from "../hooks/utils/useGridRootProps.js";
@@ -28,14 +27,12 @@ function GridGroupingCriteriaCellIcon(props) {
28
27
  field,
29
28
  descendantCount
30
29
  } = props;
31
- const loadingSelector = state => state.dataSource.loading[id] ?? false;
32
- const errorSelector = state => state.dataSource.errors[id];
33
- const isDataLoading = useGridSelector(apiRef, loadingSelector);
34
- const error = useGridSelector(apiRef, errorSelector);
30
+ const isDataLoading = useGridSelector(apiRef, gridDataSourceLoadingIdSelector, id);
31
+ const error = useGridSelector(apiRef, gridDataSourceErrorSelector, id);
35
32
  const handleClick = event => {
36
33
  if (!rowNode.childrenExpanded) {
37
34
  // always fetch/get from cache the children when the node is expanded
38
- apiRef.current.unstable_dataSource.fetchRows(id);
35
+ apiRef.current.dataSource.fetchRows(id);
39
36
  } else {
40
37
  apiRef.current.setRowChildrenExpansion(id, !rowNode.childrenExpanded);
41
38
  }
@@ -81,12 +78,11 @@ export function GridDataSourceGroupingCriteriaCell(props) {
81
78
  } = props;
82
79
  const rootProps = useGridRootProps();
83
80
  const apiRef = useGridApiContext();
84
- const rowSelector = state => state.rows.dataRowIdToModelLookup[id];
85
- const row = useGridSelector(apiRef, rowSelector);
81
+ const row = useGridSelector(apiRef, gridRowSelector, id);
86
82
  const classes = useUtilityClasses(rootProps);
87
83
  let descendantCount = 0;
88
84
  if (row) {
89
- descendantCount = Math.max(rootProps.unstable_dataSource?.getChildrenCount?.(row) ?? 0, 0);
85
+ descendantCount = Math.max(rootProps.dataSource?.getChildrenCount?.(row) ?? 0, 0);
90
86
  }
91
87
  let cellContent;
92
88
  const colDef = apiRef.current.getColumn(rowNode.groupingField);
@@ -101,10 +97,10 @@ export function GridDataSourceGroupingCriteriaCell(props) {
101
97
  children: rowNode.groupingKey
102
98
  });
103
99
  }
104
- return /*#__PURE__*/_jsxs(Box, {
100
+ return /*#__PURE__*/_jsxs("div", {
105
101
  className: classes.root,
106
- sx: {
107
- ml: rootProps.rowGroupingColumnMode === 'multiple' ? 0 : theme => `calc(var(--DataGrid-cellOffsetMultiplier) * ${theme.spacing(rowNode.depth)})`
102
+ style: {
103
+ marginLeft: rootProps.rowGroupingColumnMode === 'multiple' ? 0 : `calc(var(--DataGrid-cellOffsetMultiplier) * ${vars.spacing(rowNode.depth)})`
108
104
  },
109
105
  children: [/*#__PURE__*/_jsx("div", {
110
106
  className: classes.toggle,
@@ -0,0 +1,9 @@
1
+ import * as React from 'react';
2
+ import { GridExportMenuItemProps } from '@mui/x-data-grid-pro';
3
+ import { GridExcelExportOptions } from "../hooks/features/export/index.js";
4
+ export type GridExcelExportMenuItemProps = GridExportMenuItemProps<GridExcelExportOptions>;
5
+ declare function GridExcelExportMenuItem(props: GridExcelExportMenuItemProps): React.JSX.Element;
6
+ declare namespace GridExcelExportMenuItem {
7
+ var propTypes: any;
8
+ }
9
+ export { GridExcelExportMenuItem };
@@ -0,0 +1,9 @@
1
+ import * as React from 'react';
2
+ import { GridRenderCellParams } from '@mui/x-data-grid';
3
+ import { Theme } from '@mui/material/styles';
4
+ import { SxProps } from '@mui/system';
5
+ interface GridFooterCellProps extends GridRenderCellParams {
6
+ sx?: SxProps<Theme>;
7
+ }
8
+ declare function GridFooterCell(props: GridFooterCellProps): React.JSX.Element;
9
+ export { GridFooterCell };
@@ -3,6 +3,7 @@ import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/esm/objectWith
3
3
  const _excluded = ["formattedValue", "colDef", "cellMode", "row", "api", "id", "value", "rowNode", "field", "focusElementRef", "hasFocus", "tabIndex", "isEditable"];
4
4
  import * as React from 'react';
5
5
  import { getDataGridUtilityClass } from '@mui/x-data-grid';
6
+ import { vars } from '@mui/x-data-grid/internals';
6
7
  import { styled } from '@mui/material/styles';
7
8
  import composeClasses from '@mui/utils/composeClasses';
8
9
  import { useGridRootProps } from "../hooks/utils/useGridRootProps.js";
@@ -11,12 +12,10 @@ const GridFooterCellRoot = styled('div', {
11
12
  name: 'MuiDataGrid',
12
13
  slot: 'FooterCell',
13
14
  overridesResolver: (_, styles) => styles.footerCell
14
- })(({
15
- theme
16
- }) => ({
17
- fontWeight: theme.typography.fontWeightMedium,
18
- color: (theme.vars || theme).palette.primary.dark
19
- }));
15
+ })({
16
+ fontWeight: vars.typography.fontWeight.medium,
17
+ color: vars.colors.foreground.accent
18
+ });
20
19
  const useUtilityClasses = ownerState => {
21
20
  const {
22
21
  classes
@@ -0,0 +1,4 @@
1
+ import * as React from 'react';
2
+ import { GridRenderCellParams } from '@mui/x-data-grid-pro';
3
+ declare function GridGroupingColumnFooterCell(props: GridRenderCellParams): React.JSX.Element;
4
+ export { GridGroupingColumnFooterCell };
@@ -1,5 +1,6 @@
1
1
  import _extends from "@babel/runtime/helpers/esm/extends";
2
2
  import * as React from 'react';
3
+ import { vars } from '@mui/x-data-grid/internals';
3
4
  import { useGridRootProps } from "../hooks/utils/useGridRootProps.js";
4
5
  import { GridFooterCell } from "./GridFooterCell.js";
5
6
  import { jsx as _jsx } from "react/jsx-runtime";
@@ -13,7 +14,7 @@ function GridGroupingColumnFooterCell(props) {
13
14
  } else if (rootProps.rowGroupingColumnMode === 'multiple') {
14
15
  sx.ml = 2;
15
16
  } else {
16
- sx.ml = theme => `calc(var(--DataGrid-cellOffsetMultiplier) * ${theme.spacing(props.rowNode.depth)})`;
17
+ sx.ml = `calc(var(--DataGrid-cellOffsetMultiplier) * ${vars.spacing(props.rowNode.depth)})`;
17
18
  }
18
19
  return /*#__PURE__*/_jsx(GridFooterCell, _extends({
19
20
  sx: sx
@@ -0,0 +1,4 @@
1
+ import * as React from 'react';
2
+ import { GridRenderCellParams } from '@mui/x-data-grid-pro';
3
+ declare function GridGroupingColumnLeafCell(props: GridRenderCellParams): React.JSX.Element;
4
+ export { GridGroupingColumnLeafCell };
@@ -1,5 +1,5 @@
1
1
  import * as React from 'react';
2
- import Box from '@mui/material/Box';
2
+ import { vars } from '@mui/x-data-grid/internals';
3
3
  import { useGridRootProps } from "../hooks/utils/useGridRootProps.js";
4
4
  import { jsx as _jsx } from "react/jsx-runtime";
5
5
  function GridGroupingColumnLeafCell(props) {
@@ -7,14 +7,9 @@ function GridGroupingColumnLeafCell(props) {
7
7
  rowNode
8
8
  } = props;
9
9
  const rootProps = useGridRootProps();
10
- return /*#__PURE__*/_jsx(Box, {
11
- sx: [rootProps.rowGroupingColumnMode === 'multiple' ? {
12
- ml: 1
13
- } : theme => ({
14
- ml: `calc(var(--DataGrid-cellOffsetMultiplier) * var(--depth) * ${theme.spacing(1)})`
15
- })],
10
+ return /*#__PURE__*/_jsx("div", {
16
11
  style: {
17
- '--depth': rowNode.depth
12
+ marginLeft: rootProps.rowGroupingColumnMode === 'multiple' ? vars.spacing(1) : `calc(var(--DataGrid-cellOffsetMultiplier) * ${vars.spacing(rowNode.depth)})`
18
13
  },
19
14
  children: props.formattedValue ?? props.value
20
15
  });
@@ -0,0 +1,7 @@
1
+ import * as React from 'react';
2
+ import { GridRenderCellParams, GridGroupNode } from '@mui/x-data-grid-pro';
3
+ interface GridGroupingCriteriaCellProps extends GridRenderCellParams<any, any, any, GridGroupNode> {
4
+ hideDescendantCount?: boolean;
5
+ }
6
+ export declare function GridGroupingCriteriaCell(props: GridGroupingCriteriaCellProps): React.JSX.Element;
7
+ export {};
@@ -1,7 +1,7 @@
1
1
  import _extends from "@babel/runtime/helpers/esm/extends";
2
2
  import * as React from 'react';
3
3
  import composeClasses from '@mui/utils/composeClasses';
4
- import Box from '@mui/material/Box';
4
+ import { vars } from '@mui/x-data-grid/internals';
5
5
  import { useGridSelector, gridFilteredDescendantCountLookupSelector, getDataGridUtilityClass } from '@mui/x-data-grid-pro';
6
6
  import { useGridApiContext } from "../hooks/utils/useGridApiContext.js";
7
7
  import { useGridRootProps } from "../hooks/utils/useGridRootProps.js";
@@ -59,15 +59,10 @@ export function GridGroupingCriteriaCell(props) {
59
59
  children: rowNode.groupingKey
60
60
  });
61
61
  }
62
- return /*#__PURE__*/_jsxs(Box, {
62
+ return /*#__PURE__*/_jsxs("div", {
63
63
  className: classes.root,
64
- sx: [rootProps.rowGroupingColumnMode === 'multiple' ? {
65
- ml: 0
66
- } : theme => ({
67
- ml: `calc(var(--DataGrid-cellOffsetMultiplier) * var(--depth) * ${theme.spacing(1)})`
68
- })],
69
64
  style: {
70
- '--depth': rowNode.depth
65
+ marginLeft: rootProps.rowGroupingColumnMode === 'multiple' ? 0 : `calc(var(--DataGrid-cellOffsetMultiplier) * ${rowNode.depth} * ${vars.spacing(1)})`
71
66
  },
72
67
  children: [/*#__PURE__*/_jsx("div", {
73
68
  className: classes.toggle,
@@ -0,0 +1,33 @@
1
+ import * as React from 'react';
2
+ import { GridColumnMenuProps, GridColumnMenuItemProps } from '@mui/x-data-grid-pro';
3
+ import { GridColumnMenuAggregationItem } from "./GridColumnMenuAggregationItem.js";
4
+ export declare function GridColumnMenuGroupingItem(props: GridColumnMenuItemProps): React.JSX.Element;
5
+ export declare const GRID_COLUMN_MENU_SLOTS_PREMIUM: {
6
+ columnMenuAggregationItem: typeof GridColumnMenuAggregationItem;
7
+ columnMenuGroupingItem: typeof GridColumnMenuGroupingItem;
8
+ columnMenuPinningItem: typeof import("@mui/x-data-grid-pro").GridColumnMenuPinningItem;
9
+ columnMenuSortItem: typeof import("@mui/x-data-grid").GridColumnMenuSortItem;
10
+ columnMenuFilterItem: typeof import("@mui/x-data-grid").GridColumnMenuFilterItem;
11
+ columnMenuColumnsItem: typeof import("@mui/x-data-grid").GridColumnMenuColumnsItem;
12
+ };
13
+ export declare const GRID_COLUMN_MENU_SLOT_PROPS_PREMIUM: {
14
+ columnMenuAggregationItem: {
15
+ displayOrder: number;
16
+ };
17
+ columnMenuGroupingItem: {
18
+ displayOrder: number;
19
+ };
20
+ columnMenuPinningItem: {
21
+ displayOrder: number;
22
+ };
23
+ columnMenuSortItem: {
24
+ displayOrder: number;
25
+ };
26
+ columnMenuFilterItem: {
27
+ displayOrder: number;
28
+ };
29
+ columnMenuColumnsItem: {
30
+ displayOrder: number;
31
+ };
32
+ };
33
+ export declare const GridPremiumColumnMenu: React.ForwardRefExoticComponent<GridColumnMenuProps> | React.ForwardRefExoticComponent<GridColumnMenuProps & React.RefAttributes<HTMLUListElement>>;
@@ -0,0 +1,3 @@
1
+ import * as React from 'react';
2
+ import { GridToolbarProps } from '@mui/x-data-grid/internals';
3
+ export declare function GridPremiumToolbar(props: GridToolbarProps): React.JSX.Element;
@@ -0,0 +1,23 @@
1
+ import _extends from "@babel/runtime/helpers/esm/extends";
2
+ import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/esm/objectWithoutPropertiesLoose";
3
+ const _excluded = ["excelOptions"];
4
+ import * as React from 'react';
5
+ import { GridToolbar } from '@mui/x-data-grid/internals';
6
+ import { ExportExcel } from "./export/index.js";
7
+ import { useGridRootProps } from "../hooks/utils/useGridRootProps.js";
8
+ import { useGridApiContext } from "../hooks/utils/useGridApiContext.js";
9
+ import { jsx as _jsx } from "react/jsx-runtime";
10
+ export function GridPremiumToolbar(props) {
11
+ const rootProps = useGridRootProps();
12
+ const apiRef = useGridApiContext();
13
+ const other = _objectWithoutPropertiesLoose(props, _excluded);
14
+ const additionalExportMenuItems = !props.excelOptions?.disableToolbarButton ? onMenuItemClick => /*#__PURE__*/_jsx(ExportExcel, {
15
+ render: /*#__PURE__*/_jsx(rootProps.slots.baseMenuItem, _extends({}, rootProps.slotProps?.baseMenuItem)),
16
+ options: props.excelOptions,
17
+ onClick: onMenuItemClick,
18
+ children: apiRef.current.getLocaleText('toolbarExportExcel')
19
+ }) : undefined;
20
+ return /*#__PURE__*/_jsx(GridToolbar, _extends({}, other, {
21
+ additionalExportMenuItems: additionalExportMenuItems
22
+ }));
23
+ }
@@ -0,0 +1,29 @@
1
+ import * as React from 'react';
2
+ import { GridSlotProps, RenderProp } from '@mui/x-data-grid';
3
+ import { GridExcelExportOptions } from "../../hooks/features/export/index.js";
4
+ export type ExportExcelProps = GridSlotProps['baseButton'] & {
5
+ /**
6
+ * A function to customize rendering of the component.
7
+ */
8
+ render?: RenderProp<GridSlotProps['baseButton']>;
9
+ /**
10
+ * The options to apply on the Excel export.
11
+ * @demos
12
+ * - [Excel export](/x/react-data-grid/export/#excel-export)
13
+ */
14
+ options?: GridExcelExportOptions;
15
+ };
16
+ /**
17
+ * A button that triggers an Excel export.
18
+ * It renders the `baseButton` slot.
19
+ *
20
+ * Demos:
21
+ *
22
+ * - [Export](https://mui.com/x/react-data-grid/components/export/)
23
+ *
24
+ * API:
25
+ *
26
+ * - [ExportExcel API](https://mui.com/x/api/data-grid/export-excel/)
27
+ */
28
+ declare const ExportExcel: React.ForwardRefExoticComponent<ExportExcelProps> | React.ForwardRefExoticComponent<Omit<ExportExcelProps, "ref"> & React.RefAttributes<HTMLButtonElement>>;
29
+ export { ExportExcel };
@@ -0,0 +1,209 @@
1
+ import _extends from "@babel/runtime/helpers/esm/extends";
2
+ import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/esm/objectWithoutPropertiesLoose";
3
+ const _excluded = ["render", "options", "onClick"];
4
+ import * as React from 'react';
5
+ import PropTypes from 'prop-types';
6
+ import { useGridComponentRenderer } from '@mui/x-data-grid/internals';
7
+ import { forwardRef } from '@mui/x-internals/forwardRef';
8
+ import { useGridApiContext } from "../../hooks/utils/useGridApiContext.js";
9
+ import { useGridRootProps } from "../../hooks/utils/useGridRootProps.js";
10
+ import { jsx as _jsx } from "react/jsx-runtime";
11
+ /**
12
+ * A button that triggers an Excel export.
13
+ * It renders the `baseButton` slot.
14
+ *
15
+ * Demos:
16
+ *
17
+ * - [Export](https://mui.com/x/react-data-grid/components/export/)
18
+ *
19
+ * API:
20
+ *
21
+ * - [ExportExcel API](https://mui.com/x/api/data-grid/export-excel/)
22
+ */
23
+ const ExportExcel = forwardRef(function ExportExcel(props, ref) {
24
+ const {
25
+ render,
26
+ options,
27
+ onClick
28
+ } = props,
29
+ other = _objectWithoutPropertiesLoose(props, _excluded);
30
+ const rootProps = useGridRootProps();
31
+ const apiRef = useGridApiContext();
32
+ const handleClick = event => {
33
+ apiRef.current.exportDataAsExcel(options);
34
+ onClick?.(event);
35
+ };
36
+ const element = useGridComponentRenderer(rootProps.slots.baseButton, render, _extends({
37
+ onClick: handleClick
38
+ }, rootProps.slotProps?.baseButton, other, {
39
+ ref
40
+ }));
41
+ return /*#__PURE__*/_jsx(React.Fragment, {
42
+ children: element
43
+ });
44
+ });
45
+ process.env.NODE_ENV !== "production" ? ExportExcel.propTypes = {
46
+ // ----------------------------- Warning --------------------------------
47
+ // | These PropTypes are generated from the TypeScript type definitions |
48
+ // | To update them edit the TypeScript types and run "pnpm proptypes" |
49
+ // ----------------------------------------------------------------------
50
+ /**
51
+ * A ref for imperative actions.
52
+ * It currently only supports `focusVisible()` action.
53
+ */
54
+ action: PropTypes.oneOfType([PropTypes.func, PropTypes.shape({
55
+ current: PropTypes.shape({
56
+ focusVisible: PropTypes.func.isRequired
57
+ })
58
+ })]),
59
+ /**
60
+ * If `true`, the ripples are centered.
61
+ * They won't start at the cursor interaction position.
62
+ * @default false
63
+ */
64
+ centerRipple: PropTypes.bool,
65
+ className: PropTypes.string,
66
+ /**
67
+ * The color of the component.
68
+ * It supports both default and custom theme colors, which can be added as shown in the
69
+ * [palette customization guide](https://mui.com/material-ui/customization/palette/#custom-colors).
70
+ * @default 'primary'
71
+ */
72
+ color: PropTypes.oneOf(['error', 'info', 'inherit', 'primary', 'secondary', 'success', 'warning']),
73
+ component: PropTypes.elementType,
74
+ /**
75
+ * If `true`, the component is disabled.
76
+ */
77
+ disabled: PropTypes.bool,
78
+ /**
79
+ * If `true`, no elevation is used.
80
+ * @default false
81
+ */
82
+ disableElevation: PropTypes.bool,
83
+ /**
84
+ * If `true`, the keyboard focus ripple is disabled.
85
+ * @default false
86
+ */
87
+ disableFocusRipple: PropTypes.bool,
88
+ /**
89
+ * If `true`, the ripple effect is disabled.
90
+ *
91
+ * ⚠️ Without a ripple there is no styling for :focus-visible by default. Be sure
92
+ * to highlight the element by applying separate styles with the `.Mui-focusVisible` class.
93
+ * @default false
94
+ */
95
+ disableRipple: PropTypes.bool,
96
+ /**
97
+ * If `true`, the touch ripple effect is disabled.
98
+ * @default false
99
+ */
100
+ disableTouchRipple: PropTypes.bool,
101
+ /**
102
+ * Element placed after the children.
103
+ */
104
+ endIcon: PropTypes.node,
105
+ /**
106
+ * If `true`, the base button will have a keyboard focus ripple.
107
+ * @default false
108
+ */
109
+ focusRipple: PropTypes.bool,
110
+ /**
111
+ * This prop can help identify which element has keyboard focus.
112
+ * The class name will be applied when the element gains the focus through keyboard interaction.
113
+ * It's a polyfill for the [CSS :focus-visible selector](https://drafts.csswg.org/selectors-4/#the-focus-visible-pseudo).
114
+ * The rationale for using this feature [is explained here](https://github.com/WICG/focus-visible/blob/HEAD/explainer.md).
115
+ * A [polyfill can be used](https://github.com/WICG/focus-visible) to apply a `focus-visible` class to other components
116
+ * if needed.
117
+ */
118
+ focusVisibleClassName: PropTypes.string,
119
+ /**
120
+ * If `true`, the button will take up the full width of its container.
121
+ * @default false
122
+ */
123
+ fullWidth: PropTypes.bool,
124
+ /**
125
+ * The URL to link to when the button is clicked.
126
+ * If defined, an `a` element will be used as the root node.
127
+ */
128
+ href: PropTypes.string,
129
+ /**
130
+ * The component used to render a link when the `href` prop is provided.
131
+ * @default 'a'
132
+ */
133
+ LinkComponent: PropTypes.elementType,
134
+ /**
135
+ * If `true`, the loading indicator is visible and the button is disabled.
136
+ * If `true | false`, the loading wrapper is always rendered before the children to prevent [Google Translation Crash](https://github.com/mui/material-ui/issues/27853).
137
+ * @default null
138
+ */
139
+ loading: PropTypes.bool,
140
+ /**
141
+ * Element placed before the children if the button is in loading state.
142
+ * The node should contain an element with `role="progressbar"` with an accessible name.
143
+ * By default, it renders a `CircularProgress` that is labeled by the button itself.
144
+ * @default <CircularProgress color="inherit" size={16} />
145
+ */
146
+ loadingIndicator: PropTypes.node,
147
+ /**
148
+ * The loading indicator can be positioned on the start, end, or the center of the button.
149
+ * @default 'center'
150
+ */
151
+ loadingPosition: PropTypes.oneOf(['center', 'end', 'start']),
152
+ /**
153
+ * Callback fired when the component is focused with a keyboard.
154
+ * We trigger a `onFocus` callback too.
155
+ */
156
+ onFocusVisible: PropTypes.func,
157
+ /**
158
+ * The options to apply on the Excel export.
159
+ * @demos
160
+ * - [Excel export](/x/react-data-grid/export/#excel-export)
161
+ */
162
+ options: PropTypes.shape({
163
+ allColumns: PropTypes.bool,
164
+ columnsStyles: PropTypes.object,
165
+ escapeFormulas: PropTypes.bool,
166
+ exceljsPostProcess: PropTypes.func,
167
+ exceljsPreProcess: PropTypes.func,
168
+ fields: PropTypes.arrayOf(PropTypes.string),
169
+ fileName: PropTypes.string,
170
+ getRowsToExport: PropTypes.func,
171
+ includeColumnGroupsHeaders: PropTypes.bool,
172
+ includeHeaders: PropTypes.bool,
173
+ valueOptionsSheetName: PropTypes.string,
174
+ worker: PropTypes.func
175
+ }),
176
+ /**
177
+ * A function to customize rendering of the component.
178
+ */
179
+ render: PropTypes.oneOfType([PropTypes.element, PropTypes.func]),
180
+ /**
181
+ * The size of the component.
182
+ * `small` is equivalent to the dense button styling.
183
+ */
184
+ size: PropTypes.oneOf(['large', 'medium', 'small']),
185
+ /**
186
+ * Element placed before the children.
187
+ */
188
+ startIcon: PropTypes.node,
189
+ style: PropTypes.object,
190
+ /**
191
+ * The system prop that allows defining system overrides as well as additional CSS styles.
192
+ */
193
+ sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object]),
194
+ tabIndex: PropTypes.number,
195
+ /**
196
+ * Props applied to the `TouchRipple` element.
197
+ */
198
+ TouchRippleProps: PropTypes.object,
199
+ /**
200
+ * A ref that points to the `TouchRipple` element.
201
+ */
202
+ touchRippleRef: PropTypes.any,
203
+ /**
204
+ * The variant to use.
205
+ * @default 'text'
206
+ */
207
+ variant: PropTypes.oneOf(['contained', 'outlined', 'text'])
208
+ } : void 0;
209
+ export { ExportExcel };
@@ -0,0 +1 @@
1
+ export * from "./ExportExcel.js";
@@ -0,0 +1 @@
1
+ export * from "./ExportExcel.js";
@@ -0,0 +1,6 @@
1
+ export * from "./GridExcelExportMenuItem.js";
2
+ export * from "../material/icons.js";
3
+ export * from "./GridColumnMenuAggregationItem.js";
4
+ export * from "./promptControl/index.js";
5
+ export { GridColumnMenuGroupingItem } from "./GridPremiumColumnMenu.js";
6
+ export * from "./export/index.js";
@@ -2,4 +2,5 @@ export * from "./GridExcelExportMenuItem.js";
2
2
  export * from "../material/icons.js";
3
3
  export * from "./GridColumnMenuAggregationItem.js";
4
4
  export * from "./promptControl/index.js";
5
- export { GridColumnMenuGroupingItem } from "./GridPremiumColumnMenu.js";
5
+ export { GridColumnMenuGroupingItem } from "./GridPremiumColumnMenu.js";
6
+ export * from "./export/index.js";