@mui/x-data-grid-premium 8.0.0-beta.2 → 8.0.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 (495) hide show
  1. package/CHANGELOG.md +423 -96
  2. package/DataGridPremium/DataGridPremium.js +188 -26
  3. package/DataGridPremium/useDataGridPremiumComponent.d.ts +2 -2
  4. package/DataGridPremium/useDataGridPremiumComponent.js +22 -3
  5. package/DataGridPremium/useDataGridPremiumProps.js +5 -1
  6. package/components/GridColumnMenuPivotItem.d.ts +3 -0
  7. package/components/GridColumnMenuPivotItem.js +33 -0
  8. package/components/GridEmptyPivotOverlay.d.ts +6 -0
  9. package/components/GridEmptyPivotOverlay.js +29 -0
  10. package/components/GridGroupingCriteriaCell.js +8 -3
  11. package/components/GridPremiumColumnMenu.d.ts +5 -0
  12. package/components/GridPremiumColumnMenu.js +6 -1
  13. package/components/GridPremiumToolbar.d.ts +1 -1
  14. package/components/GridPremiumToolbar.js +29 -1
  15. package/components/aiAssistantPanel/AiAssistantPanelTrigger.d.ts +33 -0
  16. package/components/aiAssistantPanel/AiAssistantPanelTrigger.js +107 -0
  17. package/components/aiAssistantPanel/GridAiAssistantPanel.d.ts +3 -0
  18. package/components/aiAssistantPanel/GridAiAssistantPanel.js +195 -0
  19. package/components/aiAssistantPanel/GridAiAssistantPanelConversation.d.ts +7 -0
  20. package/components/aiAssistantPanel/GridAiAssistantPanelConversation.js +71 -0
  21. package/components/aiAssistantPanel/GridAiAssistantPanelConversationsMenu.d.ts +3 -0
  22. package/components/aiAssistantPanel/GridAiAssistantPanelConversationsMenu.js +92 -0
  23. package/components/aiAssistantPanel/GridAiAssistantPanelSuggestions.d.ts +7 -0
  24. package/components/aiAssistantPanel/GridAiAssistantPanelSuggestions.js +86 -0
  25. package/components/aiAssistantPanel/index.d.ts +2 -0
  26. package/components/aiAssistantPanel/index.js +27 -0
  27. package/components/collapsible/Collapsible.d.ts +4 -0
  28. package/components/collapsible/Collapsible.js +70 -0
  29. package/components/collapsible/CollapsibleContext.d.ts +8 -0
  30. package/components/collapsible/CollapsibleContext.js +17 -0
  31. package/components/collapsible/CollapsiblePanel.d.ts +4 -0
  32. package/components/collapsible/CollapsiblePanel.js +64 -0
  33. package/components/collapsible/CollapsibleTrigger.d.ts +4 -0
  34. package/components/collapsible/CollapsibleTrigger.js +106 -0
  35. package/components/collapsible/index.d.ts +4 -0
  36. package/components/collapsible/index.js +49 -0
  37. package/components/export/ExportExcel.js +4 -129
  38. package/components/index.d.ts +5 -2
  39. package/components/index.js +40 -4
  40. package/components/pivotPanel/GridPivotPanel.d.ts +3 -0
  41. package/components/pivotPanel/GridPivotPanel.js +22 -0
  42. package/components/pivotPanel/GridPivotPanelBody.d.ts +11 -0
  43. package/components/pivotPanel/GridPivotPanelBody.js +368 -0
  44. package/components/pivotPanel/GridPivotPanelField.d.ts +22 -0
  45. package/components/pivotPanel/GridPivotPanelField.js +338 -0
  46. package/components/pivotPanel/GridPivotPanelFieldMenu.d.ts +8 -0
  47. package/components/pivotPanel/GridPivotPanelFieldMenu.js +177 -0
  48. package/components/pivotPanel/GridPivotPanelHeader.d.ts +7 -0
  49. package/components/pivotPanel/GridPivotPanelHeader.js +101 -0
  50. package/components/pivotPanel/GridPivotPanelSearch.d.ts +7 -0
  51. package/components/pivotPanel/GridPivotPanelSearch.js +77 -0
  52. package/components/pivotPanel/PivotPanelTrigger.d.ts +37 -0
  53. package/components/pivotPanel/PivotPanelTrigger.js +93 -0
  54. package/components/pivotPanel/index.d.ts +2 -0
  55. package/components/pivotPanel/index.js +27 -0
  56. package/components/prompt/GridPrompt.d.ts +7 -0
  57. package/components/prompt/GridPrompt.js +364 -0
  58. package/components/prompt/index.d.ts +1 -0
  59. package/components/prompt/index.js +12 -0
  60. package/components/promptField/GridPromptField.d.ts +4 -0
  61. package/components/promptField/GridPromptField.js +86 -0
  62. package/components/promptField/PromptField.d.ts +66 -0
  63. package/components/promptField/PromptField.js +95 -0
  64. package/components/promptField/PromptFieldContext.d.ts +16 -0
  65. package/components/promptField/PromptFieldContext.js +17 -0
  66. package/components/promptField/PromptFieldControl.d.ts +27 -0
  67. package/components/promptField/PromptFieldControl.js +102 -0
  68. package/components/promptField/PromptFieldRecord.d.ts +27 -0
  69. package/components/promptField/PromptFieldRecord.js +158 -0
  70. package/components/promptField/PromptFieldSend.d.ts +27 -0
  71. package/components/promptField/PromptFieldSend.js +83 -0
  72. package/components/promptField/index.d.ts +4 -0
  73. package/components/promptField/index.js +49 -0
  74. package/components/resizablePanel/ResizablePanel.d.ts +10 -0
  75. package/components/resizablePanel/ResizablePanel.js +59 -0
  76. package/components/resizablePanel/ResizablePanelContext.d.ts +7 -0
  77. package/components/resizablePanel/ResizablePanelContext.js +17 -0
  78. package/components/resizablePanel/ResizablePanelHandle.d.ts +4 -0
  79. package/components/resizablePanel/ResizablePanelHandle.js +115 -0
  80. package/components/resizablePanel/index.d.ts +3 -0
  81. package/components/resizablePanel/index.js +38 -0
  82. package/components/sidebar/Sidebar.d.ts +4 -0
  83. package/components/sidebar/Sidebar.js +54 -0
  84. package/components/sidebar/SidebarHeader.d.ts +4 -0
  85. package/components/sidebar/SidebarHeader.js +51 -0
  86. package/components/sidebar/index.d.ts +2 -0
  87. package/components/sidebar/index.js +27 -0
  88. package/constants/dataGridPremiumDefaultSlotsComponents.js +3 -0
  89. package/esm/DataGridPremium/DataGridPremium.js +190 -28
  90. package/esm/DataGridPremium/useDataGridPremiumComponent.d.ts +2 -2
  91. package/esm/DataGridPremium/useDataGridPremiumComponent.js +20 -3
  92. package/esm/DataGridPremium/useDataGridPremiumProps.js +5 -1
  93. package/esm/components/GridColumnMenuPivotItem.d.ts +3 -0
  94. package/esm/components/GridColumnMenuPivotItem.js +26 -0
  95. package/esm/components/GridEmptyPivotOverlay.d.ts +6 -0
  96. package/esm/components/GridEmptyPivotOverlay.js +22 -0
  97. package/esm/components/GridGroupingCriteriaCell.js +9 -4
  98. package/esm/components/GridPremiumColumnMenu.d.ts +5 -0
  99. package/esm/components/GridPremiumColumnMenu.js +6 -1
  100. package/esm/components/GridPremiumToolbar.d.ts +1 -1
  101. package/esm/components/GridPremiumToolbar.js +30 -2
  102. package/esm/components/aiAssistantPanel/AiAssistantPanelTrigger.d.ts +33 -0
  103. package/esm/components/aiAssistantPanel/AiAssistantPanelTrigger.js +100 -0
  104. package/esm/components/aiAssistantPanel/GridAiAssistantPanel.d.ts +3 -0
  105. package/esm/components/aiAssistantPanel/GridAiAssistantPanel.js +188 -0
  106. package/esm/components/aiAssistantPanel/GridAiAssistantPanelConversation.d.ts +7 -0
  107. package/esm/components/aiAssistantPanel/GridAiAssistantPanelConversation.js +64 -0
  108. package/esm/components/aiAssistantPanel/GridAiAssistantPanelConversationsMenu.d.ts +3 -0
  109. package/esm/components/aiAssistantPanel/GridAiAssistantPanelConversationsMenu.js +85 -0
  110. package/esm/components/aiAssistantPanel/GridAiAssistantPanelSuggestions.d.ts +7 -0
  111. package/esm/components/aiAssistantPanel/GridAiAssistantPanelSuggestions.js +80 -0
  112. package/esm/components/aiAssistantPanel/index.d.ts +2 -0
  113. package/esm/components/aiAssistantPanel/index.js +2 -0
  114. package/esm/components/collapsible/Collapsible.d.ts +4 -0
  115. package/esm/components/collapsible/Collapsible.js +63 -0
  116. package/esm/components/collapsible/CollapsibleContext.d.ts +8 -0
  117. package/esm/components/collapsible/CollapsibleContext.js +9 -0
  118. package/esm/components/collapsible/CollapsiblePanel.d.ts +4 -0
  119. package/esm/components/collapsible/CollapsiblePanel.js +57 -0
  120. package/esm/components/collapsible/CollapsibleTrigger.d.ts +4 -0
  121. package/esm/components/collapsible/CollapsibleTrigger.js +99 -0
  122. package/esm/components/collapsible/index.d.ts +4 -0
  123. package/esm/components/collapsible/index.js +4 -0
  124. package/esm/components/export/ExportExcel.js +4 -129
  125. package/esm/components/index.d.ts +5 -2
  126. package/esm/components/index.js +5 -2
  127. package/esm/components/pivotPanel/GridPivotPanel.d.ts +3 -0
  128. package/esm/components/pivotPanel/GridPivotPanel.js +16 -0
  129. package/esm/components/pivotPanel/GridPivotPanelBody.d.ts +11 -0
  130. package/esm/components/pivotPanel/GridPivotPanelBody.js +361 -0
  131. package/esm/components/pivotPanel/GridPivotPanelField.d.ts +22 -0
  132. package/esm/components/pivotPanel/GridPivotPanelField.js +331 -0
  133. package/esm/components/pivotPanel/GridPivotPanelFieldMenu.d.ts +8 -0
  134. package/esm/components/pivotPanel/GridPivotPanelFieldMenu.js +170 -0
  135. package/esm/components/pivotPanel/GridPivotPanelHeader.d.ts +7 -0
  136. package/esm/components/pivotPanel/GridPivotPanelHeader.js +94 -0
  137. package/esm/components/pivotPanel/GridPivotPanelSearch.d.ts +7 -0
  138. package/esm/components/pivotPanel/GridPivotPanelSearch.js +70 -0
  139. package/esm/components/pivotPanel/PivotPanelTrigger.d.ts +37 -0
  140. package/esm/components/pivotPanel/PivotPanelTrigger.js +86 -0
  141. package/esm/components/pivotPanel/index.d.ts +2 -0
  142. package/esm/components/pivotPanel/index.js +2 -0
  143. package/esm/components/prompt/GridPrompt.d.ts +7 -0
  144. package/esm/components/prompt/GridPrompt.js +357 -0
  145. package/esm/components/prompt/index.d.ts +1 -0
  146. package/esm/components/prompt/index.js +1 -0
  147. package/esm/components/promptField/GridPromptField.d.ts +4 -0
  148. package/esm/components/promptField/GridPromptField.js +79 -0
  149. package/esm/components/promptField/PromptField.d.ts +66 -0
  150. package/esm/components/promptField/PromptField.js +88 -0
  151. package/esm/components/promptField/PromptFieldContext.d.ts +16 -0
  152. package/esm/components/promptField/PromptFieldContext.js +9 -0
  153. package/esm/components/promptField/PromptFieldControl.d.ts +27 -0
  154. package/esm/components/promptField/PromptFieldControl.js +95 -0
  155. package/esm/components/promptField/PromptFieldRecord.d.ts +27 -0
  156. package/esm/components/promptField/PromptFieldRecord.js +151 -0
  157. package/esm/components/promptField/PromptFieldSend.d.ts +27 -0
  158. package/esm/components/promptField/PromptFieldSend.js +76 -0
  159. package/esm/components/promptField/index.d.ts +4 -0
  160. package/esm/components/promptField/index.js +4 -0
  161. package/esm/components/resizablePanel/ResizablePanel.d.ts +10 -0
  162. package/esm/components/resizablePanel/ResizablePanel.js +52 -0
  163. package/esm/components/resizablePanel/ResizablePanelContext.d.ts +7 -0
  164. package/esm/components/resizablePanel/ResizablePanelContext.js +9 -0
  165. package/esm/components/resizablePanel/ResizablePanelHandle.d.ts +4 -0
  166. package/esm/components/resizablePanel/ResizablePanelHandle.js +108 -0
  167. package/esm/components/resizablePanel/index.d.ts +3 -0
  168. package/esm/components/resizablePanel/index.js +3 -0
  169. package/esm/components/sidebar/Sidebar.d.ts +4 -0
  170. package/esm/components/sidebar/Sidebar.js +47 -0
  171. package/esm/components/sidebar/SidebarHeader.d.ts +4 -0
  172. package/esm/components/sidebar/SidebarHeader.js +44 -0
  173. package/esm/components/sidebar/index.d.ts +2 -0
  174. package/esm/components/sidebar/index.js +2 -0
  175. package/esm/constants/dataGridPremiumDefaultSlotsComponents.js +3 -0
  176. package/esm/hooks/features/aggregation/gridAggregationFunctions.js +13 -0
  177. package/esm/hooks/features/aggregation/gridAggregationSelectors.d.ts +10 -1
  178. package/esm/hooks/features/aggregation/gridAggregationSelectors.js +28 -1
  179. package/esm/hooks/features/aggregation/gridAggregationUtils.d.ts +1 -1
  180. package/esm/hooks/features/aggregation/index.d.ts +1 -1
  181. package/esm/hooks/features/aggregation/index.js +1 -1
  182. package/esm/hooks/features/aggregation/useGridAggregation.js +7 -11
  183. package/esm/hooks/features/aggregation/useGridAggregationPreProcessors.js +2 -8
  184. package/esm/hooks/features/aggregation/wrapColumnWithAggregation.d.ts +5 -25
  185. package/esm/hooks/features/aggregation/wrapColumnWithAggregation.js +23 -10
  186. package/esm/hooks/features/aiAssistant/api.d.ts +12 -0
  187. package/esm/hooks/features/aiAssistant/api.js +31 -0
  188. package/esm/hooks/features/aiAssistant/gridAiAssistantInterfaces.d.ts +82 -0
  189. package/esm/hooks/features/aiAssistant/gridAiAssistantSelectors.d.ts +5 -0
  190. package/esm/hooks/features/aiAssistant/gridAiAssistantSelectors.js +5 -0
  191. package/esm/hooks/features/aiAssistant/index.d.ts +2 -0
  192. package/esm/hooks/features/aiAssistant/useGridAiAssistant.d.ts +6 -0
  193. package/esm/hooks/features/aiAssistant/useGridAiAssistant.js +293 -0
  194. package/esm/hooks/features/cellSelection/useGridCellSelection.js +6 -6
  195. package/esm/hooks/features/clipboard/useGridClipboardImport.js +4 -4
  196. package/esm/hooks/features/dataSource/useGridDataSourcePremium.js +4 -1
  197. package/esm/hooks/features/export/useGridExcelExport.js +2 -2
  198. package/esm/hooks/features/index.d.ts +1 -1
  199. package/esm/hooks/features/index.js +1 -1
  200. package/esm/hooks/features/pivoting/gridPivotingInterfaces.d.ts +69 -0
  201. package/esm/hooks/features/pivoting/gridPivotingSelectors.d.ts +4 -0
  202. package/esm/hooks/features/pivoting/gridPivotingSelectors.js +5 -0
  203. package/esm/hooks/features/pivoting/useGridPivoting.d.ts +7 -0
  204. package/esm/hooks/features/pivoting/useGridPivoting.js +339 -0
  205. package/esm/hooks/features/pivoting/utils.d.ts +21 -0
  206. package/esm/hooks/features/pivoting/utils.js +259 -0
  207. package/esm/hooks/features/rowGrouping/useGridDataSourceRowGroupingPreProcessors.js +1 -4
  208. package/esm/hooks/features/rowGrouping/useGridRowGrouping.js +4 -5
  209. package/esm/hooks/utils/useResize.d.ts +9 -0
  210. package/esm/hooks/utils/useResize.js +52 -0
  211. package/esm/index.d.ts +4 -1
  212. package/esm/index.js +4 -2
  213. package/esm/material/icons.d.ts +15 -15
  214. package/esm/material/icons.js +32 -5
  215. package/esm/material/index.d.ts +31 -5
  216. package/esm/material/index.js +31 -3
  217. package/esm/models/dataGridPremiumProps.d.ts +96 -2
  218. package/esm/models/gridApiPremium.d.ts +4 -2
  219. package/esm/models/gridPremiumIconSlotsComponent.d.ts +141 -8
  220. package/esm/models/gridPremiumSlotsComponent.d.ts +13 -1
  221. package/esm/models/gridStatePremium.d.ts +6 -0
  222. package/esm/package.json +1 -1
  223. package/esm/setupExcelExportWebWorker/index.d.ts +1 -0
  224. package/esm/setupExcelExportWebWorker/index.js +1 -0
  225. package/esm/typeOverloads/modules.d.ts +32 -1
  226. package/esm/utils/speechRecognition.d.ts +2 -0
  227. package/esm/utils/speechRecognition.js +2 -0
  228. package/hooks/features/aggregation/gridAggregationFunctions.js +13 -0
  229. package/hooks/features/aggregation/gridAggregationSelectors.d.ts +10 -1
  230. package/hooks/features/aggregation/gridAggregationSelectors.js +29 -2
  231. package/hooks/features/aggregation/gridAggregationUtils.d.ts +1 -1
  232. package/hooks/features/aggregation/index.d.ts +1 -1
  233. package/hooks/features/aggregation/index.js +21 -11
  234. package/hooks/features/aggregation/useGridAggregation.js +6 -10
  235. package/hooks/features/aggregation/useGridAggregationPreProcessors.js +2 -8
  236. package/hooks/features/aggregation/wrapColumnWithAggregation.d.ts +5 -25
  237. package/hooks/features/aggregation/wrapColumnWithAggregation.js +24 -11
  238. package/hooks/features/aiAssistant/api.d.ts +12 -0
  239. package/hooks/features/aiAssistant/api.js +37 -0
  240. package/hooks/features/aiAssistant/gridAiAssistantInterfaces.d.ts +82 -0
  241. package/hooks/features/aiAssistant/gridAiAssistantSelectors.d.ts +5 -0
  242. package/hooks/features/aiAssistant/gridAiAssistantSelectors.js +11 -0
  243. package/hooks/features/aiAssistant/index.d.ts +2 -0
  244. package/hooks/features/aiAssistant/useGridAiAssistant.d.ts +6 -0
  245. package/hooks/features/aiAssistant/useGridAiAssistant.js +303 -0
  246. package/hooks/features/cellSelection/useGridCellSelection.js +5 -5
  247. package/hooks/features/clipboard/useGridClipboardImport.js +3 -3
  248. package/hooks/features/dataSource/useGridDataSourcePremium.js +4 -1
  249. package/hooks/features/export/useGridExcelExport.js +1 -1
  250. package/hooks/features/index.d.ts +1 -1
  251. package/hooks/features/index.js +4 -4
  252. package/hooks/features/pivoting/gridPivotingInterfaces.d.ts +69 -0
  253. package/hooks/features/pivoting/gridPivotingInterfaces.js +5 -0
  254. package/hooks/features/pivoting/gridPivotingSelectors.d.ts +4 -0
  255. package/hooks/features/pivoting/gridPivotingSelectors.js +30 -0
  256. package/hooks/features/pivoting/useGridPivoting.d.ts +7 -0
  257. package/hooks/features/pivoting/useGridPivoting.js +349 -0
  258. package/hooks/features/pivoting/utils.d.ts +21 -0
  259. package/hooks/features/pivoting/utils.js +270 -0
  260. package/hooks/features/rowGrouping/useGridDataSourceRowGroupingPreProcessors.js +1 -4
  261. package/hooks/features/rowGrouping/useGridRowGrouping.js +3 -4
  262. package/hooks/utils/useResize.d.ts +9 -0
  263. package/hooks/utils/useResize.js +60 -0
  264. package/index.d.ts +4 -1
  265. package/index.js +19 -3
  266. package/material/icons.d.ts +15 -15
  267. package/material/icons.js +36 -9
  268. package/material/index.d.ts +31 -5
  269. package/material/index.js +30 -2
  270. package/models/dataGridPremiumProps.d.ts +96 -2
  271. package/models/gridApiPremium.d.ts +4 -2
  272. package/models/gridPremiumIconSlotsComponent.d.ts +141 -8
  273. package/models/gridPremiumSlotsComponent.d.ts +13 -1
  274. package/models/gridStatePremium.d.ts +6 -0
  275. package/package.json +12 -18
  276. package/setupExcelExportWebWorker/index.d.ts +1 -0
  277. package/{setupExcelExportWebWorker.js → setupExcelExportWebWorker/index.js} +1 -1
  278. package/typeOverloads/modules.d.ts +32 -1
  279. package/utils/speechRecognition.d.ts +2 -0
  280. package/utils/speechRecognition.js +8 -0
  281. package/components/promptControl/GridToolbarPromptControl.d.ts +0 -26
  282. package/components/promptControl/GridToolbarPromptControl.js +0 -222
  283. package/components/promptControl/RecordButton.d.ts +0 -16
  284. package/components/promptControl/RecordButton.js +0 -119
  285. package/components/promptControl/index.d.ts +0 -1
  286. package/components/promptControl/index.js +0 -12
  287. package/esm/components/promptControl/GridToolbarPromptControl.d.ts +0 -26
  288. package/esm/components/promptControl/GridToolbarPromptControl.js +0 -215
  289. package/esm/components/promptControl/RecordButton.d.ts +0 -16
  290. package/esm/components/promptControl/RecordButton.js +0 -111
  291. package/esm/components/promptControl/index.d.ts +0 -1
  292. package/esm/components/promptControl/index.js +0 -1
  293. package/esm/hooks/features/promptControl/api.d.ts +0 -2
  294. package/esm/hooks/features/promptControl/api.js +0 -22
  295. package/esm/hooks/features/promptControl/index.d.ts +0 -2
  296. package/esm/hooks/features/promptControl/types.d.ts +0 -25
  297. package/esm/setupExcelExportWebWorker.d.ts +0 -1
  298. package/esm/setupExcelExportWebWorker.js +0 -1
  299. package/esm/utils/releaseInfo.d.ts +0 -1
  300. package/esm/utils/releaseInfo.js +0 -13
  301. package/hooks/features/promptControl/api.d.ts +0 -2
  302. package/hooks/features/promptControl/api.js +0 -28
  303. package/hooks/features/promptControl/index.d.ts +0 -2
  304. package/hooks/features/promptControl/types.d.ts +0 -25
  305. package/modern/DataGridPremium/DataGrid.d.ts +0 -8
  306. package/modern/DataGridPremium/DataGrid.js +0 -19
  307. package/modern/DataGridPremium/DataGridPremium.d.ts +0 -16
  308. package/modern/DataGridPremium/DataGridPremium.js +0 -1121
  309. package/modern/DataGridPremium/index.d.ts +0 -3
  310. package/modern/DataGridPremium/index.js +0 -3
  311. package/modern/DataGridPremium/useDataGridPremiumComponent.d.ts +0 -4
  312. package/modern/DataGridPremium/useDataGridPremiumComponent.js +0 -108
  313. package/modern/DataGridPremium/useDataGridPremiumProps.d.ts +0 -6
  314. package/modern/DataGridPremium/useDataGridPremiumProps.js +0 -54
  315. package/modern/components/GridAggregationHeader.d.ts +0 -7
  316. package/modern/components/GridAggregationHeader.js +0 -89
  317. package/modern/components/GridAggregationRowOverlay.d.ts +0 -3
  318. package/modern/components/GridAggregationRowOverlay.js +0 -37
  319. package/modern/components/GridBottomContainer.d.ts +0 -3
  320. package/modern/components/GridBottomContainer.js +0 -43
  321. package/modern/components/GridColumnMenuAggregationItem.d.ts +0 -7
  322. package/modern/components/GridColumnMenuAggregationItem.js +0 -124
  323. package/modern/components/GridColumnMenuRowGroupItem.d.ts +0 -3
  324. package/modern/components/GridColumnMenuRowGroupItem.js +0 -42
  325. package/modern/components/GridColumnMenuRowUngroupItem.d.ts +0 -3
  326. package/modern/components/GridColumnMenuRowUngroupItem.js +0 -44
  327. package/modern/components/GridDataSourceGroupingCriteriaCell.d.ts +0 -7
  328. package/modern/components/GridDataSourceGroupingCriteriaCell.js +0 -121
  329. package/modern/components/GridExcelExportMenuItem.d.ts +0 -9
  330. package/modern/components/GridExcelExportMenuItem.js +0 -48
  331. package/modern/components/GridFooterCell.d.ts +0 -9
  332. package/modern/components/GridFooterCell.js +0 -43
  333. package/modern/components/GridGroupingColumnFooterCell.d.ts +0 -4
  334. package/modern/components/GridGroupingColumnFooterCell.js +0 -23
  335. package/modern/components/GridGroupingColumnLeafCell.d.ts +0 -4
  336. package/modern/components/GridGroupingColumnLeafCell.js +0 -17
  337. package/modern/components/GridGroupingCriteriaCell.d.ts +0 -7
  338. package/modern/components/GridGroupingCriteriaCell.js +0 -87
  339. package/modern/components/GridPremiumColumnMenu.d.ts +0 -33
  340. package/modern/components/GridPremiumColumnMenu.js +0 -37
  341. package/modern/components/GridPremiumToolbar.d.ts +0 -3
  342. package/modern/components/GridPremiumToolbar.js +0 -23
  343. package/modern/components/export/ExportExcel.d.ts +0 -29
  344. package/modern/components/export/ExportExcel.js +0 -209
  345. package/modern/components/export/index.d.ts +0 -1
  346. package/modern/components/export/index.js +0 -1
  347. package/modern/components/index.d.ts +0 -6
  348. package/modern/components/index.js +0 -6
  349. package/modern/components/promptControl/GridToolbarPromptControl.d.ts +0 -26
  350. package/modern/components/promptControl/GridToolbarPromptControl.js +0 -215
  351. package/modern/components/promptControl/RecordButton.d.ts +0 -16
  352. package/modern/components/promptControl/RecordButton.js +0 -111
  353. package/modern/components/promptControl/index.d.ts +0 -1
  354. package/modern/components/promptControl/index.js +0 -1
  355. package/modern/components/reexports.d.ts +0 -1
  356. package/modern/components/reexports.js +0 -1
  357. package/modern/constants/dataGridPremiumDefaultSlotsComponents.d.ts +0 -2
  358. package/modern/constants/dataGridPremiumDefaultSlotsComponents.js +0 -11
  359. package/modern/hooks/features/aggregation/createAggregationLookup.d.ts +0 -17
  360. package/modern/hooks/features/aggregation/createAggregationLookup.js +0 -111
  361. package/modern/hooks/features/aggregation/gridAggregationFunctions.d.ts +0 -8
  362. package/modern/hooks/features/aggregation/gridAggregationFunctions.js +0 -93
  363. package/modern/hooks/features/aggregation/gridAggregationInterfaces.d.ts +0 -129
  364. package/modern/hooks/features/aggregation/gridAggregationSelectors.d.ts +0 -13
  365. package/modern/hooks/features/aggregation/gridAggregationSelectors.js +0 -15
  366. package/modern/hooks/features/aggregation/gridAggregationUtils.d.ts +0 -62
  367. package/modern/hooks/features/aggregation/gridAggregationUtils.js +0 -180
  368. package/modern/hooks/features/aggregation/index.d.ts +0 -4
  369. package/modern/hooks/features/aggregation/index.js +0 -3
  370. package/modern/hooks/features/aggregation/useGridAggregation.d.ts +0 -6
  371. package/modern/hooks/features/aggregation/useGridAggregation.js +0 -103
  372. package/modern/hooks/features/aggregation/useGridAggregationPreProcessors.d.ts +0 -4
  373. package/modern/hooks/features/aggregation/useGridAggregationPreProcessors.js +0 -96
  374. package/modern/hooks/features/aggregation/wrapColumnWithAggregation.d.ts +0 -81
  375. package/modern/hooks/features/aggregation/wrapColumnWithAggregation.js +0 -215
  376. package/modern/hooks/features/cellSelection/gridCellSelectionInterfaces.d.ts +0 -40
  377. package/modern/hooks/features/cellSelection/gridCellSelectionInterfaces.js +0 -1
  378. package/modern/hooks/features/cellSelection/gridCellSelectionSelector.d.ts +0 -2
  379. package/modern/hooks/features/cellSelection/gridCellSelectionSelector.js +0 -2
  380. package/modern/hooks/features/cellSelection/index.d.ts +0 -1
  381. package/modern/hooks/features/cellSelection/index.js +0 -1
  382. package/modern/hooks/features/cellSelection/useGridCellSelection.d.ts +0 -6
  383. package/modern/hooks/features/cellSelection/useGridCellSelection.js +0 -486
  384. package/modern/hooks/features/clipboard/useGridClipboardImport.d.ts +0 -4
  385. package/modern/hooks/features/clipboard/useGridClipboardImport.js +0 -335
  386. package/modern/hooks/features/dataSource/models.d.ts +0 -54
  387. package/modern/hooks/features/dataSource/models.js +0 -1
  388. package/modern/hooks/features/dataSource/useGridDataSourcePremium.d.ts +0 -4
  389. package/modern/hooks/features/dataSource/useGridDataSourcePremium.js +0 -59
  390. package/modern/hooks/features/export/gridExcelExportInterface.d.ts +0 -71
  391. package/modern/hooks/features/export/gridExcelExportInterface.js +0 -1
  392. package/modern/hooks/features/export/index.d.ts +0 -2
  393. package/modern/hooks/features/export/index.js +0 -2
  394. package/modern/hooks/features/export/serializer/excelSerializer.d.ts +0 -40
  395. package/modern/hooks/features/export/serializer/excelSerializer.js +0 -269
  396. package/modern/hooks/features/export/serializer/setupExcelExportWebWorker.d.ts +0 -2
  397. package/modern/hooks/features/export/serializer/setupExcelExportWebWorker.js +0 -53
  398. package/modern/hooks/features/export/serializer/utils.d.ts +0 -36
  399. package/modern/hooks/features/export/serializer/utils.js +0 -93
  400. package/modern/hooks/features/export/useGridExcelExport.d.ts +0 -11
  401. package/modern/hooks/features/export/useGridExcelExport.js +0 -139
  402. package/modern/hooks/features/index.d.ts +0 -5
  403. package/modern/hooks/features/index.js +0 -6
  404. package/modern/hooks/features/promptControl/api.d.ts +0 -2
  405. package/modern/hooks/features/promptControl/api.js +0 -22
  406. package/modern/hooks/features/promptControl/index.d.ts +0 -2
  407. package/modern/hooks/features/promptControl/index.js +0 -1
  408. package/modern/hooks/features/promptControl/types.d.ts +0 -25
  409. package/modern/hooks/features/promptControl/types.js +0 -1
  410. package/modern/hooks/features/rowGrouping/createGroupingColDef.d.ts +0 -57
  411. package/modern/hooks/features/rowGrouping/createGroupingColDef.js +0 -272
  412. package/modern/hooks/features/rowGrouping/gridRowGroupingInterfaces.d.ts +0 -44
  413. package/modern/hooks/features/rowGrouping/gridRowGroupingInterfaces.js +0 -1
  414. package/modern/hooks/features/rowGrouping/gridRowGroupingSelector.d.ts +0 -3
  415. package/modern/hooks/features/rowGrouping/gridRowGroupingSelector.js +0 -5
  416. package/modern/hooks/features/rowGrouping/gridRowGroupingUtils.d.ts +0 -54
  417. package/modern/hooks/features/rowGrouping/gridRowGroupingUtils.js +0 -173
  418. package/modern/hooks/features/rowGrouping/index.d.ts +0 -3
  419. package/modern/hooks/features/rowGrouping/index.js +0 -3
  420. package/modern/hooks/features/rowGrouping/useGridDataSourceRowGroupingPreProcessors.d.ts +0 -4
  421. package/modern/hooks/features/rowGrouping/useGridDataSourceRowGroupingPreProcessors.js +0 -73
  422. package/modern/hooks/features/rowGrouping/useGridRowGrouping.d.ts +0 -11
  423. package/modern/hooks/features/rowGrouping/useGridRowGrouping.js +0 -182
  424. package/modern/hooks/features/rowGrouping/useGridRowGroupingPreProcessors.d.ts +0 -4
  425. package/modern/hooks/features/rowGrouping/useGridRowGroupingPreProcessors.js +0 -157
  426. package/modern/hooks/features/rows/index.d.ts +0 -1
  427. package/modern/hooks/features/rows/index.js +0 -1
  428. package/modern/hooks/features/rows/useGridRowAriaAttributes.d.ts +0 -1
  429. package/modern/hooks/features/rows/useGridRowAriaAttributes.js +0 -8
  430. package/modern/hooks/index.d.ts +0 -2
  431. package/modern/hooks/index.js +0 -3
  432. package/modern/hooks/utils/index.d.ts +0 -1
  433. package/modern/hooks/utils/index.js +0 -1
  434. package/modern/hooks/utils/useGridApiContext.d.ts +0 -4
  435. package/modern/hooks/utils/useGridApiContext.js +0 -2
  436. package/modern/hooks/utils/useGridApiRef.d.ts +0 -4
  437. package/modern/hooks/utils/useGridApiRef.js +0 -2
  438. package/modern/hooks/utils/useGridAriaAttributes.d.ts +0 -2
  439. package/modern/hooks/utils/useGridAriaAttributes.js +0 -13
  440. package/modern/hooks/utils/useGridPrivateApiContext.d.ts +0 -2
  441. package/modern/hooks/utils/useGridPrivateApiContext.js +0 -2
  442. package/modern/hooks/utils/useGridRootProps.d.ts +0 -2
  443. package/modern/hooks/utils/useGridRootProps.js +0 -2
  444. package/modern/hooks/utils/useKeepGroupedColumnsHidden.d.ts +0 -12
  445. package/modern/hooks/utils/useKeepGroupedColumnsHidden.js +0 -43
  446. package/modern/index.d.ts +0 -23
  447. package/modern/index.js +0 -26
  448. package/modern/locales.d.ts +0 -1
  449. package/modern/locales.js +0 -1
  450. package/modern/material/icons.d.ts +0 -15
  451. package/modern/material/icons.js +0 -20
  452. package/modern/material/index.d.ts +0 -8
  453. package/modern/material/index.js +0 -11
  454. package/modern/models/dataGridPremiumProps.d.ts +0 -162
  455. package/modern/models/dataGridPremiumProps.js +0 -1
  456. package/modern/models/gridApiPremium.d.ts +0 -14
  457. package/modern/models/gridApiPremium.js +0 -1
  458. package/modern/models/gridGroupingValueGetter.d.ts +0 -4
  459. package/modern/models/gridGroupingValueGetter.js +0 -1
  460. package/modern/models/gridPastedValueParser.d.ts +0 -4
  461. package/modern/models/gridPastedValueParser.js +0 -1
  462. package/modern/models/gridPremiumIconSlotsComponent.d.ts +0 -28
  463. package/modern/models/gridPremiumIconSlotsComponent.js +0 -1
  464. package/modern/models/gridPremiumSlotsComponent.d.ts +0 -7
  465. package/modern/models/gridPremiumSlotsComponent.js +0 -1
  466. package/modern/models/gridStatePremium.d.ts +0 -18
  467. package/modern/models/gridStatePremium.js +0 -1
  468. package/modern/models/index.d.ts +0 -4
  469. package/modern/models/index.js +0 -4
  470. package/modern/package.json +0 -1
  471. package/modern/setupExcelExportWebWorker.d.ts +0 -1
  472. package/modern/setupExcelExportWebWorker.js +0 -1
  473. package/modern/themeAugmentation/index.d.ts +0 -2
  474. package/modern/themeAugmentation/index.js +0 -4
  475. package/modern/themeAugmentation/overrides.d.ts +0 -7
  476. package/modern/themeAugmentation/overrides.js +0 -1
  477. package/modern/themeAugmentation/props.d.ts +0 -15
  478. package/modern/themeAugmentation/props.js +0 -1
  479. package/modern/typeOverloads/index.d.ts +0 -2
  480. package/modern/typeOverloads/index.js +0 -2
  481. package/modern/typeOverloads/modules.d.ts +0 -97
  482. package/modern/typeOverloads/modules.js +0 -1
  483. package/modern/typeOverloads/reexports.d.ts +0 -17
  484. package/modern/typeOverloads/reexports.js +0 -15
  485. package/modern/utils/releaseInfo.d.ts +0 -1
  486. package/modern/utils/releaseInfo.js +0 -13
  487. package/setupExcelExportWebWorker.d.ts +0 -1
  488. package/tsconfig.build.tsbuildinfo +0 -1
  489. package/utils/releaseInfo.d.ts +0 -1
  490. package/utils/releaseInfo.js +0 -20
  491. /package/esm/hooks/features/{promptControl/types.js → aiAssistant/gridAiAssistantInterfaces.js} +0 -0
  492. /package/esm/hooks/features/{promptControl → aiAssistant}/index.js +0 -0
  493. /package/{modern/hooks/features/aggregation/gridAggregationInterfaces.js → esm/hooks/features/pivoting/gridPivotingInterfaces.js} +0 -0
  494. /package/hooks/features/{promptControl/types.js → aiAssistant/gridAiAssistantInterfaces.js} +0 -0
  495. /package/hooks/features/{promptControl → aiAssistant}/index.js +0 -0
