@mui/x-data-grid-premium 8.0.0-alpha.11 → 8.0.0-alpha.13

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 (391) hide show
  1. package/CHANGELOG.md +460 -1
  2. package/DataGridPremium/DataGrid.d.ts +1 -1
  3. package/DataGridPremium/DataGridPremium.d.ts +6 -6
  4. package/DataGridPremium/DataGridPremium.js +55 -30
  5. package/DataGridPremium/index.d.ts +3 -3
  6. package/DataGridPremium/useDataGridPremiumComponent.d.ts +3 -3
  7. package/DataGridPremium/useDataGridPremiumComponent.js +3 -2
  8. package/DataGridPremium/useDataGridPremiumProps.d.ts +2 -2
  9. package/DataGridPremium/useDataGridPremiumProps.js +2 -2
  10. package/components/GridAggregationHeader.d.ts +3 -3
  11. package/components/GridAggregationHeader.js +7 -11
  12. package/components/GridAggregationRowOverlay.d.ts +3 -0
  13. package/components/GridAggregationRowOverlay.js +44 -0
  14. package/components/GridBottomContainer.d.ts +3 -0
  15. package/components/GridBottomContainer.js +51 -0
  16. package/components/GridColumnMenuAggregationItem.d.ts +2 -2
  17. package/components/GridColumnMenuAggregationItem.js +36 -46
  18. package/components/GridColumnMenuRowGroupItem.d.ts +1 -1
  19. package/components/GridColumnMenuRowUngroupItem.d.ts +1 -1
  20. package/components/GridDataSourceGroupingCriteriaCell.d.ts +2 -2
  21. package/components/GridDataSourceGroupingCriteriaCell.js +8 -12
  22. package/components/GridExcelExportMenuItem.d.ts +3 -3
  23. package/components/GridFooterCell.d.ts +2 -2
  24. package/components/GridFooterCell.js +5 -6
  25. package/components/GridGroupingColumnFooterCell.d.ts +1 -1
  26. package/components/GridGroupingColumnFooterCell.js +2 -1
  27. package/components/GridGroupingColumnLeafCell.d.ts +1 -1
  28. package/components/GridGroupingColumnLeafCell.js +3 -9
  29. package/components/GridGroupingCriteriaCell.d.ts +2 -2
  30. package/components/GridGroupingCriteriaCell.js +3 -8
  31. package/components/GridPremiumColumnMenu.d.ts +26 -26
  32. package/components/index.d.ts +5 -5
  33. package/components/promptControl/GridToolbarPromptControl.d.ts +22 -22
  34. package/components/promptControl/GridToolbarPromptControl.js +34 -32
  35. package/components/promptControl/RecordButton.d.ts +9 -9
  36. package/components/promptControl/index.d.ts +1 -1
  37. package/components/reexports.d.ts +1 -1
  38. package/constants/dataGridPremiumDefaultSlotsComponents.d.ts +1 -1
  39. package/constants/dataGridPremiumDefaultSlotsComponents.js +3 -1
  40. package/esm/DataGridPremium/DataGrid.d.ts +8 -0
  41. package/esm/DataGridPremium/DataGridPremium.d.ts +16 -0
  42. package/esm/DataGridPremium/DataGridPremium.js +55 -30
  43. package/esm/DataGridPremium/index.d.ts +3 -0
  44. package/esm/DataGridPremium/useDataGridPremiumComponent.d.ts +4 -0
  45. package/esm/DataGridPremium/useDataGridPremiumComponent.js +4 -3
  46. package/esm/DataGridPremium/useDataGridPremiumProps.d.ts +6 -0
  47. package/esm/DataGridPremium/useDataGridPremiumProps.js +2 -2
  48. package/esm/components/GridAggregationHeader.d.ts +7 -0
  49. package/esm/components/GridAggregationHeader.js +7 -11
  50. package/esm/components/GridAggregationRowOverlay.d.ts +3 -0
  51. package/esm/components/GridAggregationRowOverlay.js +37 -0
  52. package/esm/components/GridBottomContainer.d.ts +3 -0
  53. package/esm/components/GridBottomContainer.js +43 -0
  54. package/esm/components/GridColumnMenuAggregationItem.d.ts +7 -0
  55. package/esm/components/GridColumnMenuAggregationItem.js +36 -46
  56. package/esm/components/GridColumnMenuRowGroupItem.d.ts +3 -0
  57. package/esm/components/GridColumnMenuRowUngroupItem.d.ts +3 -0
  58. package/esm/components/GridDataSourceGroupingCriteriaCell.d.ts +7 -0
  59. package/esm/components/GridDataSourceGroupingCriteriaCell.js +9 -13
  60. package/esm/components/GridExcelExportMenuItem.d.ts +9 -0
  61. package/esm/components/GridFooterCell.d.ts +9 -0
  62. package/esm/components/GridFooterCell.js +5 -6
  63. package/esm/components/GridGroupingColumnFooterCell.d.ts +4 -0
  64. package/esm/components/GridGroupingColumnFooterCell.js +2 -1
  65. package/esm/components/GridGroupingColumnLeafCell.d.ts +4 -0
  66. package/esm/components/GridGroupingColumnLeafCell.js +3 -8
  67. package/esm/components/GridGroupingCriteriaCell.d.ts +7 -0
  68. package/esm/components/GridGroupingCriteriaCell.js +3 -8
  69. package/esm/components/GridPremiumColumnMenu.d.ts +33 -0
  70. package/esm/components/index.d.ts +5 -0
  71. package/esm/components/promptControl/GridToolbarPromptControl.d.ts +26 -0
  72. package/esm/components/promptControl/GridToolbarPromptControl.js +34 -32
  73. package/esm/components/promptControl/RecordButton.d.ts +16 -0
  74. package/esm/components/promptControl/index.d.ts +1 -0
  75. package/esm/components/reexports.d.ts +1 -0
  76. package/esm/constants/dataGridPremiumDefaultSlotsComponents.d.ts +2 -0
  77. package/esm/constants/dataGridPremiumDefaultSlotsComponents.js +3 -1
  78. package/esm/hooks/features/aggregation/createAggregationLookup.d.ts +17 -0
  79. package/esm/hooks/features/aggregation/createAggregationLookup.js +3 -3
  80. package/esm/hooks/features/aggregation/gridAggregationFunctions.d.ts +8 -0
  81. package/esm/hooks/features/aggregation/gridAggregationInterfaces.d.ts +129 -0
  82. package/esm/hooks/features/aggregation/gridAggregationSelectors.d.ts +13 -0
  83. package/esm/hooks/features/aggregation/gridAggregationSelectors.js +2 -2
  84. package/esm/hooks/features/aggregation/gridAggregationUtils.d.ts +62 -0
  85. package/esm/hooks/features/aggregation/index.d.ts +4 -0
  86. package/esm/hooks/features/aggregation/useGridAggregation.d.ts +6 -0
  87. package/esm/hooks/features/aggregation/useGridAggregation.js +6 -6
  88. package/esm/hooks/features/aggregation/useGridAggregationPreProcessors.d.ts +4 -0
  89. package/esm/hooks/features/aggregation/useGridAggregationPreProcessors.js +6 -6
  90. package/esm/hooks/features/aggregation/wrapColumnWithAggregation.d.ts +81 -0
  91. package/esm/hooks/features/aggregation/wrapColumnWithAggregation.js +6 -5
  92. package/esm/hooks/features/cellSelection/gridCellSelectionInterfaces.d.ts +40 -0
  93. package/esm/hooks/features/cellSelection/gridCellSelectionSelector.d.ts +2 -0
  94. package/esm/hooks/features/cellSelection/gridCellSelectionSelector.js +2 -1
  95. package/esm/hooks/features/cellSelection/index.d.ts +1 -0
  96. package/esm/hooks/features/cellSelection/useGridCellSelection.d.ts +6 -0
  97. package/esm/hooks/features/cellSelection/useGridCellSelection.js +5 -6
  98. package/esm/hooks/features/clipboard/useGridClipboardImport.d.ts +4 -0
  99. package/esm/hooks/features/clipboard/useGridClipboardImport.js +5 -5
  100. package/esm/hooks/features/dataSource/models.d.ts +54 -0
  101. package/esm/hooks/features/dataSource/useGridDataSourcePremium.d.ts +4 -0
  102. package/esm/hooks/features/dataSource/useGridDataSourcePremium.js +13 -7
  103. package/esm/hooks/features/export/gridExcelExportInterface.d.ts +71 -0
  104. package/esm/hooks/features/export/index.d.ts +2 -0
  105. package/esm/hooks/features/export/index.js +1 -1
  106. package/esm/hooks/features/export/serializer/excelSerializer.d.ts +40 -0
  107. package/esm/hooks/features/export/serializer/excelSerializer.js +69 -180
  108. package/esm/hooks/features/export/serializer/setupExcelExportWebWorker.d.ts +2 -0
  109. package/esm/hooks/features/export/serializer/setupExcelExportWebWorker.js +53 -0
  110. package/esm/hooks/features/export/serializer/utils.d.ts +36 -0
  111. package/esm/hooks/features/export/serializer/utils.js +93 -0
  112. package/esm/hooks/features/export/useGridExcelExport.d.ts +11 -0
  113. package/esm/hooks/features/export/useGridExcelExport.js +11 -5
  114. package/esm/hooks/features/index.d.ts +5 -0
  115. package/esm/hooks/features/promptControl/api.d.ts +2 -0
  116. package/esm/hooks/features/promptControl/index.d.ts +2 -0
  117. package/esm/hooks/features/promptControl/types.d.ts +25 -0
  118. package/esm/hooks/features/rowGrouping/createGroupingColDef.d.ts +57 -0
  119. package/esm/hooks/features/rowGrouping/createGroupingColDef.js +5 -5
  120. package/esm/hooks/features/rowGrouping/gridRowGroupingInterfaces.d.ts +44 -0
  121. package/esm/hooks/features/rowGrouping/gridRowGroupingSelector.d.ts +3 -0
  122. package/esm/hooks/features/rowGrouping/gridRowGroupingSelector.js +2 -2
  123. package/esm/hooks/features/rowGrouping/gridRowGroupingUtils.d.ts +54 -0
  124. package/esm/hooks/features/rowGrouping/gridRowGroupingUtils.js +2 -2
  125. package/esm/hooks/features/rowGrouping/index.d.ts +3 -0
  126. package/esm/hooks/features/rowGrouping/useGridDataSourceRowGroupingPreProcessors.d.ts +4 -0
  127. package/esm/hooks/features/rowGrouping/useGridDataSourceRowGroupingPreProcessors.js +3 -3
  128. package/esm/hooks/features/rowGrouping/useGridRowGrouping.d.ts +11 -0
  129. package/esm/hooks/features/rowGrouping/useGridRowGrouping.js +4 -5
  130. package/esm/hooks/features/rowGrouping/useGridRowGroupingPreProcessors.d.ts +4 -0
  131. package/esm/hooks/features/rowGrouping/useGridRowGroupingPreProcessors.js +5 -5
  132. package/esm/hooks/features/rows/index.d.ts +1 -0
  133. package/esm/hooks/features/rows/useGridRowAriaAttributes.d.ts +1 -0
  134. package/esm/hooks/index.d.ts +2 -0
  135. package/esm/hooks/utils/index.d.ts +1 -0
  136. package/esm/hooks/utils/useGridApiContext.d.ts +4 -0
  137. package/esm/hooks/utils/useGridApiRef.d.ts +4 -0
  138. package/esm/hooks/utils/useGridAriaAttributes.d.ts +2 -0
  139. package/esm/hooks/utils/useGridPrivateApiContext.d.ts +2 -0
  140. package/esm/hooks/utils/useGridRootProps.d.ts +2 -0
  141. package/esm/hooks/utils/useKeepGroupedColumnsHidden.d.ts +12 -0
  142. package/esm/index.d.ts +23 -0
  143. package/esm/index.js +6 -5
  144. package/esm/locales.d.ts +1 -0
  145. package/esm/material/icons.d.ts +15 -0
  146. package/esm/material/index.d.ts +8 -0
  147. package/esm/models/dataGridPremiumProps.d.ts +162 -0
  148. package/esm/models/gridApiPremium.d.ts +14 -0
  149. package/esm/models/gridGroupingValueGetter.d.ts +4 -0
  150. package/esm/models/gridPastedValueParser.d.ts +4 -0
  151. package/esm/models/gridPremiumIconSlotsComponent.d.ts +28 -0
  152. package/esm/models/gridPremiumSlotsComponent.d.ts +7 -0
  153. package/esm/models/gridStatePremium.d.ts +18 -0
  154. package/esm/models/index.d.ts +4 -0
  155. package/esm/package.json +1 -0
  156. package/esm/setupExcelExportWebWorker.d.ts +1 -0
  157. package/esm/setupExcelExportWebWorker.js +1 -0
  158. package/esm/themeAugmentation/index.d.ts +2 -0
  159. package/esm/themeAugmentation/overrides.d.ts +7 -0
  160. package/esm/themeAugmentation/props.d.ts +15 -0
  161. package/esm/typeOverloads/index.d.ts +2 -0
  162. package/esm/typeOverloads/modules.d.ts +97 -0
  163. package/esm/typeOverloads/reexports.d.ts +17 -0
  164. package/esm/utils/releaseInfo.d.ts +1 -0
  165. package/esm/utils/releaseInfo.js +1 -1
  166. package/hooks/features/aggregation/createAggregationLookup.d.ts +16 -10
  167. package/hooks/features/aggregation/createAggregationLookup.js +2 -2
  168. package/hooks/features/aggregation/gridAggregationFunctions.d.ts +7 -7
  169. package/hooks/features/aggregation/gridAggregationInterfaces.d.ts +81 -82
  170. package/hooks/features/aggregation/gridAggregationSelectors.d.ts +3 -3
  171. package/hooks/features/aggregation/gridAggregationSelectors.js +1 -2
  172. package/hooks/features/aggregation/gridAggregationUtils.d.ts +42 -25
  173. package/hooks/features/aggregation/index.d.ts +4 -4
  174. package/hooks/features/aggregation/useGridAggregation.d.ts +3 -3
  175. package/hooks/features/aggregation/useGridAggregation.js +6 -6
  176. package/hooks/features/aggregation/useGridAggregationPreProcessors.d.ts +3 -3
  177. package/hooks/features/aggregation/useGridAggregationPreProcessors.js +6 -6
  178. package/hooks/features/aggregation/wrapColumnWithAggregation.d.ts +67 -62
  179. package/hooks/features/aggregation/wrapColumnWithAggregation.js +6 -5
  180. package/hooks/features/cellSelection/gridCellSelectionInterfaces.d.ts +34 -34
  181. package/hooks/features/cellSelection/gridCellSelectionSelector.d.ts +2 -2
  182. package/hooks/features/cellSelection/gridCellSelectionSelector.js +2 -2
  183. package/hooks/features/cellSelection/index.d.ts +1 -1
  184. package/hooks/features/cellSelection/useGridCellSelection.d.ts +3 -3
  185. package/hooks/features/cellSelection/useGridCellSelection.js +5 -6
  186. package/hooks/features/clipboard/useGridClipboardImport.d.ts +2 -2
  187. package/hooks/features/clipboard/useGridClipboardImport.js +4 -4
  188. package/hooks/features/dataSource/models.d.ts +41 -34
  189. package/hooks/features/dataSource/useGridDataSourcePremium.d.ts +3 -3
  190. package/hooks/features/dataSource/useGridDataSourcePremium.js +13 -7
  191. package/hooks/features/export/gridExcelExportInterface.d.ts +52 -52
  192. package/hooks/features/export/index.d.ts +2 -2
  193. package/hooks/features/export/index.js +2 -2
  194. package/hooks/features/export/serializer/excelSerializer.d.ts +23 -51
  195. package/hooks/features/export/serializer/excelSerializer.js +74 -187
  196. package/hooks/features/export/serializer/setupExcelExportWebWorker.d.ts +2 -0
  197. package/hooks/features/export/serializer/setupExcelExportWebWorker.js +59 -0
  198. package/hooks/features/export/serializer/utils.d.ts +36 -0
  199. package/hooks/features/export/serializer/utils.js +106 -0
  200. package/hooks/features/export/useGridExcelExport.d.ts +3 -3
  201. package/hooks/features/export/useGridExcelExport.js +10 -3
  202. package/hooks/features/index.d.ts +5 -5
  203. package/hooks/features/promptControl/api.d.ts +2 -2
  204. package/hooks/features/promptControl/index.d.ts +2 -2
  205. package/hooks/features/promptControl/types.d.ts +15 -15
  206. package/hooks/features/rowGrouping/createGroupingColDef.d.ts +44 -32
  207. package/hooks/features/rowGrouping/createGroupingColDef.js +4 -4
  208. package/hooks/features/rowGrouping/gridRowGroupingInterfaces.d.ts +32 -32
  209. package/hooks/features/rowGrouping/gridRowGroupingSelector.d.ts +2 -2
  210. package/hooks/features/rowGrouping/gridRowGroupingSelector.js +2 -2
  211. package/hooks/features/rowGrouping/gridRowGroupingUtils.d.ts +30 -22
  212. package/hooks/features/rowGrouping/gridRowGroupingUtils.js +1 -1
  213. package/hooks/features/rowGrouping/index.d.ts +3 -3
  214. package/hooks/features/rowGrouping/useGridDataSourceRowGroupingPreProcessors.d.ts +3 -3
  215. package/hooks/features/rowGrouping/useGridDataSourceRowGroupingPreProcessors.js +3 -3
  216. package/hooks/features/rowGrouping/useGridRowGrouping.d.ts +3 -3
  217. package/hooks/features/rowGrouping/useGridRowGrouping.js +4 -5
  218. package/hooks/features/rowGrouping/useGridRowGroupingPreProcessors.d.ts +3 -3
  219. package/hooks/features/rowGrouping/useGridRowGroupingPreProcessors.js +5 -5
  220. package/hooks/features/rows/index.d.ts +1 -1
  221. package/hooks/features/rows/useGridRowAriaAttributes.d.ts +1 -1
  222. package/hooks/index.d.ts +2 -2
  223. package/hooks/utils/index.d.ts +1 -1
  224. package/hooks/utils/useGridApiContext.d.ts +2 -2
  225. package/hooks/utils/useGridApiRef.d.ts +2 -2
  226. package/hooks/utils/useGridAriaAttributes.d.ts +1 -1
  227. package/hooks/utils/useGridPrivateApiContext.d.ts +2 -2
  228. package/hooks/utils/useGridRootProps.d.ts +2 -2
  229. package/hooks/utils/useKeepGroupedColumnsHidden.d.ts +4 -4
  230. package/index.d.ts +9 -17
  231. package/index.js +2 -11
  232. package/locales.d.ts +1 -1
  233. package/material/icons.d.ts +6 -6
  234. package/material/index.d.ts +6 -6
  235. package/models/dataGridPremiumProps.d.ts +140 -135
  236. package/models/gridApiPremium.d.ts +4 -6
  237. package/models/gridGroupingValueGetter.d.ts +2 -2
  238. package/models/gridPastedValueParser.d.ts +2 -2
  239. package/models/gridPremiumIconSlotsComponent.d.ts +26 -26
  240. package/models/gridPremiumSlotsComponent.d.ts +2 -3
  241. package/models/gridStatePremium.d.ts +7 -7
  242. package/models/index.d.ts +4 -4
  243. package/modern/DataGridPremium/DataGrid.d.ts +8 -0
  244. package/modern/DataGridPremium/DataGridPremium.d.ts +16 -0
  245. package/modern/DataGridPremium/DataGridPremium.js +55 -30
  246. package/modern/DataGridPremium/index.d.ts +3 -0
  247. package/modern/DataGridPremium/useDataGridPremiumComponent.d.ts +4 -0
  248. package/modern/DataGridPremium/useDataGridPremiumComponent.js +4 -3
  249. package/modern/DataGridPremium/useDataGridPremiumProps.d.ts +6 -0
  250. package/modern/DataGridPremium/useDataGridPremiumProps.js +2 -2
  251. package/modern/components/GridAggregationHeader.d.ts +7 -0
  252. package/modern/components/GridAggregationHeader.js +7 -11
  253. package/modern/components/GridAggregationRowOverlay.d.ts +3 -0
  254. package/modern/components/GridAggregationRowOverlay.js +37 -0
  255. package/modern/components/GridBottomContainer.d.ts +3 -0
  256. package/modern/components/GridBottomContainer.js +43 -0
  257. package/modern/components/GridColumnMenuAggregationItem.d.ts +7 -0
  258. package/modern/components/GridColumnMenuAggregationItem.js +36 -46
  259. package/modern/components/GridColumnMenuRowGroupItem.d.ts +3 -0
  260. package/modern/components/GridColumnMenuRowUngroupItem.d.ts +3 -0
  261. package/modern/components/GridDataSourceGroupingCriteriaCell.d.ts +7 -0
  262. package/modern/components/GridDataSourceGroupingCriteriaCell.js +9 -13
  263. package/modern/components/GridExcelExportMenuItem.d.ts +9 -0
  264. package/modern/components/GridFooterCell.d.ts +9 -0
  265. package/modern/components/GridFooterCell.js +5 -6
  266. package/modern/components/GridGroupingColumnFooterCell.d.ts +4 -0
  267. package/modern/components/GridGroupingColumnFooterCell.js +2 -1
  268. package/modern/components/GridGroupingColumnLeafCell.d.ts +4 -0
  269. package/modern/components/GridGroupingColumnLeafCell.js +3 -8
  270. package/modern/components/GridGroupingCriteriaCell.d.ts +7 -0
  271. package/modern/components/GridGroupingCriteriaCell.js +3 -8
  272. package/modern/components/GridPremiumColumnMenu.d.ts +33 -0
  273. package/modern/components/index.d.ts +5 -0
  274. package/modern/components/promptControl/GridToolbarPromptControl.d.ts +26 -0
  275. package/modern/components/promptControl/GridToolbarPromptControl.js +34 -32
  276. package/modern/components/promptControl/RecordButton.d.ts +16 -0
  277. package/modern/components/promptControl/index.d.ts +1 -0
  278. package/modern/components/reexports.d.ts +1 -0
  279. package/modern/constants/dataGridPremiumDefaultSlotsComponents.d.ts +2 -0
  280. package/modern/constants/dataGridPremiumDefaultSlotsComponents.js +3 -1
  281. package/modern/hooks/features/aggregation/createAggregationLookup.d.ts +17 -0
  282. package/modern/hooks/features/aggregation/createAggregationLookup.js +3 -3
  283. package/modern/hooks/features/aggregation/gridAggregationFunctions.d.ts +8 -0
  284. package/modern/hooks/features/aggregation/gridAggregationInterfaces.d.ts +129 -0
  285. package/modern/hooks/features/aggregation/gridAggregationSelectors.d.ts +13 -0
  286. package/modern/hooks/features/aggregation/gridAggregationSelectors.js +2 -2
  287. package/modern/hooks/features/aggregation/gridAggregationUtils.d.ts +62 -0
  288. package/modern/hooks/features/aggregation/index.d.ts +4 -0
  289. package/modern/hooks/features/aggregation/useGridAggregation.d.ts +6 -0
  290. package/modern/hooks/features/aggregation/useGridAggregation.js +6 -6
  291. package/modern/hooks/features/aggregation/useGridAggregationPreProcessors.d.ts +4 -0
  292. package/modern/hooks/features/aggregation/useGridAggregationPreProcessors.js +6 -6
  293. package/modern/hooks/features/aggregation/wrapColumnWithAggregation.d.ts +81 -0
  294. package/modern/hooks/features/aggregation/wrapColumnWithAggregation.js +6 -5
  295. package/modern/hooks/features/cellSelection/gridCellSelectionInterfaces.d.ts +40 -0
  296. package/modern/hooks/features/cellSelection/gridCellSelectionSelector.d.ts +2 -0
  297. package/modern/hooks/features/cellSelection/gridCellSelectionSelector.js +2 -1
  298. package/modern/hooks/features/cellSelection/index.d.ts +1 -0
  299. package/modern/hooks/features/cellSelection/useGridCellSelection.d.ts +6 -0
  300. package/modern/hooks/features/cellSelection/useGridCellSelection.js +5 -6
  301. package/modern/hooks/features/clipboard/useGridClipboardImport.d.ts +4 -0
  302. package/modern/hooks/features/clipboard/useGridClipboardImport.js +5 -5
  303. package/modern/hooks/features/dataSource/models.d.ts +54 -0
  304. package/modern/hooks/features/dataSource/useGridDataSourcePremium.d.ts +4 -0
  305. package/modern/hooks/features/dataSource/useGridDataSourcePremium.js +13 -7
  306. package/modern/hooks/features/export/gridExcelExportInterface.d.ts +71 -0
  307. package/modern/hooks/features/export/index.d.ts +2 -0
  308. package/modern/hooks/features/export/index.js +1 -1
  309. package/modern/hooks/features/export/serializer/excelSerializer.d.ts +40 -0
  310. package/modern/hooks/features/export/serializer/excelSerializer.js +69 -180
  311. package/modern/hooks/features/export/serializer/setupExcelExportWebWorker.d.ts +2 -0
  312. package/modern/hooks/features/export/serializer/setupExcelExportWebWorker.js +53 -0
  313. package/modern/hooks/features/export/serializer/utils.d.ts +36 -0
  314. package/modern/hooks/features/export/serializer/utils.js +93 -0
  315. package/modern/hooks/features/export/useGridExcelExport.d.ts +11 -0
  316. package/modern/hooks/features/export/useGridExcelExport.js +11 -5
  317. package/modern/hooks/features/index.d.ts +5 -0
  318. package/modern/hooks/features/promptControl/api.d.ts +2 -0
  319. package/modern/hooks/features/promptControl/index.d.ts +2 -0
  320. package/modern/hooks/features/promptControl/types.d.ts +25 -0
  321. package/modern/hooks/features/rowGrouping/createGroupingColDef.d.ts +57 -0
  322. package/modern/hooks/features/rowGrouping/createGroupingColDef.js +5 -5
  323. package/modern/hooks/features/rowGrouping/gridRowGroupingInterfaces.d.ts +44 -0
  324. package/modern/hooks/features/rowGrouping/gridRowGroupingSelector.d.ts +3 -0
  325. package/modern/hooks/features/rowGrouping/gridRowGroupingSelector.js +2 -2
  326. package/modern/hooks/features/rowGrouping/gridRowGroupingUtils.d.ts +54 -0
  327. package/modern/hooks/features/rowGrouping/gridRowGroupingUtils.js +2 -2
  328. package/modern/hooks/features/rowGrouping/index.d.ts +3 -0
  329. package/modern/hooks/features/rowGrouping/useGridDataSourceRowGroupingPreProcessors.d.ts +4 -0
  330. package/modern/hooks/features/rowGrouping/useGridDataSourceRowGroupingPreProcessors.js +3 -3
  331. package/modern/hooks/features/rowGrouping/useGridRowGrouping.d.ts +11 -0
  332. package/modern/hooks/features/rowGrouping/useGridRowGrouping.js +4 -5
  333. package/modern/hooks/features/rowGrouping/useGridRowGroupingPreProcessors.d.ts +4 -0
  334. package/modern/hooks/features/rowGrouping/useGridRowGroupingPreProcessors.js +5 -5
  335. package/modern/hooks/features/rows/index.d.ts +1 -0
  336. package/modern/hooks/features/rows/useGridRowAriaAttributes.d.ts +1 -0
  337. package/modern/hooks/index.d.ts +2 -0
  338. package/modern/hooks/utils/index.d.ts +1 -0
  339. package/modern/hooks/utils/useGridApiContext.d.ts +4 -0
  340. package/modern/hooks/utils/useGridApiRef.d.ts +4 -0
  341. package/modern/hooks/utils/useGridAriaAttributes.d.ts +2 -0
  342. package/modern/hooks/utils/useGridPrivateApiContext.d.ts +2 -0
  343. package/modern/hooks/utils/useGridRootProps.d.ts +2 -0
  344. package/modern/hooks/utils/useKeepGroupedColumnsHidden.d.ts +12 -0
  345. package/modern/index.d.ts +23 -0
  346. package/modern/index.js +1 -7
  347. package/modern/locales.d.ts +1 -0
  348. package/modern/material/icons.d.ts +15 -0
  349. package/modern/material/index.d.ts +8 -0
  350. package/modern/models/dataGridPremiumProps.d.ts +162 -0
  351. package/modern/models/gridApiPremium.d.ts +14 -0
  352. package/modern/models/gridGroupingValueGetter.d.ts +4 -0
  353. package/modern/models/gridPastedValueParser.d.ts +4 -0
  354. package/modern/models/gridPremiumIconSlotsComponent.d.ts +28 -0
  355. package/modern/models/gridPremiumSlotsComponent.d.ts +7 -0
  356. package/modern/models/gridStatePremium.d.ts +18 -0
  357. package/modern/models/index.d.ts +4 -0
  358. package/modern/package.json +1 -0
  359. package/modern/setupExcelExportWebWorker.d.ts +1 -0
  360. package/modern/setupExcelExportWebWorker.js +1 -0
  361. package/modern/themeAugmentation/index.d.ts +2 -0
  362. package/modern/themeAugmentation/overrides.d.ts +7 -0
  363. package/modern/themeAugmentation/props.d.ts +15 -0
  364. package/modern/typeOverloads/index.d.ts +2 -0
  365. package/modern/typeOverloads/modules.d.ts +97 -0
  366. package/modern/typeOverloads/reexports.d.ts +17 -0
  367. package/modern/utils/releaseInfo.d.ts +1 -0
  368. package/modern/utils/releaseInfo.js +1 -1
  369. package/package.json +39 -9
  370. package/setupExcelExportWebWorker.d.ts +1 -0
  371. package/setupExcelExportWebWorker.js +12 -0
  372. package/themeAugmentation/index.d.ts +2 -2
  373. package/themeAugmentation/overrides.d.ts +3 -4
  374. package/themeAugmentation/props.d.ts +9 -11
  375. package/tsconfig.build.tsbuildinfo +1 -0
  376. package/typeOverloads/index.d.ts +1 -1
  377. package/typeOverloads/modules.d.ts +75 -82
  378. package/typeOverloads/reexports.d.ts +5 -5
  379. package/utils/releaseInfo.d.ts +1 -1
  380. package/utils/releaseInfo.js +1 -1
  381. package/DataGridPremium/package.json +0 -6
  382. package/components/package.json +0 -6
  383. package/esm/hooks/features/dataSource/cache.js +0 -3
  384. package/hooks/features/dataSource/cache.d.ts +0 -2
  385. package/hooks/features/dataSource/cache.js +0 -9
  386. package/hooks/package.json +0 -6
  387. package/material/package.json +0 -6
  388. package/models/package.json +0 -6
  389. package/modern/hooks/features/dataSource/cache.js +0 -3
  390. package/themeAugmentation/package.json +0 -6
  391. package/typeOverloads/package.json +0 -6
