@mui/x-data-grid 6.0.0-alpha.1 → 6.0.0-alpha.11

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1199) hide show
  1. package/CHANGELOG.md +1419 -149
  2. package/DataGrid/DataGrid.js +22 -150
  3. package/DataGrid/useDataGridComponent.d.ts +2 -2
  4. package/DataGrid/useDataGridComponent.js +43 -49
  5. package/DataGrid/useDataGridProps.js +8 -9
  6. package/colDef/gridBooleanColDef.js +0 -2
  7. package/colDef/gridBooleanOperators.js +0 -1
  8. package/colDef/gridCheckboxSelectionColDef.js +1 -1
  9. package/colDef/gridDateColDef.js +0 -2
  10. package/colDef/gridDateOperators.js +2 -7
  11. package/colDef/gridNumericOperators.d.ts +1 -5
  12. package/colDef/gridNumericOperators.js +1 -22
  13. package/colDef/gridSingleSelectOperators.d.ts +1 -1
  14. package/colDef/gridSingleSelectOperators.js +0 -12
  15. package/colDef/gridStringColDef.js +1 -1
  16. package/colDef/gridStringOperators.d.ts +1 -1
  17. package/colDef/gridStringOperators.js +0 -6
  18. package/components/DataGridColumnHeaders.js +3 -4
  19. package/components/DataGridVirtualScroller.js +4 -5
  20. package/components/ErrorBoundary.d.ts +0 -1
  21. package/components/ErrorBoundary.js +3 -8
  22. package/components/GridApiContext.js +0 -1
  23. package/components/GridAutoSizer.d.ts +1 -1
  24. package/components/GridAutoSizer.js +16 -31
  25. package/components/GridErrorOverlay.d.ts +8 -0
  26. package/{modern/components/ErrorOverlay.js → components/GridErrorOverlay.js} +6 -8
  27. package/components/GridFooter.js +1 -4
  28. package/components/GridHeader.js +0 -1
  29. package/components/GridPagination.d.ts +2 -2
  30. package/components/GridPagination.js +0 -6
  31. package/components/GridRow.js +56 -94
  32. package/components/GridRowCount.js +6 -11
  33. package/components/GridScrollArea.js +4 -12
  34. package/components/GridSelectedRowCount.js +5 -8
  35. package/components/base/GridBody.js +10 -15
  36. package/components/base/GridErrorHandler.js +5 -9
  37. package/components/base/GridFooterPlaceholder.js +0 -3
  38. package/components/base/GridHeaderPlaceholder.js +2 -6
  39. package/components/base/GridOverlays.js +2 -20
  40. package/components/cell/GridActionsCell.d.ts +5 -5
  41. package/components/cell/GridActionsCell.js +15 -61
  42. package/components/cell/GridActionsCellItem.d.ts +3 -3
  43. package/components/cell/GridActionsCellItem.js +6 -9
  44. package/components/cell/GridBooleanCell.d.ts +5 -4
  45. package/components/cell/GridBooleanCell.js +8 -36
  46. package/components/cell/GridCell.js +32 -59
  47. package/components/cell/GridEditBooleanCell.js +11 -42
  48. package/components/cell/GridEditDateCell.js +12 -50
  49. package/components/cell/GridEditInputCell.js +15 -52
  50. package/components/cell/GridEditSingleSelectCell.js +23 -97
  51. package/components/cell/GridSkeletonCell.js +6 -11
  52. package/components/columnHeaders/ColumnHeaderMenuIcon.js +1 -5
  53. package/components/columnHeaders/GridColumnGroupHeader.d.ts +2 -0
  54. package/components/columnHeaders/GridColumnGroupHeader.js +35 -16
  55. package/components/columnHeaders/GridColumnHeaderFilterIconButton.js +1 -12
  56. package/components/columnHeaders/GridColumnHeaderItem.js +3 -19
  57. package/components/columnHeaders/GridColumnHeaderSeparator.js +5 -13
  58. package/components/columnHeaders/GridColumnHeaderSortIcon.js +1 -12
  59. package/components/columnHeaders/GridColumnHeaderTitle.js +4 -11
  60. package/components/columnHeaders/GridColumnHeaders.js +6 -8
  61. package/components/columnHeaders/GridColumnHeadersInner.js +5 -9
  62. package/components/columnHeaders/GridColumnUnsortedIcon.js +3 -4
  63. package/components/columnHeaders/GridGenericColumnHeaderItem.js +25 -29
  64. package/components/columnHeaders/GridIconButtonContainer.d.ts +1 -1
  65. package/components/columnHeaders/GridIconButtonContainer.js +4 -7
  66. package/components/columnSelection/GridCellCheckboxRenderer.d.ts +1 -1
  67. package/components/columnSelection/GridCellCheckboxRenderer.js +20 -53
  68. package/components/columnSelection/GridHeaderCheckbox.js +12 -26
  69. package/components/containers/GridFooterContainer.d.ts +1 -1
  70. package/components/containers/GridFooterContainer.js +6 -8
  71. package/components/containers/GridMainContainer.js +1 -3
  72. package/components/containers/GridOverlay.d.ts +1 -1
  73. package/components/containers/GridOverlay.js +6 -9
  74. package/components/containers/GridRoot.js +14 -20
  75. package/components/containers/GridRootStyles.js +23 -23
  76. package/components/containers/GridToolbarContainer.d.ts +1 -1
  77. package/components/containers/GridToolbarContainer.js +7 -11
  78. package/components/menu/GridMenu.d.ts +5 -5
  79. package/components/menu/GridMenu.js +14 -25
  80. package/components/menu/columnMenu/GridColumnHeaderMenu.js +0 -4
  81. package/components/menu/columnMenu/GridColumnMenuContainer.js +8 -10
  82. package/components/menu/columnMenu/GridColumnsMenuItem.d.ts +4 -4
  83. package/components/menu/columnMenu/GridColumnsMenuItem.js +2 -6
  84. package/components/menu/columnMenu/GridFilterMenuItem.d.ts +4 -4
  85. package/components/menu/columnMenu/GridFilterMenuItem.js +2 -6
  86. package/components/menu/columnMenu/HideGridColMenuItem.d.ts +4 -4
  87. package/components/menu/columnMenu/HideGridColMenuItem.js +6 -12
  88. package/components/menu/columnMenu/SortGridMenuItems.d.ts +4 -4
  89. package/components/menu/columnMenu/SortGridMenuItems.js +2 -7
  90. package/components/panel/GridColumnsPanel.d.ts +3 -0
  91. package/components/panel/GridColumnsPanel.js +31 -24
  92. package/components/panel/GridPanel.d.ts +3 -6
  93. package/components/panel/GridPanel.js +9 -12
  94. package/components/panel/GridPanelContent.js +4 -9
  95. package/components/panel/GridPanelFooter.js +4 -9
  96. package/components/panel/GridPanelHeader.js +4 -9
  97. package/components/panel/GridPanelWrapper.js +4 -9
  98. package/components/panel/GridPreferencesPanel.js +0 -1
  99. package/components/panel/filterPanel/GridFilterForm.d.ts +12 -0
  100. package/components/panel/filterPanel/GridFilterForm.js +73 -90
  101. package/components/panel/filterPanel/GridFilterInputBoolean.js +6 -8
  102. package/components/panel/filterPanel/GridFilterInputDate.d.ts +1 -1
  103. package/components/panel/filterPanel/GridFilterInputDate.js +12 -19
  104. package/components/panel/filterPanel/GridFilterInputMultipleSingleSelect.js +20 -34
  105. package/components/panel/filterPanel/GridFilterInputMultipleValue.d.ts +1 -1
  106. package/components/panel/filterPanel/GridFilterInputMultipleValue.js +16 -23
  107. package/components/panel/filterPanel/GridFilterInputSingleSelect.d.ts +1 -1
  108. package/components/panel/filterPanel/GridFilterInputSingleSelect.js +15 -26
  109. package/components/panel/filterPanel/GridFilterInputValue.js +17 -29
  110. package/components/panel/filterPanel/GridFilterInputValueProps.d.ts +1 -1
  111. package/components/panel/filterPanel/GridFilterPanel.d.ts +12 -0
  112. package/components/panel/filterPanel/GridFilterPanel.js +61 -39
  113. package/components/panel/filterPanel/filterPanelUtils.js +0 -2
  114. package/components/toolbar/GridToolbar.js +9 -13
  115. package/components/toolbar/GridToolbarColumnsButton.d.ts +1 -1
  116. package/components/toolbar/GridToolbarColumnsButton.js +5 -10
  117. package/components/toolbar/GridToolbarDensitySelector.d.ts +1 -1
  118. package/components/toolbar/GridToolbarDensitySelector.js +6 -18
  119. package/components/toolbar/GridToolbarExport.d.ts +4 -4
  120. package/components/toolbar/GridToolbarExport.js +19 -26
  121. package/components/toolbar/GridToolbarExportContainer.d.ts +1 -1
  122. package/components/toolbar/GridToolbarExportContainer.js +5 -17
  123. package/components/toolbar/GridToolbarFilterButton.d.ts +1 -1
  124. package/components/toolbar/GridToolbarFilterButton.js +9 -24
  125. package/components/toolbar/GridToolbarQuickFilter.d.ts +1 -1
  126. package/components/toolbar/GridToolbarQuickFilter.js +9 -17
  127. package/components/virtualization/GridVirtualScroller.js +4 -7
  128. package/components/virtualization/GridVirtualScrollerContent.js +5 -8
  129. package/components/virtualization/GridVirtualScrollerRenderZone.js +4 -7
  130. package/constants/defaultGridSlotsComponents.js +4 -5
  131. package/constants/envConstants.js +1 -0
  132. package/constants/gridClasses.d.ts +1 -1
  133. package/constants/gridClasses.js +1 -1
  134. package/constants/localeTextConstants.js +1 -2
  135. package/context/GridContextProvider.d.ts +4 -4
  136. package/context/GridContextProvider.js +12 -7
  137. package/context/GridRootPropsContext.js +0 -2
  138. package/hooks/core/pipeProcessing/gridPipeProcessingApi.d.ts +16 -17
  139. package/hooks/core/pipeProcessing/useGridPipeProcessing.d.ts +4 -4
  140. package/hooks/core/pipeProcessing/useGridPipeProcessing.js +11 -18
  141. package/hooks/core/pipeProcessing/useGridRegisterPipeApplier.d.ts +2 -2
  142. package/hooks/core/pipeProcessing/useGridRegisterPipeApplier.js +1 -2
  143. package/hooks/core/pipeProcessing/useGridRegisterPipeProcessor.d.ts +2 -2
  144. package/hooks/core/pipeProcessing/useGridRegisterPipeProcessor.js +1 -2
  145. package/hooks/core/strategyProcessing/gridStrategyProcessingApi.d.ts +8 -11
  146. package/hooks/core/strategyProcessing/useGridRegisterStrategyProcessor.d.ts +2 -2
  147. package/hooks/core/strategyProcessing/useGridRegisterStrategyProcessor.js +1 -1
  148. package/hooks/core/strategyProcessing/useGridStrategyProcessing.d.ts +4 -4
  149. package/hooks/core/strategyProcessing/useGridStrategyProcessing.js +10 -23
  150. package/hooks/core/useGridApiInitialization.d.ts +2 -2
  151. package/hooks/core/useGridApiInitialization.js +58 -26
  152. package/hooks/core/useGridErrorHandler.js +7 -1
  153. package/hooks/core/useGridInitialization.d.ts +2 -2
  154. package/hooks/core/useGridInitialization.js +9 -9
  155. package/hooks/core/useGridLocaleText.d.ts +2 -2
  156. package/hooks/core/useGridLocaleText.js +1 -2
  157. package/hooks/core/useGridLoggerFactory.d.ts +2 -2
  158. package/hooks/core/useGridLoggerFactory.js +5 -10
  159. package/hooks/core/useGridStateInitialization.d.ts +2 -2
  160. package/hooks/core/useGridStateInitialization.js +15 -23
  161. package/hooks/features/clipboard/useGridClipboard.d.ts +2 -2
  162. package/hooks/features/clipboard/useGridClipboard.js +6 -13
  163. package/hooks/features/columnGrouping/gridColumnGroupsInterfaces.d.ts +11 -2
  164. package/hooks/features/columnGrouping/gridColumnGroupsSelector.d.ts +6 -0
  165. package/hooks/features/columnGrouping/gridColumnGroupsSelector.js +27 -2
  166. package/hooks/features/columnGrouping/gridColumnGroupsUtils.d.ts +15 -0
  167. package/hooks/features/columnGrouping/gridColumnGroupsUtils.js +75 -0
  168. package/hooks/features/columnGrouping/useGridColumnGrouping.d.ts +3 -17
  169. package/hooks/features/columnGrouping/useGridColumnGrouping.js +69 -88
  170. package/hooks/features/columnHeaders/useGridColumnHeaders.d.ts +1 -1
  171. package/hooks/features/columnHeaders/useGridColumnHeaders.js +72 -146
  172. package/hooks/features/columnMenu/useGridColumnMenu.d.ts +2 -2
  173. package/hooks/features/columnMenu/useGridColumnMenu.js +10 -16
  174. package/hooks/features/columns/gridColumnsInterfaces.d.ts +7 -10
  175. package/hooks/features/columns/gridColumnsSelector.d.ts +2 -50
  176. package/hooks/features/columns/gridColumnsSelector.js +12 -74
  177. package/hooks/features/columns/gridColumnsUtils.d.ts +2 -6
  178. package/hooks/features/columns/gridColumnsUtils.js +42 -87
  179. package/hooks/features/columns/index.d.ts +1 -2
  180. package/hooks/features/columns/index.js +1 -2
  181. package/hooks/features/columns/useGridColumnSpanning.d.ts +2 -2
  182. package/hooks/features/columns/useGridColumnSpanning.js +13 -18
  183. package/hooks/features/columns/useGridColumns.d.ts +2 -2
  184. package/hooks/features/columns/useGridColumns.js +22 -51
  185. package/hooks/features/density/densitySelector.d.ts +0 -2
  186. package/hooks/features/density/densitySelector.js +1 -3
  187. package/hooks/features/density/densityState.d.ts +0 -1
  188. package/hooks/features/density/useGridDensity.d.ts +3 -3
  189. package/hooks/features/density/useGridDensity.js +12 -52
  190. package/hooks/features/dimensions/gridDimensionsApi.d.ts +4 -4
  191. package/hooks/features/dimensions/index.d.ts +1 -1
  192. package/hooks/features/dimensions/index.js +1 -1
  193. package/hooks/features/dimensions/useGridDimensions.d.ts +2 -2
  194. package/hooks/features/dimensions/useGridDimensions.js +19 -32
  195. package/hooks/features/{editRows/gridEditRowsSelector.d.ts → editing/gridEditingSelectors.d.ts} +0 -0
  196. package/hooks/features/{editRows/gridEditRowsSelector.js → editing/gridEditingSelectors.js} +0 -0
  197. package/hooks/features/editing/index.d.ts +1 -0
  198. package/hooks/features/editing/index.js +1 -0
  199. package/hooks/features/editing/useGridCellEditing.d.ts +4 -0
  200. package/hooks/features/{editRows/useGridCellEditing.new.js → editing/useGridCellEditing.js} +61 -98
  201. package/hooks/features/{editRows/useGridEditing.new.d.ts → editing/useGridEditing.d.ts} +2 -2
  202. package/hooks/features/{editRows/useGridEditing.new.js → editing/useGridEditing.js} +14 -21
  203. package/hooks/features/editing/useGridRowEditing.d.ts +4 -0
  204. package/hooks/features/{editRows/useGridRowEditing.new.js → editing/useGridRowEditing.js} +60 -127
  205. package/hooks/features/events/useGridEvents.js +0 -1
  206. package/hooks/features/export/serializers/csvSerializer.js +2 -11
  207. package/hooks/features/export/useGridCsvExport.d.ts +2 -2
  208. package/hooks/features/export/useGridCsvExport.js +3 -6
  209. package/hooks/features/export/useGridPrintExport.d.ts +2 -2
  210. package/hooks/features/export/useGridPrintExport.js +31 -58
  211. package/hooks/features/export/utils.js +0 -5
  212. package/hooks/features/filter/gridFilterSelector.d.ts +2 -13
  213. package/hooks/features/filter/gridFilterSelector.js +19 -38
  214. package/hooks/features/filter/gridFilterState.d.ts +4 -4
  215. package/hooks/features/filter/gridFilterUtils.d.ts +2 -2
  216. package/hooks/features/filter/gridFilterUtils.js +35 -77
  217. package/hooks/features/filter/useGridFilter.d.ts +2 -2
  218. package/hooks/features/filter/useGridFilter.js +33 -57
  219. package/hooks/features/focus/gridFocusState.d.ts +8 -2
  220. package/hooks/features/focus/gridFocusStateSelector.d.ts +2 -0
  221. package/hooks/features/focus/gridFocusStateSelector.js +7 -1
  222. package/hooks/features/focus/useGridFocus.d.ts +2 -2
  223. package/hooks/features/focus/useGridFocus.js +81 -42
  224. package/hooks/features/index.d.ts +2 -2
  225. package/hooks/features/index.js +2 -2
  226. package/hooks/features/keyboardNavigation/useGridKeyboardNavigation.d.ts +2 -2
  227. package/hooks/features/keyboardNavigation/useGridKeyboardNavigation.js +204 -150
  228. package/hooks/features/pagination/gridPaginationSelector.js +11 -17
  229. package/hooks/features/pagination/useGridPage.d.ts +2 -2
  230. package/hooks/features/pagination/useGridPage.js +15 -23
  231. package/hooks/features/pagination/useGridPageSize.d.ts +2 -2
  232. package/hooks/features/pagination/useGridPageSize.js +16 -24
  233. package/hooks/features/pagination/useGridPagination.d.ts +2 -2
  234. package/hooks/features/pagination/useGridPagination.js +1 -4
  235. package/hooks/features/preferencesPanel/gridPreferencePanelState.d.ts +1 -1
  236. package/hooks/features/preferencesPanel/gridPreferencePanelsValue.js +0 -2
  237. package/hooks/features/preferencesPanel/useGridPreferencesPanel.d.ts +2 -2
  238. package/hooks/features/preferencesPanel/useGridPreferencesPanel.js +17 -21
  239. package/hooks/features/{selection/gridSelectionSelector.d.ts → rowSelection/gridRowSelectionSelector.d.ts} +1 -1
  240. package/hooks/features/rowSelection/gridRowSelectionSelector.js +9 -0
  241. package/hooks/features/rowSelection/index.d.ts +1 -0
  242. package/hooks/features/rowSelection/index.js +1 -0
  243. package/hooks/features/rowSelection/useGridRowSelection.d.ts +12 -0
  244. package/hooks/features/{selection/useGridSelection.js → rowSelection/useGridRowSelection.js} +95 -119
  245. package/hooks/features/rowSelection/useGridRowSelectionPreProcessors.d.ts +4 -0
  246. package/hooks/features/{selection/useGridSelectionPreProcessors.js → rowSelection/useGridRowSelectionPreProcessors.js} +4 -9
  247. package/hooks/features/rows/gridRowsInterfaces.d.ts +13 -9
  248. package/hooks/features/rows/gridRowsSelector.d.ts +0 -1
  249. package/hooks/features/rows/gridRowsSelector.js +6 -11
  250. package/hooks/features/rows/gridRowsUtils.d.ts +3 -3
  251. package/hooks/features/rows/gridRowsUtils.js +41 -49
  252. package/hooks/features/rows/index.d.ts +1 -1
  253. package/hooks/features/rows/index.js +1 -1
  254. package/hooks/features/rows/useGridParamsApi.d.ts +2 -2
  255. package/hooks/features/rows/useGridParamsApi.js +5 -42
  256. package/hooks/features/rows/useGridRows.d.ts +2 -2
  257. package/hooks/features/rows/useGridRows.js +52 -73
  258. package/hooks/features/rows/useGridRowsMeta.d.ts +2 -2
  259. package/hooks/features/rows/useGridRowsMeta.js +24 -36
  260. package/hooks/features/rows/useGridRowsPreProcessors.d.ts +2 -2
  261. package/hooks/features/rows/useGridRowsPreProcessors.js +2 -13
  262. package/hooks/features/scroll/useGridScroll.d.ts +2 -2
  263. package/hooks/features/scroll/useGridScroll.js +24 -43
  264. package/hooks/features/sorting/gridSortingSelector.d.ts +1 -6
  265. package/hooks/features/sorting/gridSortingSelector.js +6 -7
  266. package/hooks/features/sorting/gridSortingState.d.ts +2 -2
  267. package/hooks/features/sorting/gridSortingUtils.js +2 -30
  268. package/hooks/features/sorting/useGridSorting.d.ts +2 -2
  269. package/hooks/features/sorting/useGridSorting.js +17 -38
  270. package/hooks/features/statePersistence/useGridStatePersistence.d.ts +2 -2
  271. package/hooks/features/statePersistence/useGridStatePersistence.js +1 -1
  272. package/hooks/features/virtualization/useGridVirtualScroller.d.ts +5 -8
  273. package/hooks/features/virtualization/useGridVirtualScroller.js +48 -78
  274. package/hooks/utils/index.d.ts +0 -2
  275. package/hooks/utils/index.js +0 -2
  276. package/hooks/utils/useFirstRender.js +0 -1
  277. package/hooks/utils/useGridApiContext.js +0 -2
  278. package/hooks/utils/useGridApiEventHandler.d.ts +2 -2
  279. package/hooks/utils/useGridApiEventHandler.js +8 -22
  280. package/hooks/utils/useGridApiMethod.d.ts +6 -2
  281. package/hooks/utils/useGridApiMethod.js +9 -9
  282. package/hooks/utils/useGridApiRef.d.ts +1 -1
  283. package/hooks/utils/useGridApiRef.js +0 -1
  284. package/hooks/utils/useGridInitializeState.d.ts +5 -5
  285. package/hooks/utils/useGridInitializeState.js +2 -3
  286. package/hooks/utils/useGridLogger.d.ts +2 -2
  287. package/hooks/utils/useGridLogger.js +2 -4
  288. package/hooks/utils/useGridNativeEventListener.d.ts +2 -2
  289. package/hooks/utils/useGridNativeEventListener.js +0 -4
  290. package/hooks/utils/useGridPrivateApiContext.d.ts +5 -0
  291. package/hooks/utils/useGridPrivateApiContext.js +12 -0
  292. package/hooks/utils/useGridRootProps.js +0 -2
  293. package/hooks/utils/useGridScrollFn.d.ts +2 -2
  294. package/hooks/utils/useGridScrollFn.js +2 -4
  295. package/hooks/utils/useGridSelector.d.ts +1 -1
  296. package/hooks/utils/useGridSelector.js +0 -4
  297. package/hooks/utils/useGridVisibleRows.d.ts +2 -2
  298. package/hooks/utils/useGridVisibleRows.js +1 -4
  299. package/index.d.ts +3 -8
  300. package/index.js +1 -1
  301. package/internals/index.d.ts +5 -5
  302. package/internals/index.js +5 -6
  303. package/legacy/DataGrid/DataGrid.js +22 -150
  304. package/legacy/DataGrid/useDataGridComponent.js +43 -49
  305. package/legacy/DataGrid/useDataGridProps.js +10 -12
  306. package/legacy/colDef/gridBooleanColDef.js +1 -3
  307. package/legacy/colDef/gridBooleanOperators.js +0 -1
  308. package/legacy/colDef/gridCheckboxSelectionColDef.js +1 -1
  309. package/legacy/colDef/gridDateColDef.js +0 -4
  310. package/legacy/colDef/gridDateOperators.js +8 -15
  311. package/legacy/colDef/gridDefaultColumnTypes.js +0 -1
  312. package/legacy/colDef/gridNumericOperators.js +1 -26
  313. package/legacy/colDef/gridSingleSelectOperators.js +2 -14
  314. package/legacy/colDef/gridStringColDef.js +1 -1
  315. package/legacy/colDef/gridStringOperators.js +0 -6
  316. package/legacy/components/DataGridColumnHeaders.js +9 -11
  317. package/legacy/components/DataGridVirtualScroller.js +9 -11
  318. package/legacy/components/ErrorBoundary.js +3 -12
  319. package/legacy/components/GridApiContext.js +0 -1
  320. package/legacy/components/GridAutoSizer.js +24 -40
  321. package/legacy/components/{ErrorOverlay.js → GridErrorOverlay.js} +7 -9
  322. package/legacy/components/GridFooter.js +1 -4
  323. package/legacy/components/GridHeader.js +0 -1
  324. package/legacy/components/GridPagination.js +0 -7
  325. package/legacy/components/GridRow.js +71 -114
  326. package/legacy/components/GridRowCount.js +4 -9
  327. package/legacy/components/GridScrollArea.js +8 -19
  328. package/legacy/components/GridSelectedRowCount.js +3 -6
  329. package/legacy/components/base/GridBody.js +15 -22
  330. package/legacy/components/base/GridErrorHandler.js +5 -9
  331. package/legacy/components/base/GridFooterPlaceholder.js +0 -3
  332. package/legacy/components/base/GridHeaderPlaceholder.js +2 -6
  333. package/legacy/components/base/GridOverlays.js +8 -28
  334. package/legacy/components/cell/GridActionsCell.js +29 -79
  335. package/legacy/components/cell/GridActionsCellItem.js +4 -7
  336. package/legacy/components/cell/GridBooleanCell.js +17 -46
  337. package/legacy/components/cell/GridCell.js +36 -63
  338. package/legacy/components/cell/GridEditBooleanCell.js +23 -60
  339. package/legacy/components/cell/GridEditDateCell.js +22 -67
  340. package/legacy/components/cell/GridEditInputCell.js +25 -68
  341. package/legacy/components/cell/GridEditSingleSelectCell.js +31 -126
  342. package/legacy/components/cell/GridSkeletonCell.js +6 -11
  343. package/legacy/components/columnHeaders/ColumnHeaderMenuIcon.js +6 -10
  344. package/legacy/components/columnHeaders/GridColumnGroupHeader.js +72 -49
  345. package/legacy/components/columnHeaders/GridColumnHeaderFilterIconButton.js +5 -17
  346. package/legacy/components/columnHeaders/GridColumnHeaderItem.js +29 -48
  347. package/legacy/components/columnHeaders/GridColumnHeaderSeparator.js +9 -17
  348. package/legacy/components/columnHeaders/GridColumnHeaderSortIcon.js +3 -14
  349. package/legacy/components/columnHeaders/GridColumnHeaderTitle.js +7 -16
  350. package/legacy/components/columnHeaders/GridColumnHeaders.js +4 -6
  351. package/legacy/components/columnHeaders/GridColumnHeadersInner.js +5 -10
  352. package/legacy/components/columnHeaders/GridColumnUnsortedIcon.js +2 -5
  353. package/legacy/components/columnHeaders/GridGenericColumnHeaderItem.js +30 -36
  354. package/legacy/components/columnHeaders/GridIconButtonContainer.js +2 -5
  355. package/legacy/components/columnSelection/GridCellCheckboxRenderer.js +24 -58
  356. package/legacy/components/columnSelection/GridHeaderCheckbox.js +16 -31
  357. package/legacy/components/containers/GridFooterContainer.js +4 -6
  358. package/legacy/components/containers/GridMainContainer.js +1 -3
  359. package/legacy/components/containers/GridOverlay.js +4 -7
  360. package/legacy/components/containers/GridRoot.js +17 -24
  361. package/legacy/components/containers/GridRootStyles.js +21 -23
  362. package/legacy/components/containers/GridToolbarContainer.js +5 -9
  363. package/legacy/components/menu/GridMenu.js +13 -24
  364. package/legacy/components/menu/columnMenu/GridColumnHeaderMenu.js +7 -11
  365. package/legacy/components/menu/columnMenu/GridColumnMenu.js +1 -1
  366. package/legacy/components/menu/columnMenu/GridColumnMenuContainer.js +7 -9
  367. package/legacy/components/menu/columnMenu/GridColumnsMenuItem.js +2 -6
  368. package/legacy/components/menu/columnMenu/GridFilterMenuItem.js +3 -7
  369. package/legacy/components/menu/columnMenu/HideGridColMenuItem.js +7 -13
  370. package/legacy/components/menu/columnMenu/SortGridMenuItems.js +3 -8
  371. package/legacy/components/panel/GridColumnsPanel.js +35 -28
  372. package/legacy/components/panel/GridPanel.js +11 -16
  373. package/legacy/components/panel/GridPanelContent.js +2 -7
  374. package/legacy/components/panel/GridPanelFooter.js +2 -7
  375. package/legacy/components/panel/GridPanelHeader.js +2 -7
  376. package/legacy/components/panel/GridPanelWrapper.js +2 -7
  377. package/legacy/components/panel/GridPreferencesPanel.js +0 -1
  378. package/legacy/components/panel/filterPanel/GridFilterForm.js +80 -95
  379. package/legacy/components/panel/filterPanel/GridFilterInputBoolean.js +7 -10
  380. package/legacy/components/panel/filterPanel/GridFilterInputDate.js +16 -26
  381. package/legacy/components/panel/filterPanel/GridFilterInputMultipleSingleSelect.js +22 -37
  382. package/legacy/components/panel/filterPanel/GridFilterInputMultipleValue.js +17 -26
  383. package/legacy/components/panel/filterPanel/GridFilterInputSingleSelect.js +18 -30
  384. package/legacy/components/panel/filterPanel/GridFilterInputValue.js +23 -38
  385. package/legacy/components/panel/filterPanel/GridFilterPanel.js +65 -39
  386. package/legacy/components/panel/filterPanel/filterPanelUtils.js +0 -2
  387. package/legacy/components/toolbar/GridToolbar.js +10 -14
  388. package/legacy/components/toolbar/GridToolbarColumnsButton.js +5 -11
  389. package/legacy/components/toolbar/GridToolbarDensitySelector.js +7 -21
  390. package/legacy/components/toolbar/GridToolbarExport.js +15 -22
  391. package/legacy/components/toolbar/GridToolbarExportContainer.js +6 -20
  392. package/legacy/components/toolbar/GridToolbarFilterButton.js +11 -26
  393. package/legacy/components/toolbar/GridToolbarQuickFilter.js +18 -30
  394. package/legacy/components/virtualization/GridVirtualScroller.js +2 -5
  395. package/legacy/components/virtualization/GridVirtualScrollerContent.js +4 -7
  396. package/legacy/components/virtualization/GridVirtualScrollerRenderZone.js +2 -5
  397. package/legacy/constants/defaultGridSlotsComponents.js +4 -5
  398. package/legacy/constants/envConstants.js +1 -0
  399. package/legacy/constants/gridClasses.js +1 -1
  400. package/legacy/constants/localeTextConstants.js +1 -2
  401. package/legacy/context/GridContextProvider.js +13 -8
  402. package/legacy/context/GridRootPropsContext.js +0 -2
  403. package/legacy/hooks/core/pipeProcessing/useGridPipeProcessing.js +16 -24
  404. package/legacy/hooks/core/pipeProcessing/useGridRegisterPipeApplier.js +1 -2
  405. package/legacy/hooks/core/pipeProcessing/useGridRegisterPipeProcessor.js +1 -2
  406. package/legacy/hooks/core/strategyProcessing/useGridRegisterStrategyProcessor.js +1 -1
  407. package/legacy/hooks/core/strategyProcessing/useGridStrategyProcessing.js +12 -26
  408. package/legacy/hooks/core/useGridApiInitialization.js +64 -31
  409. package/legacy/hooks/core/useGridErrorHandler.js +7 -1
  410. package/legacy/hooks/core/useGridInitialization.js +9 -9
  411. package/legacy/hooks/core/useGridLocaleText.js +1 -2
  412. package/legacy/hooks/core/useGridLoggerFactory.js +6 -14
  413. package/legacy/hooks/core/useGridStateInitialization.js +17 -27
  414. package/legacy/hooks/features/clipboard/useGridClipboard.js +6 -14
  415. package/legacy/hooks/features/columnGrouping/gridColumnGroupsSelector.js +26 -2
  416. package/legacy/hooks/features/columnGrouping/gridColumnGroupsUtils.js +81 -0
  417. package/legacy/hooks/features/columnGrouping/useGridColumnGrouping.js +65 -84
  418. package/legacy/hooks/features/columnHeaders/useGridColumnHeaders.js +122 -201
  419. package/legacy/hooks/features/columnMenu/useGridColumnMenu.js +10 -16
  420. package/legacy/hooks/features/columns/gridColumnsSelector.js +17 -87
  421. package/legacy/hooks/features/columns/gridColumnsUtils.js +68 -117
  422. package/legacy/hooks/features/columns/index.js +1 -2
  423. package/legacy/hooks/features/columns/useGridColumnSpanning.js +20 -26
  424. package/legacy/hooks/features/columns/useGridColumns.js +22 -57
  425. package/legacy/hooks/features/density/densitySelector.js +0 -6
  426. package/legacy/hooks/features/density/useGridDensity.js +9 -51
  427. package/legacy/hooks/features/dimensions/index.js +1 -1
  428. package/legacy/hooks/features/dimensions/useGridDimensions.js +21 -34
  429. package/legacy/hooks/features/{editRows/gridEditRowsSelector.js → editing/gridEditingSelectors.js} +0 -0
  430. package/legacy/hooks/features/editing/index.js +1 -0
  431. package/legacy/hooks/features/{editRows/useGridCellEditing.new.js → editing/useGridCellEditing.js} +67 -117
  432. package/legacy/hooks/features/{editRows/useGridEditing.new.js → editing/useGridEditing.js} +21 -39
  433. package/legacy/hooks/features/{editRows/useGridRowEditing.new.js → editing/useGridRowEditing.js} +80 -151
  434. package/legacy/hooks/features/events/useGridEvents.js +0 -1
  435. package/legacy/hooks/features/export/serializers/csvSerializer.js +6 -15
  436. package/legacy/hooks/features/export/useGridCsvExport.js +3 -6
  437. package/legacy/hooks/features/export/useGridPrintExport.js +31 -63
  438. package/legacy/hooks/features/export/utils.js +1 -6
  439. package/legacy/hooks/features/filter/gridFilterSelector.js +20 -39
  440. package/legacy/hooks/features/filter/gridFilterUtils.js +37 -79
  441. package/legacy/hooks/features/filter/useGridFilter.js +36 -65
  442. package/legacy/hooks/features/focus/gridFocusStateSelector.js +10 -0
  443. package/legacy/hooks/features/focus/useGridFocus.js +84 -44
  444. package/legacy/hooks/features/index.js +2 -2
  445. package/legacy/hooks/features/keyboardNavigation/useGridKeyboardNavigation.js +200 -152
  446. package/legacy/hooks/features/pagination/gridPaginationSelector.js +11 -17
  447. package/legacy/hooks/features/pagination/useGridPage.js +15 -23
  448. package/legacy/hooks/features/pagination/useGridPageSize.js +16 -24
  449. package/legacy/hooks/features/pagination/useGridPagination.js +1 -4
  450. package/legacy/hooks/features/preferencesPanel/gridPreferencePanelsValue.js +0 -2
  451. package/legacy/hooks/features/preferencesPanel/useGridPreferencesPanel.js +17 -21
  452. package/legacy/hooks/features/rowSelection/gridRowSelectionSelector.js +19 -0
  453. package/legacy/hooks/features/rowSelection/index.js +1 -0
  454. package/legacy/hooks/features/{selection/useGridSelection.js → rowSelection/useGridRowSelection.js} +108 -135
  455. package/legacy/hooks/features/{selection/useGridSelectionPreProcessors.js → rowSelection/useGridRowSelectionPreProcessors.js} +4 -9
  456. package/legacy/hooks/features/rows/gridRowsSelector.js +8 -15
  457. package/legacy/hooks/features/rows/gridRowsUtils.js +61 -75
  458. package/legacy/hooks/features/rows/index.js +1 -1
  459. package/legacy/hooks/features/rows/useGridParamsApi.js +5 -44
  460. package/legacy/hooks/features/rows/useGridRows.js +61 -86
  461. package/legacy/hooks/features/rows/useGridRowsMeta.js +33 -47
  462. package/legacy/hooks/features/rows/useGridRowsPreProcessors.js +3 -15
  463. package/legacy/hooks/features/scroll/useGridScroll.js +27 -46
  464. package/legacy/hooks/features/sorting/gridSortingSelector.js +7 -8
  465. package/legacy/hooks/features/sorting/gridSortingUtils.js +2 -30
  466. package/legacy/hooks/features/sorting/useGridSorting.js +17 -42
  467. package/legacy/hooks/features/statePersistence/useGridStatePersistence.js +1 -1
  468. package/legacy/hooks/features/virtualization/useGridVirtualScroller.js +135 -180
  469. package/legacy/hooks/utils/index.js +0 -2
  470. package/legacy/hooks/utils/useFirstRender.js +0 -1
  471. package/legacy/hooks/utils/useGridApiContext.js +0 -2
  472. package/legacy/hooks/utils/useGridApiEventHandler.js +7 -24
  473. package/legacy/hooks/utils/useGridApiMethod.js +10 -17
  474. package/legacy/hooks/utils/useGridApiRef.js +0 -1
  475. package/legacy/hooks/utils/useGridInitializeState.js +2 -3
  476. package/legacy/hooks/utils/useGridLogger.js +2 -4
  477. package/legacy/hooks/utils/useGridNativeEventListener.js +3 -9
  478. package/legacy/hooks/utils/useGridPrivateApiContext.js +12 -0
  479. package/legacy/hooks/utils/useGridRootProps.js +0 -2
  480. package/legacy/hooks/utils/useGridScrollFn.js +2 -4
  481. package/legacy/hooks/utils/useGridSelector.js +0 -4
  482. package/legacy/hooks/utils/useGridVisibleRows.js +1 -4
  483. package/legacy/index.js +1 -1
  484. package/legacy/internals/index.js +5 -6
  485. package/legacy/lib/createDetectElementResize/index.js +14 -37
  486. package/legacy/locales/arSD.js +9 -5
  487. package/legacy/locales/bgBG.js +9 -5
  488. package/legacy/locales/csCZ.js +11 -10
  489. package/legacy/locales/daDK.js +8 -4
  490. package/legacy/locales/deDE.js +1 -2
  491. package/legacy/locales/elGR.js +16 -4
  492. package/legacy/locales/esES.js +16 -4
  493. package/legacy/locales/faIR.js +1 -2
  494. package/legacy/locales/fiFI.js +3 -4
  495. package/legacy/locales/frFR.js +5 -4
  496. package/legacy/locales/heIL.js +5 -4
  497. package/legacy/locales/huHU.js +8 -4
  498. package/legacy/locales/itIT.js +5 -4
  499. package/legacy/locales/jaJP.js +7 -4
  500. package/legacy/locales/koKR.js +1 -2
  501. package/legacy/locales/nbNO.js +5 -4
  502. package/legacy/locales/nlNL.js +5 -4
  503. package/legacy/locales/plPL.js +5 -4
  504. package/legacy/locales/ptBR.js +5 -4
  505. package/legacy/locales/roRO.js +5 -4
  506. package/legacy/locales/ruRU.js +7 -10
  507. package/legacy/locales/skSK.js +5 -10
  508. package/legacy/locales/svSE.js +5 -4
  509. package/legacy/locales/trTR.js +18 -19
  510. package/legacy/locales/ukUA.js +26 -26
  511. package/legacy/locales/viVN.js +12 -4
  512. package/legacy/locales/zhCN.js +1 -2
  513. package/legacy/locales/zhTW.js +5 -4
  514. package/legacy/models/api/{gridSelectionApi.js → gridRowSelectionApi.js} +0 -0
  515. package/legacy/models/api/index.js +1 -6
  516. package/legacy/models/colDef/index.js +2 -1
  517. package/legacy/models/gridColumnGrouping.js +1 -0
  518. package/legacy/models/gridDensity.js +0 -3
  519. package/legacy/models/gridEditRowModel.js +0 -6
  520. package/legacy/models/gridFilterItem.js +0 -2
  521. package/legacy/models/{gridSelectionModel.js → gridRowSelectionModel.js} +0 -0
  522. package/legacy/models/index.js +4 -2
  523. package/legacy/models/params/{gridSortModelParams.js → gridColumnGroupHeaderParams.js} +0 -0
  524. package/legacy/models/params/gridEditCellParams.js +0 -8
  525. package/legacy/models/params/gridRowParams.js +0 -7
  526. package/legacy/models/params/index.js +1 -1
  527. package/legacy/themeAugmentation/index.js +2 -1
  528. package/legacy/utils/EventManager.js +0 -16
  529. package/legacy/utils/cleanupTracking/FinalizationRegistryBasedCleanupTracking.js +2 -4
  530. package/legacy/utils/cleanupTracking/TimerBasedCleanupTracking.js +0 -9
  531. package/legacy/utils/createSelector.js +14 -17
  532. package/legacy/utils/domUtils.js +3 -7
  533. package/legacy/utils/exportAs.js +11 -7
  534. package/legacy/utils/getGridLocalization.js +0 -1
  535. package/legacy/utils/keyboardUtils.js +3 -4
  536. package/legacy/utils/utils.js +7 -34
  537. package/legacy/utils/warning.js +0 -2
  538. package/lib/createDetectElementResize/index.js +14 -37
  539. package/locales/arSD.js +9 -5
  540. package/locales/bgBG.js +9 -5
  541. package/locales/csCZ.js +11 -10
  542. package/locales/daDK.js +8 -4
  543. package/locales/deDE.js +1 -2
  544. package/locales/elGR.js +16 -4
  545. package/locales/esES.js +16 -4
  546. package/locales/faIR.js +1 -2
  547. package/locales/fiFI.js +3 -4
  548. package/locales/frFR.js +5 -4
  549. package/locales/heIL.js +5 -4
  550. package/locales/huHU.js +8 -4
  551. package/locales/itIT.js +5 -4
  552. package/locales/jaJP.js +7 -4
  553. package/locales/koKR.js +1 -2
  554. package/locales/nbNO.js +5 -4
  555. package/locales/nlNL.js +5 -4
  556. package/locales/plPL.js +5 -4
  557. package/locales/ptBR.js +5 -4
  558. package/locales/roRO.js +5 -4
  559. package/locales/ruRU.js +7 -10
  560. package/locales/skSK.js +5 -10
  561. package/locales/svSE.js +5 -4
  562. package/locales/trTR.js +18 -19
  563. package/locales/ukUA.js +22 -26
  564. package/locales/viVN.js +12 -4
  565. package/locales/zhCN.js +1 -2
  566. package/locales/zhTW.js +5 -4
  567. package/models/api/gridApiCommon.d.ts +15 -14
  568. package/models/api/gridApiCommunity.d.ts +5 -8
  569. package/models/api/gridCallbackDetails.d.ts +0 -5
  570. package/models/api/gridColumnApi.d.ts +1 -13
  571. package/models/api/gridColumnSpanning.d.ts +4 -2
  572. package/models/api/gridCoreApi.d.ts +28 -20
  573. package/models/api/gridEditingApi.d.ts +56 -133
  574. package/models/api/gridFocusApi.d.ts +16 -2
  575. package/models/api/gridLocaleTextApi.d.ts +2 -2
  576. package/models/api/gridLoggerApi.d.ts +0 -1
  577. package/models/api/{gridSelectionApi.d.ts → gridRowSelectionApi.d.ts} +43 -20
  578. package/models/api/{gridSelectionApi.js → gridRowSelectionApi.js} +0 -0
  579. package/models/api/gridRowsMetaApi.d.ts +14 -11
  580. package/models/api/gridSortApi.d.ts +0 -8
  581. package/models/api/gridStateApi.d.ts +4 -4
  582. package/models/api/gridVirtualScrollerApi.d.ts +1 -2
  583. package/models/api/index.d.ts +8 -8
  584. package/models/api/index.js +1 -6
  585. package/models/colDef/gridColDef.d.ts +7 -15
  586. package/models/colDef/gridColType.d.ts +2 -2
  587. package/models/colDef/gridColumnTypesRecord.d.ts +1 -1
  588. package/models/colDef/index.js +2 -1
  589. package/models/events/gridEventListener.d.ts +1 -1
  590. package/models/events/gridEventLookup.d.ts +32 -37
  591. package/models/events/gridEventPublisher.d.ts +8 -8
  592. package/models/gridCell.d.ts +2 -7
  593. package/models/gridCellClass.d.ts +2 -2
  594. package/models/gridColumnGrouping.d.ts +5 -30
  595. package/models/gridColumnGrouping.js +1 -0
  596. package/models/gridColumnHeaderClass.d.ts +2 -2
  597. package/models/gridColumnSpanning.d.ts +2 -2
  598. package/models/gridDensity.d.ts +1 -1
  599. package/models/gridDensity.js +0 -3
  600. package/models/gridEditRowModel.d.ts +4 -4
  601. package/models/gridEditRowModel.js +0 -6
  602. package/models/gridExport.d.ts +2 -2
  603. package/models/gridFeatureMode.d.ts +1 -1
  604. package/models/gridFilterItem.d.ts +2 -3
  605. package/models/gridFilterItem.js +0 -2
  606. package/models/gridFilterOperator.d.ts +1 -1
  607. package/models/gridRenderContextProps.d.ts +1 -1
  608. package/models/gridRootContainerRef.d.ts +1 -1
  609. package/models/gridRowSelectionModel.d.ts +3 -0
  610. package/models/{gridSelectionModel.js → gridRowSelectionModel.js} +0 -0
  611. package/models/gridRows.d.ts +12 -16
  612. package/models/gridSlotsComponent.d.ts +1 -7
  613. package/models/gridSlotsComponentsProps.d.ts +0 -1
  614. package/models/gridSortModel.d.ts +3 -6
  615. package/models/gridStateCommunity.d.ts +2 -2
  616. package/models/index.d.ts +1 -1
  617. package/models/index.js +4 -2
  618. package/models/muiEvent.d.ts +2 -2
  619. package/models/params/gridCellParams.d.ts +5 -16
  620. package/models/params/gridColumnGroupHeaderParams.d.ts +30 -0
  621. package/models/params/{gridSortModelParams.js → gridColumnGroupHeaderParams.js} +0 -0
  622. package/models/params/gridEditCellParams.d.ts +4 -17
  623. package/models/params/gridEditCellParams.js +0 -8
  624. package/models/params/gridRowParams.d.ts +5 -13
  625. package/models/params/gridRowParams.js +0 -7
  626. package/models/params/gridScrollParams.d.ts +1 -1
  627. package/models/params/index.d.ts +1 -1
  628. package/models/params/index.js +1 -1
  629. package/models/props/DataGridProps.d.ts +21 -39
  630. package/modern/DataGrid/DataGrid.js +22 -150
  631. package/modern/DataGrid/useDataGridComponent.js +44 -48
  632. package/modern/DataGrid/useDataGridProps.js +8 -9
  633. package/modern/colDef/gridBooleanColDef.js +0 -2
  634. package/modern/colDef/gridBooleanOperators.js +0 -1
  635. package/modern/colDef/gridCheckboxSelectionColDef.js +1 -1
  636. package/modern/colDef/gridDateColDef.js +0 -2
  637. package/modern/colDef/gridDateOperators.js +2 -7
  638. package/modern/colDef/gridNumericOperators.js +1 -22
  639. package/modern/colDef/gridSingleSelectOperators.js +0 -12
  640. package/modern/colDef/gridStringColDef.js +1 -1
  641. package/modern/colDef/gridStringOperators.js +0 -6
  642. package/modern/components/DataGridColumnHeaders.js +3 -4
  643. package/modern/components/DataGridVirtualScroller.js +4 -5
  644. package/modern/components/ErrorBoundary.js +3 -7
  645. package/modern/components/GridApiContext.js +0 -1
  646. package/modern/components/GridAutoSizer.js +16 -30
  647. package/{components/ErrorOverlay.js → modern/components/GridErrorOverlay.js} +6 -8
  648. package/modern/components/GridFooter.js +1 -3
  649. package/modern/components/GridPagination.js +0 -3
  650. package/modern/components/GridRow.js +56 -89
  651. package/modern/components/GridRowCount.js +6 -11
  652. package/modern/components/GridScrollArea.js +4 -12
  653. package/modern/components/GridSelectedRowCount.js +5 -8
  654. package/modern/components/base/GridBody.js +10 -15
  655. package/modern/components/base/GridErrorHandler.js +5 -8
  656. package/modern/components/base/GridFooterPlaceholder.js +0 -2
  657. package/modern/components/base/GridHeaderPlaceholder.js +2 -4
  658. package/modern/components/base/GridOverlays.js +2 -14
  659. package/modern/components/cell/GridActionsCell.js +15 -61
  660. package/modern/components/cell/GridActionsCellItem.js +6 -9
  661. package/modern/components/cell/GridBooleanCell.js +8 -36
  662. package/modern/components/cell/GridCell.js +32 -58
  663. package/modern/components/cell/GridEditBooleanCell.js +11 -41
  664. package/modern/components/cell/GridEditDateCell.js +12 -49
  665. package/modern/components/cell/GridEditInputCell.js +15 -48
  666. package/modern/components/cell/GridEditSingleSelectCell.js +23 -92
  667. package/modern/components/cell/GridSkeletonCell.js +6 -11
  668. package/modern/components/columnHeaders/ColumnHeaderMenuIcon.js +1 -5
  669. package/modern/components/columnHeaders/GridColumnGroupHeader.js +35 -15
  670. package/modern/components/columnHeaders/GridColumnHeaderFilterIconButton.js +1 -11
  671. package/modern/components/columnHeaders/GridColumnHeaderItem.js +3 -18
  672. package/modern/components/columnHeaders/GridColumnHeaderSeparator.js +5 -13
  673. package/modern/components/columnHeaders/GridColumnHeaderSortIcon.js +1 -12
  674. package/modern/components/columnHeaders/GridColumnHeaderTitle.js +4 -10
  675. package/modern/components/columnHeaders/GridColumnHeaders.js +6 -8
  676. package/modern/components/columnHeaders/GridColumnHeadersInner.js +5 -8
  677. package/modern/components/columnHeaders/GridColumnUnsortedIcon.js +3 -4
  678. package/modern/components/columnHeaders/GridGenericColumnHeaderItem.js +25 -29
  679. package/modern/components/columnHeaders/GridIconButtonContainer.js +4 -7
  680. package/modern/components/columnSelection/GridCellCheckboxRenderer.js +20 -51
  681. package/modern/components/columnSelection/GridHeaderCheckbox.js +12 -25
  682. package/modern/components/containers/GridFooterContainer.js +6 -8
  683. package/modern/components/containers/GridMainContainer.js +1 -3
  684. package/modern/components/containers/GridOverlay.js +6 -9
  685. package/modern/components/containers/GridRoot.js +14 -20
  686. package/modern/components/containers/GridRootStyles.js +23 -23
  687. package/modern/components/containers/GridToolbarContainer.js +7 -11
  688. package/modern/components/menu/GridMenu.js +14 -24
  689. package/modern/components/menu/columnMenu/GridColumnHeaderMenu.js +0 -4
  690. package/modern/components/menu/columnMenu/GridColumnMenuContainer.js +8 -10
  691. package/modern/components/menu/columnMenu/GridColumnsMenuItem.js +2 -6
  692. package/modern/components/menu/columnMenu/GridFilterMenuItem.js +2 -6
  693. package/modern/components/menu/columnMenu/HideGridColMenuItem.js +6 -12
  694. package/modern/components/menu/columnMenu/SortGridMenuItems.js +2 -7
  695. package/modern/components/panel/GridColumnsPanel.js +31 -22
  696. package/modern/components/panel/GridPanel.js +9 -11
  697. package/modern/components/panel/GridPanelContent.js +4 -9
  698. package/modern/components/panel/GridPanelFooter.js +4 -9
  699. package/modern/components/panel/GridPanelHeader.js +4 -9
  700. package/modern/components/panel/GridPanelWrapper.js +4 -9
  701. package/modern/components/panel/filterPanel/GridFilterForm.js +73 -87
  702. package/modern/components/panel/filterPanel/GridFilterInputBoolean.js +6 -7
  703. package/modern/components/panel/filterPanel/GridFilterInputDate.js +12 -17
  704. package/modern/components/panel/filterPanel/GridFilterInputMultipleSingleSelect.js +20 -33
  705. package/modern/components/panel/filterPanel/GridFilterInputMultipleValue.js +16 -21
  706. package/modern/components/panel/filterPanel/GridFilterInputSingleSelect.js +15 -24
  707. package/modern/components/panel/filterPanel/GridFilterInputValue.js +17 -27
  708. package/modern/components/panel/filterPanel/GridFilterPanel.js +59 -35
  709. package/modern/components/panel/filterPanel/filterPanelUtils.js +0 -2
  710. package/modern/components/toolbar/GridToolbar.js +9 -13
  711. package/modern/components/toolbar/GridToolbarColumnsButton.js +5 -9
  712. package/modern/components/toolbar/GridToolbarDensitySelector.js +8 -17
  713. package/modern/components/toolbar/GridToolbarExport.js +19 -26
  714. package/modern/components/toolbar/GridToolbarExportContainer.js +7 -16
  715. package/modern/components/toolbar/GridToolbarFilterButton.js +9 -21
  716. package/modern/components/toolbar/GridToolbarQuickFilter.js +9 -16
  717. package/modern/components/virtualization/GridVirtualScroller.js +4 -7
  718. package/modern/components/virtualization/GridVirtualScrollerContent.js +5 -8
  719. package/modern/components/virtualization/GridVirtualScrollerRenderZone.js +4 -7
  720. package/modern/constants/defaultGridSlotsComponents.js +4 -5
  721. package/modern/constants/envConstants.js +1 -0
  722. package/modern/constants/gridClasses.js +1 -1
  723. package/modern/constants/localeTextConstants.js +1 -2
  724. package/modern/context/GridContextProvider.js +12 -7
  725. package/modern/context/GridRootPropsContext.js +0 -2
  726. package/modern/hooks/core/pipeProcessing/useGridPipeProcessing.js +11 -18
  727. package/modern/hooks/core/pipeProcessing/useGridRegisterPipeApplier.js +1 -2
  728. package/modern/hooks/core/pipeProcessing/useGridRegisterPipeProcessor.js +1 -2
  729. package/modern/hooks/core/strategyProcessing/useGridRegisterStrategyProcessor.js +1 -1
  730. package/modern/hooks/core/strategyProcessing/useGridStrategyProcessing.js +10 -22
  731. package/modern/hooks/core/useGridApiInitialization.js +58 -26
  732. package/modern/hooks/core/useGridErrorHandler.js +7 -1
  733. package/modern/hooks/core/useGridInitialization.js +9 -9
  734. package/modern/hooks/core/useGridLocaleText.js +1 -2
  735. package/modern/hooks/core/useGridLoggerFactory.js +5 -10
  736. package/modern/hooks/core/useGridStateInitialization.js +15 -23
  737. package/modern/hooks/features/clipboard/useGridClipboard.js +6 -12
  738. package/modern/hooks/features/columnGrouping/gridColumnGroupsSelector.js +12 -2
  739. package/modern/hooks/features/columnGrouping/gridColumnGroupsUtils.js +71 -0
  740. package/modern/hooks/features/columnGrouping/useGridColumnGrouping.js +56 -79
  741. package/modern/hooks/features/columnHeaders/useGridColumnHeaders.js +71 -127
  742. package/modern/hooks/features/columnMenu/useGridColumnMenu.js +10 -16
  743. package/modern/hooks/features/columns/gridColumnsSelector.js +12 -74
  744. package/modern/hooks/features/columns/gridColumnsUtils.js +42 -86
  745. package/modern/hooks/features/columns/index.js +1 -2
  746. package/modern/hooks/features/columns/useGridColumnSpanning.js +13 -17
  747. package/modern/hooks/features/columns/useGridColumns.js +22 -45
  748. package/modern/hooks/features/density/densitySelector.js +1 -3
  749. package/modern/hooks/features/density/useGridDensity.js +12 -44
  750. package/modern/hooks/features/dimensions/index.js +1 -1
  751. package/modern/hooks/features/dimensions/useGridDimensions.js +19 -31
  752. package/modern/hooks/features/{editRows/gridEditRowsSelector.js → editing/gridEditingSelectors.js} +0 -0
  753. package/modern/hooks/features/editing/index.js +1 -0
  754. package/modern/hooks/features/{editRows/useGridCellEditing.new.js → editing/useGridCellEditing.js} +61 -96
  755. package/modern/hooks/features/{editRows/useGridEditing.new.js → editing/useGridEditing.js} +14 -21
  756. package/modern/hooks/features/{editRows/useGridRowEditing.new.js → editing/useGridRowEditing.js} +60 -125
  757. package/modern/hooks/features/events/useGridEvents.js +0 -1
  758. package/modern/hooks/features/export/serializers/csvSerializer.js +2 -11
  759. package/modern/hooks/features/export/useGridCsvExport.js +3 -4
  760. package/modern/hooks/features/export/useGridPrintExport.js +31 -53
  761. package/modern/hooks/features/export/utils.js +0 -4
  762. package/modern/hooks/features/filter/gridFilterSelector.js +19 -35
  763. package/modern/hooks/features/filter/gridFilterUtils.js +34 -73
  764. package/modern/hooks/features/filter/useGridFilter.js +33 -51
  765. package/modern/hooks/features/focus/gridFocusStateSelector.js +7 -1
  766. package/modern/hooks/features/focus/useGridFocus.js +81 -42
  767. package/modern/hooks/features/index.js +2 -2
  768. package/modern/hooks/features/keyboardNavigation/useGridKeyboardNavigation.js +204 -150
  769. package/modern/hooks/features/pagination/gridPaginationSelector.js +11 -17
  770. package/modern/hooks/features/pagination/useGridPage.js +15 -20
  771. package/modern/hooks/features/pagination/useGridPageSize.js +16 -21
  772. package/modern/hooks/features/pagination/useGridPagination.js +1 -3
  773. package/modern/hooks/features/preferencesPanel/gridPreferencePanelsValue.js +0 -2
  774. package/modern/hooks/features/preferencesPanel/useGridPreferencesPanel.js +17 -18
  775. package/modern/hooks/features/rowSelection/gridRowSelectionSelector.js +9 -0
  776. package/modern/hooks/features/rowSelection/index.js +1 -0
  777. package/modern/hooks/features/{selection/useGridSelection.js → rowSelection/useGridRowSelection.js} +94 -116
  778. package/modern/hooks/features/{selection/useGridSelectionPreProcessors.js → rowSelection/useGridRowSelectionPreProcessors.js} +4 -9
  779. package/modern/hooks/features/rows/gridRowsSelector.js +6 -7
  780. package/modern/hooks/features/rows/gridRowsUtils.js +41 -47
  781. package/modern/hooks/features/rows/index.js +1 -1
  782. package/modern/hooks/features/rows/useGridParamsApi.js +5 -42
  783. package/modern/hooks/features/rows/useGridRows.js +52 -71
  784. package/modern/hooks/features/rows/useGridRowsMeta.js +24 -32
  785. package/modern/hooks/features/rows/useGridRowsPreProcessors.js +2 -13
  786. package/modern/hooks/features/scroll/useGridScroll.js +24 -41
  787. package/modern/hooks/features/sorting/gridSortingSelector.js +6 -6
  788. package/modern/hooks/features/sorting/gridSortingUtils.js +2 -30
  789. package/modern/hooks/features/sorting/useGridSorting.js +17 -32
  790. package/modern/hooks/features/statePersistence/useGridStatePersistence.js +1 -1
  791. package/modern/hooks/features/virtualization/useGridVirtualScroller.js +48 -75
  792. package/modern/hooks/utils/index.js +0 -2
  793. package/modern/hooks/utils/useFirstRender.js +0 -1
  794. package/modern/hooks/utils/useGridApiContext.js +0 -2
  795. package/modern/hooks/utils/useGridApiEventHandler.js +8 -17
  796. package/modern/hooks/utils/useGridApiMethod.js +9 -9
  797. package/modern/hooks/utils/useGridApiRef.js +0 -1
  798. package/modern/hooks/utils/useGridInitializeState.js +2 -3
  799. package/modern/hooks/utils/useGridLogger.js +2 -4
  800. package/modern/hooks/utils/useGridNativeEventListener.js +0 -4
  801. package/modern/hooks/utils/useGridPrivateApiContext.js +12 -0
  802. package/modern/hooks/utils/useGridRootProps.js +0 -2
  803. package/modern/hooks/utils/useGridScrollFn.js +2 -3
  804. package/modern/hooks/utils/useGridSelector.js +0 -4
  805. package/modern/hooks/utils/useGridVisibleRows.js +1 -4
  806. package/modern/index.js +1 -1
  807. package/modern/internals/index.js +5 -6
  808. package/modern/lib/createDetectElementResize/index.js +14 -37
  809. package/modern/locales/arSD.js +9 -5
  810. package/modern/locales/bgBG.js +9 -5
  811. package/modern/locales/csCZ.js +11 -10
  812. package/modern/locales/daDK.js +8 -4
  813. package/modern/locales/deDE.js +1 -2
  814. package/modern/locales/elGR.js +16 -4
  815. package/modern/locales/esES.js +16 -4
  816. package/modern/locales/faIR.js +1 -2
  817. package/modern/locales/fiFI.js +3 -4
  818. package/modern/locales/frFR.js +5 -4
  819. package/modern/locales/heIL.js +5 -4
  820. package/modern/locales/huHU.js +8 -4
  821. package/modern/locales/itIT.js +5 -4
  822. package/modern/locales/jaJP.js +7 -4
  823. package/modern/locales/koKR.js +1 -2
  824. package/modern/locales/nbNO.js +5 -4
  825. package/modern/locales/nlNL.js +5 -4
  826. package/modern/locales/plPL.js +5 -4
  827. package/modern/locales/ptBR.js +5 -4
  828. package/modern/locales/roRO.js +5 -4
  829. package/modern/locales/ruRU.js +7 -10
  830. package/modern/locales/skSK.js +5 -10
  831. package/modern/locales/svSE.js +5 -4
  832. package/modern/locales/trTR.js +18 -19
  833. package/modern/locales/ukUA.js +22 -26
  834. package/modern/locales/viVN.js +12 -4
  835. package/modern/locales/zhCN.js +1 -2
  836. package/modern/locales/zhTW.js +5 -4
  837. package/modern/models/api/{gridSelectionApi.js → gridRowSelectionApi.js} +0 -0
  838. package/modern/models/api/index.js +1 -6
  839. package/modern/models/colDef/index.js +2 -1
  840. package/modern/models/gridColumnGrouping.js +1 -0
  841. package/modern/models/gridDensity.js +0 -3
  842. package/modern/models/gridEditRowModel.js +0 -6
  843. package/modern/models/gridFilterItem.js +0 -2
  844. package/modern/models/{gridSelectionModel.js → gridRowSelectionModel.js} +0 -0
  845. package/modern/models/index.js +4 -2
  846. package/modern/models/params/{gridSortModelParams.js → gridColumnGroupHeaderParams.js} +0 -0
  847. package/modern/models/params/gridEditCellParams.js +0 -8
  848. package/modern/models/params/gridRowParams.js +0 -7
  849. package/modern/models/params/index.js +1 -1
  850. package/modern/themeAugmentation/index.js +2 -1
  851. package/modern/utils/EventManager.js +0 -16
  852. package/modern/utils/cleanupTracking/FinalizationRegistryBasedCleanupTracking.js +2 -5
  853. package/modern/utils/cleanupTracking/TimerBasedCleanupTracking.js +0 -7
  854. package/modern/utils/createSelector.js +13 -14
  855. package/modern/utils/domUtils.js +2 -6
  856. package/modern/utils/exportAs.js +11 -7
  857. package/modern/utils/keyboardUtils.js +3 -4
  858. package/modern/utils/utils.js +7 -34
  859. package/modern/utils/warning.js +0 -2
  860. package/node/DataGrid/DataGrid.js +22 -164
  861. package/node/DataGrid/index.js +0 -3
  862. package/node/DataGrid/useDataGridComponent.js +43 -80
  863. package/node/DataGrid/useDataGridProps.js +8 -20
  864. package/node/colDef/gridActionsColDef.js +0 -5
  865. package/node/colDef/gridBooleanColDef.js +0 -9
  866. package/node/colDef/gridBooleanOperators.js +0 -4
  867. package/node/colDef/gridCheckboxSelectionColDef.js +2 -13
  868. package/node/colDef/gridDateColDef.js +2 -13
  869. package/node/colDef/gridDateOperators.js +2 -10
  870. package/node/colDef/gridDefaultColumnTypes.js +0 -9
  871. package/node/colDef/gridNumericColDef.js +0 -7
  872. package/node/colDef/gridNumericOperators.js +2 -30
  873. package/node/colDef/gridSingleSelectColDef.js +0 -6
  874. package/node/colDef/gridSingleSelectOperators.js +0 -17
  875. package/node/colDef/gridStringColDef.js +0 -4
  876. package/node/colDef/gridStringOperators.js +0 -13
  877. package/node/colDef/index.js +0 -26
  878. package/node/components/DataGridColumnHeaders.js +3 -16
  879. package/node/components/DataGridVirtualScroller.js +4 -18
  880. package/node/components/ErrorBoundary.js +4 -15
  881. package/node/components/GridApiContext.js +0 -5
  882. package/node/components/GridAutoSizer.js +18 -45
  883. package/node/components/{ErrorOverlay.js → GridErrorOverlay.js} +8 -22
  884. package/node/components/GridFooter.js +3 -22
  885. package/node/components/GridHeader.js +1 -11
  886. package/node/components/GridLoadingOverlay.js +0 -10
  887. package/node/components/GridNoResultsOverlay.js +0 -9
  888. package/node/components/GridNoRowsOverlay.js +0 -10
  889. package/node/components/GridPagination.js +3 -25
  890. package/node/components/GridRow.js +67 -131
  891. package/node/components/GridRowCount.js +7 -26
  892. package/node/components/GridScrollArea.js +5 -28
  893. package/node/components/GridSelectedRowCount.js +6 -23
  894. package/node/components/base/GridBody.js +10 -27
  895. package/node/components/base/GridErrorHandler.js +7 -26
  896. package/node/components/base/GridFooterPlaceholder.js +1 -14
  897. package/node/components/base/GridHeaderPlaceholder.js +2 -16
  898. package/node/components/base/GridOverlays.js +10 -54
  899. package/node/components/base/index.js +0 -10
  900. package/node/components/cell/GridActionsCell.js +18 -81
  901. package/node/components/cell/GridActionsCellItem.js +6 -22
  902. package/node/components/cell/GridBooleanCell.js +9 -52
  903. package/node/components/cell/GridCell.js +39 -83
  904. package/node/components/cell/GridEditBooleanCell.js +13 -61
  905. package/node/components/cell/GridEditDateCell.js +15 -72
  906. package/node/components/cell/GridEditInputCell.js +17 -72
  907. package/node/components/cell/GridEditSingleSelectCell.js +26 -117
  908. package/node/components/cell/GridSkeletonCell.js +8 -26
  909. package/node/components/cell/index.js +0 -18
  910. package/node/components/columnHeaders/ColumnHeaderMenuIcon.js +2 -15
  911. package/node/components/columnHeaders/GridColumnGroupHeader.js +39 -32
  912. package/node/components/columnHeaders/GridColumnHeaderFilterIconButton.js +3 -28
  913. package/node/components/columnHeaders/GridColumnHeaderItem.js +10 -36
  914. package/node/components/columnHeaders/GridColumnHeaderSeparator.js +7 -26
  915. package/node/components/columnHeaders/GridColumnHeaderSortIcon.js +2 -24
  916. package/node/components/columnHeaders/GridColumnHeaderTitle.js +6 -28
  917. package/node/components/columnHeaders/GridColumnHeaders.js +7 -21
  918. package/node/components/columnHeaders/GridColumnHeadersInner.js +7 -25
  919. package/node/components/columnHeaders/GridColumnUnsortedIcon.js +3 -13
  920. package/node/components/columnHeaders/GridGenericColumnHeaderItem.js +27 -45
  921. package/node/components/columnHeaders/GridIconButtonContainer.js +5 -20
  922. package/node/components/columnHeaders/index.js +0 -10
  923. package/node/components/columnSelection/GridCellCheckboxRenderer.js +23 -72
  924. package/node/components/columnSelection/GridHeaderCheckbox.js +14 -47
  925. package/node/components/columnSelection/index.js +0 -4
  926. package/node/components/containers/GridFooterContainer.js +7 -22
  927. package/node/components/containers/GridMainContainer.js +2 -13
  928. package/node/components/containers/GridOverlay.js +7 -23
  929. package/node/components/containers/GridRoot.js +16 -40
  930. package/node/components/containers/GridRootStyles.js +23 -26
  931. package/node/components/containers/GridToolbarContainer.js +8 -25
  932. package/node/components/containers/index.js +0 -8
  933. package/node/components/icons/index.js +0 -6
  934. package/node/components/index.js +0 -40
  935. package/node/components/menu/GridMenu.js +18 -50
  936. package/node/components/menu/columnMenu/GridColumnHeaderMenu.js +0 -14
  937. package/node/components/menu/columnMenu/GridColumnMenu.js +0 -14
  938. package/node/components/menu/columnMenu/GridColumnMenuContainer.js +8 -23
  939. package/node/components/menu/columnMenu/GridColumnsMenuItem.js +3 -18
  940. package/node/components/menu/columnMenu/GridFilterMenuItem.js +6 -20
  941. package/node/components/menu/columnMenu/HideGridColMenuItem.js +9 -26
  942. package/node/components/menu/columnMenu/SortGridMenuItems.js +4 -20
  943. package/node/components/menu/columnMenu/index.js +0 -18
  944. package/node/components/menu/index.js +0 -4
  945. package/node/components/panel/GridColumnsPanel.js +53 -73
  946. package/node/components/panel/GridPanel.js +11 -32
  947. package/node/components/panel/GridPanelContent.js +5 -23
  948. package/node/components/panel/GridPanelFooter.js +5 -23
  949. package/node/components/panel/GridPanelHeader.js +5 -23
  950. package/node/components/panel/GridPanelWrapper.js +5 -23
  951. package/node/components/panel/GridPreferencesPanel.js +2 -17
  952. package/node/components/panel/filterPanel/GridFilterForm.js +87 -127
  953. package/node/components/panel/filterPanel/GridFilterInputBoolean.js +10 -23
  954. package/node/components/panel/filterPanel/GridFilterInputDate.js +16 -37
  955. package/node/components/panel/filterPanel/GridFilterInputMultipleSingleSelect.js +32 -62
  956. package/node/components/panel/filterPanel/GridFilterInputMultipleValue.js +26 -49
  957. package/node/components/panel/filterPanel/GridFilterInputSingleSelect.js +21 -46
  958. package/node/components/panel/filterPanel/GridFilterInputValue.js +23 -52
  959. package/node/components/panel/filterPanel/GridFilterPanel.js +59 -60
  960. package/node/components/panel/filterPanel/filterPanelUtils.js +0 -4
  961. package/node/components/panel/filterPanel/index.js +0 -16
  962. package/node/components/panel/index.js +0 -16
  963. package/node/components/toolbar/GridToolbar.js +9 -30
  964. package/node/components/toolbar/GridToolbarColumnsButton.js +7 -26
  965. package/node/components/toolbar/GridToolbarDensitySelector.js +12 -45
  966. package/node/components/toolbar/GridToolbarExport.js +24 -42
  967. package/node/components/toolbar/GridToolbarExportContainer.js +11 -39
  968. package/node/components/toolbar/GridToolbarFilterButton.js +15 -55
  969. package/node/components/toolbar/GridToolbarQuickFilter.js +13 -40
  970. package/node/components/toolbar/index.js +0 -13
  971. package/node/components/virtualization/GridVirtualScroller.js +5 -20
  972. package/node/components/virtualization/GridVirtualScrollerContent.js +7 -22
  973. package/node/components/virtualization/GridVirtualScrollerRenderZone.js +5 -20
  974. package/node/constants/defaultGridSlotsComponents.js +3 -19
  975. package/node/constants/envConstants.js +1 -0
  976. package/node/constants/gridClasses.js +3 -6
  977. package/node/constants/index.js +0 -8
  978. package/node/constants/localeTextConstants.js +1 -2
  979. package/node/context/GridContextProvider.js +13 -17
  980. package/node/context/GridRootPropsContext.js +0 -5
  981. package/node/context/index.js +0 -2
  982. package/node/hooks/core/pipeProcessing/index.js +0 -8
  983. package/node/hooks/core/pipeProcessing/useGridPipeProcessing.js +11 -25
  984. package/node/hooks/core/pipeProcessing/useGridRegisterPipeApplier.js +1 -8
  985. package/node/hooks/core/pipeProcessing/useGridRegisterPipeProcessor.js +1 -8
  986. package/node/hooks/core/strategyProcessing/index.js +0 -6
  987. package/node/hooks/core/strategyProcessing/useGridRegisterStrategyProcessor.js +1 -7
  988. package/node/hooks/core/strategyProcessing/useGridStrategyProcessing.js +11 -33
  989. package/node/hooks/core/useGridApiInitialization.js +58 -33
  990. package/node/hooks/core/useGridErrorHandler.js +7 -8
  991. package/node/hooks/core/useGridInitialization.js +8 -17
  992. package/node/hooks/core/useGridLocaleText.js +1 -8
  993. package/node/hooks/core/useGridLoggerFactory.js +5 -16
  994. package/node/hooks/core/useGridStateInitialization.js +15 -34
  995. package/node/hooks/features/clipboard/useGridClipboard.js +7 -20
  996. package/node/hooks/features/columnGrouping/gridColumnGroupsSelector.js +18 -6
  997. package/node/hooks/features/columnGrouping/gridColumnGroupsUtils.js +79 -0
  998. package/node/hooks/features/columnGrouping/index.js +0 -2
  999. package/node/hooks/features/columnGrouping/useGridColumnGrouping.js +57 -108
  1000. package/node/hooks/features/columnHeaders/useGridColumnHeaders.js +70 -174
  1001. package/node/hooks/features/columnMenu/columnMenuSelector.js +0 -2
  1002. package/node/hooks/features/columnMenu/index.js +0 -4
  1003. package/node/hooks/features/columnMenu/useGridColumnMenu.js +10 -28
  1004. package/node/hooks/features/columns/gridColumnsSelector.js +17 -89
  1005. package/node/hooks/features/columns/gridColumnsUtils.js +43 -105
  1006. package/node/hooks/features/columns/index.js +56 -20
  1007. package/node/hooks/features/columns/useGridColumnSpanning.js +14 -26
  1008. package/node/hooks/features/columns/useGridColumns.js +28 -78
  1009. package/node/hooks/features/density/densitySelector.js +2 -9
  1010. package/node/hooks/features/density/index.js +0 -4
  1011. package/node/hooks/features/density/useGridDensity.js +12 -70
  1012. package/node/hooks/features/dimensions/index.js +0 -13
  1013. package/node/hooks/features/dimensions/useGridDimensions.js +22 -50
  1014. package/node/hooks/features/{editRows/gridEditRowsSelector.js → editing/gridEditingSelectors.js} +0 -2
  1015. package/node/hooks/features/{editRows → editing}/index.js +4 -6
  1016. package/node/hooks/features/{editRows/useGridCellEditing.new.js → editing/useGridCellEditing.js} +69 -121
  1017. package/node/hooks/features/{editRows/useGridEditing.new.js → editing/useGridEditing.js} +15 -37
  1018. package/node/hooks/features/{editRows/useGridRowEditing.new.js → editing/useGridRowEditing.js} +69 -143
  1019. package/node/hooks/features/events/useGridEvents.js +0 -2
  1020. package/node/hooks/features/export/serializers/csvSerializer.js +2 -13
  1021. package/node/hooks/features/export/useGridCsvExport.js +7 -25
  1022. package/node/hooks/features/export/useGridPrintExport.js +40 -89
  1023. package/node/hooks/features/export/utils.js +2 -15
  1024. package/node/hooks/features/filter/gridFilterSelector.js +32 -66
  1025. package/node/hooks/features/filter/gridFilterState.js +0 -3
  1026. package/node/hooks/features/filter/gridFilterUtils.js +38 -100
  1027. package/node/hooks/features/filter/index.js +0 -3
  1028. package/node/hooks/features/filter/useGridFilter.js +39 -92
  1029. package/node/hooks/features/focus/gridFocusStateSelector.js +10 -7
  1030. package/node/hooks/features/focus/index.js +0 -4
  1031. package/node/hooks/features/focus/useGridFocus.js +85 -64
  1032. package/node/hooks/features/index.js +8 -36
  1033. package/node/hooks/features/keyboardNavigation/useGridKeyboardNavigation.js +204 -165
  1034. package/node/hooks/features/pagination/gridPaginationSelector.js +10 -21
  1035. package/node/hooks/features/pagination/index.js +0 -2
  1036. package/node/hooks/features/pagination/useGridPage.js +17 -41
  1037. package/node/hooks/features/pagination/useGridPageSize.js +18 -42
  1038. package/node/hooks/features/pagination/useGridPagination.js +5 -17
  1039. package/node/hooks/features/preferencesPanel/gridPreferencePanelSelector.js +0 -2
  1040. package/node/hooks/features/preferencesPanel/gridPreferencePanelsValue.js +0 -1
  1041. package/node/hooks/features/preferencesPanel/index.js +0 -6
  1042. package/node/hooks/features/preferencesPanel/useGridPreferencesPanel.js +22 -44
  1043. package/node/hooks/features/{selection/gridSelectionSelector.js → rowSelection/gridRowSelectionSelector.js} +6 -10
  1044. package/node/hooks/features/rowSelection/index.js +16 -0
  1045. package/node/hooks/features/{selection/useGridSelection.js → rowSelection/useGridRowSelection.js} +102 -151
  1046. package/node/hooks/features/{selection/useGridSelectionPreProcessors.js → rowSelection/useGridRowSelectionPreProcessors.js} +7 -21
  1047. package/node/hooks/features/rows/gridRowsMetaSelector.js +0 -2
  1048. package/node/hooks/features/rows/gridRowsSelector.js +17 -34
  1049. package/node/hooks/features/rows/gridRowsUtils.js +48 -79
  1050. package/node/hooks/features/rows/index.js +0 -13
  1051. package/node/hooks/features/rows/useGridParamsApi.js +5 -50
  1052. package/node/hooks/features/rows/useGridRows.js +54 -96
  1053. package/node/hooks/features/rows/useGridRowsMeta.js +33 -70
  1054. package/node/hooks/features/rows/useGridRowsPreProcessors.js +2 -17
  1055. package/node/hooks/features/scroll/useGridScroll.js +22 -58
  1056. package/node/hooks/features/sorting/gridSortingSelector.js +9 -18
  1057. package/node/hooks/features/sorting/gridSortingUtils.js +2 -47
  1058. package/node/hooks/features/sorting/index.js +0 -3
  1059. package/node/hooks/features/sorting/useGridSorting.js +22 -70
  1060. package/node/hooks/features/statePersistence/useGridStatePersistence.js +1 -7
  1061. package/node/hooks/features/virtualization/useGridVirtualScroller.js +55 -115
  1062. package/node/hooks/index.js +0 -6
  1063. package/node/hooks/utils/index.js +0 -40
  1064. package/node/hooks/utils/useFirstRender.js +0 -6
  1065. package/node/hooks/utils/useGridApiContext.js +0 -7
  1066. package/node/hooks/utils/useGridApiEventHandler.js +13 -40
  1067. package/node/hooks/utils/useGridApiMethod.js +9 -13
  1068. package/node/hooks/utils/useGridApiRef.js +0 -5
  1069. package/node/hooks/utils/useGridInitializeState.js +2 -8
  1070. package/node/hooks/utils/useGridLogger.js +2 -8
  1071. package/node/hooks/utils/useGridNativeEventListener.js +0 -11
  1072. package/node/hooks/utils/useGridPrivateApiContext.js +22 -0
  1073. package/node/hooks/utils/useGridRootProps.js +0 -8
  1074. package/node/hooks/utils/useGridScrollFn.js +3 -11
  1075. package/node/hooks/utils/useGridSelector.js +0 -7
  1076. package/node/hooks/utils/useGridVisibleRows.js +1 -13
  1077. package/node/index.js +1 -22
  1078. package/node/internals/index.js +31 -93
  1079. package/node/lib/createDetectElementResize/index.js +14 -38
  1080. package/node/locales/arSD.js +9 -8
  1081. package/node/locales/bgBG.js +9 -8
  1082. package/node/locales/csCZ.js +11 -13
  1083. package/node/locales/daDK.js +8 -7
  1084. package/node/locales/deDE.js +1 -5
  1085. package/node/locales/elGR.js +16 -6
  1086. package/node/locales/enUS.js +0 -4
  1087. package/node/locales/esES.js +16 -7
  1088. package/node/locales/faIR.js +1 -5
  1089. package/node/locales/fiFI.js +3 -7
  1090. package/node/locales/frFR.js +5 -7
  1091. package/node/locales/heIL.js +5 -7
  1092. package/node/locales/huHU.js +8 -7
  1093. package/node/locales/index.js +0 -58
  1094. package/node/locales/itIT.js +5 -7
  1095. package/node/locales/jaJP.js +7 -7
  1096. package/node/locales/koKR.js +1 -5
  1097. package/node/locales/nbNO.js +5 -7
  1098. package/node/locales/nlNL.js +5 -7
  1099. package/node/locales/plPL.js +5 -7
  1100. package/node/locales/ptBR.js +5 -7
  1101. package/node/locales/roRO.js +5 -7
  1102. package/node/locales/ruRU.js +7 -13
  1103. package/node/locales/skSK.js +5 -13
  1104. package/node/locales/svSE.js +5 -7
  1105. package/node/locales/trTR.js +18 -22
  1106. package/node/locales/ukUA.js +22 -28
  1107. package/node/locales/viVN.js +12 -7
  1108. package/node/locales/zhCN.js +1 -5
  1109. package/node/locales/zhTW.js +5 -7
  1110. package/node/models/api/{gridSelectionApi.js → gridRowSelectionApi.js} +0 -0
  1111. package/node/models/api/index.js +4 -103
  1112. package/node/models/colDef/index.js +0 -6
  1113. package/node/models/events/index.js +0 -6
  1114. package/node/models/gridColumnGrouping.js +1 -1
  1115. package/node/models/gridDensity.js +0 -3
  1116. package/node/models/gridEditRowModel.js +0 -5
  1117. package/node/models/gridFilterItem.js +0 -2
  1118. package/node/models/{gridSelectionModel.js → gridRowSelectionModel.js} +0 -0
  1119. package/node/models/index.js +4 -56
  1120. package/node/models/params/{gridSortModelParams.js → gridColumnGroupHeaderParams.js} +0 -0
  1121. package/node/models/params/gridEditCellParams.js +0 -9
  1122. package/node/models/params/gridRowParams.js +0 -8
  1123. package/node/models/params/index.js +11 -39
  1124. package/node/themeAugmentation/index.js +0 -4
  1125. package/node/utils/EventManager.js +0 -18
  1126. package/node/utils/cleanupTracking/FinalizationRegistryBasedCleanupTracking.js +2 -7
  1127. package/node/utils/cleanupTracking/TimerBasedCleanupTracking.js +0 -9
  1128. package/node/utils/createSelector.js +14 -22
  1129. package/node/utils/domUtils.js +2 -14
  1130. package/node/utils/exportAs.js +11 -8
  1131. package/node/utils/getGridLocalization.js +9 -17
  1132. package/node/utils/keyboardUtils.js +2 -36
  1133. package/node/utils/utils.js +7 -45
  1134. package/node/utils/warning.js +0 -6
  1135. package/package.json +5 -5
  1136. package/themeAugmentation/index.js +2 -1
  1137. package/themeAugmentation/props.d.ts +3 -5
  1138. package/utils/EventManager.d.ts +1 -1
  1139. package/utils/EventManager.js +0 -16
  1140. package/utils/cleanupTracking/CleanupTracking.d.ts +2 -2
  1141. package/utils/cleanupTracking/FinalizationRegistryBasedCleanupTracking.js +2 -5
  1142. package/utils/cleanupTracking/TimerBasedCleanupTracking.js +0 -7
  1143. package/utils/createSelector.d.ts +6 -5
  1144. package/utils/createSelector.js +13 -14
  1145. package/utils/domUtils.js +2 -6
  1146. package/utils/exportAs.js +11 -7
  1147. package/utils/getGridLocalization.js +0 -1
  1148. package/utils/keyboardUtils.js +3 -4
  1149. package/utils/utils.js +7 -34
  1150. package/utils/warning.js +0 -2
  1151. package/components/ErrorOverlay.d.ts +0 -8
  1152. package/hooks/features/columnGrouping/useGridColumnGroupingPreProcessors.d.ts +0 -4
  1153. package/hooks/features/columnGrouping/useGridColumnGroupingPreProcessors.js +0 -35
  1154. package/hooks/features/editRows/index.d.ts +0 -1
  1155. package/hooks/features/editRows/index.js +0 -1
  1156. package/hooks/features/editRows/useGridCellEditing.new.d.ts +0 -4
  1157. package/hooks/features/editRows/useGridCellEditing.old.d.ts +0 -4
  1158. package/hooks/features/editRows/useGridCellEditing.old.js +0 -359
  1159. package/hooks/features/editRows/useGridEditing.old.d.ts +0 -11
  1160. package/hooks/features/editRows/useGridEditing.old.js +0 -167
  1161. package/hooks/features/editRows/useGridRowEditing.new.d.ts +0 -4
  1162. package/hooks/features/editRows/useGridRowEditing.old.d.ts +0 -4
  1163. package/hooks/features/editRows/useGridRowEditing.old.js +0 -334
  1164. package/hooks/features/selection/gridSelectionSelector.js +0 -9
  1165. package/hooks/features/selection/index.d.ts +0 -1
  1166. package/hooks/features/selection/index.js +0 -1
  1167. package/hooks/features/selection/useGridSelection.d.ts +0 -12
  1168. package/hooks/features/selection/useGridSelectionPreProcessors.d.ts +0 -4
  1169. package/hooks/utils/useGridApi.d.ts +0 -6
  1170. package/hooks/utils/useGridApi.js +0 -13
  1171. package/hooks/utils/useGridState.d.ts +0 -7
  1172. package/hooks/utils/useGridState.js +0 -13
  1173. package/legacy/hooks/features/columnGrouping/useGridColumnGroupingPreProcessors.js +0 -35
  1174. package/legacy/hooks/features/editRows/index.js +0 -1
  1175. package/legacy/hooks/features/editRows/useGridCellEditing.old.js +0 -411
  1176. package/legacy/hooks/features/editRows/useGridEditing.old.js +0 -184
  1177. package/legacy/hooks/features/editRows/useGridRowEditing.old.js +0 -505
  1178. package/legacy/hooks/features/selection/gridSelectionSelector.js +0 -19
  1179. package/legacy/hooks/features/selection/index.js +0 -1
  1180. package/legacy/hooks/utils/useGridApi.js +0 -13
  1181. package/legacy/hooks/utils/useGridState.js +0 -13
  1182. package/models/gridSelectionModel.d.ts +0 -3
  1183. package/models/params/gridSortModelParams.d.ts +0 -20
  1184. package/modern/hooks/features/columnGrouping/useGridColumnGroupingPreProcessors.js +0 -29
  1185. package/modern/hooks/features/editRows/index.js +0 -1
  1186. package/modern/hooks/features/editRows/useGridCellEditing.old.js +0 -355
  1187. package/modern/hooks/features/editRows/useGridEditing.old.js +0 -163
  1188. package/modern/hooks/features/editRows/useGridRowEditing.old.js +0 -326
  1189. package/modern/hooks/features/selection/gridSelectionSelector.js +0 -9
  1190. package/modern/hooks/features/selection/index.js +0 -1
  1191. package/modern/hooks/utils/useGridApi.js +0 -13
  1192. package/modern/hooks/utils/useGridState.js +0 -13
  1193. package/node/hooks/features/columnGrouping/useGridColumnGroupingPreProcessors.js +0 -55
  1194. package/node/hooks/features/editRows/useGridCellEditing.old.js +0 -380
  1195. package/node/hooks/features/editRows/useGridEditing.old.js +0 -193
  1196. package/node/hooks/features/editRows/useGridRowEditing.old.js +0 -358
  1197. package/node/hooks/features/selection/index.js +0 -18
  1198. package/node/hooks/utils/useGridApi.js +0 -23
  1199. package/node/hooks/utils/useGridState.js +0 -23