@@ -2,15 +2,42 @@ import _extends from "@babel/runtime/helpers/esm/extends";
2
2
  import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/esm/objectWithoutPropertiesLoose";
3
3
  const _excluded = ["excelOptions"];
4
4
  import * as React from 'react';
5
- import { GridToolbar } from '@mui/x-data-grid/internals';
5
+ import { GridToolbar } from '@mui/x-data-grid-pro/internals';
6
+ import { ToolbarButton } from '@mui/x-data-grid-pro';
6
7
  import { ExportExcel } from "./export/index.js";
7
8
  import { useGridRootProps } from "../hooks/utils/useGridRootProps.js";
8
9
  import { useGridApiContext } from "../hooks/utils/useGridApiContext.js";
9
- import { jsx as _jsx } from "react/jsx-runtime";
10
+ import { PivotPanelTrigger } from "./pivotPanel/PivotPanelTrigger.js";
11
+ import { isPivotingAvailable } from "../hooks/features/pivoting/utils.js";
12
+ import { AiAssistantPanelTrigger } from "./aiAssistantPanel/index.js";
13
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
10
14
  export function GridPremiumToolbar(props) {
11
15
  const rootProps = useGridRootProps();
12
16
  const apiRef = useGridApiContext();
13
17
  const other = _objectWithoutPropertiesLoose(props, _excluded);
18
+ const additionalItems = /*#__PURE__*/_jsxs(React.Fragment, {
19
+ children: [isPivotingAvailable(rootProps) && /*#__PURE__*/_jsx(PivotPanelTrigger, {
20
+ render: (triggerProps, state) => /*#__PURE__*/_jsx(rootProps.slots.baseTooltip, {
21
+ title: apiRef.current.getLocaleText('toolbarPivot'),
22
+ children: /*#__PURE__*/_jsx(ToolbarButton, _extends({}, triggerProps, {
23
+ color: state.active ? 'primary' : 'default',
24
+ children: /*#__PURE__*/_jsx(rootProps.slots.pivotIcon, {
25
+ fontSize: "small"
26
+ })
27
+ }))
28
+ })
29
+ }), rootProps.aiAssistant && /*#__PURE__*/_jsx(AiAssistantPanelTrigger, {
30
+ render: triggerProps => /*#__PURE__*/_jsx(rootProps.slots.baseTooltip, {
31
+ title: apiRef.current.getLocaleText('toolbarAssistant'),
32
+ children: /*#__PURE__*/_jsx(ToolbarButton, _extends({}, triggerProps, {
33
+ color: "default",
34
+ children: /*#__PURE__*/_jsx(rootProps.slots.aiAssistantIcon, {
35
+ fontSize: "small"
36
+ })
37
+ }))
38
+ })
39
+ })]
40
+ });
14
41
  const additionalExportMenuItems = !props.excelOptions?.disableToolbarButton ? onMenuItemClick => /*#__PURE__*/_jsx(ExportExcel, {
15
42
  render: /*#__PURE__*/_jsx(rootProps.slots.baseMenuItem, _extends({}, rootProps.slotProps?.baseMenuItem)),
16
43
  options: props.excelOptions,
@@ -18,6 +45,7 @@ export function GridPremiumToolbar(props) {
18
45
  children: apiRef.current.getLocaleText('toolbarExportExcel')
19
46
  }) : undefined;
20
47
  return /*#__PURE__*/_jsx(GridToolbar, _extends({}, other, {
48
+ additionalItems: additionalItems,
21
49
  additionalExportMenuItems: additionalExportMenuItems
22
50
  }));
23
51
  }
@@ -0,0 +1,33 @@
1
+ import * as React from 'react';
2
+ import { RenderProp } from '@mui/x-data-grid-pro/internals';
3
+ import { GridSlotProps } from '@mui/x-data-grid-pro';
4
+ export interface AiAssistantPanelState {
5
+ /**
6
+ * If `true`, the assistant panel is open.
7
+ */
8
+ open: boolean;
9
+ }
10
+ export type AiAssistantPanelTriggerProps = Omit<GridSlotProps['baseButton'], 'className'> & {
11
+ /**
12
+ * A function to customize rendering of the component.
13
+ */
14
+ render?: RenderProp<GridSlotProps['baseButton'], AiAssistantPanelState>;
15
+ /**
16
+ * A function to customize rendering of the component.
17
+ */
18
+ className?: string | ((state: AiAssistantPanelState) => string);
19
+ };
20
+ /**
21
+ * A button that opens and closes the assistant panel.
22
+ * It renders the `baseButton` slot.
23
+ *
24
+ * Demos:
25
+ *
26
+ * - [AI Assistant Panel](https://mui.com/x/react-data-grid/components/ai-assistant-panel/)
27
+ *
28
+ * API:
29
+ *
30
+ * - [AiAssistantPanelTrigger API](https://mui.com/x/api/data-grid/ai-assistant-panel-trigger/)
31
+ */
32
+ declare const AiAssistantPanelTrigger: React.ForwardRefExoticComponent<AiAssistantPanelTriggerProps> | React.ForwardRefExoticComponent<Omit<AiAssistantPanelTriggerProps, "ref"> & React.RefAttributes<HTMLButtonElement>>;
33
+ export { AiAssistantPanelTrigger };
@@ -0,0 +1,100 @@
1
+ import _extends from "@babel/runtime/helpers/esm/extends";
2
+ import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/esm/objectWithoutPropertiesLoose";
3
+ const _excluded = ["render", "className", "onClick", "onPointerUp"];
4
+ import * as React from 'react';
5
+ import PropTypes from 'prop-types';
6
+ import useId from '@mui/utils/useId';
7
+ import { forwardRef } from '@mui/x-internals/forwardRef';
8
+ import { useGridComponentRenderer, useGridPanelContext } from '@mui/x-data-grid-pro/internals';
9
+ import { gridPreferencePanelStateSelector, GridPreferencePanelsValue, useGridSelector } from '@mui/x-data-grid-pro';
10
+ import { useForkRef } from '@mui/material/utils';
11
+ import { useGridApiContext } from "../../hooks/utils/useGridApiContext.js";
12
+ import { useGridRootProps } from "../../hooks/utils/useGridRootProps.js";
13
+ import { jsx as _jsx } from "react/jsx-runtime";
14
+ /**
15
+ * A button that opens and closes the assistant panel.
16
+ * It renders the `baseButton` slot.
17
+ *
18
+ * Demos:
19
+ *
20
+ * - [AI Assistant Panel](https://mui.com/x/react-data-grid/components/ai-assistant-panel/)
21
+ *
22
+ * API:
23
+ *
24
+ * - [AiAssistantPanelTrigger API](https://mui.com/x/api/data-grid/ai-assistant-panel-trigger/)
25
+ */
26
+ const AiAssistantPanelTrigger = forwardRef(function AiAssistantPanelTrigger(props, ref) {
27
+ const {
28
+ render,
29
+ className,
30
+ onClick,
31
+ onPointerUp
32
+ } = props,
33
+ other = _objectWithoutPropertiesLoose(props, _excluded);
34
+ const rootProps = useGridRootProps();
35
+ const buttonId = useId();
36
+ const panelId = useId();
37
+ const apiRef = useGridApiContext();
38
+ const panelState = useGridSelector(apiRef, gridPreferencePanelStateSelector);
39
+ const open = panelState.open && panelState.openedPanelValue === GridPreferencePanelsValue.aiAssistant;
40
+ const state = {
41
+ open
42
+ };
43
+ const resolvedClassName = typeof className === 'function' ? className(state) : className;
44
+ const {
45
+ aiAssistantPanelTriggerRef
46
+ } = useGridPanelContext();
47
+ const handleRef = useForkRef(ref, aiAssistantPanelTriggerRef);
48
+ const handleClick = event => {
49
+ if (open) {
50
+ apiRef.current.hidePreferences();
51
+ } else {
52
+ apiRef.current.showPreferences(GridPreferencePanelsValue.aiAssistant, panelId, buttonId);
53
+ }
54
+ onClick?.(event);
55
+ };
56
+ const handlePointerUp = event => {
57
+ if (open) {
58
+ event.stopPropagation();
59
+ }
60
+ onPointerUp?.(event);
61
+ };
62
+ const element = useGridComponentRenderer(rootProps.slots.baseButton, render, _extends({}, rootProps.slotProps?.baseButton, {
63
+ id: buttonId,
64
+ 'aria-haspopup': 'true',
65
+ 'aria-expanded': open ? 'true' : undefined,
66
+ 'aria-controls': open ? panelId : undefined,
67
+ className: resolvedClassName
68
+ }, other, {
69
+ onClick: handleClick,
70
+ onPointerUp: handlePointerUp,
71
+ ref: handleRef
72
+ }), state);
73
+ return /*#__PURE__*/_jsx(React.Fragment, {
74
+ children: element
75
+ });
76
+ });
77
+ process.env.NODE_ENV !== "production" ? AiAssistantPanelTrigger.propTypes = {
78
+ // ----------------------------- Warning --------------------------------
79
+ // | These PropTypes are generated from the TypeScript type definitions |
80
+ // | To update them edit the TypeScript types and run "pnpm proptypes" |
81
+ // ----------------------------------------------------------------------
82
+ /**
83
+ * A function to customize rendering of the component.
84
+ */
85
+ className: PropTypes.oneOfType([PropTypes.func, PropTypes.string]),
86
+ disabled: PropTypes.bool,
87
+ id: PropTypes.string,
88
+ /**
89
+ * A function to customize rendering of the component.
90
+ */
91
+ render: PropTypes.oneOfType([PropTypes.element, PropTypes.func]),
92
+ role: PropTypes.string,
93
+ size: PropTypes.oneOf(['large', 'medium', 'small']),
94
+ startIcon: PropTypes.node,
95
+ style: PropTypes.object,
96
+ tabIndex: PropTypes.number,
97
+ title: PropTypes.string,
98
+ touchRippleRef: PropTypes.any
99
+ } : void 0;
100
+ export { AiAssistantPanelTrigger };
@@ -0,0 +1,3 @@
1
+ import * as React from 'react';
2
+ declare function GridAiAssistantPanel(): React.JSX.Element;
3
+ export { GridAiAssistantPanel };
@@ -0,0 +1,188 @@
1
+ import _extends from "@babel/runtime/helpers/esm/extends";
2
+ import * as React from 'react';
3
+ import { useGridSelector, getDataGridUtilityClass } from '@mui/x-data-grid-pro';
4
+ import { vars } from '@mui/x-data-grid-pro/internals';
5
+ import { unstable_composeClasses as composeClasses } from '@mui/utils';
6
+ import { styled } from '@mui/system';
7
+ import { useGridRootProps } from "../../hooks/utils/useGridRootProps.js";
8
+ import { gridAiAssistantActiveConversationSelector, gridAiAssistantConversationsSelector } from "../../hooks/features/aiAssistant/gridAiAssistantSelectors.js";
9
+ import { useGridApiContext } from "../../hooks/utils/useGridApiContext.js";
10
+ import { GridAiAssistantPanelConversation } from "./GridAiAssistantPanelConversation.js";
11
+ import { GridPromptField } from "../promptField/GridPromptField.js";
12
+ import { GridAiAssistantPanelSuggestions } from "./GridAiAssistantPanelSuggestions.js";
13
+ import { GridAiAssistantPanelConversationsMenu } from "./GridAiAssistantPanelConversationsMenu.js";
14
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
15
+ const useUtilityClasses = ownerState => {
16
+ const {
17
+ classes
18
+ } = ownerState;
19
+ const slots = {
20
+ root: ['aiAssistantPanel'],
21
+ header: ['aiAssistantPanelHeader'],
22
+ title: ['aiAssistantPanelTitle'],
23
+ titleContainer: ['aiAssistantPanelTitleContainer'],
24
+ conversationTitle: ['aiAssistantPanelConversationTitle'],
25
+ body: ['aiAssistantPanelBody'],
26
+ emptyText: ['aiAssistantPanelEmptyText'],
27
+ footer: ['aiAssistantPanelFooter']
28
+ };
29
+ return composeClasses(slots, getDataGridUtilityClass, classes);
30
+ };
31
+ const AiAssistantPanelRoot = styled('div', {
32
+ name: 'MuiDataGrid',
33
+ slot: 'AiAssistantPanel'
34
+ })({
35
+ flexDirection: 'column',
36
+ width: 380,
37
+ maxHeight: 'none',
38
+ overflow: 'hidden'
39
+ });
40
+ const AiAssistantPanelHeader = styled('div', {
41
+ name: 'MuiDataGrid',
42
+ slot: 'AiAssistantPanelHeader'
43
+ })({
44
+ flexShrink: 0,
45
+ display: 'flex',
46
+ alignItems: 'center',
47
+ width: '100%',
48
+ boxSizing: 'border-box',
49
+ borderBottom: `1px solid ${vars.colors.border.base}`,
50
+ height: 52,
51
+ padding: vars.spacing(0, 0.75, 0, 2)
52
+ });
53
+ const AiAssistantPanelTitleContainer = styled('div', {
54
+ name: 'MuiDataGrid',
55
+ slot: 'AiAssistantPanelTitleContainer'
56
+ })({
57
+ display: 'flex',
58
+ flexDirection: 'column',
59
+ flex: 1,
60
+ overflow: 'hidden'
61
+ });
62
+ const AiAssistantPanelTitle = styled('span', {
63
+ name: 'MuiDataGrid',
64
+ slot: 'AiAssistantPanelTitle'
65
+ })({
66
+ font: vars.typography.font.body,
67
+ fontWeight: vars.typography.fontWeight.medium,
68
+ marginTop: vars.spacing(0.25)
69
+ });
70
+ const AiAssistantPanelConversationTitle = styled('span', {
71
+ name: 'MuiDataGrid',
72
+ slot: 'AiAssistantPanelConversationTitle'
73
+ })({
74
+ font: vars.typography.font.small,
75
+ color: vars.colors.foreground.muted,
76
+ marginTop: vars.spacing(-0.25),
77
+ overflow: 'hidden',
78
+ textOverflow: 'ellipsis',
79
+ whiteSpace: 'nowrap'
80
+ });
81
+ const AiAssistantPanelBody = styled('div', {
82
+ name: 'MuiDataGrid',
83
+ slot: 'AiAssistantPanelBody'
84
+ })({
85
+ flexGrow: 0,
86
+ flexShrink: 0,
87
+ height: 260,
88
+ display: 'flex',
89
+ justifyContent: 'center',
90
+ alignItems: 'center'
91
+ });
92
+ const AiAssistantPanelEmptyText = styled('span', {
93
+ name: 'MuiDataGrid',
94
+ slot: 'AiAssistantPanelEmptyText'
95
+ })({
96
+ font: vars.typography.font.body,
97
+ color: vars.colors.foreground.muted
98
+ });
99
+ const AiAssistantPanelFooter = styled('div', {
100
+ name: 'MuiDataGrid',
101
+ slot: 'AiAssistantPanelFooter'
102
+ })({
103
+ flexShrink: 0,
104
+ display: 'flex',
105
+ flexDirection: 'column',
106
+ gap: vars.spacing(1),
107
+ borderTop: `1px solid ${vars.colors.border.base}`,
108
+ padding: vars.spacing(1)
109
+ });
110
+ function GridAiAssistantPanel() {
111
+ const rootProps = useGridRootProps();
112
+ const apiRef = useGridApiContext();
113
+ const classes = useUtilityClasses(rootProps);
114
+ const activeConversation = useGridSelector(apiRef, gridAiAssistantActiveConversationSelector);
115
+ const conversations = useGridSelector(apiRef, gridAiAssistantConversationsSelector);
116
+ const conversationTitle = activeConversation?.title || apiRef.current.getLocaleText('aiAssistantPanelNewConversation');
117
+ const createConversation = React.useCallback(() => {
118
+ const newConversation = conversations.findIndex(conversation => !conversation.prompts.length);
119
+ if (newConversation !== -1) {
120
+ apiRef.current.aiAssistant.setActiveConversationIndex(newConversation);
121
+ } else {
122
+ apiRef.current.aiAssistant.setConversations(newConversations => [...newConversations, {
123
+ title: apiRef.current.getLocaleText('aiAssistantPanelNewConversation'),
124
+ prompts: []
125
+ }]);
126
+ apiRef.current.aiAssistant.setActiveConversationIndex(conversations.length);
127
+ }
128
+ }, [apiRef, conversations]);
129
+ return /*#__PURE__*/_jsxs(AiAssistantPanelRoot, {
130
+ className: classes.root,
131
+ ownerState: rootProps,
132
+ children: [/*#__PURE__*/_jsxs(AiAssistantPanelHeader, {
133
+ className: classes.header,
134
+ ownerState: rootProps,
135
+ children: [/*#__PURE__*/_jsxs(AiAssistantPanelTitleContainer, {
136
+ className: classes.titleContainer,
137
+ ownerState: rootProps,
138
+ children: [/*#__PURE__*/_jsx(AiAssistantPanelTitle, {
139
+ className: classes.title,
140
+ ownerState: rootProps,
141
+ children: apiRef.current.getLocaleText('aiAssistantPanelTitle')
142
+ }), /*#__PURE__*/_jsx(AiAssistantPanelConversationTitle, {
143
+ className: classes.conversationTitle,
144
+ ownerState: rootProps,
145
+ title: conversationTitle,
146
+ children: conversationTitle
147
+ })]
148
+ }), /*#__PURE__*/_jsx(rootProps.slots.baseTooltip, {
149
+ title: apiRef.current.getLocaleText('aiAssistantPanelNewConversation'),
150
+ enterDelay: 500,
151
+ children: /*#__PURE__*/_jsx("span", {
152
+ children: /*#__PURE__*/_jsx(rootProps.slots.baseIconButton, _extends({}, rootProps.slotProps?.baseIconButton, {
153
+ disabled: !conversations.length || !activeConversation?.prompts.length,
154
+ onClick: createConversation,
155
+ children: /*#__PURE__*/_jsx(rootProps.slots.aiAssistantPanelNewConversationIcon, {
156
+ fontSize: "small"
157
+ })
158
+ }))
159
+ })
160
+ }), /*#__PURE__*/_jsx(GridAiAssistantPanelConversationsMenu, {}), /*#__PURE__*/_jsx(rootProps.slots.baseIconButton, _extends({}, rootProps.slotProps?.baseIconButton, {
161
+ "aria-label": apiRef.current.getLocaleText('aiAssistantPanelClose'),
162
+ onClick: apiRef.current.hidePreferences,
163
+ children: /*#__PURE__*/_jsx(rootProps.slots.aiAssistantPanelCloseIcon, {
164
+ fontSize: "small"
165
+ })
166
+ }))]
167
+ }), /*#__PURE__*/_jsx(AiAssistantPanelBody, {
168
+ className: classes.body,
169
+ ownerState: rootProps,
170
+ children: activeConversation && activeConversation.prompts.length > 0 ? /*#__PURE__*/_jsx(GridAiAssistantPanelConversation, {
171
+ conversation: activeConversation
172
+ }) : /*#__PURE__*/_jsx(AiAssistantPanelEmptyText, {
173
+ ownerState: rootProps,
174
+ className: classes.emptyText,
175
+ children: apiRef.current.getLocaleText('aiAssistantPanelEmptyConversation')
176
+ })
177
+ }), /*#__PURE__*/_jsxs(AiAssistantPanelFooter, {
178
+ className: classes.footer,
179
+ ownerState: rootProps,
180
+ children: [/*#__PURE__*/_jsx(GridPromptField, {
181
+ onSubmit: apiRef.current.aiAssistant.processPrompt
182
+ }), rootProps.aiAssistantSuggestions && rootProps.aiAssistantSuggestions.length > 0 && /*#__PURE__*/_jsx(GridAiAssistantPanelSuggestions, {
183
+ suggestions: rootProps.aiAssistantSuggestions
184
+ })]
185
+ })]
186
+ });
187
+ }
188
+ export { GridAiAssistantPanel };
@@ -0,0 +1,7 @@
1
+ import * as React from 'react';
2
+ import { Conversation } from "../../hooks/features/aiAssistant/gridAiAssistantInterfaces.js";
3
+ type GridAiAssistantPanelConversationProps = {
4
+ conversation: Conversation;
5
+ };
6
+ declare function GridAiAssistantPanelConversation(props: GridAiAssistantPanelConversationProps): React.JSX.Element;
7
+ export { GridAiAssistantPanelConversation };
@@ -0,0 +1,64 @@
1
+ import _extends from "@babel/runtime/helpers/esm/extends";
2
+ import * as React from 'react';
3
+ import { getDataGridUtilityClass, GridShadowScrollArea } from '@mui/x-data-grid-pro';
4
+ import { unstable_composeClasses as composeClasses } from '@mui/utils';
5
+ import { styled } from '@mui/system';
6
+ import { useGridRootProps } from "../../hooks/utils/useGridRootProps.js";
7
+ import { useGridApiContext } from "../../hooks/utils/useGridApiContext.js";
8
+ import { GridPrompt } from "../prompt/index.js";
9
+ import { jsx as _jsx } from "react/jsx-runtime";
10
+ const useUtilityClasses = ownerState => {
11
+ const {
12
+ classes
13
+ } = ownerState;
14
+ const slots = {
15
+ root: ['aiAssistantPanelConversation'],
16
+ list: ['aiAssistantPanelConversationList']
17
+ };
18
+ return composeClasses(slots, getDataGridUtilityClass, classes);
19
+ };
20
+ const AiAssistantPanelConversationRoot = styled(GridShadowScrollArea, {
21
+ name: 'MuiDataGrid',
22
+ slot: 'AiAssistantPanelConversation'
23
+ })({
24
+ flexShrink: 0,
25
+ height: '100%'
26
+ });
27
+ const AiAssistantPanelConversationList = styled('ol', {
28
+ name: 'MuiDataGrid',
29
+ slot: 'AiAssistantPanelConversationList'
30
+ })({
31
+ flex: 1,
32
+ padding: 0,
33
+ margin: 0
34
+ });
35
+ function GridAiAssistantPanelConversation(props) {
36
+ const {
37
+ conversation
38
+ } = props;
39
+ const rootProps = useGridRootProps();
40
+ const classes = useUtilityClasses(rootProps);
41
+ const ref = React.useRef(null);
42
+ const apiRef = useGridApiContext();
43
+
44
+ // Scroll to the bottom of the conversation when the prompt list changes
45
+ React.useEffect(() => {
46
+ ref.current?.scrollTo({
47
+ top: ref.current?.scrollHeight,
48
+ behavior: 'smooth'
49
+ });
50
+ }, [conversation]);
51
+ return /*#__PURE__*/_jsx(AiAssistantPanelConversationRoot, {
52
+ className: classes.root,
53
+ ownerState: rootProps,
54
+ ref: ref,
55
+ children: /*#__PURE__*/_jsx(AiAssistantPanelConversationList, {
56
+ className: classes.list,
57
+ ownerState: rootProps,
58
+ children: conversation.prompts.map(item => /*#__PURE__*/_jsx(GridPrompt, _extends({}, item, {
59
+ onRerun: () => apiRef.current.aiAssistant.processPrompt(item.value)
60
+ }), item.createdAt.toISOString()))
61
+ })
62
+ });
63
+ }
64
+ export { GridAiAssistantPanelConversation };
@@ -0,0 +1,3 @@
1
+ import * as React from 'react';
2
+ declare function GridAiAssistantPanelConversationsMenu(): React.JSX.Element;
3
+ export { GridAiAssistantPanelConversationsMenu };
@@ -0,0 +1,85 @@
1
+ import _extends from "@babel/runtime/helpers/esm/extends";
2
+ import * as React from 'react';
3
+ import { GridMenu, useGridSelector } from '@mui/x-data-grid-pro';
4
+ import useId from '@mui/utils/useId';
5
+ import { useGridRootProps } from "../../hooks/utils/useGridRootProps.js";
6
+ import { useGridApiContext } from "../../hooks/utils/useGridApiContext.js";
7
+ import { gridAiAssistantActiveConversationIndexSelector, gridAiAssistantConversationsSelector } from "../../hooks/features/aiAssistant/gridAiAssistantSelectors.js";
8
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
9
+ function GridAiAssistantPanelConversationsMenu() {
10
+ const rootProps = useGridRootProps();
11
+ const apiRef = useGridApiContext();
12
+ const activeConversationIndex = useGridSelector(apiRef, gridAiAssistantActiveConversationIndexSelector);
13
+ const conversations = useGridSelector(apiRef, gridAiAssistantConversationsSelector);
14
+ const [open, setOpen] = React.useState(false);
15
+ const menuId = useId();
16
+ const triggerId = useId();
17
+ const triggerRef = React.useRef(null);
18
+ const handleOpen = () => {
19
+ setOpen(!open);
20
+ };
21
+ const handleClose = () => {
22
+ setOpen(false);
23
+ };
24
+
25
+ // Ordered by most recent prompt in conversations
26
+ const sortedConversations = React.useMemo(() => {
27
+ return [...conversations].sort((a, b) => {
28
+ if (!a.prompts.length) {
29
+ return -1;
30
+ }
31
+ // New conversations should be at the top
32
+ if (!b.prompts.length) {
33
+ return 1;
34
+ }
35
+ return b.prompts[b.prompts.length - 1].createdAt.getTime() - a.prompts[a.prompts.length - 1].createdAt.getTime();
36
+ });
37
+ }, [conversations]);
38
+ return /*#__PURE__*/_jsxs(React.Fragment, {
39
+ children: [/*#__PURE__*/_jsx(rootProps.slots.baseTooltip, {
40
+ title: apiRef.current.getLocaleText('aiAssistantPanelConversationHistory'),
41
+ enterDelay: 500,
42
+ children: /*#__PURE__*/_jsx("span", {
43
+ children: /*#__PURE__*/_jsx(rootProps.slots.baseIconButton, _extends({}, rootProps.slotProps?.baseIconButton, {
44
+ disabled: conversations.length === 0,
45
+ id: triggerId,
46
+ "aria-haspopup": "true",
47
+ "aria-controls": open ? menuId : undefined,
48
+ "aria-expanded": open ? 'true' : undefined,
49
+ "aria-label": apiRef.current.getLocaleText('aiAssistantPanelConversationHistory'),
50
+ onClick: handleOpen,
51
+ ref: triggerRef,
52
+ children: /*#__PURE__*/_jsx(rootProps.slots.aiAssistantPanelHistoryIcon, {
53
+ fontSize: "small"
54
+ })
55
+ }))
56
+ })
57
+ }), /*#__PURE__*/_jsx(GridMenu, {
58
+ target: triggerRef.current,
59
+ open: open,
60
+ onClose: handleClose,
61
+ position: "bottom-end",
62
+ children: /*#__PURE__*/_jsx(rootProps.slots.baseMenuList, _extends({
63
+ id: menuId,
64
+ "aria-labelledby": triggerId,
65
+ autoFocusItem: true
66
+ }, rootProps.slotProps?.baseMenuList, {
67
+ children: sortedConversations.map((conversation, sortedIndex) => {
68
+ const conversationIndex = conversations.findIndex(c => c === conversation);
69
+ return /*#__PURE__*/_jsx(rootProps.slots.baseMenuItem, {
70
+ selected: conversationIndex === activeConversationIndex,
71
+ material: {
72
+ dense: true
73
+ },
74
+ onClick: () => {
75
+ apiRef.current.aiAssistant.setActiveConversationIndex(conversationIndex);
76
+ handleClose();
77
+ },
78
+ children: conversation.title
79
+ }, `${conversation.id}-${sortedIndex}`);
80
+ })
81
+ }))
82
+ })]
83
+ });
84
+ }
85
+ export { GridAiAssistantPanelConversationsMenu };
@@ -0,0 +1,7 @@
1
+ import * as React from 'react';
2
+ import { PromptSuggestion } from "../../hooks/features/aiAssistant/gridAiAssistantInterfaces.js";
3
+ type GridAiAssistantPanelSuggestionsProps = {
4
+ suggestions: PromptSuggestion[];
5
+ };
6
+ declare function GridAiAssistantPanelSuggestions(props: GridAiAssistantPanelSuggestionsProps): React.JSX.Element;
7
+ export { GridAiAssistantPanelSuggestions };
@@ -0,0 +1,80 @@
1
+ import * as React from 'react';
2
+ import { getDataGridUtilityClass } from '@mui/x-data-grid-pro';
3
+ import { unstable_composeClasses as composeClasses } from '@mui/utils';
4
+ import { styled } from '@mui/system';
5
+ import { vars } from '@mui/x-data-grid-pro/internals';
6
+ import { useGridRootProps } from "../../hooks/utils/useGridRootProps.js";
7
+ import { useGridApiContext } from "../../hooks/utils/useGridApiContext.js";
8
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
9
+ const useUtilityClasses = ownerState => {
10
+ const {
11
+ classes
12
+ } = ownerState;
13
+ const slots = {
14
+ root: ['aiAssistantPanelSuggestions'],
15
+ list: ['aiAssistantPanelSuggestionsList'],
16
+ item: ['aiAssistantPanelSuggestionsItem'],
17
+ label: ['aiAssistantPanelSuggestionsLabel']
18
+ };
19
+ return composeClasses(slots, getDataGridUtilityClass, classes);
20
+ };
21
+ const AiAssistantPanelSuggestionsRoot = styled('div', {
22
+ name: 'MuiDataGrid',
23
+ slot: 'AiAssistantPanelSuggestions'
24
+ })({
25
+ display: 'flex',
26
+ flexDirection: 'column',
27
+ gap: vars.spacing(0.75)
28
+ });
29
+ const AiAssistantPanelSuggestionsList = styled('div', {
30
+ name: 'MuiDataGrid',
31
+ slot: 'AiAssistantPanelSuggestionsList'
32
+ })({
33
+ display: 'flex',
34
+ gap: vars.spacing(0.75),
35
+ overflow: 'auto',
36
+ padding: vars.spacing(1),
37
+ margin: vars.spacing(-1),
38
+ scrollbarWidth: 'thin'
39
+ });
40
+ const AiAssistantPanelSuggestionsLabel = styled('div', {
41
+ name: 'MuiDataGrid',
42
+ slot: 'AiAssistantPanelSuggestionsLabel'
43
+ })({
44
+ display: 'flex',
45
+ alignItems: 'center',
46
+ gap: vars.spacing(1),
47
+ font: vars.typography.font.body,
48
+ color: vars.colors.foreground.muted,
49
+ paddingLeft: vars.spacing(0.5)
50
+ });
51
+ function GridAiAssistantPanelSuggestions(props) {
52
+ const {
53
+ suggestions
54
+ } = props;
55
+ const rootProps = useGridRootProps();
56
+ const apiRef = useGridApiContext();
57
+ const ownerState = {
58
+ classes: rootProps.classes
59
+ };
60
+ const classes = useUtilityClasses(ownerState);
61
+ return /*#__PURE__*/_jsxs(AiAssistantPanelSuggestionsRoot, {
62
+ className: classes.root,
63
+ ownerState: ownerState,
64
+ children: [/*#__PURE__*/_jsx(AiAssistantPanelSuggestionsLabel, {
65
+ className: classes.label,
66
+ ownerState: ownerState,
67
+ children: apiRef.current.getLocaleText('aiAssistantSuggestions')
68
+ }), /*#__PURE__*/_jsx(AiAssistantPanelSuggestionsList, {
69
+ className: classes.list,
70
+ ownerState: ownerState,
71
+ children: suggestions.map(suggestion => /*#__PURE__*/_jsx(rootProps.slots.baseChip, {
72
+ label: suggestion.value,
73
+ className: classes.item,
74
+ onClick: () => apiRef.current.aiAssistant.processPrompt(suggestion.value),
75
+ variant: "outlined"
76
+ }, suggestion.value))
77
+ })]
78
+ });
79
+ }
80
+ export { GridAiAssistantPanelSuggestions };
@@ -0,0 +1,2 @@
1
+ export * from "./AiAssistantPanelTrigger.js";
2
+ export * from "./GridAiAssistantPanel.js";
@@ -0,0 +1,2 @@
1
+ export * from "./AiAssistantPanelTrigger.js";
2
+ export * from "./GridAiAssistantPanel.js";
@@ -0,0 +1,4 @@
1
+ import * as React from 'react';
2
+ type CollapsibleProps = React.HTMLAttributes<HTMLDivElement>;
3
+ declare function Collapsible(props: CollapsibleProps): React.JSX.Element;
4
+ export { Collapsible };