@@ -0,0 +1,57 @@
1
+ import { RefObject } from '@mui/x-internals/types';
2
+ import { GridColDef, GridGroupingColDefOverride } from '@mui/x-data-grid-pro';
3
+ import { GridColumnRawLookup } from '@mui/x-data-grid-pro/internals';
4
+ import { GridApiPremium } from "../../../models/gridApiPremium.js";
5
+ import { RowGroupingStrategy } from "./gridRowGroupingUtils.js";
6
+ interface CreateGroupingColDefMonoCriteriaParams {
7
+ columnsLookup: GridColumnRawLookup;
8
+ /**
9
+ * The field from which we are grouping the rows.
10
+ */
11
+ groupingCriteria: string;
12
+ /**
13
+ * The col def from which we are grouping the rows.
14
+ */
15
+ groupedByColDef: GridColDef;
16
+ /**
17
+ * The col def properties the user wants to override.
18
+ * This value comes `prop.groupingColDef`.
19
+ */
20
+ colDefOverride: GridGroupingColDefOverride | null | undefined;
21
+ strategy?: RowGroupingStrategy;
22
+ }
23
+ /**
24
+ * Creates the `GridColDef` for a grouping column that only takes care of a single grouping criteria
25
+ */
26
+ export declare const createGroupingColDefForOneGroupingCriteria: ({
27
+ columnsLookup,
28
+ groupedByColDef,
29
+ groupingCriteria,
30
+ colDefOverride,
31
+ strategy
32
+ }: CreateGroupingColDefMonoCriteriaParams) => GridColDef;
33
+ interface CreateGroupingColDefSeveralCriteriaParams {
34
+ apiRef: RefObject<GridApiPremium>;
35
+ columnsLookup: GridColumnRawLookup;
36
+ /**
37
+ * The fields from which we are grouping the rows.
38
+ */
39
+ rowGroupingModel: string[];
40
+ /**
41
+ * The col def properties the user wants to override.
42
+ * This value comes `prop.groupingColDef`.
43
+ */
44
+ colDefOverride: GridGroupingColDefOverride | null | undefined;
45
+ strategy?: RowGroupingStrategy;
46
+ }
47
+ /**
48
+ * Creates the `GridColDef` for a grouping column that takes care of all the grouping criteria
49
+ */
50
+ export declare const createGroupingColDefForAllGroupingCriteria: ({
51
+ apiRef,
52
+ columnsLookup,
53
+ rowGroupingModel,
54
+ colDefOverride,
55
+ strategy
56
+ }: CreateGroupingColDefSeveralCriteriaParams) => GridColDef;
57
+ export {};
@@ -3,7 +3,7 @@ import _extends from "@babel/runtime/helpers/esm/extends";
3
3
  const _excluded = ["leafField", "mainGroupingCriteria", "hideDescendantCount"],