package/CHANGELOG.md CHANGED
@@ -3,6 +3,986 @@
3
3
  All notable changes to this project will be documented in this file.
4
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
5
 
6
+ ## 6.0.0-alpha.11
7
+
8
+ _Dec 8, 2022_
9
+
10
+ We'd like to offer a big thanks to the 7 contributors who made this release possible. Here are some highlights ✨:
11
+
12
+ - 🚀 Add dragging support for the new Date Range Picker (`NextDateRangePicker`) (#6763) @LukasTy
13
+ - ⚡️ Improve performance of the `day` view (#7066) @flaviendelangle
14
+ - ✨ Fix lazy-loading feature not working in `DataGridPremium` (#7124) @m4theushw
15
+ - 🐞 Bugfixes
16
+
17
+ ### `@mui/x-data-grid@v6.0.0-alpha.11` / `@mui/x-data-grid-pro@v6.0.0-alpha.11` / `@mui/x-data-grid-premium@v6.0.0-alpha.11`
18
+
19
+ #### Breaking changes
20
+
21
+ - The `filterPanelOperators` translation key was renamed to `filterPanelOperator` (#7062) @MBilalShafi
22
+ - The `components.Header` slot was removed. Use `components.Toolbar` slot instead (#6999) @cherniavskii
23
+
24
+ #### Changes
25
+
26
+ - [DataGrid] Fix rows not rendering properly after height change (#6892) @MBilalShafi
27
+ - [DataGrid] Remove `Header` slot (#6999) @cherniavskii
28
+ - [DataGrid] Rename `filterPanelOperators` -> `filterPanelOperator` (#7062) @MBilalShafi
29
+ - [DataGridPremium] Add support for lazy-loading (#7124) @m4theushw
30
+ - [DataGridPremium] Pass `groupId` to aggregation function (#7003) @m4theushw
31
+
32
+ ### `@mui/x-date-pickers@v6.0.0-alpha.11` / `@mui/x-date-pickers-pro@v6.0.0-alpha.11`
33
+
34
+ #### Breaking changes
35
+
36
+ - Remove the callback version of the `action` prop on the `actionBar` slot (#7038) @flaviendelangle
37
+
38
+ The `action` prop of the `actionBar` slot is no longer supporting a callback.
39
+ Instead, you can pass a callback at the slot level:
40
+
41
+ ```diff
42
+ <DatePicker
43
+ componentsProps={{
44
+ - actionBar: {
45
+ - actions: (variant) => (variant === 'desktop' ? [] : ['clear']),
46
+ - },
47
+ + actionBar: ({ wrapperVariant }) => ({
48
+ + actions: wrapperVariant === 'desktop' ? [] : ['clear'],
49
+ + }),
50
+ }}
51
+ />
52
+ ```
53
+
54
+ - The `selectedDays` prop has been removed from the `Day` component (#7066) @flaviendelangle
55
+ If you need to access it, you can control the value and pass it to the slot using `componentsProps`:
56
+
57
+ ```tsx
58
+ function CustomDay({ selectedDay, ...other }) {
59
+ // do something with 'selectedDay'
60
+ return <PickersDay {...other} />;
61
+ }
62
+ function App() {
63
+ const [value, setValue] = React.useState(null);
64
+ return (
65
+ <DatePicker
66
+ value={value}
67
+ onChange={(newValue) => setValue(newValue)}
68
+ components={{ Day: CustomDay }}
69
+ componentsProps={{
70
+ day: { selectedDay: value },
71
+ }}
72
+ />
73
+ );
74
+ }
75
+ ```
76
+
77
+ - The `currentlySelectingRangeEnd` / `setCurrentlySelectingRangeEnd` props on the Date Range Picker toolbar have been renamed to `rangePosition` / `onRangePositionChange` (#6989) @flaviendelangle
78
+
79
+ ```diff
80
+ const CustomToolbarComponent = props => (
81
+ <div>
82
+ - <button onChange={() => props.setCurrentlySelectingRangeEnd('end')}>Edit end date</button>
83
+ + <button onClick={() => props.onRangePositionChange('end')}>Edit end date</button>
84
+ - <div>Is editing end date: {props.currentlySelectingRangeEnd === 'end'}</div>
85
+ + <div>Is editing end date: {props.rangePosition === 'end'}</div>
86
+ </div>
87
+ )
88
+ <DateRangePicker
89
+ components={{
90
+ Toolbar: CustomToolbarComponent
91
+ }}
92
+ />
93
+ ```
94
+
95
+ #### Changes
96
+
97
+ - [DateRangePicker] Add dragging support to edit range (#6763) @LukasTy
98
+ - [pickers] Fix lost props on Date Range Pickers (#7092) @flaviendelangle
99
+ - [pickers] Fix toolbar on the new range pickers (#6989) @flaviendelangle
100
+ - [pickers] Improve performance of `DayCalendar` (#7066) @flaviendelangle
101
+ - [pickers] Initialize date without time when selecting year or month (#7120) @LukasTy
102
+ - [pickers] Remove the callback version of the `action` prop in the `actionBar` component slot (#7038) @flaviendelangle
103
+
104
+ ### Docs
105
+
106
+ - [docs] Add `GridCell` change in migration guide (#7087) @MBilalShafi
107
+ - [docs] Fix API page ad space regression (#7051) @oliviertassinari
108
+ - [docs] Update localization doc to use existing locale (#7102) @LukasTy
109
+
110
+ ### Core
111
+
112
+ - [core] Add codemod to move l10n translation (#7027) @alexfauquette
113
+ - [core] Add notes to remove the legacy pickers internals (#7133) @flaviendelangle
114
+ - [core] Remove `internals-fields` imports (#7119) @flaviendelangle
115
+ - [core] Remove unused code (#7094) @flaviendelangle
116
+ - [core] Sync `ApiPage.js` with monorepo (#7073) @oliviertassinari
117
+ - [test] Fix karma-mocha assertion error messages (#7054) @cherniavskii
118
+
119
+ ## 6.0.0-alpha.10
120
+
121
+ _Dec 1, 2022_
122
+
123
+ We'd like to offer a big thanks to the 10 contributors who made this release possible. Here are some highlights ✨:
124
+
125
+ - 🌍 Improve Ukrainian (uk-UA) and add Urdu (ur-PK) locales
126
+ - 📚 Documentation improvements
127
+ - 🐞 Bugfixes
128
+
129
+ ### `@mui/x-data-grid@v6.0.0-alpha.10` / `@mui/x-data-grid-pro@v6.0.0-alpha.10` / `@mui/x-data-grid-premium@v6.0.0-alpha.10`
130
+
131
+ ### Breaking changes
132
+
133
+ - [DataGrid] Removes `GridCell` fallback to `valueToRender` on `null` children (#7023) @MBilalShafi
134
+
135
+ Returning `null` in `column.renderCell` or `column.renderEditCell` now renders an empty cell instead of the default formatted value.
136
+
137
+ - [DataGrid] Refactor `GridFilterItem` props (#6985) @MBilalShafi
138
+
139
+ Properties `columnField` and `operatorValue` of `GridFilterItem` are renamed `field` and `operator`. And `operator` property is now required.
140
+
141
+ ```diff
142
+ filterModel: {
143
+ items: [{
144
+ - columnField: 'rating',
145
+ + field: 'rating',
146
+ - operatorValue: '>',
147
+ + operator: '>', // required
148
+ value: '2.5'
149
+ }],
150
+ },
151
+ ```
152
+
153
+ #### Changes
154
+
155
+ - [DataGrid] Fix row selection when clicking blank cell (#6974) @yami03
156
+ - [DataGrid] Refactor `GridFilterItem` props (#6985) @MBilalShafi
157
+ - [DataGrid] Removes `<GridCell />` fallback to `valueToRender` on `null` children (#7023) @MBilalShafi
158
+ - [DataGridPremium] Fix empty column group in Excel export (#7029) @alexfauquette
159
+ - [DataGridPremium] Update cache before hydrating columns (#7040) @m4theushw
160
+ - [DataGridPremium] Use custom cell component for grouping cell by default (#6692) @cherniavskii
161
+ - [l10n] Improve Ukrainian (uk-UA) locale (#7009) @rettoua
162
+
163
+ ### `@mui/x-date-pickers@v6.0.0-alpha.10` / `@mui/x-date-pickers-pro@v6.0.0-alpha.10`
164
+
165
+ #### Breaking changes
166
+
167
+ - Rename `dateRangeIcon` to `dateIcon` (#7024) @LukasTy
168
+
169
+ The `dateRangeIcon` prop has been renamed to `dateIcon`:
170
+
171
+ ```diff
172
+ // Same on all other Date Time Picker variations
173
+ <DateTimePicker
174
+ componentsProps={{
175
+ tabs: {
176
+ - dateRangeIcon: <LightModeIcon />,
177
+ + dateIcon: <LightModeIcon />,
178
+ }
179
+ }}
180
+ />
181
+ ```
182
+
183
+ #### Changes
184
+
185
+ - [DateTimePicker] Rename `dateRangeIcon` to `dateIcon` (#7024) @LukasTy
186
+ - [pickers] Allow non-controlled usage of `TimeClock` (#6962) @flaviendelangle
187
+ - [pickers] Throw error when using adapter from `@date-io` (#6972) @flaviendelangle
188
+ - [l10n] Add Urdu (ur-PK) locale (#7007) @MBilalShafi
189
+ - [l10n] Improve Ukrainian (uk-UA) locale (#7009) @rettoua
190
+
191
+ ### Docs
192
+
193
+ - [docs] Add Demos section on the pickers API pages (#6909) @flaviendelangle
194
+ - [docs] Add missing pickers migration docs (#7000) @LukasTy
195
+ - [docs] Fix broken link (#7048) @flaviendelangle
196
+ - [docs] Improve demo about customizing pagination (#6724) @m4theushw
197
+ - [docs] Keep track of localization completion (#7002) @alexfauquette
198
+ - [docs] Remove `LocalizationProvider` from previews (#6869) @flaviendelangle
199
+ - [docs] Remove the statement of support to RTL (#6521) @joserodolfofreitas
200
+ - [docs] Rework localization doc pages (#6625) @flaviendelangle
201
+ - [docs] Setup GitHub issue template for feedbacks about docs (#7026) @alexfauquette
202
+ - [docs] Test links with API page ignoring url hash (#7004) @alexfauquette
203
+ - [docs] Update API links from clock-picker to time-clock (#6993) @alexfauquette
204
+ - [docs] Use new pickers on the validation page (#7047) @flaviendelangle
205
+
206
+ ### Core
207
+
208
+ - [core] Remove useless type casting in field hooks (#7045) @flaviendelangle
209
+ - [test] Sync `test:unit` with monorepo (#6907) @oliviertassinari
210
+
211
+ ## 6.0.0-alpha.9
212
+
213
+ _Nov 24, 2022_
214
+
215
+ We'd like to offer a big thanks to the 14 contributors who made this release possible. Here are some highlights ✨:
216
+
217
+ - 🎁 Introduce the v6 pickers, built on top of the field components [DatePicker](https://next.mui.com/x/react-date-pickers/date-picker/), [TimePicker](https://next.mui.com/x/react-date-pickers/time-picker/), [DateTimePicker](https://next.mui.com/x/react-date-pickers/date-time-picker/), [DateRangePicker](https://next.mui.com/x/react-date-pickers/date-range-picker/).
218
+
219
+ The old (legacy) components will be removed at the end of the v6 beta.
220
+
221
+ - 💅 Add support for `theme.vars` in the pickers and the DataGrid (#6784, #6778) @alexfauquette
222
+ - ✨ Improve DataGrid theme augmentation (#5818) @iigrik
223
+ - 📚 Documentation improvements
224
+ - 🐞 Bugfixes
225
+
226
+ ### `@mui/x-data-grid@v6.0.0-alpha.9` / `@mui/x-data-grid-pro@v6.0.0-alpha.9` / `@mui/x-data-grid-premium@v6.0.0-alpha.9`
227
+
228
+ ### Breaking changes
229
+
230
+ - <kbd>Ctrl</kbd> + <kbd>Enter</kbd> will no longer toggle the master detail panel (#6945) @MBilalShafi
231
+ You can restore the old behavior by listening to `cellKeyDown` and calling `apiRef.current.toggleDetailPanel()`.
232
+
233
+ - Remove unnecessary keyboard navigation events (#6863) @m4theushw
234
+ The `cellNavigationKeyDown` event was removed. Use `cellKeyDown` and check the key provided in the event argument.
235
+ The `columnHeaderNavigationKeyDown` event was removed. Use `columnHeaderKeyDown` and check the key provided in the event argument.
236
+
237
+ - Rename `rowsScroll` event to `scrollPositionChange` (#6957) @DanailH
238
+
239
+ #### Changes
240
+
241
+ - [DataGrid] Add spacing in `GridToolbar` for better visibility (#6904) @MBilalShafi
242
+ - [DataGrid] Improve typing for the theme in `styleOverrides` (#5818) @iigrik
243
+ - [DataGrid] Prevents master detail panel toggle with <kbd>Ctrl</kbd> + <kbd>Enter</kbd> (#6945) @MBilalShafi
244
+ - [DataGrid] Remove unnecessary keyboard navigation events (#6863) @m4theushw
245
+ - [DataGrid] Rename `ErrorOverlay` to `GridErrorOverlay` (#6946) @MBilalShafi
246
+ - [DataGrid] Stop exporting root base state selectors (#6912) @DanailH
247
+ - [DataGrid] Support `theme.vars` (#6784) @alexfauquette
248
+ - [DataGrid] Rename `rowsScroll` event to `scrollPositionChange` (#6957) @DanailH
249
+ - [DataGridPro] Fix lazy-loaded rows not working with `updateRows` API method (#6976) @cherniavskii
250
+ - [DataGridPremium] Improve typing for theme in `styleOverrides` (#6920) @m4theushw
251
+ - [l10n] Fix translation of `filterOperatorBefore` in Arabic (ar-SD) locale (#6884) @HassanGhazy
252
+
253
+ ### `@mui/x-date-pickers@v6.0.0-alpha.9` / `@mui/x-date-pickers-pro@v6.0.0-alpha.9`
254
+
255
+ #### Changes
256
+
257
+ - [DatePicker] Display week number (#6144) @alexfauquette
258
+ - [pickers] Clean `PickersCalendarHeader` slots (#6943) @flaviendelangle
259
+ - [pickers] Do not loose the translations when using nested `LocalizationProvider` with each a `localeText` prop (#6895) @flaviendelangle
260
+ - [pickers] Fix calendar header switch view button hover circle (#6938) @rajendraarora16
261
+ - [pickers] Fix focus management (#6914) @alexfauquette
262
+ - [pickers] Fix usage with Shadow DOM (#6952) @flaviendelangle
263
+ - [pickers] New `MobileDateRangePicker`, `DesktopDateRangePicker`, `DateRangePicker` and `StaticDateRangePicker` based on `MultiInputDateRangeField` (#6888) @flaviendelangle
264
+ - [pickers] Support `theme.vars` (#6778) @alexfauquette
265
+
266
+ ### Docs
267
+
268
+ - [docs] Add new "Expired package version" error type (#6937) @oliviertassinari
269
+ - [docs] Add support for API pages of unstable components (#6981) @flaviendelangle
270
+ - [docs] Create docs for the new date pickers (#6902) @flaviendelangle
271
+ - [docs] Create docs for the new time, date time and date range pickers (#6958) @flaviendelangle
272
+ - [docs] Fix demos live edit (#6975) @oliviertassinari
273
+ - [docs] Fix toggle button bug in demos in Custom Components page (#6913) @01zulfi
274
+ - [docs] Remove partial Portuguese and Chinese translations of the pickers pages (#6893) @flaviendelangle
275
+
276
+ ### Core
277
+
278
+ - [core] Cleanup `describeValidation` (#6942) @flaviendelangle
279
+ - [core] Group renovate GitHub Action dependency updates @oliviertassinari
280
+ - [core] Introduce `x-codemod` package (#6876) @LukasTy
281
+ - [core] Update minimum supported version of Node.js to 14.0.0 (#6966) @cherniavskii
282
+ - [core] Upgrade monorepo (#6905) @cherniavskii
283
+ - [core] Upgrade node to v14.21 (#6916) @piwysocki
284
+ - [core] Upgrade ESLint (#6738) @Janpot
285
+ - [test] Test validation on date range view (#6941) @alexfauquette
286
+
287
+ ## 6.0.0-alpha.8
288
+
289
+ _Nov 17, 2022_
290
+
291
+ We'd like to offer a big thanks to the 12 contributors who made this release possible. Here are some highlights ✨:
292
+
293
+ - 🎁 Support aggregating data from multiple row fields (#6656) @cherniavskii
294
+ - 📚 Documentation improvements
295
+ - 🐞 Bugfixes
296
+
297
+ ### `@mui/x-data-grid@v6.0.0-alpha.8` / `@mui/x-data-grid-pro@v6.0.0-alpha.8` / `@mui/x-data-grid-premium@v6.0.0-alpha.8`
298
+
299
+ #### Changes
300
+
301
+ - [DataGrid] Fix `ErrorOverlay` not receiving defined input props (#6819) @banoth-ravinder
302
+ - [DataGrid] Fix conflict with the latest version of `@types/react` (#6797) @vizv
303
+ - [DataGrid] Make more `apiRef` methods private (#6700) @cherniavskii
304
+ - [DataGrid] Provide a clear error message when upgrading (#6685) @oliviertassinari
305
+ - [DataGridPremium] Allow to customize the indent of group expansion toggle (#6837) @MBilalShafi
306
+ - [DataGridPremium] Support aggregating data from multiple row fields (#6656) @cherniavskii
307
+ - [DataGridPro] Fix detail panel not working with `getRowSpacing` prop (#6707) @cherniavskii
308
+ - [DataGridPro] Opt-out for column jump back on re-order (#6733) @gavbrennan
309
+ - [l10n] Improve Finnish (fi-FI) locale (#6859) @RainoPikkarainen
310
+
311
+ ### `@mui/x-date-pickers@v6.0.0-alpha.8` / `@mui/x-date-pickers-pro@v6.0.0-alpha.8`
312
+
313
+ #### Breaking changes
314
+
315
+ - The `ClockPicker` view component has been renamed to `TimeClock` to better fit its usage:
316
+
317
+ ```diff
318
+ -<ClockPicker {...props} />
319
+ +<TimeClock {...props} />
320
+ ```
321
+
322
+ Component name in the theme has changed as well:
323
+
324
+ ```diff
325
+ -MuiClockPicker: {
326
+ +MuiTimeClock: {
327
+ ```
328
+
329
+ #### Changes
330
+
331
+ - [pickers] Fix typing and prop drilling on `DateRangeCalendar` and multi input range fields (#6852) @flaviendelangle
332
+ - [pickers] Pass the `ampm` prop from the new pickers to their field (#6868) @flaviendelangle
333
+ - [pickers] Rename `CalendarPickerView`, `ClockPickerView` and `CalendarOrClockPickerView` (#6855) @flaviendelangle
334
+ - [pickers] Rename `ClockPicker` into `TimeClock` (#6851) @flaviendelangle
335
+
336
+ ### Docs
337
+
338
+ - [docs] Add `dayjs` to the dependencies (#6862) @m4theushw
339
+ - [docs] Clarify how the Row Pinning works with other features of the DataGrid (#6853) @cherniavskii
340
+ - [docs] Fix typo in Export page (#6848) @m4theushw
341
+ - [docs] Group picker pages (#6369) @flaviendelangle
342
+ - [docs] Remove default prop and improve format (#6781) @oliviertassinari
343
+ - [docs] Sync prism-okaidia.css with source (#6820) @oliviertassinari
344
+
345
+ ### Core
346
+
347
+ - [core] Convert scripts to ESM (#6789) @LukasTy
348
+ - [core] Feedback on branch protection @oliviertassinari
349
+ - [core] Fix `test-types` out of memory error (#6850) @LukasTy
350
+ - [core] Import from `@mui/utils` instead of `@mui/material/utils` (#6816) @cherniavskii
351
+ - [core] Show the whole version to make blame easier @oliviertassinari
352
+ - [core] Small changes on new pickers internals (#6840) @flaviendelangle
353
+ - [core] Remove prettier scripts (#6815) @Janpot
354
+ - [license] Polish error messages (#6881) @oliviertassinari
355
+ - [test] Verify `onError` call on the pickers (#6771) @alexfauquette
356
+
357
+ ## 6.0.0-alpha.7
358
+
359
+ _Nov 10, 2022_
360
+
361
+ We'd like to offer a big thanks to the 5 contributors who made this release possible. Here are some highlights ✨:
362
+
363
+ - ⚙️ Removed everything marked as `@deprecated`
364
+ - 📚 Documentation improvements
365
+ - 🐞 Bugfixes
366
+
367
+ ### `@mui/x-data-grid@v6.0.0-alpha.7` / `@mui/x-data-grid-pro@v6.0.0-alpha.7` / `@mui/x-data-grid-premium@v6.0.0-alpha.7`
368
+
369
+ #### Changes
370
+
371
+ - [DataGrid] Fix cell focus causing scroll jump when virtualization enabled (#6785) @yaredtsy
372
+ - [DataGrid] Remove items marked as `@deprecated` (#6505) @DanailH
373
+
374
+ ### `@mui/x-date-pickers@v6.0.0-alpha.7` / `@mui/x-date-pickers-pro@v6.0.0-alpha.7`
375
+
376
+ #### Changes
377
+
378
+ - [fields] Rename section names to match the picker view nomenclature (#6779) @flaviendelangle
379
+ - [pickers] Fix pickers toolbar styling (#6793) @LukasTy
380
+ - [pickers] Improve validation JSDoc descriptions (#6777) @flaviendelangle
381
+ - [pickers] New `MobileDateTimePicker`, `DesktopDateTimePicker`, `DateTimePicker` and `StaticDateTimePicker` based on `DateTimeField` (#6767) @flaviendelangle
382
+ - [pickers] New `MobileTimePicker`, `DesktopTimePicker`, `TimePicker` and `StaticTimePicker` based on `TimeField` (#6728) @flaviendelangle
383
+ - [pickers] Support the `onError` prop and add context on the `onChange` prop (#6731) @flaviendelangle
384
+
385
+ ### Docs
386
+
387
+ - [docs] Add missing Pro header suffix (#6775) @oliviertassinari
388
+ - [docs] Upgrade to Next.js 13 (#6790) @cherniavskii
389
+
390
+ ### Core
391
+
392
+ - [core] Add OSSF Scorecard action (#6760) @oliviertassinari
393
+ - [core] Fix Pinned-Dependencies @oliviertassinari
394
+ - [core] Fix Scorecard fail Action @oliviertassinari
395
+ - [core] Pin GitHub Action dependencies (#6739) @renovate[bot]
396
+ - [core] Remove default access to GitHub action scopes @oliviertassinari
397
+ - [test] Fix test case name: Pro-> Premium @oliviertassinari
398
+
399
+ ## 6.0.0-alpha.6
400
+
401
+ _Nov 4, 2022_
402
+
403
+ We'd like to offer a big thanks to the 8 contributors who made this release possible. Here are some highlights ✨:
404
+
405
+ - 🎁 Allow non-controlled usage of the calendar components (#6643) @flaviendelangle
406
+
407
+ ```tsx
408
+ <DateCalendar defaultValue={dayjs()} />
409
+ <MonthCalendar defaultValue={dayjs()} />
410
+ <YearCalendar defaultValue={dayjs()} />
411
+ ```
412
+
413
+ - 🌍 Add Ukrainian (uk-UA) locale to pickers (#6661) @Dufran
414
+ - 📚 Documentation improvements
415
+ - 🐞 Bugfixes
416
+
417
+ ### `@mui/x-data-grid@v6.0.0-alpha.6` / `@mui/x-data-grid-pro@v6.0.0-alpha.6` / `@mui/x-data-grid-premium@v6.0.0-alpha.6`
418
+
419
+ #### Breaking changes
420
+
421
+ - The `disableIgnoreModificationsIfProcessingProps` prop has been removed and its behavior when `true` was incorporated as the default behavior.
422
+ The old behavior can be restored by using `apiRef.current.stopRowEditMode({ ignoreModifications: true })` or `apiRef.current.stopCellEditMode({ ignoreModifications: true })`.
423
+
424
+ #### Changes
425
+
426
+ - [DataGrid] Add `rowSelection` prop (#6499) @m4theushw
427
+ - [DataGrid] Avoid future regression with React 19 (#6638) @oliviertassinari
428
+ - [DataGrid] Refactor `@mui/material` imports to `@mui/utils` (#6569) @LukasTy
429
+ - [DataGrid] Remove `disableIgnoreModificationsIfProcessingProps` prop (#6640) @m4theushw
430
+ - [DataGrid] Separate private and public `apiRef` properties (#6388) @cherniavskii
431
+
432
+ ### `@mui/x-date-pickers@v6.0.0-alpha.6` / `@mui/x-date-pickers-pro@v6.0.0-alpha.6`
433
+
434
+ #### Changes
435
+
436
+ - [DateRangePicker] Fix input focused style and mobile behaviour (#6645) @LukasTy
437
+ - [fields] Update sections when the locale changes (#6649) @flaviendelangle
438
+ - [pickers] Add Ukrainian (uk-UA) locale (#6661) @Dufran
439
+ - [pickers] Allow non-controlled usage of the calendar components (#6643) @flaviendelangle
440
+ - [pickers] Export other adapters derived from moment or date-fns (#6571) @alexfauquette
441
+ - [pickers] New `MobileDatePicker` and `DatePicker` based on `DateField` (#6690) @flaviendelangle
442
+ - [pickers] New `StaticDatePicker` component (#6708) @flaviendelangle
443
+ - [pickers] Rename `inputFormat` prop to `format` on the new pickers (#6722) @flaviendelangle
444
+
445
+ ### Core
446
+
447
+ - [core] Fix `typescript:ci` failures (#6705) @LukasTy
448
+ - [core] Fixes for upcoming eslint upgrade (#6667) @Janpot
449
+ - [core] Pin GitHub Action to digests (#6683) @oliviertassinari
450
+
451
+ ## 6.0.0-alpha.5
452
+
453
+ _Oct 31, 2022_
454
+
455
+ We'd like to offer a big thanks to the 9 contributors who made this release possible. Here are some highlights ✨:
456
+
457
+ - ⚡ Fix memory leak during unmount of the DataGrid (#6620) @cherniavskii
458
+ - 📝 New guide for migrating pickers from v5 to v6 (#6472) @flaviendelangle
459
+ - 🎁 Allow to disable the autofocus of the search field when opening the column visibility panel (#6444) @e-cloud
460
+ - 🐞 Bugfixes
461
+
462
+ ### `@mui/x-data-grid@v6.0.0-alpha.5` / `@mui/x-data-grid-pro@v6.0.0-alpha.5` / `@mui/x-data-grid-premium@v6.0.0-alpha.5`
463
+
464
+ #### Breaking changes
465
+
466
+ - Stop exporting `gridColumnsSelector` (#6693) @m4theushw
467
+
468
+ The `gridColumnsSelector` was deprecated during v5 and is now removed from the export list.
469
+
470
+ Please consider using one of the following selectors as a replacement:
471
+
472
+ - `gridColumnFieldsSelector`, to obtain the column fields in the order they appear on the screen;
473
+ - `gridColumnLookupSelector`, to access column definitions by field;
474
+ - `gridColumnVisibilityModelSelector`, for the visibility state of each column.
475
+
476
+ #### Changes
477
+
478
+ - [DataGrid] Allow to disable autofocusing the search field in the columns panel (#6444) @e-cloud
479
+ - [DataGrid] Fix `setRows` method not persisting new rows data after `loading` prop change (#6493) @cherniavskii
480
+ - [DataGrid] Fix memory leak on grid unmount (#6620) @cherniavskii
481
+ - [DataGrid] Rename `GridColumnsState['all']` to `GridColumnsState['orderedFields']` (#6562) @DanailH
482
+ - [DataGrid] Remove `React.memo` from `GridCellCheckboxRenderer` (#6655) @mattcorner
483
+ - [DataGrid] Stop exporting `gridColumnsSelector` (#6693)
484
+ - [l10n] Improve Bulgarian (bg-BG) locale (#6578) @AtanasVA
485
+
486
+ ### `@mui/x-date-pickers@v6.0.0-alpha.5` / `@mui/x-date-pickers-pro@v6.0.0-alpha.5`
487
+
488
+ #### Breaking changes
489
+
490
+ - [pickers] Rename remaining `private` components (#6550) @LukasTy
491
+ Previously we had 4 component names with `Private` prefix in order to avoid breaking changes in v5.
492
+ These components were renamed:
493
+
494
+ - `PrivatePickersMonth` -> `MuiPickersMonth`
495
+ - `PrivatePickersSlideTransition` -> `MuiPickersSlideTransition`
496
+ - `PrivatePickersToolbarText` -> `MuiPickersToolbarText`
497
+ - `PrivatePickersYear` -> `MuiPickersYear`
498
+
499
+ Manual style overriding will need to use updated classes:
500
+
501
+ ```diff
502
+ -.PrivatePickersMonth-root {
503
+ +.MuiPickersMonth-root {
504
+
505
+ -.PrivatePickersSlideTransition-root {
506
+ +.MuiPickersSlideTransition-root {
507
+
508
+ -.PrivatePickersToolbarText-root {
509
+ +.MuiPickersToolbarText-root {
510
+
511
+ -.PrivatePickersYear-root {
512
+ +.MuiPickersYear-root {
513
+ ```
514
+
515
+ Component name changes are also reflected in `themeAugmentation`:
516
+
517
+ ```diff
518
+ const theme = createTheme({
519
+ components: {
520
+ - PrivatePickersMonth: {
521
+ + MuiPickersMonth: {
522
+ // overrides
523
+ },
524
+ - PrivatePickersSlideTransition: {
525
+ + MuiPickersSlideTransition: {
526
+ // overrides
527
+ },
528
+ - PrivatePickersToolbarText: {
529
+ + MuiPickersToolbarText: {
530
+ // overrides
531
+ },
532
+ - PrivatePickersYear: {
533
+ + MuiPickersYear: {
534
+ // overrides
535
+ },
536
+ },
537
+ });
538
+ ```
539
+
540
+ #### Changes
541
+
542
+ - [DateTimePicker] Fix toolbar time order when `theme.rtl=true` (#6636) @alexfauquette
543
+ - [pickers] Import fixes for mask editing (#6623) @alexfauquette
544
+ - [pickers] Rename remaining `private` components (#6550) @LukasTy
545
+ - [pickers] New `DesktopDatePicker` based on `DateField` (#6548) @flaviendelangle
546
+
547
+ ### Docs
548
+
549
+ - [docs] Add feedback in next doc (#6591) @alexfauquette
550
+ - [docs] Check link validity in PR (#6497) @alexfauquette
551
+ - [docs] Disable translations (#6560) @cherniavskii
552
+ - [docs] Fix typo in DataGrid demo page (#6632) @banoth-ravinder
553
+ - [docs] New page to migrate pickers from v5 to v6 (#6472) @flaviendelangle
554
+ - [docs] Remove broken welcome page (#6585) @alexfauquette
555
+ - [docs] Mark data grid column group as available (#6660) @alexfauquette
556
+ - [docs] Fix double space @oliviertassinari
557
+
558
+ ### Core
559
+
560
+ - [core] Fix duplicate CodeQL build @oliviertassinari
561
+ - [core] Fix spreading on validation page (#6624) @flaviendelangle
562
+ - [core] Small TypeScript improvements (#6575) @flaviendelangle
563
+ - [core] Upgrade monorepo (#6594) @oliviertassinari
564
+ - [core] Change reproduction position (#6621) @oliviertassinari
565
+ - [core] Fix permissions in `no-response` workflow (#6658) @cherniavskii
566
+ - [core] Remove legacy migration function (#6669) @oliviertassinari
567
+ - [license] Improve the license content (#6459) @oliviertassinari
568
+ - [test] Test Arrow up/down on every token (#6563) @alexfauquette
569
+
570
+ ## 6.0.0-alpha.4
571
+
572
+ _Oct 20, 2022_
573
+
574
+ We'd like to offer a big thanks to the 9 contributors who made this release possible. Here are some highlights ✨:
575
+
576
+ - 📝 Manage pickers' toolbar customization with slots
577
+ - 🐞 Bugfixes
578
+ - 🌍 Improve Turkish (tr-TR) locale on the data grid and pickers (#6542) @ramazansancar
579
+
580
+ ### `@mui/x-data-grid@v6.0.0-alpha.4` / `@mui/x-data-grid-pro@v6.0.0-alpha.4` / `@mui/x-data-grid-premium@v6.0.0-alpha.4`
581
+
582
+ #### Breaking changes
583
+
584
+ - To avoid confusion with the props that will be added for the cell selection feature, some props related to row selection were renamed to have "row" in their name.
585
+ The renamed props are the following:
586
+
587
+ | Old name | New name |
588
+ | -------------------------- | ----------------------------- |
589
+ | `selectionModel` | `rowSelectionModel` |
590
+ | `onSelectionModelChange` | `onRowSelectionModelChange` |
591
+ | `disableSelectionOnClick` | `disableRowSelectionOnClick` |
592
+ | `disableMultipleSelection` | `disableMultipleRowSelection` |
593
+
594
+ - The `gridSelectionStateSelector` selector was renamed to `gridRowSelectionStateSelector`.
595
+
596
+ - The `selectionChange` event was renamed to `rowSelectionChange`.
597
+
598
+ #### Changes
599
+
600
+ - [DataGrid] Add `searchPredicate` prop to `GridColumnsPanel` component (#6557) @cherniavskii
601
+ - [DataGrid] Support keyboard navigation in column group header (#5947) @alexfauquette
602
+ - [DataGrid] Fix grid not updating state on `rowCount` prop change (#5982) @cherniavskii
603
+ - [DataGrid] Rename selection props (#6556) @m4theushw
604
+ - [l10n] Improve Turkish (tr-TR) locale on the data grid and pickers (#6542) @ramazansancar
605
+
606
+ ### `@mui/x-date-pickers@v6.0.0-alpha.4` / `@mui/x-date-pickers-pro@v6.0.0-alpha.4`
607
+
608
+ #### Breaking changes
609
+
610
+ - The `ToolbarComponent` has been replaced by a `Toolbar` component slot.
611
+ You can find more information about this pattern in the [MUI Base documentation](https://mui.com/base/getting-started/usage/#shared-props):
612
+
613
+ ```diff
614
+ // Same on all other pickers
615
+ <DatePicker
616
+ - ToolbarComponent: MyToolbar,
617
+ + components={{ Toolbar: MyToolbar }}
618
+ />
619
+ ```
620
+
621
+ - The `toolbarPlaceholder` and `toolbarFormat` props have been moved to the `toolbar` components props slot:
622
+
623
+ ```diff
624
+ // Same on all other pickers
625
+ <DatePicker
626
+ - toolbarPlaceholder="__"
627
+ - toolbarFormat="DD / MM / YYYY"
628
+ + componentsProps={{
629
+ + toolbar: {
630
+ + toolbarPlaceholder: '__',
631
+ + toolbarFormat: 'DD / MM / YYYY',
632
+ + }
633
+ + }}
634
+ />
635
+ ```
636
+
637
+ - The `toolbarTitle` prop has been moved to the localization object:
638
+
639
+ ```diff
640
+ // Same on all other pickers
641
+ <DatePicker
642
+ - toolbarTitle="Title"
643
+ + localeText={{ toolbarTitle: 'Title' }}
644
+ />
645
+ ```
646
+
647
+ - The toolbar related translation keys have been renamed to better fit their usage:
648
+
649
+ ```diff
650
+ // Same on all other pickers
651
+ <DatePicker
652
+ localeText={{
653
+ - datePickerDefaultToolbarTitle: 'Date Picker',
654
+ + datePickerToolbarTitle: 'Date Picker',
655
+
656
+ - timePickerDefaultToolbarTitle: 'Time Picker',
657
+ + timePickerToolbarTitle: 'Time Picker',
658
+
659
+ - dateTimePickerDefaultToolbarTitle: 'Date Time Picker',
660
+ + dateTimePickerToolbarTitle: 'Date Time Picker',
661
+
662
+ - dateRangePickerDefaultToolbarTitle: 'Date Range Picker',
663
+ + dateRangePickerToolbarTitle: 'Date Range Picker',
664
+ }}
665
+ />
666
+ ```
667
+
668
+ - The `onChange` / `openView` props on the toolbar have been renamed `onViewChange` / `view`
669
+
670
+ #### Changes
671
+
672
+ - [fields] Add a `validationError` property to the `onChange` callback (#6539) @flaviendelangle
673
+ - [fields] Distinguish start and end input error on multi input fields (#6503) @flaviendelangle
674
+ - [pickers] Clean the `Tabs` component slot (#6543) @flaviendelangle
675
+ - [pickers] Fix localization of the placeholder (#6547) @alexfauquette
676
+ - [pickers] Fix TypeScript issues (#6322) @flaviendelangle
677
+ - [pickers] Improve error consistency between single and multiple range pickers (#6561) @alexfauquette
678
+ - [pickers] Refactor `@mui/material` imports to `@mui/utils` (#6443) @LukasTy
679
+ - [pickers] Replace toolbar's props by a component slot (#6445) @flaviendelangle
680
+
681
+ ### Docs
682
+
683
+ - [docs] Enable inlined preview for disabled date picker (#6477) @oliviertassinari
684
+ - [docs] Fix 404 errors (#6541) @alexfauquette
685
+ - [docs] Fix broken links on field pages (#6501) @flaviendelangle
686
+ - [docs] Improve markdownlint (#6518) @oliviertassinari
687
+
688
+ ### Core
689
+
690
+ - [core] Run CodeQL only on schedule @oliviertassinari
691
+ - [core] Fix trailing spaces and git diff format (#6523) @oliviertassinari
692
+ - [core] Harden GitHub Actions permissions (#6396) @step-security-bot
693
+ - [core] Improve the playground DX (#6514) @oliviertassinari
694
+ - [core] Link Netlify in the danger comment (#6513) @oliviertassinari
695
+ - [core] Organize tests for pickers slots (#6546) @flaviendelangle
696
+ - [core] Remove outdated `docsearch.js` dependency (#6242) @oliviertassinari
697
+ - [core] Upgrade monorepo (#6549) @cherniavskii
698
+ - [test] Add validation test on range pickers (#6504) @alexfauquette
699
+ - [test] Remove BrowserStack (#6263) @DanailH
700
+
701
+ ## 6.0.0-alpha.3
702
+
703
+ _Oct 13, 2022_
704
+
705
+ We'd like to offer a big thanks to the 8 contributors who made this release possible. Here are some highlights ✨:
706
+
707
+ - ⌚️ New components to edit date and time with <kbd>keyboard</kbd>—without using any modal or dropdown UI.
708
+ Please check out our [documentation](https://next.mui.com/x/react-date-pickers/fields/) to discover those new components.
709
+
710
+ - [`DateField`](https://next.mui.com/x/react-date-pickers/date-field/) to edit date
711
+ - [`TimeField`](https://next.mui.com/x/react-date-pickers/time-field/) to edit time
712
+ - [`DateTimeField`](https://next.mui.com/x/react-date-pickers/date-time-field/) to edit date and time
713
+ - [`MultiInputDateRangeField` / `SingleInputDateRangeField`](https://next.mui.com/x/react-date-pickers/date-range-field/) to edit date range
714
+ - [`MultiInputTimeRangeField`](https://next.mui.com/x/react-date-pickers/time-range-field/) to edit time range with two inputs
715
+ - [`MultiInputDateTimeRangeField`](https://next.mui.com/x/react-date-pickers/date-time-range-field/) to edit date and time range with two inputs
716
+
717
+ ⚠️ These components are unstable.
718
+ They might receive breaking changes on their props to have the best components possible by the time of the stable release.
719
+
720
+ - 📝 Allow to limit to one filter per column for `DataGridPro` and `DataGridPremium` (#6333) @MBilalShafi
721
+ - 📚 New [page describing the validation props on each picker](https://next.mui.com/x/react-date-pickers/validation/) (#6064) @flaviendelangle
722
+ - 📚 Documentation improvements
723
+ - 🐞 Bugfixes
724
+
725
+ ### `@mui/x-data-grid@v6.0.0-alpha.3` / `@mui/x-data-grid-pro@v6.0.0-alpha.3` / `@mui/x-data-grid-premium@v6.0.0-alpha.3`
726
+
727
+ #### Breaking changes
728
+
729
+ - [DataGrid] Remove legacy editing API
730
+
731
+ The editing API that is enabled by default was replaced with a new API that contains better support for server-side persistence, validation and customization. This new editing feature was already available in v5 under the `newEditingApi` experimental flag. In v6, this flag can be removed.
732
+
733
+ ```diff
734
+ <DataGrid
735
+ - experimentalFeatures={{ newEditingApi: true }}
736
+ />
737
+ ```
738
+
739
+ For users that didn't migrate to the new editing API in v5, additional work may be needed because the new API is not equivalent to the legacy API. Although, some migration steps are available to help in this task.
740
+
741
+ - The `editCellPropsChange` event was removed. If you still need it please file a new issue so we can propose an alternative.
742
+ - The `cellEditCommit` event was removed and the `processRowUpdate` prop can be used in place. More information, check the [docs](https://next.mui.com/x/react-data-grid/editing/#persistence) section about the topic.
743
+ - The `editRowsModel` and `onEditRowsModelChange` props were removed. The [`cellModesModel`](https://next.mui.com/x/react-data-grid/editing/#controlled-mode) or [`rowModesModel`](https://next.mui.com/x/react-data-grid/editing/#controlled-mode) props can be used to achieve the same goal.
744
+ - The following API methods were removed:
745
+ - Use `apiRef.current.stopCellEditMode` to replace `apiRef.current.commitCellChange`
746
+ - Use `apiRef.current.startCellEditMode` to replace `apiRef.current.setCellMode(id, field, 'edit')`
747
+ - Use `apiRef.current.stopRowEditMode` to replace `apiRef.current.commitRowChange`
748
+ - Use `apiRef.current.startRowMode` to replace `apiRef.current.setRowMode(id, 'edit')`
749
+ - Use the [`cellModesModel`](https://next.mui.com/x/react-data-grid/editing/#controlled-mode) or [`rowModesModel`](https://next.mui.com/x/react-data-grid/editing/#controlled-mode) props to replace `apiRef.current.setEditRowsModel`
750
+
751
+ #### Changes
752
+
753
+ - [DataGrid] Fix start edit mode with printable character in React 18 (#6257) @m4theushw
754
+ - [DataGrid] Remove legacy editing API (#6016) @m4theushw
755
+ - [DataGrid] Simplify `useGridApiContext` and `useGridApiRef` type overrides (#6423) @cherniavskii
756
+ - [DataGrid] Use generics instead of verbose state overrides (#6409) @cherniavskii
757
+ - [DataGridPro] Allow to limit to one filter per column (#6333) @MBilalShafi
758
+
759
+ ### `@mui/x-date-pickers@v6.0.0-alpha.3` / `@mui/x-date-pickers-pro@v6.0.0-alpha.3`
760
+
761
+ #### Breaking changes
762
+
763
+ - All the props used by the mobile and desktop wrappers to override components or components' props have been replaced by component slots. You can find more information about this pattern in the [MUI Base documentation](https://mui.com/base/getting-started/usage/#shared-props).
764
+
765
+ Some of the names have also been prefixed by `desktop` when it was unclear that the behavior was only applied on the desktop version of the pickers (or the responsive version when used on a desktop).
766
+
767
+ The `DialogProps` prop has been replaced by a `dialog` component props slot on responsive and mobile pickers:
768
+
769
+ ```diff
770
+ // Same on MobileDatePicker, DateTimePicker, MobileDateTimePicker,
771
+ // TimePicker, MobileTimePicker, DateRangePicker and MobileDateRangePicker.
772
+ <DatePicker
773
+ - DialogProps={{ backgroundColor: 'red' }}
774
+ + componentsProps={{ dialog: { backgroundColor: 'red }}}
775
+ />
776
+ ```
777
+
778
+ The `PaperProps` prop has been replaced by a `desktopPaper` component props slot on all responsive and desktop pickers:
779
+
780
+ ```diff
781
+ // Same on DesktopDatePicker, DateTimePicker, DesktopDateTimePicker,
782
+ // TimePicker, DesktopTimePicker, DateRangePicker and DesktopDateRangePicker.
783
+ <DatePicker
784
+ - PaperProps={{ backgroundColor: 'red' }}
785
+ + componentsProps={{ desktopPaper: { backgroundColor: 'red }}}
786
+ />
787
+ ```
788
+
789
+ The `PopperProps` prop has been replaced by a `popper` component props slot on all responsive and desktop pickers:
790
+
791
+ ```diff
792
+ // Same on DesktopDatePicker, DateTimePicker, DesktopDateTimePicker,
793
+ // TimePicker, DesktopTimePicker, DateRangePicker and DesktopDateRangePicker.
794
+ <DatePicker
795
+ - PopperProps={{ onClick: handleClick }}
796
+ + componentsProps={{ popper: { onClick: handleClick }}}
797
+ />
798
+ ```
799
+
800
+ The `TransitionComponent` prop has been replaced by a `DesktopTransition` component slot on all responsive and desktop pickers:
801
+
802
+ ```diff
803
+ // Same on DesktopDatePicker, DateTimePicker, DesktopDateTimePicker,
804
+ // TimePicker, DesktopTimePicker, DateRangePicker and DesktopDateRangePicker.
805
+ <DatePicker
806
+ - TransitionComponent={Fade}
807
+ + components={{ DesktopTransition: Fade }}
808
+ />
809
+ ```
810
+
811
+ The `TrapFocusProps` prop has been replaced by a `desktopTrapFocus` component props slot on all responsive and desktop pickers:
812
+
813
+ ```diff
814
+ // Same on DesktopDatePicker, DateTimePicker, DesktopDateTimePicker,
815
+ // TimePicker, DesktopTimePicker, DateRangePicker and DesktopDateRangePicker.
816
+ <DatePicker
817
+ - TrapFocusProps={{ isEnabled: () => false }}
818
+ + componentsProps={{ desktopTrapFocus: { isEnabled: () => false }}}
819
+ />
820
+ ```
821
+
822
+ - The view components allowing to pick a date or parts of a date without an input have been renamed to better fit their usage:
823
+
824
+ ```diff
825
+ -<CalendarPicker {...props} />
826
+ +<DateCalendar {...props} />
827
+ ```
828
+
829
+ ```diff
830
+ -<DayPicker {...props} />
831
+ +<DayCalendar {...props} />
832
+ ```
833
+
834
+ ```diff
835
+ -<CalendarPickerSkeleton {...props} />
836
+ +<DayCalendarSkeleton {...props} />
837
+ ```
838
+
839
+ ```diff
840
+ -<MonthPicker {...props} />
841
+ +<MonthCalendar {...props} />
842
+ ```
843
+
844
+ ```diff
845
+ -<YearPicker {...props} />
846
+ +<YearCalendar {...props} />
847
+ ```
848
+
849
+ - Component names in the theme have changed as well:
850
+
851
+ ```diff
852
+ -MuiCalendarPicker: {
853
+ +MuiDateCalendar: {
854
+ ```
855
+
856
+ ```diff
857
+ -MuiDayPicker: {
858
+ +MuiDayCalendar: {
859
+ ```
860
+
861
+ ```diff
862
+ -MuiCalendarPickerSkeleton: {
863
+ +MuiDayCalendarSkeleton: {
864
+ ```
865
+
866
+ ```diff
867
+ -MuiMonthPicker: {
868
+ +MuiMonthCalendar: {
869
+ ```
870
+
871
+ ```diff
872
+ -MuiYearPicker: {
873
+ +MuiYearCalendar: {
874
+ ```
875
+
876
+ #### Changes
877
+
878
+ - [DatePicker] Allows to fix the number of week displayed (#6299) @alexfauquette
879
+ - [DateRangePicker] Fix calendar day outside of month layout shifting on hover (#6448) @alexfauquette
880
+ - [fields] New components: `MultiInputDateTimeRangePicker` and `MultiInputTimeRangePicker` (#6392) @alexfauquette
881
+ - [fields] Prepare the field exports for the public release (#6467) @flaviendelangle
882
+ - [fields] Support paste in single section (#6422) @alexfauquette
883
+ - [pickers] Add field placeholders to the locale (#6337) @flaviendelangle
884
+ - [pickers] Do not use `Partial` for `components` and `componentsProps` props (#6463) @flaviendelangle
885
+ - [pickers] New component: `DateRangeCalendar` (#6416) @flaviendelangle
886
+ - [pickers] Replace the `Picker` prefix in the view component by `Calendar` (eg: `MonthPicker` => `MonthCalendar`) (#6389) @flaviendelangle
887
+ - [pickers] Support pasting on fields (#6364) @flaviendelangle
888
+ - [pickers] Use slots in the mobile and desktop wrappers instead of `XXXComponent` and `XXXProps` (#6381) @flaviendelangle
889
+
890
+ ### Docs
891
+
892
+ - [docs] Add migration to DataGrid v6 page (#6235) @m4theushw
893
+ - [docs] Create first publishable version of the field doc (#6323) @flaviendelangle
894
+ - [docs] Fix trailing spaces in the readme @oliviertassinari
895
+ - [docs] New page for the pickers: Validation (#6064) @flaviendelangle
896
+ - [docs] Organize migration pages (#6480) @flaviendelangle
897
+
898
+ ### Core
899
+
900
+ - [core] Add CodeQL workflow (#6387) @DanailH
901
+ - [core] Add missing breaking change to the changelog (#6471) @flaviendelangle
902
+ - [core] Fix playground structure (#6466) @LukasTy
903
+ - [core] Fix tests for pasting on fields (#6465) @flaviendelangle
904
+ - [core] Remove absolute link (#6420) @flaviendelangle
905
+ - [core] Remove unused `react-text-mask` package (#6408) @LukasTy
906
+ - [core] Send explicit warning when dayjs locale is not found (#6424) @alexfauquette
907
+ - [core] Test validation on textfield and date views (#6265) @alexfauquette
908
+ - [test] Sync comment with monorepo @oliviertassinari
909
+
910
+ ## 6.0.0-alpha.2
911
+
912
+ _Oct 7, 2022_
913
+
914
+ We'd like to offer a big thanks to the 10 contributors who made this release possible. Here are some highlights ✨:
915
+
916
+ - 🚀 Further progress on stabilizing new date field components
917
+ - 🎁 Improve support for theme augmentation in the DataGrid (#6269) @cherniavskii
918
+ - 🌍 Add Japanese (ja-JP) locale to pickers (#6365) @sho918
919
+ - 📚 Documentation improvements
920
+ - 🐞 Bugfixes
921
+
922
+ ### `@mui/x-data-grid@v6.0.0-alpha.2` / `@mui/x-data-grid-pro@v6.0.0-alpha.2` / `@mui/x-data-grid-premium@v6.0.0-alpha.2`
923
+
924
+ #### Breaking changes
925
+
926
+ - 🎁 The aggregation is no longer experimental.
927
+
928
+ You can now use the aggregation without the `experimentalFeatures.aggregation` flag enabled.
929
+
930
+ ```diff
931
+ <DataGridPremium
932
+ - experimentalFeatures={{ aggregation: true }}
933
+ />
934
+ ```
935
+
936
+ The aggregation of the columns through the column menu is now enabled by default on `DataGridPremium`. You can set `disableAggregation={true}` to disable it.
937
+
938
+ #### Changes
939
+
940
+ - [DataGrid] Add filter item ID to `.MuiDataGrid-filterForm` (#6313) @m4theushw
941
+ - [DataGrid] Add missing `valueOptions` (#6401) @DanailH
942
+ - [DataGrid] Don't start edit mode when pressing Shift + Space (#6228) @m4theushw
943
+ - [DataGrid] Fix error when using column grouping with all columns hidden (#6405) @alexfauquette
944
+ - [DataGrid] Pass generics to the components in the theme augmentation (#6269) @cherniavskii
945
+ - [DataGridPremium] Remove the aggregation from the experimental features (#6372) @flaviendelangle
946
+
947
+ ### `@mui/x-date-pickers@v6.0.0-alpha.2` / `@mui/x-date-pickers-pro@v6.0.0-alpha.2`
948
+
949
+ #### Breaking changes
950
+
951
+ - The `renderDay` prop has been replaced by a `Day` component slot.
952
+ You can find more information about this pattern in the [MUI Base documentation](https://mui.com/base/getting-started/usage/#shared-props).
953
+
954
+ ```diff
955
+ // Same for any other date, date time or date range picker.
956
+ <DatePicker
957
+ - renderDay={(_, dayProps) => <CustomDay {...dayProps} />}
958
+ + components={{ Day: CustomDay }}
959
+ />
960
+ ```
961
+
962
+ #### Changes
963
+
964
+ - [DateRangePicker] Fix the shape of the first selected day when the start date has an hour set (#6403) @flaviendelangle
965
+ - [l10n] Add Japanese (ja-JP) locale to pickers (#6365) @sho918
966
+ - [DateRangePicker] Force focus to stay on inputs (#6324) @alexfauquette
967
+ - [pickers] Improve edition on field components (#6339) @flaviendelangle
968
+ - [pickers] Improve field selection behaviors (#6317) @flaviendelangle
969
+ - [pickers] Replace the `renderDay` prop with a `Day` component slot (#6293) @flaviendelangle
970
+
971
+ ### Docs
972
+
973
+ - [docs] Apply style guide to Data Grid Aggregation page (#5781) @samuelsycamore
974
+ - [docs] Fix code examples of editing cells (#6004) @TiagoPortfolio
975
+ - [docs] Fix customized day rendering demo style (#6342) (#6399) @Ambrish-git
976
+ - [docs] Implement Style Guide on "Advanced" Data Grid doc pages (#6331) @samuelsycamore
977
+ - [docs] Use components instead of demos for `SelectorsDocs` (#6103) @flaviendelangle
978
+ - [license] Add new license status 'Out of scope' (#5260) @flaviendelangle
979
+
980
+ ### Core
981
+
982
+ - [core] Speedup of yarn install in the CI (#6395) @oliviertassinari
983
+ - [test] Remove redundant test clean-ups (#6377) @oliviertassinari
984
+ - [test] Replace `React.render` with `React.createRoot` in e2e tests (#6393) @m4theushw
985
+
6
986
  ## 6.0.0-alpha.1
7
987
 
8
988
  _Sep 29, 2022_
@@ -38,7 +1018,7 @@ We'd like to offer a big thanks to the 8 contributors who made this release poss
38
1018
  Here is an example of the old and new approach showing how to apply a custom value formatter in groups for the grouping column:
39
1019
 
40
1020
  ```diff
41
- <DataGridPremium
1021
+ <DataGridPremium
42
1022
  groupingColDef={() => ({
43
1023
  valueFormatter: (params) => {
44
1024
  if (params.id == null) {
@@ -79,9 +1059,8 @@ We'd like to offer a big thanks to the 8 contributors who made this release poss
79
1059
 
80
1060
  #### Breaking changes
81
1061
 
82
- - [pickers] Do not support unparsed date formats anymore (#6170) @flaviendelangle
1062
+ - The `value` prop of the pickers now expects a parsed value.
83
1063
 
84
- The `value` prop of the pickers now expects a parsed value.
85
1064
  Until now, it was possible to provide any format that your date management library was able to parse.
86
1065
  For instance, you could pass `value={new Date()}` when using `AdapterDayjs`.
87
1066
 
@@ -91,19 +1070,19 @@ We'd like to offer a big thanks to the 8 contributors who made this release poss
91
1070
 
92
1071
  ```tsx
93
1072
  // Date-fns
94
- <DatePicker value={new Date()} />
1073
+ <DatePicker value={new Date()} />;
95
1074
 
96
1075
  // Dayjs
97
- import dayjs from 'dayjs'
98
- <DatePicker value={dayjs()} />
1076
+ import dayjs from 'dayjs';
1077
+ <DatePicker value={dayjs()} />;
99
1078
 
100
1079
  // Moment
101
- import moment from 'moment'
102
- <DatePicker value={moment()} />
1080
+ import moment from 'moment';
1081
+ <DatePicker value={moment()} />;
103
1082
 
104
1083
  // Luxon
105
- import { DateTime } from 'luxon'
106
- <DatePicker value={DateTime.now()} />
1084
+ import { DateTime } from 'luxon';
1085
+ <DatePicker value={DateTime.now()} />;
107
1086
  ```
108
1087
 
109
1088
  #### Changes
@@ -116,7 +1095,7 @@ We'd like to offer a big thanks to the 8 contributors who made this release poss
116
1095
  - [pickers] Allow to control the selected sections (#6209, #6307) @flaviendelangle
117
1096
  - [pickers] Do not loose the value of date sections not present in the format in the new field components (#6141) @flaviendelangle
118
1097
  - [pickers] Do not support unparsed date formats anymore (#6170) @flaviendelangle
119
- - [pickers] Support slots on the `DateField` component (#6048) @flaviendelangle
1098
+ - [pickers] Support slots on the `DateField` component (#6048) @flaviendelangle
120
1099
  - [pickers] Support Luxon v3 in `AdapterLuxon` (#6069) @alexfauquette
121
1100
  - [pickers] New components `TimeField` and `DateTimeField` (#6312) @flaviendelangle
122
1101
  - [pickers] Support basic mobile edition on new field components (#5958) @flaviendelangle
@@ -155,17 +1134,17 @@ We'd like to offer a big thanks to the 12 contributors who made this release pos
155
1134
  - The deprecated `hide` column property has been removed in favor of the `columnVisibilityModel` prop and initial state.
156
1135
 
157
1136
  ```diff
158
- <DataGrid
159
- columns={[
160
- field: 'id,
161
- - hide: true,
162
- ]}
1137
+ <DataGrid
1138
+ columns={[
1139
+ field: 'id,
1140
+ - hide: true,
1141
+ ]}
163
1142
  + initialState={{
164
1143
  + columns: {
165
1144
  + columnVisibilityModel: { id: false },
166
- + }
1145
+ + },
167
1146
  + }}
168
- />
1147
+ />
169
1148
  ```
170
1149
 
171
1150
  You can find more information about this new API on our [documentation](https://next.mui.com/x/react-data-grid/column-visibility/).
@@ -173,8 +1152,8 @@ We'd like to offer a big thanks to the 12 contributors who made this release pos
173
1152
  - The `GridEvents` enum is now a TypeScript type.
174
1153
 
175
1154
  ```diff
176
- - apiRef.current.subscribeEvent(GridEvents.rowClick', handleRowClick)
177
- + apiRef.current.subscribeEvent('rowClick', handleRowClick)
1155
+ -apiRef.current.subscribeEvent(GridEvents.rowClick', handleRowClick);
1156
+ +apiRef.current.subscribeEvent('rowClick', handleRowClick);
178
1157
  ```
179
1158
 
180
1159
  #### Changes
@@ -194,7 +1173,7 @@ We'd like to offer a big thanks to the 12 contributors who made this release pos
194
1173
  You can now use the `localText` prop available on all picker components:
195
1174
 
196
1175
  | Removed prop | Property in the new `localText` prop |
197
- |------------------------------|-----------------------------------------------------------------------------------|
1176
+ | ---------------------------- | --------------------------------------------------------------------------------- |
198
1177
  | `endText` | `end` |
199
1178
  | `getClockLabelText` | `clockLabelText` |
200
1179
  | `getHoursClockNumberText` | `hoursClockNumberText` |
@@ -208,54 +1187,65 @@ We'd like to offer a big thanks to the 12 contributors who made this release pos
208
1187
  For instance if you want to replace the `startText` / `endText`
209
1188
 
210
1189
  ```diff
211
- <DateRangePicker
1190
+ <DateRangePicker
212
1191
  - startText="From"
213
1192
  - endText="To"
214
1193
  + localeText={{
215
1194
  + start: 'From',
216
1195
  + end: 'To',
217
1196
  + }}
218
- />
1197
+ />
219
1198
  ```
220
1199
 
221
1200
  You can find more information about the new api, including how to set those translations on all your components at once in the [documentation](https://next.mui.com/x/react-date-pickers/localization/)
222
1201
 
223
- - The component slots `LeftArrowButton` and `RightArrowButton` have been renamed `PreviousIconButton` and `NextIconButton` to better describe there usage:
1202
+ - The deprecated `locale` prop of the `LocalizationProvider` component have been renamed `adapterLocale`:
224
1203
 
225
1204
  ```diff
226
- <DatePicker
227
- components={{
228
- - LeftArrowButton: CustomButton,
229
- + PreviousIconButton: CustomButton,
1205
+ <LocalizationProvider
1206
+ dateAdapter={AdapterDayjs}
1207
+ - locale="fr"
1208
+ + adapterLocale="fr"
1209
+ >
1210
+ {children}
1211
+ </LocalizationProvider>
1212
+ ```
230
1213
 
231
- - RightArrowButton: CustomButton,
232
- + NextIconButton: CustomButton,
233
- }}
1214
+ - The component slots `LeftArrowButton` and `RightArrowButton` have been renamed `PreviousIconButton` and `NextIconButton` to better describe there usage:
234
1215
 
235
- componentsProps={{
236
- - leftArrowButton: {},
237
- + previousIconButton: {},
1216
+ ```diff
1217
+ <DatePicker
1218
+ components={{
1219
+ - LeftArrowButton: CustomButton,
1220
+ + PreviousIconButton: CustomButton,
238
1221
 
239
- - rightArrowButton: {},
240
- + nextIconButton: {},
241
- }}
242
- />
1222
+ - RightArrowButton: CustomButton,
1223
+ + NextIconButton: CustomButton,
1224
+ }}
1225
+ componentsProps={{
1226
+ - leftArrowButton: {},
1227
+ + previousIconButton: {},
1228
+
1229
+ - rightArrowButton: {},
1230
+ + nextIconButton: {},
1231
+ }}
1232
+ />
243
1233
  ```
244
1234
 
245
- - The `date` prop has been renamed `value` on `MonthPicker` / `YearPicker`, `ClockPicker` and `CalendarPicker`.
1235
+ - The `date` prop has been renamed `value` on `MonthPicker` / `YearPicker`, `ClockPicker` and `CalendarPicker`.
246
1236
 
247
1237
  ```diff
248
- - <MonthPicker date={dayjs()} onChange={handleMonthChange} />
249
- + <MonthPicker value={dayjs()} onChange={handleMonthChange} />
1238
+ -<MonthPicker date={dayjs()} onChange={handleMonthChange} />
1239
+ +<MonthPicker value={dayjs()} onChange={handleMonthChange} />
250
1240
 
251
- - <YearPicker date={dayjs()} onChange={handleYearChange} />
252
- + <YearPicker value={dayjs()} onChange={handleYearChange} />
1241
+ -<YearPicker date={dayjs()} onChange={handleYearChange} />
1242
+ +<YearPicker value={dayjs()} onChange={handleYearChange} />
253
1243
 
254
- - <ClockPicker date={dayjs()} onChange={handleTimeChange} />
255
- + <ClockPicker value={dayjs()} onChange={handleTimeChange} />
1244
+ -<ClockPicker date={dayjs()} onChange={handleTimeChange} />
1245
+ +<ClockPicker value={dayjs()} onChange={handleTimeChange} />
256
1246
 
257
- - <CalendarPicker date={dayjs()} onChange={handleDateChange} />
258
- + <CalendarPicker value={dayjs()} onChange={handleDateChange} />
1247
+ -<CalendarPicker date={dayjs()} onChange={handleDateChange} />
1248
+ +<CalendarPicker value={dayjs()} onChange={handleDateChange} />
259
1249
  ```
260
1250
 
261
1251
  #### Changes
@@ -274,7 +1264,7 @@ You can find more information about the new api, including how to set those tran
274
1264
  - [pickers] Remove `valueStr` from the field state (#6142) @flaviendelangle
275
1265
  - [pickers] Remove remaining deprecated locale props (#6233) @flaviendelangle
276
1266
  - [pickers] Rename the `date` prop `value` on `MonthPicker` / `YearPicker`, `ClockPicker` and `CalendarPicker` (#6128) @flaviendelangle
277
- - [pickers] Rename the `onClose` prop of `PickersPopper` `onDismiss` to simplify typing (#6155) @flaviendelangle
1267
+ - [pickers] Rename the `onClose` prop of `PickersPopper` `onDismiss` to simplify typing (#6155) @flaviendelangle
278
1268
  - [pickers] Support the `sx` prop on all public component with a root HTML elements (#5944) @flaviendelangle
279
1269
  - [pickers] Unify `PickersMonth` and `PickersYear` behaviors (#6034) @flaviendelangle
280
1270
  - [pickers] Use `shouldDisableMonth` and `shouldDisableYear` for date validation (#6066) @flaviendelangle
@@ -311,7 +1301,284 @@ You can find more information about the new api, including how to set those tran
311
1301
  - [test] Skip tests for column pinning and dynamic row height (#5997) @m4theushw
312
1302
  - [website] Improve security header @oliviertassinari
313
1303
 
314
- ## v5.17.4
1304
+ ## 5.17.14
1305
+
1306
+ _Dec 1, 2022_
1307
+
1308
+ We'd like to offer a big thanks to the 3 contributors who made this release possible. Here are some highlights ✨:
1309
+
1310
+ - 🌍 Improve Ukrainian (uk-UA) locale (#7035) @rettoua
1311
+ - 🐞 Bugfixes
1312
+
1313
+ ### `@mui/x-data-grid@v5.17.14` / `@mui/x-data-grid-pro@v5.17.14` / `@mui/x-data-grid-premium@v5.17.14`
1314
+
1315
+ #### Changes
1316
+
1317
+ - [DataGrid] Fix row selection when clicking blank cell (#7056) @yami03
1318
+ - [DataGridPremium] Update cache before hydrating columns (#7043) @m4theushw
1319
+ - [l10n] Improve Ukrainian (uk-UA) locale (#7035) @rettoua
1320
+
1321
+ ## 5.17.13
1322
+
1323
+ _Nov 24, 2022_
1324
+
1325
+ We'd like to offer a big thanks to the 7 contributors who made this release possible. Here are some highlights ✨:
1326
+
1327
+ - 🚀 Fix support of the pickers to Shadow DOM (#6971) @flaviendelangle
1328
+ - 💅 Improve DataGrid theme augmentation (#6980) @iigrik
1329
+ - 🐞 Bugfixes
1330
+
1331
+ ### `@mui/x-data-grid@v5.17.13` / `@mui/x-data-grid-pro@v5.17.13` / `@mui/x-data-grid-premium@v5.17.13`
1332
+
1333
+ #### Changes
1334
+
1335
+ - [DataGrid] Fix `ErrorOverlay` not receiving defined input props (#6885) @banoth-ravinder
1336
+ - [DataGrid] Improve typing for `styleOverrides` (#6980) @iigrik
1337
+ - [DataGridPro] Fix lazy-loaded rows not working with `updateRows` API method (#6875) @cherniavskii
1338
+ - [l10n] Fix translation of `filterOperatorBefore` in Arabic (ar-SD) locale (#6917) @HassanGhazy
1339
+
1340
+ ### `@mui/x-date-pickers@v5.0.9` / `@mui/x-date-pickers-pro@v5.0.9`
1341
+
1342
+ #### Changes
1343
+
1344
+ - [pickers] Fix usage with Shadow DOM (#6971) @flaviendelangle
1345
+
1346
+ ### Docs
1347
+
1348
+ - [docs] Add new "Expired package version" error type (#6937) @oliviertassinari
1349
+ - [docs] Enforce values for installation options in Date / Time pickers Getting Started page (#6896) @01zulfi
1350
+ - [docs] Fix live edit @oliviertassinari
1351
+ - [docs] Upgrade to Next 13 (#6911) @cherniavskii
1352
+
1353
+ ### Core
1354
+
1355
+ - [core] Upgrade monorepo (#6906) @cherniavskii
1356
+ - [core] Upgrade node to v14.21 (#6939) @piwysocki
1357
+
1358
+ ## 5.17.12
1359
+
1360
+ _Nov 17, 2022_
1361
+
1362
+ We'd like to offer a big thanks to the 5 contributors who made this release possible. Here are some highlights ✨:
1363
+
1364
+ - 🌍 Improve Finnish (fi-FI) locale (#6859) @RainoPikkarainen
1365
+ - 🐞 Bugfixes
1366
+
1367
+ ### `@mui/x-data-grid@v5.17.12` / `@mui/x-data-grid-pro@v5.17.12` / `@mui/x-data-grid-premium@v5.17.12`
1368
+
1369
+ #### Changes
1370
+
1371
+ - [DataGrid] Fix conflict with the latest version of `@types/react` (#6883) @vizv
1372
+ - [DataGridPremium] Support aggregating data from multiple row fields (#6844) @cherniavskii
1373
+ - [DataGridPro] Fix detail panel not working with `getRowSpacing` prop (#6858) @cherniavskii
1374
+ - [l10n] Improve Finnish (fi-FI) locale (#6859) @RainoPikkarainen
1375
+
1376
+ ### Docs
1377
+
1378
+ - [docs] Clarify DataGrid Row Pinning docs (#6891) @cherniavskii
1379
+
1380
+ ### Core
1381
+
1382
+ - [core] Upgrade monorepo (#6864) @m4theushw
1383
+ - [license] Polish error messages (#6881) @oliviertassinari
1384
+
1385
+ ## 5.17.11
1386
+
1387
+ _Nov 10, 2022_
1388
+
1389
+ We'd like to offer a big thanks to the 5 contributors who made this release possible. Here are some highlights ✨:
1390
+
1391
+ - 🐞 Bugfixes
1392
+
1393
+ ### `@mui/x-data-grid@v5.17.11` / `@mui/x-data-grid-pro@v5.17.11` / `@mui/x-data-grid-premium@v5.17.11`
1394
+
1395
+ #### Changes
1396
+
1397
+ - [DataGrid] Fix for cell focus preventing scroll when virtualization enabled (#6622) @yaredtsy
1398
+ - [DataGridPro] Opt-out for column jump back on re-order (#6697) @gavbrennan
1399
+
1400
+ ### `@mui/x-date-pickers@v5.0.8` / `@mui/x-date-pickers-pro@v5.0.8`
1401
+
1402
+ #### Changes
1403
+
1404
+ - [pickers] Fix pickers toolbar styling (#6793) @LukasTy
1405
+
1406
+ ### Docs
1407
+
1408
+ - [docs] Fix link to localization page (#6766) @alexfauquette
1409
+
1410
+ ### Core
1411
+
1412
+ - [license] Add new license status 'Out of scope' (#6774) @oliviertassinari
1413
+
1414
+ ## 5.17.10
1415
+
1416
+ _Nov 4, 2022_
1417
+
1418
+ We'd like to offer a big thanks to the 4 contributors who made this release possible. Here are some highlights ✨:
1419
+
1420
+ - 🌍 Add Ukrainian (uk-UA) locale to pickers (#6661) @Dufran
1421
+
1422
+ ### `@mui/x-data-grid@v5.17.10` / `@mui/x-data-grid-pro@v5.17.10` / `@mui/x-data-grid-premium@v5.17.10`
1423
+
1424
+ #### Changes
1425
+
1426
+ - [DataGrid] Remove `React.memo` from `GridCellCheckboxRenderer` (#6688) @mattcorner
1427
+
1428
+ ### `@mui/x-date-pickers@v5.0.7` / `@mui/x-date-pickers-pro@v5.0.7`
1429
+
1430
+ #### Changes
1431
+
1432
+ - [DateRangePicker] Fix input focused style and mobile behaviour (#6645) (#6714) @LukasTy
1433
+ - [pickers] Add Ukrainian (uk-UA) locale on the date picker (#6661) @Dufran
1434
+
1435
+ ### Docs
1436
+
1437
+ - [docs] Mark data grid column group available (#6659) @alexfauquette
1438
+
1439
+ ## 5.17.9
1440
+
1441
+ _Oct 28, 2022_
1442
+
1443
+ We'd like to offer a big thanks to the 6 contributors who made this release possible. Here are some highlights ✨:
1444
+
1445
+ - ⚡ Fix memory leak during unmount of the DataGrid (#6579) @cherniavskii
1446
+ - 🎁 Allow to disable the autofocus of the search field when opening the column visibility panel (#6630) @e-cloud
1447
+ - 🐞 Bugfixes
1448
+
1449
+ ### `@mui/x-data-grid@v5.17.9` / `@mui/x-data-grid-pro@v5.17.9` / `@mui/x-data-grid-premium@v5.17.9`
1450
+
1451
+ #### Changes
1452
+
1453
+ - [DataGrid] Allow to disable autofocusing the search field in the columns panel (#6630) @e-cloud
1454
+ - [DataGrid] Fix `setRows` method not persisting new rows data after `loading` prop change (#6637) @cherniavskii
1455
+ - [DataGrid] Fix memory leak on grid unmount (#6579) @cherniavskii
1456
+ - [l10n] Improve Bulgarian (bg-BG) locale (#6635) @AtanasVA
1457
+
1458
+ ### `@mui/x-date-pickers@v5.0.6` / `@mui/x-date-pickers-pro@v5.0.6`
1459
+
1460
+ #### Changes
1461
+
1462
+ - [pickers] Ignore milliseconds in mask logic (#6618) @alexfauquette
1463
+ - [pickers] Update input when `inputFormat` is modified (#6617) @alexfauquette
1464
+
1465
+ ### Docs
1466
+
1467
+ - [docs] Add token to redirect feedbacks on slack (#6592) @alexfauquette
1468
+ - [docs] Disable translations (#6639) @cherniavskii
1469
+ - [docs] Fix code edit for when v6 will be stable (#6600) @oliviertassinari
1470
+ - [docs] Fix typo in DataGrid demo page (#6632) (#6634) @LukasTy
1471
+
1472
+ ### Core
1473
+
1474
+ - [core] Upgrade monorepo (#6570) @cherniavskii
1475
+
1476
+ ## 5.17.8
1477
+
1478
+ _Oct 20, 2022_
1479
+
1480
+ We'd like to offer a big thanks to the 5 contributors who made this release possible. Here are some highlights ✨:
1481
+
1482
+ - 🐞 Bugfixes
1483
+ - 🌍 Improve Turkish (tr-TR) locale on the data grid and pickers (#6573) @ramazansancar
1484
+
1485
+ ### `@mui/x-data-grid@v5.17.8` / `@mui/x-data-grid-pro@v5.17.8` / `@mui/x-data-grid-premium@v5.17.8`
1486
+
1487
+ #### Changes
1488
+
1489
+ - [DataGrid] Add `searchPredicate` prop to `GridColumnsPanel` component (#6572) @cherniavskii
1490
+ - [DataGrid] Fix grid not updating state on `rowCount` prop change (#6474) @cherniavskii
1491
+ - [DataGridPro] Fix row order being reset after updating the row (#6544) @cherniavskii
1492
+ - [l10n] Improve Turkish (tr-TR) locale on the data grid and pickers (#6542) (#6573) @ramazansancar
1493
+
1494
+ ### `@mui/x-date-pickers@v5.0.5` / `@mui/x-date-pickers-pro@v5.0.5`
1495
+
1496
+ #### Changes
1497
+
1498
+ - [CalendarPicker] Don't move to closest enabled date when `props.date` contains a disabled date (#6537) @flaviendelangle
1499
+ - [DateRangePicker] Fix calendar day outside of month layout shifting on hover (pick #6448) (#6538) @alexfauquette
1500
+ - [pickers] Fix typescript issues (#6510) @flaviendelangle
1501
+
1502
+ ### Docs
1503
+
1504
+ - [docs] Fix 301 link to the sx prop page @oliviertassinari
1505
+
1506
+ ## 5.17.7
1507
+
1508
+ _Oct 13, 2022_
1509
+
1510
+ We'd like to offer a big thanks to the 2 contributors who made this release possible. Here are some highlights ✨:
1511
+
1512
+ - 🐞 Bugfixes
1513
+
1514
+ ### `@mui/x-data-grid@v5.17.7` / `@mui/x-data-grid-pro@v5.17.7` / `@mui/x-data-grid-premium@v5.17.7`
1515
+
1516
+ #### Changes
1517
+
1518
+ - [DataGrid] Fix error when using column grouping with all columns hidden (#6425) @alexfauquette
1519
+ - [DataGrid] Fix start edit mode with printable character in React 18 (#6478) @m4theushw
1520
+
1521
+ ## 5.17.6
1522
+
1523
+ _Oct 6, 2022_
1524
+
1525
+ We'd like to offer a big thanks to the 7 contributors who made this release possible. Here are some highlights ✨:
1526
+
1527
+ - 🌍 Add Japanese (ja-JP) locale to pickers (#6365) @sho918
1528
+ - 🎁 Improve support for theme augmentation in the DataGrid (#6406) @cherniavskii
1529
+ - 🐞 Bugfixes
1530
+
1531
+ ### `@mui/x-data-grid@v5.17.6` / `@mui/x-data-grid-pro@v5.17.6` / `@mui/x-data-grid-premium@v5.17.6`
1532
+
1533
+ #### Changes
1534
+
1535
+ - [DataGrid] Add missing `valueOptions` (#6400) @DanailH
1536
+ - [DataGrid] Don't start edit mode when pressing <kbd>Shift</kbd> + <kbd>Space</kbd> (#6380) @m4theushw
1537
+ - [DataGrid] Pass generics to the components in the theme augmentation (#6406) @cherniavskii
1538
+
1539
+ ### `@mui/x-date-pickers@v5.0.4` / `@mui/x-date-pickers-pro@v5.0.4`
1540
+
1541
+ #### Changes
1542
+
1543
+ - [l10n] Add Japanese (ja-JP) locale to pickers (#6365) (#6382) @sho918
1544
+ - [pickers] Prevent `CalendarPicker` getting focus when `autoFocus=false` (#6304) (#6362) @alexfauquette
1545
+ - [pickers] Fix git repository location @oliviertassinari
1546
+
1547
+ ### Docs
1548
+
1549
+ - [docs] Fix customized day rendering demo style (#6342) @Ambrish-git
1550
+
1551
+ ## 5.17.5
1552
+
1553
+ _Sep 29, 2022_
1554
+
1555
+ We'd like to offer a big thanks to the 2 contributors who made this release possible. Here are some highlights ✨:
1556
+
1557
+ - 🎁 Add theme augmentation module to DataGridPremium (#6316) @cherniavskii
1558
+ - 👀 Fix blank space when changing page with dynamic row height (#6320) @m4theushw
1559
+ - 📚 Improve controlled editing demo to make easier to reuse it (#6306) @cherniavskii
1560
+ - 🐞 Bugfixes
1561
+
1562
+ ### `@mui/x-data-grid@v5.17.5` / `@mui/x-data-grid-pro@v5.17.5` / `@mui/x-data-grid-premium@v5.17.5`
1563
+
1564
+ #### Changes
1565
+
1566
+ - [DataGrid] Fix `GridPagination` props typing (#6295) @cherniavskii
1567
+ - [DataGrid] Fix `GridRow` not forwarding `ref` to the root element (#6303) @cherniavskii
1568
+ - [DataGrid] Fix `undefined` value being showed in filter button tooltip text (#6271) @cherniavskii
1569
+ - [DataGrid] Fix blank space when changing page with dynamic row height (#6320) @m4theushw
1570
+ - [DataGrid] Revert cell/row mode if `processRowUpdate` fails (#6319) @m4theushw
1571
+ - [DataGridPremium] Add missing `themeAugmentation` module (#6316) @cherniavskii
1572
+
1573
+ ### Docs
1574
+
1575
+ - [docs] Pass model change callbacks in controlled grid editing demos (#6306) @cherniavskii
1576
+
1577
+ ### Core
1578
+
1579
+ - [core] Reduce the amount of updated screenshots reported by Argos (#6310) @cherniavskii
1580
+
1581
+ ## 5.17.4
315
1582
 
316
1583
  _Sep 22, 2022_
317
1584
 
@@ -443,7 +1710,7 @@ We'd like to offer a big thanks to the 3 contributors who made this release poss
443
1710
 
444
1711
  _Sep 2, 2022_
445
1712
 
446
- 🎉 We are excited to finally introduce a stable release (v5.0.0) for the `@mui/x-date-pickers` and `@mui/x-date-pickers-pro` packages!
1713
+ 🎉 We are excited to finally introduce a stable release (v5.0.0) for the `@mui/x-date-pickers` and `@mui/x-date-pickers-pro` packages!
447
1714
 
448
1715
  If you are still using picker components from the `lab`, take a look at the [migration guide](https://mui.com/x/react-date-pickers/migration-lab/).
449
1716
 
@@ -1699,10 +2966,10 @@ We'd like to offer a big thanks to the 15 contributors who made this release pos
1699
2966
  | `filterableGridColumnsSelector` | `gridFilterableColumnDefinitionsSelector` |
1700
2967
 
1701
2968
  ```diff
1702
- -const { all, lookup, columnVisibilityModel } = gridColumnsSelector(apiRef)
1703
- +const all = gridColumnFieldsSelector(apiRef)
1704
- +const lookup = gridColumnLookupSelector(apiRef)
1705
- +const columnVisibilityModel = gridColumnVisibilityModelSelector(apiRef)
2969
+ -const { all, lookup, columnVisibilityModel } = gridColumnsSelector(apiRef);
2970
+ +const all = gridColumnFieldsSelector(apiRef);
2971
+ +const lookup = gridColumnLookupSelector(apiRef);
2972
+ +const columnVisibilityModel = gridColumnVisibilityModelSelector(apiRef);
1706
2973
 
1707
2974
  -const filterableFields = filterableGridColumnsIdsSelector(apiRef);
1708
2975
  +const lookup = gridFilterableColumnLookupSelector(apiRef);
@@ -2420,8 +3687,8 @@ _Nov 23, 2021_
2420
3687
 
2421
3688
  🎉 We are excited to introduce [MUI X v5.0.0](https://mui.com/blog/mui-x-v5/) 🎉!
2422
3689
 
2423
- If you want to migrate the DataGrid or DataGridPro from v4 to v5, take a look at the [migration guide](https://mui.com/x/react-data-grid/migration-v4/).
2424
- This version is fully compatible with `@mui/material@5.X` and can be used with `@material-ui/core@4.x` with some [additional steps](https://mui.com/x/react-data-grid/migration-v4/#using-mui-x-v5-with-mui-core-v4).
3690
+ If you want to migrate the DataGrid or DataGridPro from v4 to v5, take a look at the [migration guide](https://mui.com/x/migration/migration-data-grid-v4/).
3691
+ This version is fully compatible with `@mui/material@5.X` and can be used with `@material-ui/core@4.x` with some [additional steps](https://mui.com/x/migration/migration-data-grid-v4/#using-mui-x-v5-with-mui-core-v4).
2425
3692
 
2426
3693
  A big thanks to the 7 contributors who made this release possible. Here are some highlights ✨:
2427
3694
 
@@ -2639,7 +3906,7 @@ A big thanks to the 7 contributors who made this release possible. Here are some
2639
3906
 
2640
3907
  ```diff
2641
3908
  -visibleSortedGridRowsAsArraySelector: (state: GridState) => [GridRowId, GridRowData][];
2642
- +gridVisibleSortedRowEntriesSelector: (state: GridState) => GridRowEntry[]
3909
+ +gridVisibleSortedRowEntriesSelector: (state: GridState) => GridRowEntry[];
2643
3910
  ```
2644
3911
 
2645
3912
  - [DataGridPro] The `filterGridItemsCounterSelector` selector was removed. (#2942) @flaviendelangle
@@ -2739,15 +4006,15 @@ A big thanks to the 5 contributors who made this release possible. Here are some
2739
4006
  To fully control the state, use the feature's model prop and change callback (e.g. `filterModel` and `onFilterModelChange`).
2740
4007
 
2741
4008
  ```diff
2742
- <DataGrid
4009
+ <DataGrid
2743
4010
  - state={{
2744
4011
  + initialState={{
2745
- preferencePanel: {
2746
- open: true,
2747
- openedPanelValue: GridPreferencePanelsValue.filters,
2748
- },
2749
- }}
2750
- />
4012
+ preferencePanel: {
4013
+ open: true,
4014
+ openedPanelValue: GridPreferencePanelsValue.filters,
4015
+ },
4016
+ }}
4017
+ />
2751
4018
  ```
2752
4019
 
2753
4020
  - [DataGridPro] Remove the `onViewportRowsChange` prop and the `viewportRowsChange` event (#2673) @m4theushw
@@ -2850,12 +4117,12 @@ A big thanks to the 7 contributors who made this release possible. Here are some
2850
4117
  For more information, check [this page](https://mui.com/x/react-data-grid/components/#row). Example:
2851
4118
 
2852
4119
  ```diff
2853
- -<DataGrid onRowOver={handleRowOver} />;
2854
- +<DataGrid
4120
+ <DataGrid
4121
+ - onRowOver={handleRowOver}
2855
4122
  + componentsProps={{
2856
4123
  + row: { onMouseOver: handleRowOver },
2857
4124
  + }}
2858
- +/>;
4125
+ />;
2859
4126
  ```
2860
4127
 
2861
4128
  The `data-rowindex` and `data-rowselected` attributes were removed from the cell element. Equivalent attributes can be found in the row element.
@@ -2887,33 +4154,33 @@ A big thanks to the 7 contributors who made this release possible. Here are some
2887
4154
  - [DataGrid] The CSS classes constants are not exported anymore. Use `gridClasses` instead. (#2788) @flaviendelangle
2888
4155
 
2889
4156
  ```diff
2890
- -const columnHeaderClass = GRID_COLUMN_HEADER_CSS_CLASS
2891
- +const columnHeaderClass = gridClasses.columnHeader
4157
+ -const columnHeaderClass = GRID_COLUMN_HEADER_CSS_CLASS;
4158
+ +const columnHeaderClass = gridClasses.columnHeader;
2892
4159
 
2893
- -const rowClass = GRID_ROW_CSS_CLASS
2894
- +const rowClass = gridClasses.row
4160
+ -const rowClass = GRID_ROW_CSS_CLASS;
4161
+ +const rowClass = gridClasses.row;
2895
4162
 
2896
- -const cellClass = GRID_CELL_CSS_CLASS
2897
- +const cellClass = gridClasses.cell
4163
+ -const cellClass = GRID_CELL_CSS_CLASS;
4164
+ +const cellClass = gridClasses.cell;
2898
4165
 
2899
- -const columnSeparatorClass = GRID_COLUMN_HEADER_SEPARATOR_RESIZABLE_CSS_CLASS
2900
- +const columnSeparatorClass = gridClasses['columnSeparator--resizable']
4166
+ -const columnSeparatorClass = GRID_COLUMN_HEADER_SEPARATOR_RESIZABLE_CSS_CLASS;
4167
+ +const columnSeparatorClass = gridClasses['columnSeparator--resizable'];
2901
4168
 
2902
- -const columnHeaderTitleClass = GRID_COLUMN_HEADER_TITLE_CSS_CLASS
2903
- +const columnHeaderTitleClass = gridClasses.columnHeaderTitle
4169
+ -const columnHeaderTitleClass = GRID_COLUMN_HEADER_TITLE_CSS_CLASS;
4170
+ +const columnHeaderTitleClass = gridClasses.columnHeaderTitle;
2904
4171
 
2905
- -const columnHeaderDropZoneClass = GRID_COLUMN_HEADER_DROP_ZONE_CSS_CLASS
2906
- +const columnHeaderDropZoneClass = gridClasses.columnHeaderDropZone
4172
+ -const columnHeaderDropZoneClass = GRID_COLUMN_HEADER_DROP_ZONE_CSS_CLASS;
4173
+ +const columnHeaderDropZoneClass = gridClasses.columnHeaderDropZone;
2907
4174
 
2908
- -const columnHeaderDraggingClass = GRID_COLUMN_HEADER_DRAGGING_CSS_CLASS
2909
- +const columnHeaderDraggingClass = gridClasses["columnHeader--dragging"]
4175
+ -const columnHeaderDraggingClass = GRID_COLUMN_HEADER_DRAGGING_CSS_CLASS;
4176
+ +const columnHeaderDraggingClass = gridClasses['columnHeader--dragging'];
2910
4177
  ```
2911
4178
 
2912
4179
  - [DataGrid] Rename `gridCheckboxSelectionColDef` to `GRID_CHECKBOX_SELECTION_COL_DEF` (#2793) @flaviendelangle
2913
4180
 
2914
4181
  ```diff
2915
- - gridCheckboxSelectionColDef
2916
- + GRID_CHECKBOX_SELECTION_COL_DEF
4182
+ -gridCheckboxSelectionColDef
4183
+ +GRID_CHECKBOX_SELECTION_COL_DEF
2917
4184
  ```
2918
4185
 
2919
4186
  - [DataGrid] The constants referring to the column types were removed (#2791) @flaviendelangle
@@ -3081,7 +4348,7 @@ A big thanks to the 5 contributors who made this release possible. Here are some
3081
4348
  -export type GridValueFormatterParams = Omit<GridRenderCellParams, 'formattedValue' | 'isEditable'>;
3082
4349
  +export interface GridValueFormatterParams {
3083
4350
  + /**
3084
- + * The column field of the cell that triggered the event
4351
+ + * The column field of the cell that triggered the event.
3085
4352
  + */
3086
4353
  + field: string;
3087
4354
  + /**
@@ -3167,7 +4434,7 @@ A big thanks to the 9 contributors who made this release possible. Here are some
3167
4434
 
3168
4435
  ```diff
3169
4436
  -const state = apiRef.current.getState();
3170
- +const state = apiRef.current.state
4437
+ +const state = apiRef.current.state;
3171
4438
  ```
3172
4439
 
3173
4440
  - [DataGridPro] The third argument in `apiRef.current.selectRow` is now inverted to keep consistency with other selection APIs. (#2523) @flaviendelangle
@@ -3461,16 +4728,15 @@ Big thanks to the 6 contributors who made this release possible. Here are some h
3461
4728
  - The `width` property of the columns is no longer updated with the actual width of of the column. Use the new `computedWidth` property in the callbacks instead.
3462
4729
 
3463
4730
  ```diff
3464
- const columns: GridColDef = [
3465
- {
3466
- field: "name",
3467
- width: 100,
3468
- renderCell: ({ value, colDef }) => {
3469
- - console.log(colDef.width!)
3470
- + console.log(colDef.computedWidth)
3471
- return value
3472
- }
3473
- ]
4731
+ const columns: GridColDef = [{
4732
+ field: 'name',
4733
+ width: 100,
4734
+ renderCell: ({ value, colDef }) => {
4735
+ - console.log(colDef.width!);
4736
+ + console.log(colDef.computedWidth);
4737
+ return value;
4738
+ },
4739
+ }];
3474
4740
  ```
3475
4741
 
3476
4742
  #### Changes
@@ -3533,21 +4799,21 @@ Big thanks to the 8 contributors who made this release possible. Here are some h
3533
4799
  - Change the controllable API signature:
3534
4800
 
3535
4801
  ```diff
3536
- // Signature
4802
+ // Signature
3537
4803
  -onPageChange?: (params: GridPageChangeParams) => void;
3538
4804
  +onPageChange?: (page: number) => void;
3539
4805
 
3540
- // Usage
4806
+ // Usage
3541
4807
  -<DataGrid onPageChange={(params: GridPageChangeParams) => setPage(params.page)} />
3542
4808
  +<DataGrid onPageChange={(page: number) => setPage(page)} />
3543
4809
  ```
3544
4810
 
3545
4811
  ```diff
3546
- // Signature
4812
+ // Signature
3547
4813
  -onPageSizeChange?: (params: GridPageChangeParams) => void;
3548
4814
  +onPageSizeChange?: (pageSize: number) => void;
3549
4815
 
3550
- // Usage
4816
+ // Usage
3551
4817
  -<DataGrid onPageSizeChange={(params: GridPageChangeParams) => setPageSize(params.pageSize)} />
3552
4818
  +<DataGrid onPageSizeChange={(pageSize: number) => setPageSize(pageSize)} />
3553
4819
  ```
@@ -3605,7 +4871,7 @@ Big thanks to the 11 contributors who made this release possible. Here are some
3605
4871
  Remove public `apiRef.current.isColumnVisibleInWindow()` as it servers private use cases.
3606
4872
 
3607
4873
  ```diff
3608
- -apiRef.current.isColumnVisibleInWindow()
4874
+ -apiRef.current.isColumnVisibleInWindow();
3609
4875
  ```
3610
4876
 
3611
4877
  - [DataGrid] Remove stateId argument from GridApi getState method (#2141) @flaviendelangle
@@ -3652,7 +4918,7 @@ Big thanks to the 11 contributors who made this release possible. Here are some
3652
4918
 
3653
4919
  ```diff
3654
4920
  +apiRef.current.setCellMode(1, 'name', 'edit');
3655
- apiRef.current.commitCellChange({ id: 1, field: 'name' });
4921
+ apiRef.current.commitCellChange({ id: 1, field: 'name' });
3656
4922
  ```
3657
4923
 
3658
4924
  - The `setCellValue` was removed from the API. Use `commitCellChange` or `updateRows` in place.
@@ -4443,31 +5709,33 @@ Big thanks to the 5 contributors who made this release possible. Here are some h
4443
5709
 
4444
5710
  - Changes on `apiRef.current`.
4445
5711
 
4446
- ```diff
4447
- - getRowModels: () => GridRowModel[];
4448
- + getRowModels: () => Map<GridRowId, GridRowModel>;
4449
- - getVisibleRowModels: () => GridRowModel[];
4450
- + getVisibleRowModels: () => Map<GridRowId, GridRowModel>;
4451
- - getSelectedRows: () => GridRowModel[];
4452
- + getSelectedRows: () => Map<GridRowId, GridRowModel>;
4453
- ```
4454
-
4455
- - Changes on `GridFilterModelParams`.
4456
-
4457
- ```diff
4458
- export interface GridFilterModelParams {
4459
- /**
4460
- * The full set of rows.
4461
- */
4462
- - rows: GridRowModel[];
4463
- + rows: Map<GridRowId, GridRowModel>;
4464
- /**
4465
- * The set of currently visible rows.
4466
- */
4467
- - visibleRows: GridRowModel[];
4468
- + visibleRows: Map<GridRowId, GridRowModel>;
4469
- }
4470
- ```
5712
+ ```diff
5713
+ -getRowModels: () => GridRowModel[];
5714
+ +getRowModels: () => Map<GridRowId, GridRowModel>;
5715
+
5716
+ -getVisibleRowModels: () => GridRowModel[];
5717
+ +getVisibleRowModels: () => Map<GridRowId, GridRowModel>;
5718
+
5719
+ -getSelectedRows: () => GridRowModel[];
5720
+ +getSelectedRows: () => Map<GridRowId, GridRowModel>;
5721
+ ```
5722
+
5723
+ - Changes on `GridFilterModelParams`.
5724
+
5725
+ ```diff
5726
+ export interface GridFilterModelParams {
5727
+ /**
5728
+ * The full set of rows.
5729
+ */
5730
+ - rows: GridRowModel[];
5731
+ + rows: Map<GridRowId, GridRowModel>;
5732
+ /**
5733
+ * The set of currently visible rows.
5734
+ */
5735
+ - visibleRows: GridRowModel[];
5736
+ + visibleRows: Map<GridRowId, GridRowModel>;
5737
+ }
5738
+ ```
4471
5739
 
4472
5740
  - [DataGrid] Upgrade mininum supported version of React to 17.0.0 (#1410) @m4theushw
4473
5741
 
@@ -4685,11 +5953,12 @@ Big thanks to the 4 contributors who made this release possible. Here are some h
4685
5953
  ```diff
4686
5954
  -columns[1] = { ...columns[1], sortDirection: 'asc' };
4687
5955
 
4688
- return (
4689
- <div>
5956
+ return (
5957
+ <div>
4690
5958
  - <DataGrid rows={rows} columns={columns} />
4691
5959
  + <DataGrid rows={rows} columns={columns} sortModel={[{ field: columns[1].field, sort: 'asc' }]} />
4692
- </div>
5960
+ </div>
5961
+ );
4693
5962
  ```
4694
5963
 
4695
5964
  - [DataGrid] Rename the `onSelectionChange` prop to `onSelectionModelChange` for consistency. (#986) @dtassone
@@ -4716,10 +5985,11 @@ Big thanks to the 4 contributors who made this release possible. Here are some h
4716
5985
  -const [page, setPage] = React.useState(1);
4717
5986
  +const [page, setPage] = React.useState(0);
4718
5987
 
4719
- return (
4720
- <div className="grid-container">
4721
- <DataGrid rows={rows} columns={columns} page={page} />
4722
- </div>
5988
+ return (
5989
+ <div className="grid-container">
5990
+ <DataGrid rows={rows} columns={columns} page={page} />
5991
+ </div>
5992
+ );
4723
5993
  ```
4724
5994
 
4725
5995
  #### Changes
@@ -4820,25 +6090,25 @@ Big thanks to the 5 contributors who made this release possible. Here are some h
4820
6090
  - Capitalize the keys of the `components` prop. This change aims to bring consistency with the customization pattern of Material UI v5:
4821
6091
 
4822
6092
  ```diff
4823
- <DataGrid
4824
- components={{
4825
- - noRowsOverlay: CustomNoRowsOverlay,
4826
- + NoRowOverlay: CustomNoRowsOverlay,
4827
- }}
4828
- />
6093
+ <DataGrid
6094
+ components={{
6095
+ - noRowsOverlay: CustomNoRowsOverlay,
6096
+ + NoRowOverlay: CustomNoRowsOverlay,
6097
+ }}
6098
+ />
4829
6099
  ```
4830
6100
 
4831
6101
  - Move all the icon components overrides in the `components` prop. And added the suffix 'Icon' on each icon component. This change aims to bring consistency with the customization pattern of Material UI v5:
4832
6102
 
4833
6103
  ```diff
4834
- <DataGrid
4835
- - icons: {{
4836
- - ColumnSortedAscending: SortedAscending,
4837
- - }},
4838
- + components={{
4839
- + ColumnSortedAscendingIcon: SortedAscending,
4840
- + }}
4841
- />
6104
+ <DataGrid
6105
+ - icons: {{
6106
+ - ColumnSortedAscending: SortedAscending,
6107
+ - }},
6108
+ + components={{
6109
+ + ColumnSortedAscendingIcon: SortedAscending,
6110
+ + }}
6111
+ />
4842
6112
  ```
4843
6113
 
4844
6114
  - Change the props provided to the component of the `components` prop. Expose the whole state instead of an arbitrary set of props:
@@ -4856,9 +6126,9 @@ Big thanks to the 5 contributors who made this release possible. Here are some h
4856
6126
  + page={state.pagination.page}
4857
6127
  + count={state.pagination.pageCount}
4858
6128
 
4859
- // ...
6129
+ // ...
4860
6130
 
4861
- <DataGrid components={{ Pagination: CustomPagination }} />
6131
+ <DataGrid components={{ Pagination: CustomPagination }} />
4862
6132
  ```
4863
6133
 
4864
6134
  #### Changes