4
4
  _excluded2 = ["leafField", "mainGroupingCriteria", "hideDescendantCount"];
5
5
  import * as React from 'react';
6
- import { GRID_STRING_COL_DEF } from '@mui/x-data-grid-pro';
6
+ import { GRID_STRING_COL_DEF, gridRowIdSelector, gridRowNodeSelector } from '@mui/x-data-grid-pro';
7
7
  import { isSingleSelectColDef } from '@mui/x-data-grid-pro/internals';
8
8
  import { GridGroupingColumnFooterCell } from "../../../components/GridGroupingColumnFooterCell.js";
9
9
  import { GridGroupingCriteriaCell } from "../../../components/GridGroupingCriteriaCell.js";
@@ -140,8 +140,8 @@ export const createGroupingColDefForOneGroupingCriteria = ({
140
140
  return '';
141
141
  },
142
142
  valueGetter: (value, row, column, apiRef) => {
143
- const rowId = apiRef.current.getRowId(row);
144
- const rowNode = apiRef.current.getRowNode(rowId);
143
+ const rowId = gridRowIdSelector(apiRef, row);
144
+ const rowNode = gridRowNodeSelector(apiRef, rowId);
145
145
  if (!rowNode || rowNode.type === 'footer' || rowNode.type === 'pinnedRow') {
146
146
  return undefined;
147
147
  }
@@ -232,8 +232,8 @@ export const createGroupingColDefForAllGroupingCriteria = ({
232
232
  }));
233
233
  },
234
234
  valueGetter: (value, row) => {
235
- const rowId = apiRef.current.getRowId(row);
236
- const rowNode = apiRef.current.getRowNode(rowId);
235
+ const rowId = gridRowIdSelector(apiRef, row);
236
+ const rowNode = gridRowNodeSelector(apiRef, rowId);
237
237
  if (!rowNode || rowNode.type === 'footer' || rowNode.type === 'pinnedRow') {
238
238
  return undefined;
239
239
  }
@@ -0,0 +1,44 @@
1
+ import { GridColDef, GridValidRowModel } from '@mui/x-data-grid';
2
+ export type GridRowGroupingModel = string[];
3
+ export interface GridRowGroupingState {
4
+ model: GridRowGroupingModel;
5
+ }
6
+ export interface GridRowGroupingInitialState {
7
+ model?: GridRowGroupingModel;
8
+ }
9
+ export interface GridRowGroupingInternalCache {
10
+ /**
11
+ * Tracks the model on the last pre-processing
12
+ * Allows to check if we need to re-build the grouping columns when the grid upserts a column.
13
+ */
14
+ rulesOnLastRowTreeCreation: GridGroupingRules;
15
+ }
16
+ export interface GridRowGroupingApi {
17
+ /**
18
+ * Sets the columns to use as grouping criteria.
19
+ * @param {GridRowGroupingModel} model The columns to use as grouping criteria.
20
+ */
21
+ setRowGroupingModel: (model: GridRowGroupingModel) => void;
22
+ /**
23
+ * Adds the field to the row grouping model.
24
+ * @param {string} groupingCriteriaField The field from which we want to group the rows.
25
+ * @param {number | undefined} groupingIndex The grouping index at which we want to insert the new grouping criteria. By default, it will be inserted at the end of the model.
26
+ */
27
+ addRowGroupingCriteria: (groupingCriteriaField: string, groupingIndex?: number) => void;
28
+ /**
29
+ * Remove the field from the row grouping model.
30
+ * @param {string} groupingCriteriaField The field from which we want to stop grouping the rows.
31
+ */
32
+ removeRowGroupingCriteria: (groupingCriteriaField: string) => void;
33
+ /**
34
+ * Sets the grouping index of a grouping criteria.
35
+ * @param {string} groupingCriteriaField The field of the grouping criteria from which we want to change the grouping index.
36
+ * @param {number} groupingIndex The new grouping index of this grouping criteria.
37
+ */
38
+ setRowGroupingCriteriaIndex: (groupingCriteriaField: string, groupingIndex: number) => void;
39
+ }
40
+ export interface GridGroupingRule<R extends GridValidRowModel = GridValidRowModel, V = any> {
41
+ field: string;
42
+ groupingValueGetter?: GridColDef<R, V>['groupingValueGetter'];
43
+ }
44
+ export type GridGroupingRules<R extends GridValidRowModel = GridValidRowModel> = GridGroupingRule<R>[];
@@ -0,0 +1,3 @@
1
+ import { GridStatePremium } from "../../../models/gridStatePremium.js";
2
+ export declare const gridRowGroupingModelSelector: import("@mui/x-data-grid").OutputSelector<GridStatePremium, import("./gridRowGroupingInterfaces").GridRowGroupingState, import("./gridRowGroupingInterfaces").GridRowGroupingModel>;
3
+ export declare const gridRowGroupingSanitizedModelSelector: import("@mui/x-data-grid").OutputSelector<GridStatePremium, import("@mui/x-data-grid").GridColumnLookup, string[]>;
@@ -1,5 +1,5 @@
1
1
  import { gridColumnLookupSelector } from '@mui/x-data-grid-pro';
2
- import { createSelector, createSelectorMemoized } from '@mui/x-data-grid/internals';
3
- const gridRowGroupingStateSelector = state => state.rowGrouping;
2
+ import { createSelector, createRootSelector, createSelectorMemoized } from '@mui/x-data-grid-pro/internals';
3
+ const gridRowGroupingStateSelector = createRootSelector(state => state.rowGrouping);
4
4
  export const gridRowGroupingModelSelector = createSelector(gridRowGroupingStateSelector, rowGrouping => rowGrouping.model);
5
5
  export const gridRowGroupingSanitizedModelSelector = createSelectorMemoized(gridRowGroupingModelSelector, gridColumnLookupSelector, (model, columnsLookup) => model.filter(field => !!columnsLookup[field]));
@@ -0,0 +1,54 @@
1
+ import { RefObject } from '@mui/x-internals/types';
2
+ import { GridRowTreeConfig, GridFilterState, GridFilterModel, GridRowModel, GridColDef, GridKeyValue, GridDataSource } from '@mui/x-data-grid-pro';
3
+ import { GridAggregatedFilterItemApplier, GridColumnRawLookup, GRID_ROW_GROUPING_SINGLE_GROUPING_FIELD, getRowGroupingCriteriaFromGroupingField, isGroupingColumn } from '@mui/x-data-grid-pro/internals';
4
+ import { DataGridPremiumProcessedProps } from "../../../models/dataGridPremiumProps.js";
5
+ import { GridGroupingRule, GridGroupingRules, GridRowGroupingModel } from "./gridRowGroupingInterfaces.js";
6
+ import { GridStatePremium } from "../../../models/gridStatePremium.js";
7
+ import { GridPrivateApiPremium } from "../../../models/gridApiPremium.js";
8
+ export { GRID_ROW_GROUPING_SINGLE_GROUPING_FIELD, getRowGroupingCriteriaFromGroupingField, isGroupingColumn };
9
+ export declare enum RowGroupingStrategy {
10
+ Default = "grouping-columns",
11
+ DataSource = "grouping-columns-data-source",
12
+ }
13
+ export declare const getRowGroupingFieldFromGroupingCriteria: (groupingCriteria: string | null) => string;
14
+ interface FilterRowTreeFromTreeDataParams {
15
+ rowTree: GridRowTreeConfig;
16
+ isRowMatchingFilters: GridAggregatedFilterItemApplier | null;
17
+ filterModel: GridFilterModel;
18
+ apiRef: RefObject<GridPrivateApiPremium>;
19
+ }
20
+ /**
21
+ * A leaf is visible if it passed the filter
22
+ * A group is visible if all the following criteria are met:
23
+ * - One of its children is passing the filter
24
+ * - It is passing the filter
25
+ */
26
+ export declare const filterRowTreeFromGroupingColumns: (params: FilterRowTreeFromTreeDataParams) => Omit<GridFilterState, "filterModel">;
27
+ export declare const getColDefOverrides: (groupingColDefProp: DataGridPremiumProcessedProps["groupingColDef"], fields: string[], strategy?: RowGroupingStrategy) => import("@mui/x-data-grid-pro").GridGroupingColDefOverride<any> | null | undefined;
28
+ export declare const mergeStateWithRowGroupingModel: (rowGroupingModel: GridRowGroupingModel) => (state: GridStatePremium) => GridStatePremium;
29
+ export declare const setStrategyAvailability: (privateApiRef: RefObject<GridPrivateApiPremium>, disableRowGrouping: boolean, dataSource?: GridDataSource) => void;
30
+ export declare const getCellGroupingCriteria: ({
31
+ row,
32
+ colDef,
33
+ groupingRule,
34
+ apiRef
35
+ }: {
36
+ row: GridRowModel;
37
+ colDef: GridColDef;
38
+ groupingRule: GridGroupingRule;
39
+ apiRef: RefObject<GridPrivateApiPremium>;
40
+ }) => {
41
+ key: GridKeyValue | null | undefined;
42
+ field: string;
43
+ };
44
+ export declare const getGroupingRules: ({
45
+ sanitizedRowGroupingModel,
46
+ columnsLookup
47
+ }: {
48
+ sanitizedRowGroupingModel: GridRowGroupingModel;
49
+ columnsLookup: GridColumnRawLookup;
50
+ }) => GridGroupingRules;
51
+ /**
52
+ * Compares two sets of grouping rules to determine if they are equal or not.
53
+ */
54
+ export declare const areGroupingRulesEqual: (newValue: GridGroupingRules, previousValue: GridGroupingRules) => boolean;
@@ -1,5 +1,5 @@
1
1
  import _extends from "@babel/runtime/helpers/esm/extends";
2
- import { passFilterLogic, GRID_ROW_GROUPING_SINGLE_GROUPING_FIELD, getRowGroupingCriteriaFromGroupingField, isGroupingColumn, GridStrategyGroup } from '@mui/x-data-grid-pro/internals';
2
+ import { passFilterLogic, GRID_ROW_GROUPING_SINGLE_GROUPING_FIELD, getRowGroupingCriteriaFromGroupingField, isGroupingColumn, GridStrategyGroup, getRowValue } from '@mui/x-data-grid-pro/internals';
3
3
  import { gridRowGroupingSanitizedModelSelector } from "./gridRowGroupingSelector.js";
4
4
  export { GRID_ROW_GROUPING_SINGLE_GROUPING_FIELD, getRowGroupingCriteriaFromGroupingField, isGroupingColumn };
5
5
  export let RowGroupingStrategy = /*#__PURE__*/function (RowGroupingStrategy) {
@@ -138,7 +138,7 @@ export const getCellGroupingCriteria = ({
138
138
  if (groupingRule.groupingValueGetter) {
139
139
  key = groupingRule.groupingValueGetter(row[groupingRule.field], row, colDef, apiRef);
140
140
  } else {
141
- key = row[groupingRule.field];
141
+ key = getRowValue(row, colDef, apiRef);
142
142
  }
143
143
  return {
144
144
  key,
@@ -0,0 +1,3 @@
1
+ export * from "./gridRowGroupingSelector.js";
2
+ export * from "./gridRowGroupingInterfaces.js";
3
+ export { GRID_ROW_GROUPING_SINGLE_GROUPING_FIELD, getRowGroupingFieldFromGroupingCriteria, isGroupingColumn } from "./gridRowGroupingUtils.js";
@@ -0,0 +1,4 @@
1
+ import { RefObject } from '@mui/x-internals/types';
2
+ import { DataGridPremiumProcessedProps } from "../../../models/dataGridPremiumProps.js";
3
+ import { GridPrivateApiPremium } from "../../../models/gridApiPremium.js";
4
+ export declare const useGridDataSourceRowGroupingPreProcessors: (apiRef: RefObject<GridPrivateApiPremium>, props: Pick<DataGridPremiumProcessedProps, "disableRowGrouping" | "groupingColDef" | "rowGroupingColumnMode" | "defaultGroupingExpansionDepth" | "isGroupExpandedByDefault" | "dataSource">) => void;
@@ -5,11 +5,11 @@ import { getGroupingRules, RowGroupingStrategy } from "./gridRowGroupingUtils.js
5
5
  import { gridRowGroupingSanitizedModelSelector } from "./gridRowGroupingSelector.js";
6
6
  export const useGridDataSourceRowGroupingPreProcessors = (apiRef, props) => {
7
7
  const createRowTreeForRowGrouping = React.useCallback(params => {
8
- const getGroupKey = props.unstable_dataSource?.getGroupKey;
8
+ const getGroupKey = props.dataSource?.getGroupKey;
9
9
  if (!getGroupKey) {
10
10
  throw new Error('MUI X: No `getGroupKey` method provided with the dataSource.');
11
11
  }
12
- const getChildrenCount = props.unstable_dataSource?.getChildrenCount;
12
+ const getChildrenCount = props.dataSource?.getChildrenCount;
13
13
  if (!getChildrenCount) {
14
14
  throw new Error('MUI X: No `getChildrenCount` method provided with the dataSource.');
15
15
  }
@@ -57,7 +57,7 @@ export const useGridDataSourceRowGroupingPreProcessors = (apiRef, props) => {
57
57
  isGroupExpandedByDefault: props.isGroupExpandedByDefault,
58
58
  groupingName: RowGroupingStrategy.DataSource
59
59
  });
60
- }, [apiRef, props.unstable_dataSource, props.defaultGroupingExpansionDepth, props.isGroupExpandedByDefault]);
60
+ }, [apiRef, props.dataSource, props.defaultGroupingExpansionDepth, props.isGroupExpandedByDefault]);
61
61
  const filterRows = React.useCallback(() => {
62
62
  const rowTree = gridRowTreeSelector(apiRef);
63
63
  return skipFiltering(rowTree);
@@ -0,0 +1,11 @@
1
+ import { RefObject } from '@mui/x-internals/types';
2
+ import { GridStateInitializer } from '@mui/x-data-grid-pro/internals';
3
+ import { GridPrivateApiPremium } from "../../../models/gridApiPremium.js";
4
+ import { DataGridPremiumProcessedProps } from "../../../models/dataGridPremiumProps.js";
5
+ export declare const rowGroupingStateInitializer: GridStateInitializer<Pick<DataGridPremiumProcessedProps, 'rowGroupingModel' | 'initialState'>>;
6
+ /**
7
+ * @requires useGridColumns (state, method) - can be after, async only
8
+ * @requires useGridRows (state, method) - can be after, async only
9
+ * @requires useGridParamsApi (method) - can be after, async only
10
+ */
11
+ export declare const useGridRowGrouping: (apiRef: RefObject<GridPrivateApiPremium>, props: Pick<DataGridPremiumProcessedProps, "initialState" | "rowGroupingModel" | "onRowGroupingModelChange" | "defaultGroupingExpansionDepth" | "isGroupExpandedByDefault" | "groupingColDef" | "rowGroupingColumnMode" | "disableRowGrouping" | "slotProps" | "slots" | "dataSource">) => void;
@@ -37,7 +37,6 @@ export const useGridRowGrouping = (apiRef, props) => {
37
37
  if (currentModel !== model) {
38
38
  apiRef.current.setState(mergeStateWithRowGroupingModel(model));
39
39
  setStrategyAvailability(apiRef, props.disableRowGrouping);
40
- apiRef.current.forceUpdate();
41
40
  }
42
41
  }, [apiRef, props.disableRowGrouping]);
43
42
  const addRowGroupingCriteria = React.useCallback((field, groupingIndex) => {
@@ -141,13 +140,13 @@ export const useGridRowGrouping = (apiRef, props) => {
141
140
  if (!isOnGroupingCell) {
142
141
  return;
143
142
  }
144
- if (props.unstable_dataSource && !params.rowNode.childrenExpanded) {
145
- apiRef.current.unstable_dataSource.fetchRows(params.id);
143
+ if (props.dataSource && !params.rowNode.childrenExpanded) {
144
+ apiRef.current.dataSource.fetchRows(params.id);
146
145
  return;
147
146
  }
148
147
  apiRef.current.setRowChildrenExpansion(params.id, !params.rowNode.childrenExpanded);
149
148
  }
150
- }, [apiRef, props.rowGroupingColumnMode, props.unstable_dataSource]);
149
+ }, [apiRef, props.rowGroupingColumnMode, props.dataSource]);
151
150
  const checkGroupingColumnsModelDiff = React.useCallback(() => {
152
151
  const sanitizedRowGroupingModel = gridRowGroupingSanitizedModelSelector(apiRef);
153
152
  const rulesOnLastRowTreeCreation = apiRef.current.caches.rowGrouping.rulesOnLastRowTreeCreation || [];
@@ -170,7 +169,7 @@ export const useGridRowGrouping = (apiRef, props) => {
170
169
  useGridApiEventHandler(apiRef, 'cellKeyDown', handleCellKeyDown);
171
170
  useGridApiEventHandler(apiRef, 'columnsChange', checkGroupingColumnsModelDiff);
172
171
  useGridApiEventHandler(apiRef, 'rowGroupingModelChange', checkGroupingColumnsModelDiff);
173
- useGridApiEventHandler(apiRef, 'rowGroupingModelChange', () => apiRef.current.unstable_dataSource.fetchRows());
172
+ useGridApiEventHandler(apiRef, 'rowGroupingModelChange', () => apiRef.current.dataSource.fetchRows());
174
173
 
175
174
  /*
176
175
  * EFFECTS
@@ -0,0 +1,4 @@
1
+ import { RefObject } from '@mui/x-internals/types';
2
+ import { DataGridPremiumProcessedProps } from "../../../models/dataGridPremiumProps.js";
3
+ import { GridPrivateApiPremium } from "../../../models/gridApiPremium.js";
4
+ export declare const useGridRowGroupingPreProcessors: (apiRef: RefObject<GridPrivateApiPremium>, props: Pick<DataGridPremiumProcessedProps, "disableRowGrouping" | "groupingColDef" | "rowGroupingColumnMode" | "defaultGroupingExpansionDepth" | "isGroupExpandedByDefault" | "dataSource">) => void;
@@ -9,7 +9,7 @@ export const useGridRowGroupingPreProcessors = (apiRef, props) => {
9
9
  if (props.disableRowGrouping) {
10
10
  return [];
11
11
  }
12
- const strategy = props.unstable_dataSource ? RowGroupingStrategy.DataSource : RowGroupingStrategy.Default;
12
+ const strategy = props.dataSource ? RowGroupingStrategy.DataSource : RowGroupingStrategy.Default;
13
13
  const groupingColDefProp = props.groupingColDef;
14
14
 
15
15
  // We can't use `gridGroupingRowsSanitizedModelSelector` here because the new columns are not in the state yet
@@ -43,7 +43,7 @@ export const useGridRowGroupingPreProcessors = (apiRef, props) => {
43
43
  return [];
44
44
  }
45
45
  }
46
- }, [apiRef, props.groupingColDef, props.rowGroupingColumnMode, props.disableRowGrouping, props.unstable_dataSource]);
46
+ }, [apiRef, props.groupingColDef, props.rowGroupingColumnMode, props.disableRowGrouping, props.dataSource]);
47
47
  const updateGroupingColumn = React.useCallback(columnsState => {
48
48
  const groupingColDefs = getGroupingColDefs(columnsState);
49
49
  let newColumnFields = [];
@@ -148,14 +148,14 @@ export const useGridRowGroupingPreProcessors = (apiRef, props) => {
148
148
  useGridRegisterStrategyProcessor(apiRef, RowGroupingStrategy.Default, 'sorting', sortRows);
149
149
  useGridRegisterStrategyProcessor(apiRef, RowGroupingStrategy.Default, 'visibleRowsLookupCreation', getVisibleRowsLookup);
150
150
  useFirstRender(() => {
151
- setStrategyAvailability(apiRef, props.disableRowGrouping, props.unstable_dataSource);
151
+ setStrategyAvailability(apiRef, props.disableRowGrouping, props.dataSource);
152
152
  });
153
153
  const isFirstRender = React.useRef(true);
154
154
  React.useEffect(() => {
155
155
  if (!isFirstRender.current) {
156
- setStrategyAvailability(apiRef, props.disableRowGrouping, props.unstable_dataSource);
156
+ setStrategyAvailability(apiRef, props.disableRowGrouping, props.dataSource);
157
157
  } else {
158
158
  isFirstRender.current = false;
159
159
  }
160
- }, [apiRef, props.disableRowGrouping, props.unstable_dataSource]);
160
+ }, [apiRef, props.disableRowGrouping, props.dataSource]);
161
161
  };
@@ -0,0 +1 @@
1
+ export * from "./useGridRowAriaAttributes.js";
@@ -0,0 +1 @@
1
+ export declare const useGridRowAriaAttributes: () => (rowNode: import("@mui/x-data-grid").GridTreeNode, index: number) => React.HTMLAttributes<HTMLElement>;
@@ -0,0 +1,2 @@
1
+ export * from "./features/index.js";
2
+ export * from "./utils/index.js";
@@ -0,0 +1 @@
1
+ export * from "./useKeepGroupedColumnsHidden.js";
@@ -0,0 +1,4 @@
1
+ import { RefObject } from '@mui/x-internals/types';
2
+ import { GridApiCommon } from '@mui/x-data-grid';
3
+ import { GridApiPremium } from "../../models/gridApiPremium.js";
4
+ export declare const useGridApiContext: <Api extends GridApiCommon = GridApiPremium>() => RefObject<Api>;
@@ -0,0 +1,4 @@
1
+ import { RefObject } from '@mui/x-internals/types';
2
+ import { GridApiCommon } from '@mui/x-data-grid';
3
+ import { GridApiPremium } from "../../models/gridApiPremium.js";
4
+ export declare const useGridApiRef: <Api extends GridApiCommon = GridApiPremium>() => RefObject<Api | null>;
@@ -0,0 +1,2 @@
1
+ import * as React from 'react';
2
+ export declare const useGridAriaAttributes: () => React.HTMLAttributes<HTMLElement>;
@@ -0,0 +1,2 @@
1
+ import { GridPrivateApiPremium } from "../../models/gridApiPremium.js";
2
+ export declare const useGridPrivateApiContext: () => import("react").RefObject<GridPrivateApiPremium>;
@@ -0,0 +1,2 @@
1
+ import { DataGridPremiumProcessedProps } from "../../models/dataGridPremiumProps.js";
2
+ export declare const useGridRootProps: () => DataGridPremiumProcessedProps;
@@ -0,0 +1,12 @@
1
+ import { RefObject } from '@mui/x-internals/types';
2
+ import { GridApi } from '@mui/x-data-grid-pro';
3
+ import { GridInitialStatePremium } from "../../models/gridStatePremium.js";
4
+ import { DataGridPremiumProps } from "../../models/dataGridPremiumProps.js";
5
+ /**
6
+ * Automatically hide columns when added to the row grouping model and stop hiding them when they are removed.
7
+ * Handles both the `props.initialState.rowGrouping.model` and `props.rowGroupingModel`
8
+ * Does not work when used with the `hide` property of `GridColDef`
9
+ */
10
+ export declare const useKeepGroupedColumnsHidden: (props: {
11
+ apiRef: RefObject<GridApi | null>;
12
+ } & Pick<DataGridPremiumProps, "initialState" | "rowGroupingModel">) => GridInitialStatePremium;
package/esm/index.d.ts ADDED
@@ -0,0 +1,23 @@
1
+ import "./typeOverloads/index.js";
2
+ export * from '@mui/x-data-grid/components';
3
+ export * from '@mui/x-data-grid-pro/components';
4
+ export * from '@mui/x-data-grid/constants';
5
+ export * from '@mui/x-data-grid/hooks';
6
+ export * from '@mui/x-data-grid-pro/hooks';
7
+ export * from '@mui/x-data-grid/models';
8
+ export * from '@mui/x-data-grid-pro/models';
9
+ export * from '@mui/x-data-grid/context';
10
+ export * from '@mui/x-data-grid/colDef';
11
+ export * from '@mui/x-data-grid/utils';
12
+ export * from '@mui/x-data-grid-pro/utils';
13
+ export * from "./DataGridPremium/index.js";
14
+ export * from "./hooks/index.js";
15
+ export * from "./models/index.js";
16
+ export * from "./components/index.js";
17
+ export { GridColumnHeaders } from '@mui/x-data-grid-pro';
18
+ export type { GridColumnHeadersProps } from '@mui/x-data-grid-pro';
19
+ export type { DataGridPremiumProps, GridExperimentalPremiumFeatures } from './models/dataGridPremiumProps';
20
+ export { useGridApiContext, useGridApiRef, useGridRootProps } from "./typeOverloads/reexports.js";
21
+ export type { GridApi, GridInitialState, GridState } from './typeOverloads/reexports';
22
+ export { GridColumnMenu, GRID_COLUMN_MENU_SLOTS, GRID_COLUMN_MENU_SLOT_PROPS } from "./components/reexports.js";
23
+ export type { GridGetRowsParamsPremium as GridGetRowsParams, GridGetRowsResponsePremium as GridGetRowsResponse, GridDataSourcePremium as GridDataSource, GridDataSourceApiPremium as GridDataSourceApi, GridDataSourceApiBasePremium as GridDataSourceApiBase, GridDataSourcePremiumPrivateApi as GridDataSourcePrivateApi } from './hooks/features/dataSource/models';
package/esm/index.js CHANGED
@@ -1,10 +1,11 @@
1
- import "./typeOverloads/index.js";
2
- import { LicenseInfo as LicenseInfoExport } from '@mui/x-license';
3
1
  /**
4
- * @deprecated Use `@mui/x-license` package instead:
5
- * @example import { LicenseInfo } from '@mui/x-license';
2
+ * @mui/x-data-grid-premium v8.0.0-alpha.13
3
+ *
4
+ * @license MUI X Commercial
5
+ * This source code is licensed under the commercial license found in the
6
+ * LICENSE file in the root directory of this source tree.
6
7
  */
7
- export class LicenseInfo extends LicenseInfoExport {}
8
+ import "./typeOverloads/index.js";
8
9
  export * from '@mui/x-data-grid/components';
9
10
  export * from '@mui/x-data-grid-pro/components';
10
11
  export * from '@mui/x-data-grid/constants';
@@ -0,0 +1 @@
1
+ export * from '@mui/x-data-grid/locales';
@@ -0,0 +1,15 @@
1
+ export declare const GridWorkspacesIcon: import("@mui/material/OverridableComponent").OverridableComponent<import("@mui/material").SvgIconTypeMap<{}, "svg">> & {
2
+ muiName: string;
3
+ };
4
+ export declare const GridGroupWorkIcon: import("@mui/material/OverridableComponent").OverridableComponent<import("@mui/material").SvgIconTypeMap<{}, "svg">> & {
5
+ muiName: string;
6
+ };
7
+ export declare const GridFunctionsIcon: import("@mui/material/OverridableComponent").OverridableComponent<import("@mui/material").SvgIconTypeMap<{}, "svg">> & {
8
+ muiName: string;
9
+ };
10
+ export declare const GridSendPromptIcon: import("@mui/material/OverridableComponent").OverridableComponent<import("@mui/material").SvgIconTypeMap<{}, "svg">> & {
11
+ muiName: string;
12
+ };
13
+ export declare const GridRecordPromptIcon: import("@mui/material/OverridableComponent").OverridableComponent<import("@mui/material").SvgIconTypeMap<{}, "svg">> & {
14
+ muiName: string;
15
+ };
@@ -0,0 +1,8 @@
1
+ declare const materialSlots: {
2
+ columnMenuUngroupIcon: React.JSXElementConstructor<any>;
3
+ columnMenuGroupIcon: React.JSXElementConstructor<any>;
4
+ columnMenuAggregationIcon: React.JSXElementConstructor<any>;
5
+ toolbarPromptSendIcon: React.JSXElementConstructor<any>;
6
+ toolbarPromptRecordIcon: React.JSXElementConstructor<any>;
7
+ };
8
+ export default materialSlots;
@@ -0,0 +1,162 @@
1
+ import { RefObject } from '@mui/x-internals/types';
2
+ import { GridCallbackDetails, GridValidRowModel, GridGroupNode, GridEventListener, GridGetRowsError, GridUpdateRowError } from '@mui/x-data-grid-pro';
3
+ import { GridExperimentalProFeatures, DataGridProPropsWithDefaultValue, DataGridProPropsWithoutDefaultValue, DataGridPropsWithComplexDefaultValueAfterProcessing, DataGridPropsWithComplexDefaultValueBeforeProcessing, DataGridPremiumSharedPropsWithDefaultValue } from '@mui/x-data-grid-pro/internals';
4
+ import type { GridRowGroupingModel } from '../hooks/features/rowGrouping';
5
+ import type { GridAggregationModel, GridAggregationFunction, GridAggregationFunctionDataSource, GridAggregationPosition } from '../hooks/features/aggregation';
6
+ import { GridPremiumSlotsComponent } from "./gridPremiumSlotsComponent.js";
7
+ import { GridInitialStatePremium } from "./gridStatePremium.js";
8
+ import { GridApiPremium } from "./gridApiPremium.js";
9
+ import { GridCellSelectionModel } from "../hooks/features/cellSelection/index.js";
10
+ import { GridDataSourcePremium as GridDataSource, GridGetRowsParamsPremium as GridGetRowsParams } from "../hooks/features/dataSource/models.js";
11
+ export interface GridExperimentalPremiumFeatures extends GridExperimentalProFeatures {}
12
+ export interface DataGridPremiumPropsWithComplexDefaultValueBeforeProcessing extends Pick<DataGridPropsWithComplexDefaultValueBeforeProcessing, 'localeText'> {
13
+ /**
14
+ * Overridable components.
15
+ */
16
+ slots?: Partial<GridPremiumSlotsComponent>;
17
+ }
18
+ /**
19
+ * The props users can give to the `DataGridPremiumProps` component.
20
+ */
21
+ export interface DataGridPremiumProps<R extends GridValidRowModel = any> extends Omit<Partial<DataGridPremiumPropsWithDefaultValue<R>> & DataGridPremiumPropsWithComplexDefaultValueBeforeProcessing & DataGridPremiumPropsWithoutDefaultValue<R>, DataGridPremiumForcedPropsKey> {}
22
+ export interface DataGridPremiumPropsWithComplexDefaultValueAfterProcessing extends Pick<DataGridPropsWithComplexDefaultValueAfterProcessing, 'localeText'> {
23
+ slots: GridPremiumSlotsComponent;
24
+ }
25
+ /**
26
+ * The props of the Data Grid Premium component after the pre-processing phase.
27
+ */
28
+ export interface DataGridPremiumProcessedProps extends DataGridPremiumPropsWithDefaultValue, DataGridPremiumPropsWithComplexDefaultValueAfterProcessing, DataGridPremiumPropsWithoutDefaultValue {}
29
+ export type DataGridPremiumForcedPropsKey = 'signature';
30
+ /**
31
+ * The Data Grid Premium options with a default value overridable through props.
32
+ * None of the entry of this interface should be optional, they all have default values and `DataGridProps` already applies a `Partial<DataGridSimpleOptions>` for the public interface.
33
+ * The controlled model do not have a default value at the prop processing level, so they must be defined in `DataGridOtherProps`.
34
+ */
35
+ export interface DataGridPremiumPropsWithDefaultValue<R extends GridValidRowModel = any> extends DataGridProPropsWithDefaultValue<R>, DataGridPremiumSharedPropsWithDefaultValue {
36
+ /**
37
+ * If `true`, aggregation is disabled.
38
+ * @default false
39
+ */
40
+ disableAggregation: boolean;
41
+ /**
42
+ * If `true`, the row grouping is disabled.
43
+ * @default false
44
+ */
45
+ disableRowGrouping: boolean;
46
+ /**
47
+ * If `single`, all the columns that are grouped are represented in the same grid column.
48
+ * If `multiple`, each column that is grouped is represented in its own grid column.
49
+ * @default 'single'
50
+ */
51
+ rowGroupingColumnMode: 'single' | 'multiple';
52
+ /**
53
+ * Aggregation functions available on the grid.
54
+ * @default GRID_AGGREGATION_FUNCTIONS when `dataSource` is not provided, `{}` when `dataSource` is provided
55
+ */
56
+ aggregationFunctions: Record<string, GridAggregationFunction> | Record<string, GridAggregationFunctionDataSource>;
57
+ /**
58
+ * Rows used to generate the aggregated value.
59
+ * If `filtered`, the aggregated values are generated using only the rows currently passing the filtering process.
60
+ * If `all`, the aggregated values are generated using all the rows.
61
+ * @default "filtered"
62
+ */
63
+ aggregationRowsScope: 'filtered' | 'all';
64
+ /**
65
+ * Determines the position of an aggregated value.
66
+ * @param {GridGroupNode} groupNode The current group.
67
+ * @returns {GridAggregationPosition | null} Position of the aggregated value (if `null`, the group isn't aggregated).
68
+ * @default (groupNode) => groupNode == null ? 'footer' : 'inline'
69
+ */
70
+ getAggregationPosition: (groupNode: GridGroupNode) => GridAggregationPosition | null;
71
+ /**
72
+ * If `true`, the clipboard paste is disabled.
73
+ * @default false
74
+ */
75
+ disableClipboardPaste: boolean;
76
+ /**
77
+ * The function is used to split the pasted text into rows and cells.
78
+ * @param {string} text The text pasted from the clipboard.
79
+ * @returns {string[][] | null} A 2D array of strings. The first dimension is the rows, the second dimension is the columns.
80
+ * @default (pastedText) => { const text = pastedText.replace(/\r?\n$/, ''); return text.split(/\r\n|\n|\r/).map((row) => row.split('\t')); }
81
+ */
82
+ splitClipboardPastedText: (text: string) => string[][] | null;
83
+ }
84
+ export interface DataGridPremiumPropsWithoutDefaultValue<R extends GridValidRowModel = any> extends Omit<DataGridProPropsWithoutDefaultValue<R>, 'initialState' | 'apiRef' | 'dataSource' | 'onDataSourceError'> {
85
+ /**
86
+ * The ref object that allows grid manipulation. Can be instantiated with `useGridApiRef()`.
87
+ */
88
+ apiRef?: RefObject<GridApiPremium | null>;
89
+ /**
90
+ * The initial state of the DataGridPremium.
91
+ * The data in it is set in the state on initialization but isn't controlled.
92
+ * If one of the data in `initialState` is also being controlled, then the control state wins.
93
+ */
94
+ initialState?: GridInitialStatePremium;
95
+ /**
96
+ * Set the row grouping model of the grid.
97
+ */
98
+ rowGroupingModel?: GridRowGroupingModel;
99
+ /**
100
+ * Callback fired when the row grouping model changes.
101
+ * @param {GridRowGroupingModel} model Columns used as grouping criteria.
102
+ * @param {GridCallbackDetails} details Additional details for this callback.
103
+ */
104
+ onRowGroupingModelChange?: (model: GridRowGroupingModel, details: GridCallbackDetails) => void;
105
+ /**
106
+ * Set the aggregation model of the grid.
107
+ */
108
+ aggregationModel?: GridAggregationModel;
109
+ /**
110
+ * Callback fired when the row grouping model changes.
111
+ * @param {GridAggregationModel} model The aggregated columns.
112
+ * @param {GridCallbackDetails} details Additional details for this callback.
113
+ */
114
+ onAggregationModelChange?: (model: GridAggregationModel, details: GridCallbackDetails) => void;
115
+ /**
116
+ * Set the cell selection model of the grid.
117
+ */
118
+ cellSelectionModel?: GridCellSelectionModel;
119
+ /**
120
+ * Callback fired when the selection state of one or multiple cells changes.
121
+ * @param {GridCellSelectionModel} cellSelectionModel Object in the shape of [[GridCellSelectionModel]] containing the selected cells.
122
+ * @param {GridCallbackDetails} details Additional details for this callback.
123
+ */
124
+ onCellSelectionModelChange?: (cellSelectionModel: GridCellSelectionModel, details: GridCallbackDetails) => void;
125
+ /**
126
+ * Callback fired when the state of the Excel export changes.
127
+ * @param {string} inProgress Indicates if the task is in progress.
128
+ */
129
+ onExcelExportStateChange?: (inProgress: 'pending' | 'finished') => void;
130
+ /**
131
+ * Callback fired before the clipboard paste operation starts.
132
+ * Use it to confirm or cancel the paste operation.
133
+ * @param {object} params Params passed to the callback.
134
+ * @param {string[][]} params.data The raw pasted data split by rows and cells.
135
+ * @returns {Promise<any>} A promise that resolves to confirm the paste operation, and rejects to cancel it.
136
+ */
137
+ onBeforeClipboardPasteStart?: (params: {
138
+ data: string[][];
139
+ }) => Promise<any>;
140
+ /**
141
+ * Callback fired when the clipboard paste operation starts.
142
+ */
143
+ onClipboardPasteStart?: GridEventListener<'clipboardPasteStart'>;
144
+ /**
145
+ * Callback fired when the clipboard paste operation ends.
146
+ */
147
+ onClipboardPasteEnd?: GridEventListener<'clipboardPasteEnd'>;
148
+ /**
149
+ * Unstable features, breaking changes might be introduced.
150
+ * For each feature, if the flag is not explicitly set to `true`, then the feature is fully disabled, and neither property nor method calls will have any effect.
151
+ */
152
+ experimentalFeatures?: Partial<GridExperimentalPremiumFeatures>;
153
+ /**
154
+ * Data source object.
155
+ */
156
+ dataSource?: GridDataSource;
157
+ /**
158
+ * Callback fired when a data source request fails.
159
+ * @param {GridGetRowsError | GridUpdateRowError} error The data source error object.
160
+ */
161
+ onDataSourceError?: (error: GridGetRowsError<GridGetRowsParams> | GridUpdateRowError) => void;
162
+ }