@mui/x-tree-view 6.17.0 → 7.0.0-alpha.7

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 (203) hide show
  1. package/CHANGELOG.md +1748 -6
  2. package/README.md +0 -1
  3. package/RichTreeView/RichTreeView.d.ts +20 -0
  4. package/RichTreeView/RichTreeView.js +324 -0
  5. package/RichTreeView/RichTreeView.types.d.ts +55 -0
  6. package/RichTreeView/RichTreeView.types.js +1 -0
  7. package/RichTreeView/index.d.ts +3 -0
  8. package/RichTreeView/index.js +3 -0
  9. package/RichTreeView/package.json +6 -0
  10. package/RichTreeView/richTreeViewClasses.d.ts +7 -0
  11. package/RichTreeView/richTreeViewClasses.js +6 -0
  12. package/SimpleTreeView/SimpleTreeView.d.ts +20 -0
  13. package/SimpleTreeView/SimpleTreeView.js +268 -0
  14. package/SimpleTreeView/SimpleTreeView.plugins.d.ts +6 -0
  15. package/SimpleTreeView/SimpleTreeView.plugins.js +5 -0
  16. package/SimpleTreeView/SimpleTreeView.types.d.ts +38 -0
  17. package/SimpleTreeView/SimpleTreeView.types.js +1 -0
  18. package/SimpleTreeView/index.d.ts +3 -0
  19. package/SimpleTreeView/index.js +3 -0
  20. package/SimpleTreeView/package.json +6 -0
  21. package/SimpleTreeView/simpleTreeViewClasses.d.ts +7 -0
  22. package/SimpleTreeView/simpleTreeViewClasses.js +6 -0
  23. package/TreeItem/TreeItem.js +44 -89
  24. package/TreeItem/TreeItem.types.d.ts +2 -1
  25. package/TreeItem/index.d.ts +2 -2
  26. package/TreeItem/index.js +2 -2
  27. package/TreeItem/useTreeItem.js +5 -5
  28. package/TreeView/TreeView.d.ts +4 -0
  29. package/TreeView/TreeView.js +80 -87
  30. package/TreeView/TreeView.types.d.ts +4 -26
  31. package/TreeView/index.d.ts +1 -1
  32. package/index.d.ts +3 -0
  33. package/index.js +5 -2
  34. package/internals/TreeViewProvider/TreeViewContext.d.ts +1 -2
  35. package/internals/TreeViewProvider/TreeViewContext.js +1 -14
  36. package/internals/TreeViewProvider/TreeViewProvider.types.d.ts +3 -3
  37. package/internals/TreeViewProvider/useTreeViewContext.js +7 -1
  38. package/internals/corePlugins/corePlugins.d.ts +1 -1
  39. package/internals/corePlugins/corePlugins.js +1 -1
  40. package/internals/corePlugins/useTreeViewInstanceEvents/useTreeViewInstanceEvents.d.ts +0 -5
  41. package/internals/corePlugins/useTreeViewInstanceEvents/useTreeViewInstanceEvents.js +0 -6
  42. package/internals/hooks/useLazyRef.d.ts +2 -0
  43. package/internals/hooks/useLazyRef.js +11 -0
  44. package/internals/hooks/useOnMount.d.ts +2 -0
  45. package/internals/hooks/useOnMount.js +7 -0
  46. package/internals/hooks/useTimeout.d.ts +9 -0
  47. package/internals/hooks/useTimeout.js +28 -0
  48. package/internals/models/plugin.d.ts +23 -0
  49. package/internals/models/treeView.d.ts +5 -1
  50. package/internals/plugins/defaultPlugins.d.ts +3 -2
  51. package/internals/plugins/defaultPlugins.js +2 -1
  52. package/internals/plugins/useTreeViewContextValueBuilder/useTreeViewContextValueBuilder.js +8 -6
  53. package/internals/plugins/useTreeViewContextValueBuilder/useTreeViewContextValueBuilder.types.d.ts +1 -6
  54. package/internals/plugins/useTreeViewExpansion/useTreeViewExpansion.js +26 -17
  55. package/internals/plugins/useTreeViewExpansion/useTreeViewExpansion.types.d.ts +12 -5
  56. package/internals/plugins/useTreeViewFocus/useTreeViewFocus.js +13 -6
  57. package/internals/plugins/useTreeViewFocus/useTreeViewFocus.types.d.ts +4 -1
  58. package/internals/plugins/useTreeViewId/index.d.ts +2 -0
  59. package/internals/plugins/useTreeViewId/index.js +1 -0
  60. package/internals/plugins/useTreeViewId/useTreeViewId.d.ts +3 -0
  61. package/internals/plugins/useTreeViewId/useTreeViewId.js +18 -0
  62. package/internals/plugins/useTreeViewId/useTreeViewId.types.d.ts +17 -0
  63. package/internals/plugins/useTreeViewId/useTreeViewId.types.js +1 -0
  64. package/internals/plugins/useTreeViewJSXNodes/index.d.ts +2 -0
  65. package/internals/plugins/useTreeViewJSXNodes/index.js +1 -0
  66. package/internals/plugins/useTreeViewJSXNodes/useTreeViewJSXNodes.d.ts +3 -0
  67. package/internals/plugins/useTreeViewJSXNodes/useTreeViewJSXNodes.js +114 -0
  68. package/internals/plugins/useTreeViewJSXNodes/useTreeViewJSXNodes.types.d.ts +16 -0
  69. package/internals/plugins/useTreeViewJSXNodes/useTreeViewJSXNodes.types.js +1 -0
  70. package/internals/plugins/useTreeViewKeyboardNavigation/useTreeViewKeyboardNavigation.js +20 -9
  71. package/internals/plugins/useTreeViewKeyboardNavigation/useTreeViewKeyboardNavigation.types.d.ts +5 -2
  72. package/internals/plugins/useTreeViewNodes/useTreeViewNodes.js +83 -18
  73. package/internals/plugins/useTreeViewNodes/useTreeViewNodes.types.d.ts +48 -5
  74. package/internals/plugins/useTreeViewSelection/useTreeViewSelection.d.ts +1 -1
  75. package/internals/plugins/useTreeViewSelection/useTreeViewSelection.js +41 -28
  76. package/internals/plugins/useTreeViewSelection/useTreeViewSelection.types.d.ts +15 -8
  77. package/internals/useTreeView/useTreeView.js +40 -3
  78. package/internals/useTreeView/useTreeView.types.d.ts +2 -1
  79. package/internals/utils/warning.d.ts +1 -0
  80. package/internals/utils/warning.js +14 -0
  81. package/legacy/RichTreeView/RichTreeView.js +317 -0
  82. package/legacy/RichTreeView/RichTreeView.types.js +1 -0
  83. package/legacy/RichTreeView/index.js +3 -0
  84. package/legacy/RichTreeView/richTreeViewClasses.js +6 -0
  85. package/legacy/SimpleTreeView/SimpleTreeView.js +264 -0
  86. package/legacy/SimpleTreeView/SimpleTreeView.plugins.js +6 -0
  87. package/legacy/SimpleTreeView/SimpleTreeView.types.js +1 -0
  88. package/legacy/SimpleTreeView/index.js +3 -0
  89. package/legacy/SimpleTreeView/simpleTreeViewClasses.js +6 -0
  90. package/legacy/TreeItem/TreeItem.js +49 -103
  91. package/legacy/TreeItem/index.js +2 -2
  92. package/legacy/TreeItem/useTreeItem.js +5 -5
  93. package/legacy/TreeView/TreeView.js +80 -82
  94. package/legacy/index.js +5 -2
  95. package/legacy/internals/TreeViewProvider/TreeViewContext.js +1 -14
  96. package/legacy/internals/TreeViewProvider/useTreeViewContext.js +5 -1
  97. package/legacy/internals/corePlugins/corePlugins.js +1 -1
  98. package/legacy/internals/corePlugins/useTreeViewInstanceEvents/useTreeViewInstanceEvents.js +0 -6
  99. package/legacy/internals/hooks/useLazyRef.js +11 -0
  100. package/legacy/internals/hooks/useOnMount.js +7 -0
  101. package/legacy/internals/hooks/useTimeout.js +38 -0
  102. package/legacy/internals/plugins/defaultPlugins.js +2 -1
  103. package/legacy/internals/plugins/useTreeViewContextValueBuilder/useTreeViewContextValueBuilder.js +11 -8
  104. package/legacy/internals/plugins/useTreeViewExpansion/useTreeViewExpansion.js +26 -17
  105. package/legacy/internals/plugins/useTreeViewFocus/useTreeViewFocus.js +13 -6
  106. package/legacy/internals/plugins/useTreeViewId/index.js +1 -0
  107. package/legacy/internals/plugins/useTreeViewId/useTreeViewId.js +21 -0
  108. package/legacy/internals/plugins/useTreeViewId/useTreeViewId.types.js +1 -0
  109. package/legacy/internals/plugins/useTreeViewJSXNodes/index.js +1 -0
  110. package/legacy/internals/plugins/useTreeViewJSXNodes/useTreeViewJSXNodes.js +120 -0
  111. package/legacy/internals/plugins/useTreeViewJSXNodes/useTreeViewJSXNodes.types.js +1 -0
  112. package/legacy/internals/plugins/useTreeViewKeyboardNavigation/useTreeViewKeyboardNavigation.js +20 -9
  113. package/legacy/internals/plugins/useTreeViewNodes/useTreeViewNodes.js +89 -20
  114. package/legacy/internals/plugins/useTreeViewSelection/useTreeViewSelection.js +45 -28
  115. package/legacy/internals/useTreeView/useTreeView.js +39 -3
  116. package/legacy/internals/utils/warning.js +15 -0
  117. package/legacy/models/index.js +1 -0
  118. package/legacy/models/items.js +1 -0
  119. package/models/index.d.ts +1 -0
  120. package/models/index.js +1 -0
  121. package/models/items.d.ts +7 -0
  122. package/models/items.js +1 -0
  123. package/models/package.json +6 -0
  124. package/modern/RichTreeView/RichTreeView.js +322 -0
  125. package/modern/RichTreeView/RichTreeView.types.js +1 -0
  126. package/modern/RichTreeView/index.js +3 -0
  127. package/modern/RichTreeView/richTreeViewClasses.js +6 -0
  128. package/modern/SimpleTreeView/SimpleTreeView.js +267 -0
  129. package/modern/SimpleTreeView/SimpleTreeView.plugins.js +5 -0
  130. package/modern/SimpleTreeView/SimpleTreeView.types.js +1 -0
  131. package/modern/SimpleTreeView/index.js +3 -0
  132. package/modern/SimpleTreeView/simpleTreeViewClasses.js +6 -0
  133. package/modern/TreeItem/TreeItem.js +44 -88
  134. package/modern/TreeItem/index.js +2 -2
  135. package/modern/TreeItem/useTreeItem.js +5 -5
  136. package/modern/TreeView/TreeView.js +80 -87
  137. package/modern/index.js +5 -2
  138. package/modern/internals/TreeViewProvider/TreeViewContext.js +1 -14
  139. package/modern/internals/TreeViewProvider/useTreeViewContext.js +7 -1
  140. package/modern/internals/corePlugins/corePlugins.js +1 -1
  141. package/modern/internals/corePlugins/useTreeViewInstanceEvents/useTreeViewInstanceEvents.js +0 -6
  142. package/modern/internals/hooks/useLazyRef.js +11 -0
  143. package/modern/internals/hooks/useOnMount.js +7 -0
  144. package/modern/internals/hooks/useTimeout.js +28 -0
  145. package/modern/internals/plugins/defaultPlugins.js +2 -1
  146. package/modern/internals/plugins/useTreeViewContextValueBuilder/useTreeViewContextValueBuilder.js +8 -6
  147. package/modern/internals/plugins/useTreeViewExpansion/useTreeViewExpansion.js +26 -17
  148. package/modern/internals/plugins/useTreeViewFocus/useTreeViewFocus.js +12 -6
  149. package/modern/internals/plugins/useTreeViewId/index.js +1 -0
  150. package/modern/internals/plugins/useTreeViewId/useTreeViewId.js +18 -0
  151. package/modern/internals/plugins/useTreeViewId/useTreeViewId.types.js +1 -0
  152. package/modern/internals/plugins/useTreeViewJSXNodes/index.js +1 -0
  153. package/modern/internals/plugins/useTreeViewJSXNodes/useTreeViewJSXNodes.js +113 -0
  154. package/modern/internals/plugins/useTreeViewJSXNodes/useTreeViewJSXNodes.types.js +1 -0
  155. package/modern/internals/plugins/useTreeViewKeyboardNavigation/useTreeViewKeyboardNavigation.js +19 -9
  156. package/modern/internals/plugins/useTreeViewNodes/useTreeViewNodes.js +82 -18
  157. package/modern/internals/plugins/useTreeViewSelection/useTreeViewSelection.js +41 -28
  158. package/modern/internals/useTreeView/useTreeView.js +40 -3
  159. package/modern/internals/utils/warning.js +14 -0
  160. package/modern/models/index.js +1 -0
  161. package/modern/models/items.js +1 -0
  162. package/node/RichTreeView/RichTreeView.js +330 -0
  163. package/node/RichTreeView/RichTreeView.types.js +5 -0
  164. package/node/RichTreeView/index.js +27 -0
  165. package/node/RichTreeView/richTreeViewClasses.js +14 -0
  166. package/node/SimpleTreeView/SimpleTreeView.js +275 -0
  167. package/node/SimpleTreeView/SimpleTreeView.plugins.js +11 -0
  168. package/node/SimpleTreeView/SimpleTreeView.types.js +5 -0
  169. package/node/SimpleTreeView/index.js +27 -0
  170. package/node/SimpleTreeView/simpleTreeViewClasses.js +14 -0
  171. package/node/TreeItem/TreeItem.js +44 -88
  172. package/node/TreeItem/index.js +11 -15
  173. package/node/TreeItem/useTreeItem.js +5 -5
  174. package/node/TreeView/TreeView.js +80 -87
  175. package/node/index.js +38 -2
  176. package/node/internals/TreeViewProvider/TreeViewContext.js +2 -15
  177. package/node/internals/TreeViewProvider/useTreeViewContext.js +7 -1
  178. package/node/internals/corePlugins/corePlugins.js +1 -1
  179. package/node/internals/corePlugins/useTreeViewInstanceEvents/useTreeViewInstanceEvents.js +0 -6
  180. package/node/internals/hooks/useLazyRef.js +19 -0
  181. package/node/internals/hooks/useOnMount.js +15 -0
  182. package/node/internals/hooks/useTimeout.js +34 -0
  183. package/node/internals/plugins/defaultPlugins.js +2 -1
  184. package/node/internals/plugins/useTreeViewContextValueBuilder/useTreeViewContextValueBuilder.js +8 -7
  185. package/node/internals/plugins/useTreeViewExpansion/useTreeViewExpansion.js +26 -17
  186. package/node/internals/plugins/useTreeViewFocus/useTreeViewFocus.js +12 -6
  187. package/node/internals/plugins/useTreeViewId/index.js +12 -0
  188. package/node/internals/plugins/useTreeViewId/useTreeViewId.js +28 -0
  189. package/node/internals/plugins/useTreeViewId/useTreeViewId.types.js +5 -0
  190. package/node/internals/plugins/useTreeViewJSXNodes/index.js +12 -0
  191. package/node/internals/plugins/useTreeViewJSXNodes/useTreeViewJSXNodes.js +123 -0
  192. package/node/internals/plugins/useTreeViewJSXNodes/useTreeViewJSXNodes.types.js +5 -0
  193. package/node/internals/plugins/useTreeViewKeyboardNavigation/useTreeViewKeyboardNavigation.js +19 -9
  194. package/node/internals/plugins/useTreeViewNodes/useTreeViewNodes.js +82 -18
  195. package/node/internals/plugins/useTreeViewSelection/useTreeViewSelection.js +41 -28
  196. package/node/internals/useTreeView/useTreeView.js +40 -3
  197. package/node/internals/utils/warning.js +21 -0
  198. package/node/models/index.js +16 -0
  199. package/node/models/items.js +5 -0
  200. package/package.json +8 -7
  201. package/themeAugmentation/components.d.ts +14 -4
  202. package/themeAugmentation/overrides.d.ts +8 -4
  203. package/themeAugmentation/props.d.ts +7 -3
package/CHANGELOG.md CHANGED
@@ -3,6 +3,1747 @@
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
+ ## 7.0.0-alpha.7
7
+
8
+ _Jan 5, 2024_
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
+ - 🎁 New component to create a Tree View from a structured data source:
13
+
14
+ You can now directly pass your data to the `RichTreeView` component instead of manually converting it into JSX `TreeItem` components:
15
+
16
+ ```tsx
17
+ const ITEMS = [
18
+ {
19
+ id: 'node-1',
20
+ label: 'Node 1',
21
+ children: [
22
+ { id: 'node-1-1', label: Node 1.1' },
23
+ { id: 'node-1-2', label: Node 1.2' },
24
+ ],
25
+ },
26
+ {
27
+ id: 'node-2',
28
+ label: 'Node 2',
29
+ },
30
+ ];
31
+
32
+ <RichTreeView
33
+ items={MUI_X_PRODUCTS}
34
+ defaultCollapseIcon={<ExpandMoreIcon />}
35
+ defaultExpandIcon={<ChevronRightIcon />}
36
+ />
37
+ ```
38
+
39
+ - 🌍 Improve Czech (cs-CZ) locale on the Data Grid
40
+ - 🐞 Bugfixes
41
+
42
+ ### Data Grid
43
+
44
+ #### `@mui/x-data-grid@7.0.0-alpha.7`
45
+
46
+ - [DataGrid] Don't evaluate `hasEval` when `disableEval` is set (#11516) @reihwald
47
+ - [DataGrid] follow warning message guideline for `autoPageSize` and `autoHeight` (#11585) @Sboonny
48
+ - [DataGrid] Replace `eval` with `new Function` (#11557) @oliviertassinari
49
+ - [DataGrid] Warn devs when `autoPageSize` is used with `autoHeight` (#11554) @Sboonny
50
+ - [l10n] Improve Czech (cs-CZ) locale (#11526) @fdebef
51
+
52
+ #### `@mui/x-data-grid-pro@7.0.0-alpha.7` [![pro](https://mui.com/r/x-pro-svg)](https://mui.com/r/x-pro-svg-link 'Pro plan')
53
+
54
+ Same changes as in `@mui/x-data-grid@7.0.0-alpha.7`.
55
+
56
+ #### `@mui/x-data-grid-premium@7.0.0-alpha.7` [![premium](https://mui.com/r/x-premium-svg)](https://mui.com/r/x-premium-svg-link 'Premium plan')
57
+
58
+ Same changes as in `@mui/x-data-grid-pro@7.0.0-alpha.7`.
59
+
60
+ ### Date Pickers
61
+
62
+ #### `@mui/x-date-pickers@7.0.0-alpha.7`
63
+
64
+ - [pickers] Fix views management (#11419) @LukasTy
65
+
66
+ #### `@mui/x-date-pickers-pro@7.0.0-alpha.7` [![pro](https://mui.com/r/x-pro-svg)](https://mui.com/r/x-pro-svg-link 'Pro plan')
67
+
68
+ Same changes as in `@mui/x-date-pickers@7.0.0-alpha.7`.
69
+
70
+ ### Charts / `@mui/x-charts@7.0.0-alpha.7`
71
+
72
+ - [charts] Add `arcLabelRadius` property (#11487) @alexfauquette
73
+ - [charts] Fix `null` in line chart using dataset (#11550) @alexfauquette
74
+
75
+ ### Tree View
76
+
77
+ #### Breaking changes
78
+
79
+ - The expansion props have been renamed to better describe their behaviors:
80
+
81
+ | Old name | New name |
82
+ | :---------------- | :---------------------- |
83
+ | `onNodeToggle` | `onExpandedNodesChange` |
84
+ | `expanded` | `expandedNodes` |
85
+ | `defaultExpanded` | `defaultExpandedNodes` |
86
+
87
+ ```diff
88
+ <TreeView
89
+ - onNodeToggle={handleExpansionChange}
90
+ + onExpandedNodesChange={handleExpansionChange}
91
+
92
+ - expanded={expandedNodes}
93
+ + expandedNodes={expandedNodes}
94
+
95
+ - defaultExpanded={defaultExpandedNodes}
96
+ + defaultExpandedNodes={defaultExpandedNodes}
97
+ />
98
+ ```
99
+
100
+ - The selection props have been renamed to better describe their behaviors:
101
+
102
+ | Old name | New name |
103
+ | :---------------- | :---------------------- |
104
+ | `onNodeSelect` | `onSelectedNodesChange` |
105
+ | `selected` | `selectedNodes` |
106
+ | `defaultSelected` | `defaultSelectedNodes` |
107
+
108
+ ```diff
109
+ <TreeView
110
+ - onNodeSelect={handleSelectionChange}
111
+ + onSelectedNodesChange={handleSelectionChange}
112
+
113
+ - selected={selectedNodes}
114
+ + selectedNodes={selectedNodes}
115
+
116
+ - defaultSelected={defaultSelectedNodes}
117
+ + defaultSelectedNodes={defaultSelectedNodes}
118
+ />
119
+ ```
120
+
121
+ #### `@mui/x-tree-view@7.0.0-alpha.7`
122
+
123
+ - [TreeView] Improve the expansion API (#11476) @flaviendelangle
124
+ - [TreeView] Improve the selection API (#11560) @flaviendelangle
125
+ - [TreeView] Introduce the `items` prop (#11059) @flaviendelangle
126
+
127
+ ### Docs
128
+
129
+ - [docs] Add example for TreeView `onNodeExpansionToggle` prop (#11547) @flaviendelangle
130
+ - [docs] Clarify Pickers usage with Luxon (#11545) @LukasTy
131
+ - [docs] Complete transition to next branch (#11521) @oliviertassinari
132
+ - [docs] Fix 404 links in the docs @oliviertassinari
133
+ - [docs] Fix over page fetching @oliviertassinari
134
+ - [docs] Lint `next.config.js` (#11514) @oliviertassinari
135
+
136
+ ### Core
137
+
138
+ - [core] Fix release changelog (#11496) @romgrk
139
+ - [core] Fix use of ::before & ::after (#11515) @oliviertassinari
140
+ - [core] Localize the issue template to MUI X (#11511) @oliviertassinari
141
+ - [core] Regen api files (#11542) @flaviendelangle
142
+ - [core] Remove issue emoji @oliviertassinari
143
+ - [core] Sync the release instructions with MUI Core @oliviertassinari
144
+ - [core] Yaml format match most common convention @oliviertassinari
145
+
146
+ ## 7.0.0-alpha.6
147
+
148
+ _Dec 22, 2023_
149
+
150
+ We'd like to offer a big thanks to the 6 contributors who made this release possible. Here are some highlights ✨:
151
+
152
+ - 🎁 Data Grid now supports `Date` objects in the `filterModel`
153
+ - 🌍 Improve Russian (ru-RU) locale on the Data Grid
154
+ - 🐞 Bugfixes
155
+
156
+ ### Data Grid
157
+
158
+ #### Breaking changes
159
+
160
+ - The filter panel no longer uses the native version of the [`Select`](https://mui.com/material-ui/react-select/) component for all components.
161
+ - The `getOptionValue` and `getOptionLabel` props were removed from the following components:
162
+
163
+ - `GridEditSingleSelectCell`
164
+ - `GridFilterInputSingleSelect`
165
+ - `GridFilterInputMultipleSingleSelect`
166
+
167
+ Use the `getOptionValue` and `getOptionLabel` properties on the `singleSelect` column definition instead:
168
+
169
+ ```tsx
170
+ const column: GridColDef = {
171
+ type: 'singleSelect',
172
+ field: 'country',
173
+ valueOptions: [
174
+ { code: 'BR', name: 'Brazil' },
175
+ { code: 'FR', name: 'France' },
176
+ ],
177
+ getOptionValue: (value: any) => value.code,
178
+ getOptionLabel: (value: any) => value.name,
179
+ };
180
+ ```
181
+ - The `filterModel` now supports `Date` objects as values for `date` and `dateTime` column types.
182
+ The `filterModel` still accepts strings as values for `date` and `dateTime` column types,
183
+ but all updates to the `filterModel` coming from the UI (e.g. filter panel) will set the value as a `Date` object.
184
+
185
+ #### `@mui/x-data-grid@7.0.0-alpha.6`
186
+
187
+ - [DataGrid] Fix typos in the JSDoc (#11451) @flaviendelangle
188
+ - [DataGrid] Make `checkboxSelection` respect the `disableMultipleRowSelection` prop (#11448) @cherniavskii
189
+ - [DataGrid] Support `Date` objects in filter model (#7069) @cherniavskii
190
+ - [DataGrid] Use non-native `Select`s by default (#11330) @cherniavskii
191
+ - [l10n] Improve Russian (ru-RU) locale (#11441) @wensiet
192
+
193
+ #### `@mui/x-data-grid-pro@7.0.0-alpha.6` [![pro](https://mui.com/r/x-pro-svg)](https://mui.com/r/x-pro-svg-link 'Pro plan')
194
+
195
+ Same changes as in `@mui/x-data-grid@7.0.0-alpha.6`.
196
+
197
+ #### `@mui/x-data-grid-premium@7.0.0-alpha.6` [![premium](https://mui.com/r/x-premium-svg)](https://mui.com/r/x-premium-svg-link 'Premium plan')
198
+
199
+ Same changes as in `@mui/x-data-grid-pro@7.0.0-alpha.6`.
200
+
201
+ ### Date Pickers
202
+
203
+ #### `@mui/x-date-pickers@7.0.0-alpha.6`
204
+
205
+ - [fields] Adjust `PickersInput` sizing styles (#11392) @noraleonte
206
+ - [fields] Fix section pasting (#11447) @LukasTy
207
+ - [pickers] Add `PickersTextField` `standard` and `filled` variants (#11250) @noraleonte
208
+ - [pickers] Cleanup error messages in `PickersSectionList` (#11449) @flaviendelangle
209
+ - [pickers] Create new component `PickersSectionList` (#11352) @flaviendelangle
210
+
211
+ #### `@mui/x-date-pickers-pro@7.0.0-alpha.6` [![pro](https://mui.com/r/x-pro-svg)](https://mui.com/r/x-pro-svg-link 'Pro plan')
212
+
213
+ Same changes as in `@mui/x-date-pickers@7.0.0-alpha.6`.
214
+
215
+ ### Charts / `@mui/x-charts@7.0.0-alpha.5`
216
+
217
+ - [charts] Allow percentage values for pie chart center and radius (#11464) @alexfauquette
218
+ - [charts] Improve dataset typing (#11372) @alexfauquette
219
+ - [charts] Make error message more explicit (#11457) @alexfauquette
220
+ - [charts] Make the helper `ChartsText` component public (#11370) @alexfauquette
221
+
222
+ ### Docs
223
+
224
+ - [docs] Document `false` default values for boolean props (#11477) @cherniavskii
225
+ - [docs] Improve Pickers `name` prop examples (#11422) @LukasTy
226
+ - [docs] Limit `date-fns` package to v2 in codesandbox (#11463) @LukasTy
227
+
228
+ ### Core
229
+
230
+ - [core] Add missing breaking changes to changelog (#11420) @MBilalShafi
231
+ - [core] Cherry pick follow up (#11469) @LukasTy
232
+ - [core] Fix `cherry-pick` action (#11446) @LukasTy
233
+ - [core] Fix security regressions in cherry-pick-next-to-master.yml (#11482) @MBilalShafi
234
+ - [test] Reload the page if its blank and there are no links to the remaining tests (#11466) @cherniavskii
235
+
236
+ ## 7.0.0-alpha.5
237
+
238
+ _Dec 14, 2023_
239
+
240
+ We'd like to offer a big thanks to the 9 contributors who made this release possible. Here are some highlights ✨:
241
+
242
+ - 💫 New recipe added for the Data Grid
243
+ - 🌍 Improve Swedish (sv-SE) and Urdu (ur-PK) locales on the Data Grid
244
+ - 🐞 Bugfixes
245
+
246
+ ### Data Grid
247
+
248
+ #### Breaking changes
249
+
250
+ - The `instanceId` prop is now required for state selectors.
251
+ This prop is used to distinguish between multiple Data Grid instances on the same page.
252
+ See [migration docs](https://next.mui.com/x/migration/migration-data-grid-v6/#instanceid-prop-is-required-for-state-selectors) for more details.
253
+
254
+ #### `@mui/x-data-grid@7.0.0-alpha.5`
255
+
256
+ - [DataGrid] Make `instanceId` required for state selectors (#11395) @cherniavskii
257
+ - [DataGrid] Recipe for grouped rows autosizing (#11401) @michelengelen
258
+ - [l10n] Improve Swedish (sv-SE) locale (#11373) @fredrikcarlbom
259
+ - [l10n] Improve Urdu (ur-PK) locale (#11400) @MBilalShafi
260
+
261
+ #### `@mui/x-data-grid-pro@7.0.0-alpha.5` [![pro](https://mui.com/r/x-pro-svg)](https://mui.com/r/x-pro-svg-link 'Pro plan')
262
+
263
+ Same changes as in `@mui/x-data-grid@7.0.0-alpha.5`.
264
+
265
+ #### `@mui/x-data-grid-premium@7.0.0-alpha.5` [![premium](https://mui.com/r/x-premium-svg)](https://mui.com/r/x-premium-svg-link 'Premium plan')
266
+
267
+ Same changes as in `@mui/x-data-grid-pro@7.0.0-alpha.5`.
268
+
269
+ ### Date Pickers
270
+
271
+ #### Breaking changes
272
+
273
+ - The slot interfaces got renamed to match with `@mui/base` naming.
274
+ The `SlotsComponent` suffix has been replaced with `Slots` and `SlotsComponentsProps` with `SlotProps`.
275
+
276
+ ```diff
277
+ - DateCalendarSlotsComponent
278
+ + DateCalendarSlots
279
+ - DateCalendarSlotsComponentsProps
280
+ + DateCalendarSlotProps
281
+ ```
282
+
283
+ - Move `inputRef` inside the props passed to the field hooks
284
+
285
+ The field hooks now only receive the props instead of an object containing both the props and the `inputRef`.
286
+
287
+ ```diff
288
+ - const { inputRef, ...otherProps } = props
289
+ - const fieldResponse = useDateField({ props: otherProps, inputRef });
290
+ + const fieldResponse = useDateField(props);
291
+ ```
292
+
293
+ If you are using a multi input range field hook, the same applies to `startInputRef` and `endInputRef` params
294
+
295
+ ```diff
296
+ - const { inputRef: startInputRef, ...otherStartTextFieldProps } = startTextFieldProps
297
+ - const { inputRef: endInputRef, ...otherEndTextFieldProps } = endTextFieldProps
298
+
299
+ const fieldResponse = useMultiInputDateRangeField({
300
+ sharedProps,
301
+ - startTextFieldProps: otherStartTextFieldProps,
302
+ - endTextFieldProps: otherEndTextFieldProps,
303
+ - startInputRef
304
+ - endInputRef,
305
+ + startTextFieldProps,
306
+ + endTextFieldProps
307
+ });
308
+ ```
309
+
310
+ - Rename the ref returned by the field hooks to `inputRef`
311
+
312
+ When used with the v6 TextField approach (where the input is an `<input />` HTML element), the field hooks return a ref that needs to be passed to the `<input />` element.
313
+ This ref was previously named `ref` and has been renamed `inputRef` for extra clarity.
314
+
315
+ ```diff
316
+ const fieldResponse = useDateField(props);
317
+
318
+ - return <input ref={fieldResponse.ref} />
319
+ + return <input ref={fieldResponse.inputRef} />
320
+ ```
321
+
322
+ If you are using a multi input range field hook, the same applies to the ref in the `startDate` and `endDate` objects
323
+
324
+ ```diff
325
+ const fieldResponse = useDateField(props);
326
+
327
+ return (
328
+ <div>
329
+ - <input ref={fieldResponse.startDate.ref} />
330
+ + <input ref={fieldResponse.startDate.inputRef} />
331
+ <span>–</span>
332
+ - <input ref={fieldResponse.endDate.ref} />
333
+ + <input ref={fieldResponse.endDate.inputRef} />
334
+ </div>
335
+ )
336
+ ```
337
+
338
+ - Restructure the API of `useClearableField`
339
+
340
+ The `useClearableField` hook API has been simplified to now take a `props` parameter instead of a `fieldProps`, `InputProps`, `clearable`, `onClear`, `slots` and `slotProps` parameters.
341
+
342
+ You should now be able to directly pass the returned value from your field hook (e.g: `useDateField`) to `useClearableField`
343
+
344
+ ```diff
345
+ const fieldResponse = useDateField(props);
346
+
347
+ - const { InputProps, onClear, clearable, slots, slotProps, ...otherFieldProps } = fieldResponse
348
+ - const { InputProps: ProcessedInputProps, fieldProps: processedFieldProps } = useClearableField({
349
+ - fieldProps: otherFieldProps,
350
+ - InputProps,
351
+ - clearable,
352
+ - onClear,
353
+ - slots,
354
+ - slotProps,
355
+ - });
356
+ -
357
+ - return <MyCustomTextField {...processedFieldProps} InputProps={ProcessedInputProps} />
358
+
359
+ + const processedFieldProps = useClearableField(fieldResponse);
360
+ +
361
+ + return <MyCustomTextField {...processedFieldProps} />
362
+ ```
363
+
364
+ #### `@mui/x-date-pickers@7.0.0-alpha.5`
365
+
366
+ - [fields] Support empty sections (#10307) @flaviendelangle
367
+ - [pickers] Fix field types to avoid error on latest `@types/react` version (#11397) @LukasTy
368
+ - [pickers] Remove all relative imports to the internals index file (#11375) @flaviendelangle
369
+ - [pickers] Rename slots interfaces (#11339) @alexfauquette
370
+ - [pickers] Simplify the API of the field hooks (#11371) @flaviendelangle
371
+ - [pickers] Support name prop (#11025) @gitstart
372
+
373
+ #### `@mui/x-date-pickers-pro@7.0.0-alpha.5` [![pro](https://mui.com/r/x-pro-svg)](https://mui.com/r/x-pro-svg-link 'Pro plan')
374
+
375
+ Same changes as in `@mui/x-date-pickers@7.0.0-alpha.5`, plus:
376
+
377
+ - [DateRangePicker] Fix `autoFocus` behavior (#11273) @kealjones-wk
378
+
379
+ ### Charts / `@mui/x-charts@7.0.0-alpha.5`
380
+
381
+ - [charts] Fix size overflow (#11385) @alexfauquette
382
+
383
+ ### `@mui/x-codemod@7.0.0-alpha.5`
384
+
385
+ - [codemod] Add `cellSelection` codemod and update migration guide (#11353) @MBilalShafi
386
+
387
+ ### Docs
388
+
389
+ - [docs] Respect GoT books (@janoma) (#11387) @alexfauquette
390
+
391
+ ### Core
392
+
393
+ - [core] Automate cherry-pick of PRs from `next` -> `master` (#11382) @MBilalShafi
394
+ - [github] Update `no-response` workflow (#11369) @MBilalShafi
395
+ - [test] Fix flaky screenshots (#11388) @cherniavskii
396
+
397
+ ## 7.0.0-alpha.4
398
+
399
+ _Dec 8, 2023_
400
+
401
+ We'd like to offer a big thanks to the 11 contributors who made this release possible. Here are some highlights ✨:
402
+
403
+ - 🚀 The scatter charts now use voronoi to trigger items
404
+
405
+ Users needed to hover the item to highlight the scatter item or show the tooltip.
406
+ Now they can interact with data by triggering the closest element. See the [docs page](https://next.mui.com/x/react-charts/scatter/#interaction) for more info.
407
+
408
+ - 📚 Add [Pickers FAQ page](https://next.mui.com/x/react-date-pickers/faq/)
409
+ - 🎉 The Data Grid Header filters feature is now stable
410
+ - 🌍 Improve Danish (da-DK) locale on Data Grid
411
+ - 🐞 Bugfixes
412
+
413
+ ### Data Grid
414
+
415
+ #### Breaking changes
416
+
417
+ - The header filters feature is now stable. `unstable_` prefix is removed from prop `headerFilters` and related exports.
418
+ See [migration docs](https://next.mui.com/x/migration/migration-data-grid-v6/#filtering) for more details.
419
+
420
+ - The `GridColDef['type']` has been narrowed down to only accept the built-in column types.
421
+ TypeScript users need to use the `GridColDef` interface when defining columns:
422
+
423
+ ```tsx
424
+ // 🛑 `type` is inferred as `string` and is too wide
425
+ const columns = [{ type: 'number', field: 'id' }];
426
+ <DataGrid columns={columns} />;
427
+
428
+ // ✅ `type` is `'number'`
429
+ const columns: GridColDef[] = [{ type: 'number', field: 'id' }];
430
+ <DataGrid columns={columns} />;
431
+
432
+ // ✅ Alternalively, `as const` can be used to narrow down the type
433
+ const columns = [{ type: 'number' as const, field: 'id' }];
434
+ <DataGrid columns={columns} />;
435
+ ```
436
+
437
+ #### `@mui/x-data-grid@7.0.0-alpha.4`
438
+
439
+ - [DataGrid] Added a guard for reorder cells (#11159) @michelengelen
440
+ - [DataGrid] Narrow down `GridColDef['type']` (#11270) @cherniavskii
441
+ - [l10n] Improve Danish (da-DK) locale (#11304) @goibon
442
+
443
+ #### `@mui/x-data-grid-pro@7.0.0-alpha.4` [![pro](https://mui.com/r/x-pro-svg)](https://mui.com/r/x-pro-svg-link 'Pro plan')
444
+
445
+ Same changes as in `@mui/x-data-grid@7.0.0-alpha.4`, plus:
446
+
447
+ - [DataGridPro] Make header filters feature stable (#11243) @MBilalShafi
448
+
449
+ #### `@mui/x-data-grid-premium@7.0.0-alpha.4` [![premium](https://mui.com/r/x-premium-svg)](https://mui.com/r/x-premium-svg-link 'Premium plan')
450
+
451
+ Same changes as in `@mui/x-data-grid-pro@7.0.0-alpha.4`.
452
+
453
+ ### Date Pickers
454
+
455
+ #### `@mui/x-date-pickers@7.0.0-alpha.4`
456
+
457
+ - [fields] Rework `PickersTextField` (#11258) @flaviendelangle
458
+ - [pickers] Fix `MultiSectionDigitalClock` issues (#11305) @LukasTy
459
+ - [pickers] Fix views height consistency (#11337) @LukasTy
460
+
461
+ #### `@mui/x-date-pickers-pro@7.0.0-alpha.4` [![pro](https://mui.com/r/x-pro-svg)](https://mui.com/r/x-pro-svg-link 'Pro plan')
462
+
463
+ Same changes as in `@mui/x-date-pickers@7.0.0-alpha.4`.
464
+
465
+ ### Charts / `@mui/x-charts@7.0.0-alpha.4`
466
+
467
+ - [charts] Remove animation on sparkline (#11311) @oliviertassinari
468
+ - [charts] Use voronoi cells to trigger interaction with scatter items (#10981) @alexfauquette
469
+ - [charts] Add `@mui/utils` as a dependency (#11351) @michelengelen
470
+
471
+ ### Docs
472
+
473
+ - [docs] Add FAQ page (#11271) @noraleonte
474
+ - [docs] Add a doc section on how to override the start of the week with each adapter (#11223) @flaviendelangle
475
+ - [docs] Added params to `onPaginationModelChange` docs (#10191) @JFBenzs
476
+ - [docs] Fix typo (#11324) @cadam11
477
+ - [docs] Improve `DemoContainer` styling coverage (#11315) @LukasTy
478
+ - [docs] General revision of the Charts docs (#11249) @danilo-leal
479
+
480
+ ## 7.0.0-alpha.3
481
+
482
+ _Dec 4, 2023_
483
+
484
+ We'd like to offer a big thanks to the 15 contributors who made this release possible. Here are some highlights ✨:
485
+
486
+ - 🚀 Support localized start of the week on pickers' `AdapterLuxon`
487
+
488
+ When using Luxon 3.4.4 or higher, the start of the week will be defined by the date locale (e.g.: Sunday for `en-US`, Monday for `fr-FR`).
489
+
490
+ - 📈 Fix a lot of Charts package issues
491
+ - 🎉 The Data Grid features Cell selection and Clipboard paste are now stable
492
+ - 🌍 Improve Bulgarian (bg-BG) locale on Data Grid
493
+ - 🐞 Bugfixes
494
+ - 📚 Documentation improvements
495
+
496
+ ### Data Grid
497
+
498
+ #### Breaking changes
499
+
500
+ - The clipboard paste feature is now enabled by default. The flag `clipboardPaste` is no longer needed to be passed to the `experimentalFeatures` prop.
501
+
502
+ - The clipboard related exports `ignoreValueFormatterDuringExport` and `splitClipboardPastedText` are no longer prefixed with `unstable_`.
503
+
504
+ - The deprecated constants `SUBMIT_FILTER_STROKE_TIME` and `SUBMIT_FILTER_DATE_STROKE_TIME` have been removed from the `DataGrid` exports. Use the [`filterDebounceMs`](https://next.mui.com/x/api/data-grid/data-grid/#DataGrid-prop-filterDebounceMs) prop to customize filter debounce time.
505
+
506
+ - The `slots.preferencesPanel` slot and the `slotProps.preferencesPanel` prop were removed. Use `slots.panel` and `slotProps.panel` instead.
507
+
508
+ - The `GridPreferencesPanel` component is not exported anymore as it wasn't meant to be used outside of the Data Grid.
509
+
510
+ - The `unstable_` prefix has been removed from the cell selection props listed below.
511
+
512
+ | Old name | New name |
513
+ | :------------------------------------ | :--------------------------- |
514
+ | `unstable_cellSelection` | `cellSelection` |
515
+ | `unstable_cellSelectionModel` | `cellSelectionModel` |
516
+ | `unstable_onCellSelectionModelChange` | `onCellSelectionModelChange` |
517
+
518
+ - The `unstable_` prefix has been removed from the cell selection API methods listed below.
519
+
520
+ | Old name | New name |
521
+ | :--------------------------------- | :------------------------ |
522
+ | `unstable_getCellSelectionModel` | `getCellSelectionModel` |
523
+ | `unstable_getSelectedCellsAsArray` | `getSelectedCellsAsArray` |
524
+ | `unstable_isCellSelected` | `isCellSelected` |
525
+ | `unstable_selectCellRange` | `selectCellRange` |
526
+ | `unstable_setCellSelectionModel` | `setCellSelectionModel` |
527
+
528
+ - The Quick Filter now ignores hidden columns by default.
529
+ See [including hidden columns](https://next.mui.com/x/react-data-grid/filtering/quick-filter/#including-hidden-columns) section for more details.
530
+
531
+ #### `@mui/x-data-grid@7.0.0-alpha.3`
532
+
533
+ - [DataGrid] Fix cell editing adding a leading "v" on paste (#9205) @prasad5795
534
+ - [DataGrid] Exclude hidden columns from quick filtering by default (#11229) @cherniavskii
535
+ - [DataGrid] Fix `onFilterModelChange` being fired with stale field value (#11000) @gitstart
536
+ - [DataGrid] Fix handling of event target in portal (#11174) @cherniavskii
537
+ - [DataGrid] Remove deprecated constants (#11233) @michelengelen
538
+ - [DataGrid] Remove the `preferencesPanel` slot (#11228) @cherniavskii
539
+ - [l10n] Improve Bulgarian (bg-BG) locale (#10856) @Kristiqn95
540
+
541
+ #### `@mui/x-data-grid-pro@7.0.0-alpha.3` [![pro](https://mui.com/r/x-pro-svg)](https://mui.com/r/x-pro-svg-link 'Pro plan')
542
+
543
+ Same changes as in `@mui/x-data-grid@7.0.0-alpha.3`.
544
+
545
+ #### `@mui/x-data-grid-premium@7.0.0-alpha.3` [![premium](https://mui.com/r/x-premium-svg)](https://mui.com/r/x-premium-svg-link 'Premium plan')
546
+
547
+ Same changes as in `@mui/x-data-grid-pro@7.0.0-alpha.3`, plus:
548
+
549
+ - [DataGridPremium] Fix aggregated column ignoring column definition changes (#11129) @cherniavskii
550
+ - [DataGridPremium] Make Cell selection feature stable (#11246) @MBilalShafi
551
+ - [DataGridPremium] Make Clipboard paste feature stable (#11248) @MBilalShafi
552
+
553
+ ### Date Pickers
554
+
555
+ #### Breaking changes
556
+
557
+ - The Date and Time Pickers now use the localized week when using `AdapterLuxon` and Luxon v3.4.4 or higher is installed.
558
+ This new behavior allows `AdapterLuxon` to have the same behavior as the other adapters.
559
+ If you want to keep the start of the week on Monday even if your locale says otherwise, you can hardcode the week settings as follows:
560
+ The Firefox browser currently does not support this behavior because the [getWeekInfo](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/Locale/getWeekInfo) API is not yet implemented.
561
+
562
+ ```ts
563
+ import { Settings } from 'luxon';
564
+
565
+ Settings.defaultWeekSettings = {
566
+ firstDay: 1,
567
+ minimalDays: Info.getMinimumDaysInFirstWeek(),
568
+ weekend: [6, 7],
569
+ };
570
+ ```
571
+
572
+ - Add new parameters to the `shortcuts` slot `onChange` callback
573
+
574
+ The `onChange` callback fired when selecting a shortcut now requires two new parameters (previously they were optional):
575
+
576
+ - The [`changeImportance`](/x/react-date-pickers/shortcuts/#behavior-when-selecting-a-shortcut) of the shortcut.
577
+ - The `item` containing the entire shortcut object.
578
+
579
+ ```diff
580
+ const CustomShortcuts = (props) => {
581
+ return (
582
+ <React.Fragment>
583
+ {props.items.map(item => {
584
+ const value = item.getValue({ isValid: props.isValid });
585
+ return (
586
+ <button
587
+ - onClick={() => onChange(value)}
588
+ + onClick={() => onChange(value, props.changeImportance ?? 'accept', item)}
589
+ >
590
+ {value}
591
+ </button>
592
+ )
593
+ }}
594
+ </React.Fragment>
595
+ )
596
+ }
597
+
598
+ <DatePicker slots={{ shortcuts: CustomShortcuts }} />
599
+ ```
600
+
601
+ - Usage of `AdapterDayjs` with the `customParseFormat` plugin
602
+ The call to `dayjs.extend(customParseFormatPlugin)` has been moved to the `AdapterDayjs` constructor. This allows users to pass custom options to this plugin before the adapter uses it.
603
+
604
+ If you are using this plugin before the rendering of the first `LocalizationProvider` component and did not call `dayjs.extend` in your own codebase, you will need to manually extend `dayjs`:
605
+
606
+ ```tsx
607
+ import dayjs from 'dayjs';
608
+ import customParseFormatPlugin from 'dayjs/plugin/customParseFormat';
609
+
610
+ dayjs.extend(customParseFormatPlugin);
611
+ ```
612
+
613
+ The other plugins are still added before the adapter initialization.
614
+
615
+ #### `@mui/x-date-pickers@7.0.0-alpha.3`
616
+
617
+ - [pickers] Expand field placeholder methods flexibility by providing `format` parameter (#11130) @LukasTy
618
+ - [pickers] Make `changeImportance` and `shortcut` mandatory in `PickersShortcuts` (#10941) @flaviendelangle
619
+ - [pickers] Moved extend with `customParseFormat` to constructor (#11151) @michelengelen
620
+ - [pickers] POC: `PickersTextField` styling - outlined variant (#10778) @noraleonte
621
+ - [pickers] Support localized start of the week on `AdapterLuxon` (#10964) @flaviendelangle
622
+ - [pickers] Use adapter methods instead of date library ones whenever possible (#11142) @flaviendelangle
623
+
624
+ #### `@mui/x-date-pickers-pro@7.0.0-alpha.3` [![pro](https://mui.com/r/x-pro-svg)](https://mui.com/r/x-pro-svg-link 'Pro plan')
625
+
626
+ Same changes as in `@mui/x-date-pickers@7.0.0-alpha.3`.
627
+
628
+ ### Charts / `@mui/x-charts@7.0.0-alpha.3`
629
+
630
+ - [charts] Adjusted `defaultizeValueFormatter` util to accept an optional `series.valueFormatter` value (#11144) @michelengelen
631
+ - [charts] Apply `labelStyle` and `tickLabelStyle` props on `<ChartsYAxis />` (#11180) @akamfoad
632
+ - [charts] Fix TS config (#11259) @alexfauquette
633
+ - [charts] Fix error with empty dataset (#11063) @alexfauquette
634
+ - [charts] Fix export strategy (#11235) @alexfauquette
635
+ - [charts] Remove outdated prop-types (#11045) @alexfauquette
636
+
637
+ ### Docs
638
+
639
+ - [docs] Add `TextField` styling example to customization playground (#10812) @noraleonte
640
+ - [docs] Add a card grid to the installation page (#11177) @danilo-leal
641
+ - [docs] Add end v6 blogpost to whats new page (#10999) @joserodolfofreitas
642
+ - [docs] Add small formatting improvements to the licensing page (#11178) @danilo-leal
643
+ - [docs] Document charts composition (#10710) (#11239) @alexfauquette
644
+ - [docs] Fix <title> generation (#11182) @oliviertassinari
645
+ - [docs] Fix dead anchor link (#11265) @oliviertassinari
646
+ - [docs] Improve Data Grid togglable columns example (#11238) @MBilalShafi
647
+ - [docs] Improve the prop descriptions of `DayCalendar` (#11158) @flaviendelangle
648
+ - [docs] Move the adapter breaking changes in a collapsable block (#11205) @flaviendelangle
649
+ - [docs] Polish Next.js header description @oliviertassinari
650
+ - [docs] Remove the `newFeature` flag on v6 features (#11168) @flaviendelangle
651
+ - [docs] Simplify a bit chart demo (#11173) @oliviertassinari
652
+ - [docs] Standardize the usage of callouts in the MUI X docs (#7127) @samuelsycamore
653
+ - [docs] Adjust the Data Grid demo page design (#11231) @danilo-leal
654
+
655
+ ### Core
656
+
657
+ - [core] Make `@mui/system` a direct dependency (#11128) @LukasTy
658
+ - [core] Remove blank lines, coding style @oliviertassinari
659
+ - [core] Remove outdated `ENABLE_AD` env variable (#11181) @oliviertassinari
660
+ - [github] Do not add `plan: Pro` and `plan: Premium` labels on pro / premium issue templates (#10183) @flaviendelangle
661
+
662
+ ## 7.0.0-alpha.2
663
+
664
+ _Nov 23, 2023_
665
+
666
+ We'd like to offer a big thanks to the 10 contributors who made this release possible. Here are some highlights ✨:
667
+
668
+ - 📈 Export missing Charts props
669
+ - 🌍 Improve Arabic (ar-SD) and Hebrew (he-IL) locales on Data Grid
670
+ - 🌍 Add Macedonian (mk) locale and improve German (de-DE) locale on Pickers
671
+ - 🐞 Bugfixes
672
+ - 📚 Documentation improvements
673
+
674
+ ### Data Grid
675
+
676
+ #### `@mui/x-data-grid@7.0.0-alpha.2`
677
+
678
+ - [l10n] Improve Arabic (ar-SD) locale (#11114) @MBilalShafi
679
+ - [l10n] Improve Hebrew (he-IL) locale (#11056) (#11149) @MBilalShafi
680
+ - [DataGrid] Remove unused utilities (#11156) @flaviendelangle
681
+
682
+ #### `@mui/x-data-grid-pro@7.0.0-alpha.2` [![pro](https://mui.com/r/x-pro-svg)](https://mui.com/r/x-pro-svg-link 'Pro plan')
683
+
684
+ Same changes as in `@mui/x-data-grid@7.0.0-alpha.2`.
685
+
686
+ #### `@mui/x-data-grid-premium@7.0.0-alpha.2` [![premium](https://mui.com/r/x-premium-svg)](https://mui.com/r/x-premium-svg-link 'Premium plan')
687
+
688
+ Same changes as in `@mui/x-data-grid-pro@7.0.0-alpha.2`.
689
+
690
+ ### Date Pickers
691
+
692
+ #### Breaking changes
693
+
694
+ - The deprecated `shouldDisableClock` prop has been removed in favor of the more flexible `shouldDisableTime` prop.
695
+ The `shouldDisableClock` prop received `value` as a `number` of hours, minutes, or seconds.
696
+ Instead, the `shouldDisableTime` prop receives the date object (based on the used adapter).
697
+
698
+ You can read more about the deprecation of this prop in [v6 migration guide](https://next.mui.com//x/migration/migration-pickers-v5/#%E2%9C%85-rename-or-refactor-shoulddisabletime-prop).
699
+
700
+ ```diff
701
+ <DateTimePicker
702
+ - shouldDisableClock={(timeValue, view) => view === 'hours' && timeValue < 12}
703
+ + shouldDisableTime={(value, view) => view === 'hours' && value.hour() < 12}
704
+ />
705
+ ```
706
+
707
+ - The `adapter.dateWithTimezone` method has been removed and its content moved to the `date` method.
708
+ You can use the `adapter.date` method instead:
709
+
710
+ ```diff
711
+ - adapter.dateWithTimezone(undefined, 'system');
712
+ + adapter.date(undefined, 'system');
713
+ ```
714
+
715
+ - The `dayPickerClasses` variable has been renamed to `dayCalendarClasses` to be consistent with the new name of the `DayCalendar` component introduced in v6.0.0.
716
+
717
+ ```diff
718
+ - import { dayPickerClasses } from '@mui/x-date-pickers/DateCalendar';
719
+ + import { dayCalendarClasses } from '@mui/x-date-pickers/DateCalendar';
720
+ ```
721
+
722
+ - The deprecated `defaultCalendarMonth` prop has been removed in favor of the more flexible `referenceDate` prop.
723
+
724
+ ```diff
725
+ - <DateCalendar defaultCalendarMonth={dayjs('2022-04-01')};
726
+ + <DateCalendar referenceDate{dayjs('2022-04-01')} />
727
+ ```
728
+
729
+ - The `adapter.date` method now has the v6 `adapter.dateWithTimezone` method behavior.
730
+ It no longer accepts `any` as a value but only `string | null | undefined`.
731
+
732
+ ```diff
733
+ - adapter.date(new Date());
734
+ + adapter.date();
735
+
736
+ - adapter.date(new Date('2022-04-17');
737
+ + adapter.date('2022-04-17');
738
+
739
+ - adapter.date(new Date(2022, 3, 17, 4, 5, 34));
740
+ + adapter.date('2022-04-17T04:05:34');
741
+
742
+ - adapter.date(new Date('Invalid Date'));
743
+ + adapter.getInvalidDate();
744
+ ```
745
+
746
+ #### `@mui/x-date-pickers@7.0.0-alpha.2`
747
+
748
+ - [l10n] Improve German (de-DE) locale (#11103) @jho-vema
749
+ - [l10n] Add Macedonian (mk) locale (#10935) @brsnik
750
+ - [pickers] Remove the `defaultCalendarMonth` prop (#10987) @flaviendelangle
751
+ - [pickers] Remove the `shouldDisableClock` prop (#11042) @flaviendelangle
752
+ - [pickers] Rename the `dayPickerClasses` variable `dayCalendarClasses` (#11140) @flaviendelangle
753
+ - [pickers] Replace `adapter.date` with the current `adapter.dateWithTimezone` (#10979) @flaviendelangle
754
+
755
+ #### `@mui/x-date-pickers-pro@7.0.0-alpha.2` [![pro](https://mui.com/r/x-pro-svg)](https://mui.com/r/x-pro-svg-link 'Pro plan')
756
+
757
+ Same changes as in `@mui/x-date-pickers@7.0.0-alpha.2`.
758
+
759
+ ### Charts / `@mui/x-charts@7.0.0-alpha.2`
760
+
761
+ - [charts] Change export strategy in index files (#11113) @michelengelen
762
+ - [charts] Fix `ChartsTooltip` component setup (#11152) @LukasTy
763
+
764
+ ### `@mui/x-codemod@7.0.0-alpha.2`
765
+
766
+ - [codemod] Add codemod to use `referenceDate` instead of `defaultCalendarMonth` (#11139) @flaviendelangle
767
+ - [codemod] Clean the components to slots codemod usage (#11145) @flaviendelangle
768
+
769
+ ### Docs
770
+
771
+ - [docs] Add LTS section to support docs (#10927) @joserodolfofreitas
772
+ - [docs] Clean the codemod README (#11051) @flaviendelangle
773
+ - [docs] Fix typos and grammar issues (#11049) @flaviendelangle
774
+ - [docs] Fix version links (#11001) @LukasTy
775
+ - [docs] Point to the source of `@mui/x-data-grid-generator` (#11134) @oliviertassinari
776
+
777
+ ### Core
778
+
779
+ - [core] Bump monorepo (#11160) @LukasTy
780
+ - [core] Fix comment in doc generation (#11098) @flaviendelangle
781
+ - [core] Rename OpenCollective @oliviertassinari
782
+ - [core] Upgrade `babel-plugin-module-resolver` to 5.0.0 (#11065) @flaviendelangle
783
+ - [changelog] Improve git diff format @oliviertassinari
784
+ - [renovate] Monthly schedule for lockfile maintenance (#10336) @Janpot
785
+ - [test] Skip flaky e2e test in webkit (#11110) @cherniavskii
786
+
787
+ ## 7.0.0-alpha.1
788
+
789
+ _Nov 17, 2023_
790
+
791
+ We'd like to offer a big thanks to the 3 contributors who made this release possible. Here are some highlights ✨:
792
+
793
+ - 🐞 Bugfixes
794
+ - 📚 Documentation improvements
795
+
796
+ ### Date Pickers
797
+
798
+ #### `@mui/x-date-pickers@7.0.0-alpha.1` / `@mui/x-date-pickers-pro@7.0.0-alpha.1` [![pro](https://mui.com/r/x-pro-svg)](https://mui.com/r/x-pro-svg-link 'Pro plan')
799
+
800
+ #### Breaking changes
801
+
802
+ - The string argument of the `dayOfWeekFormatter` prop has been replaced in favor of the date object to allow more flexibility.
803
+
804
+ ```diff
805
+ <DateCalendar
806
+ // If you were still using the day string, you can get it back with your date library.
807
+ - dayOfWeekFormatter={dayStr => `${dayStr}.`}
808
+ + dayOfWeekFormatter={day => `${day.format('dd')}.`}
809
+
810
+ // If you were already using the day object, just remove the first argument.
811
+ - dayOfWeekFormatter={(_dayStr, day) => `${day.format('dd')}.`}
812
+ + dayOfWeekFormatter={day => `${day.format('dd')}.`}
813
+ />
814
+ ```
815
+
816
+ - The imports related to the `calendarHeader` slot have been moved from `@mui/x-date-pickers/DateCalendar` to `@mui/x-date-pickers/PIckersCalendarHeader`:
817
+
818
+ ```diff
819
+ export {
820
+ pickersCalendarHeaderClasses,
821
+ PickersCalendarHeaderClassKey,
822
+ PickersCalendarHeaderClasses,
823
+ PickersCalendarHeader,
824
+ PickersCalendarHeaderProps,
825
+ PickersCalendarHeaderSlotsComponent,
826
+ PickersCalendarHeaderSlotsComponentsProps,
827
+ ExportedPickersCalendarHeaderProps,
828
+ -} from '@mui/x-date-pickers/DateCalendar';
829
+ +} from '@mui/x-date-pickers/PickersCalendarHeader';
830
+
831
+ ```
832
+
833
+ - The `monthAndYear` format has been removed.
834
+ It was used in the header of the calendar views, you can replace it with the new `format` prop of the `calendarHeader` slot:
835
+
836
+ ```diff
837
+ <LocalizationProvider
838
+ adapter={AdapterDayJS}
839
+ - formats={{ monthAndYear: 'MM/YYYY' }}
840
+ />
841
+ <DatePicker
842
+ + slotProps={{ calendarHeader: { format: 'MM/YYYY' }}}
843
+ />
844
+ <DateRangePicker
845
+ + slotProps={{ calendarHeader: { format: 'MM/YYYY' }}}
846
+ />
847
+ <LocalizationProvider />
848
+ ```
849
+
850
+ - The `adapter.getDiff` method have been removed, you can directly use your date library:
851
+
852
+ ```diff
853
+ // For Day.js
854
+ -const diff = adapter.getDiff(value, comparing, unit);
855
+ +const diff = value.diff(comparing, unit);
856
+
857
+ // For Luxon
858
+ -const diff = adapter.getDiff(value, comparing, unit);
859
+ +const getDiff = (value: DateTime, comparing: DateTime | string, unit?: AdapterUnits) => {
860
+ + const parsedComparing = typeof comparing === 'string'
861
+ + ? DateTime.fromJSDate(new Date(comparing))
862
+ + : comparing;
863
+ + if (unit) {
864
+ + return Math.floor(value.diff(comparing).as(unit));
865
+ + }
866
+ + return value.diff(comparing).as('millisecond');
867
+ +};
868
+ +
869
+ +const diff = getDiff(value, comparing, unit);
870
+
871
+ // For DateFns
872
+ -const diff = adapter.getDiff(value, comparing, unit);
873
+ +const getDiff = (value: Date, comparing: Date | string, unit?: AdapterUnits) => {
874
+ + const parsedComparing = typeof comparing === 'string' ? new Date(comparing) : comparing;
875
+ + switch (unit) {
876
+ + case 'years':
877
+ + return dateFns.differenceInYears(value, parsedComparing);
878
+ + case 'quarters':
879
+ + return dateFns.differenceInQuarters(value, parsedComparing);
880
+ + case 'months':
881
+ + return dateFns.differenceInMonths(value, parsedComparing);
882
+ + case 'weeks':
883
+ + return dateFns.differenceInWeeks(value, parsedComparing);
884
+ + case 'days':
885
+ + return dateFns.differenceInDays(value, parsedComparing);
886
+ + case 'hours':
887
+ + return dateFns.differenceInHours(value, parsedComparing);
888
+ + case 'minutes':
889
+ + return dateFns.differenceInMinutes(value, parsedComparing);
890
+ + case 'seconds':
891
+ + return dateFns.differenceInSeconds(value, parsedComparing);
892
+ + default: {
893
+ + return dateFns.differenceInMilliseconds(value, parsedComparing);
894
+ + }
895
+ + }
896
+ +};
897
+ +
898
+ +const diff = getDiff(value, comparing, unit);
899
+
900
+ // For Moment
901
+ -const diff = adapter.getDiff(value, comparing, unit);
902
+ +const diff = value.diff(comparing, unit);
903
+ ```
904
+
905
+ - The `adapter.getFormatHelperText` method have been removed, you can use the `adapter.expandFormat` instead:
906
+
907
+ ```diff
908
+ -const expandedFormat = adapter.getFormatHelperText(format);
909
+ +const expandedFormat = adapter.expandFormat(format);
910
+ ```
911
+
912
+ And if you need the exact same output you can apply the following transformation:
913
+
914
+ ```diff
915
+ // For Day.js
916
+ -const expandedFormat = adapter.getFormatHelperText(format);
917
+ +const expandedFormat = adapter.expandFormat(format).replace(/a/gi, '(a|p)m').toLocaleLowerCase();
918
+
919
+ // For Luxon
920
+ -const expandedFormat = adapter.getFormatHelperText(format);
921
+ +const expandedFormat = adapter.expandFormat(format).replace(/(a)/g, '(a|p)m').toLocaleLowerCase();
922
+
923
+ // For DateFns
924
+ -const expandedFormat = adapter.getFormatHelperText(format);
925
+ +const expandedFormat = adapter.expandFormat(format).replace(/(aaa|aa|a)/g, '(a|p)m').toLocaleLowerCase();
926
+
927
+ // For Moment
928
+ -const expandedFormat = adapter.getFormatHelperText(format);
929
+ +const expandedFormat = adapter.expandFormat(format).replace(/a/gi, '(a|p)m').toLocaleLowerCase();
930
+ ```
931
+
932
+ - The `adapter.getMeridiemText` method have been removed, you can use the `adapter.setHours`, `adapter.date` and `adapter.format` methods to recreate its behavior:
933
+
934
+ ```diff
935
+ -const meridiem = adapter.getMeridiemText('am');
936
+ +const getMeridiemText = (meridiem: 'am' | 'pm') => {
937
+ + const date = adapter.setHours(adapter.date()!, meridiem === 'am' ? 2 : 14);
938
+ + return utils.format(date, 'meridiem');
939
+ +};
940
+ +
941
+ +const meridiem = getMeridiemText('am');
942
+ ```
943
+
944
+ - The `adapter.getMonthArray` method have been removed, you can use the `adapter.startOfYear` and `adapter.addMonths` methods to recreate its behavior:
945
+
946
+ ```diff
947
+ -const monthArray = adapter.getMonthArray(value);
948
+ +const getMonthArray = (year) => {
949
+ + const firstMonth = utils.startOfYear(year);
950
+ + const months = [firstMonth];
951
+ +
952
+ + while (months.length < 12) {
953
+ + const prevMonth = months[months.length - 1];
954
+ + months.push(utils.addMonths(prevMonth, 1));
955
+ + }
956
+ +
957
+ + return months;
958
+ +}
959
+ +
960
+ +const monthArray = getMonthArray(value);
961
+ ```
962
+
963
+ - The `adapter.getNextMonth` method have been removed, you can use the `adapter.addMonths` method instead:
964
+
965
+ ```diff
966
+ -const nextMonth = adapter.getNextMonth(value);
967
+ +const nextMonth = adapter.addMonths(value, 1);
968
+ ```
969
+
970
+ - The `adapter.getPreviousMonth` method have been removed, you can use the `adapter.addMonths` method instead:
971
+
972
+ ```diff
973
+ -const previousMonth = adapter.getPreviousMonth(value);
974
+ +const previousMonth = adapter.addMonths(value, -1);
975
+ ```
976
+
977
+ - The `adapter.getWeekdays` method have been removed, you can use the `adapter.startOfWeek` and `adapter.addDays` methods instead:
978
+
979
+ ```diff
980
+ -const weekDays = adapter.getWeekdays(value);
981
+ +const getWeekdays = (value) => {
982
+ + const start = adapter.startOfWeek(value);
983
+ + return [0, 1, 2, 3, 4, 5, 6].map((diff) => utils.addDays(start, diff));
984
+ +};
985
+ +
986
+ +const weekDays = getWeekdays(value);
987
+ ```
988
+
989
+ - The `isNull` method have been removed, you can replace it with a very basic check:
990
+
991
+ ```diff
992
+ -const isNull = adapter.isNull(value);
993
+ +const isNull = value === null;
994
+ ```
995
+
996
+ - The `adapter.mergeDateAndTime` method have been removed, you can use the `adapter.setHours`, `adapter.setMinutes`, and `adapter.setSeconds` methods to recreate its behavior:
997
+
998
+ ```diff
999
+ -const result = adapter.mergeDateAndTime(valueWithDate, valueWithTime);
1000
+ +const mergeDateAndTime = <TDate>(
1001
+ + dateParam,
1002
+ + timeParam,
1003
+ + ) => {
1004
+ + let mergedDate = dateParam;
1005
+ + mergedDate = utils.setHours(mergedDate, utils.getHours(timeParam));
1006
+ + mergedDate = utils.setMinutes(mergedDate, utils.getMinutes(timeParam));
1007
+ + mergedDate = utils.setSeconds(mergedDate, utils.getSeconds(timeParam));
1008
+ +
1009
+ + return mergedDate;
1010
+ + };
1011
+ +
1012
+ +const result = mergeDateAndTime(valueWithDate, valueWithTime);
1013
+ ```
1014
+
1015
+ - The `adapter.parseISO` method have been removed, you can directly use your date library:
1016
+
1017
+ ```diff
1018
+ // For Day.js
1019
+ -const value = adapter.parseISO(isoString);
1020
+ +const value = dayjs(isoString);
1021
+
1022
+ // For Luxon
1023
+ -const value = adapter.parseISO(isoString);
1024
+ +const value = DateTime.fromISO(isoString);
1025
+
1026
+ // For DateFns
1027
+ -const value = adapter.parseISO(isoString);
1028
+ +const value = dateFns.parseISO(isoString);
1029
+
1030
+ // For Moment
1031
+ -const value = adapter.parseISO(isoString);
1032
+ +const value = moment(isoString, true);
1033
+ ```
1034
+
1035
+ - The `adapter.toISO` method have been removed, you can directly use your date library:
1036
+
1037
+ ```diff
1038
+ -const isoString = adapter.toISO(value);
1039
+ +const isoString = value.toISOString();
1040
+ +const isoString = value.toUTC().toISO({ format: 'extended' });
1041
+ +const isoString = dateFns.formatISO(value, { format: 'extended' });
1042
+ +const isoString = value.toISOString();
1043
+ ```
1044
+
1045
+ - The `adapter.isEqual` method used to accept any type of value for its two input and tried to parse them before checking if they were equal.
1046
+ The method has been simplified and now only accepts an already-parsed date or `null` (ie: the same formats used by the `value` prop in the pickers)
1047
+
1048
+ ```diff
1049
+ const adapterDayjs = new AdapterDayjs();
1050
+ const adapterLuxon = new AdapterLuxon();
1051
+ const adapterDateFns = new AdapterDateFns();
1052
+ const adapterMoment = new AdatperMoment();
1053
+
1054
+ // Supported formats
1055
+ const isEqual = adapterDayjs.isEqual(null, null); // Same for the other adapters
1056
+ const isEqual = adapterLuxon.isEqual(DateTime.now(), DateTime.fromISO('2022-04-17'));
1057
+ const isEqual = adapterMoment.isEqual(moment(), moment('2022-04-17'));
1058
+ const isEqual = adapterDateFns.isEqual(new Date(), new Date('2022-04-17'));
1059
+
1060
+ // Non-supported formats (JS Date)
1061
+ -const isEqual = adapterDayjs.isEqual(new Date(), new Date('2022-04-17'));
1062
+ +const isEqual = adapterDayjs.isEqual(dayjs(), dayjs('2022-04-17'));
1063
+
1064
+ -const isEqual = adapterLuxon.isEqual(new Date(), new Date('2022-04-17'));
1065
+ +const isEqual = adapterLuxon.isEqual(DateTime.now(), DateTime.fromISO('2022-04-17'));
1066
+
1067
+ -const isEqual = adapterMoment.isEqual(new Date(), new Date('2022-04-17'));
1068
+ +const isEqual = adapterMoment.isEqual(moment(), moment('2022-04-17'));
1069
+
1070
+ // Non-supported formats (string)
1071
+ -const isEqual = adapterDayjs.isEqual('2022-04-16', '2022-04-17');
1072
+ +const isEqual = adapterDayjs.isEqual(dayjs('2022-04-17'), dayjs('2022-04-17'));
1073
+
1074
+ -const isEqual = adapterLuxon.isEqual('2022-04-16', '2022-04-17');
1075
+ +const isEqual = adapterLuxon.isEqual(DateTime.fromISO('2022-04-17'), DateTime.fromISO('2022-04-17'));
1076
+
1077
+ -const isEqual = adapterMoment.isEqual('2022-04-16', '2022-04-17');
1078
+ +const isEqual = adapterMoment.isEqual(moment('2022-04-17'), moment('2022-04-17'));
1079
+
1080
+ -const isEqual = adapterDateFns.isEqual('2022-04-16', '2022-04-17');
1081
+ +const isEqual = adapterDateFns.isEqual(new Date('2022-04-17'), new Date('2022-04-17'));
1082
+ ```
1083
+
1084
+ - The `dateLibInstance` prop of `LocalizationProvider` does not work with `AdapterDayjs` anymore (#11023). This prop was used to set the pickers in UTC mode before the implementation of a proper timezone support in the components.
1085
+ You can learn more about the new approach on the [dedicated doc page](https://mui.com/x/react-date-pickers/timezone/).
1086
+
1087
+ ```diff
1088
+ // When a `value` or a `defaultValue` is provided
1089
+ <LocalizationProvider
1090
+ adapter={AdapterDayjs}
1091
+ - dateLibInstance={dayjs.utc}
1092
+ >
1093
+ <DatePicker value={dayjs.utc('2022-04-17')} />
1094
+ </LocalizationProvider>
1095
+
1096
+ // When no `value` or `defaultValue` is provided
1097
+ <LocalizationProvider
1098
+ adapter={AdapterDayjs}
1099
+ - dateLibInstance={dayjs.utc}
1100
+ >
1101
+ - <DatePicker />
1102
+ + <DatePicker timezone="UTC" />
1103
+ </LocalizationProvider>
1104
+ ```
1105
+
1106
+ - The property `hasLeadingZeros` has been removed from the sections in favor of the more precise `hasLeadingZerosInFormat` and `hasLeadingZerosInInput` properties (#10994). To keep the same behavior, you can replace it by `hasLeadingZerosInFormat`:
1107
+
1108
+ ```diff
1109
+ const fieldRef = React.useRef<FieldRef<FieldSection>>(null);
1110
+
1111
+ React.useEffect(() => {
1112
+ const firstSection = fieldRef.current!.getSections()[0];
1113
+ - console.log(firstSection.hasLeadingZeros);
1114
+ + console.log(firstSection.hasLeadingZerosInFormat);
1115
+ }, []);
1116
+
1117
+ return (
1118
+ <DateField unstableFieldRef={fieldRef} />
1119
+ );
1120
+ ```
1121
+
1122
+ - The `adapter.getYearRange` method used to accept two params and now accepts a tuple to be consistent with the `adapter.isWithinRange` method (#10978):
1123
+
1124
+ ```diff
1125
+ -adapter.getYearRange(start, end);
1126
+ +adapter.getYearRange([start, end])
1127
+ ```
1128
+
1129
+ - The `adapter.isValid` method used to accept any type of value and tried to parse them before checking their validity (#10971).
1130
+ The method has been simplified and now only accepts an already-parsed date or `null`.
1131
+ Which is the same type as the one accepted by the components `value` prop.
1132
+
1133
+ ```diff
1134
+ const adapterDayjs = new AdapterDayjs();
1135
+ const adapterLuxon = new AdapterLuxon();
1136
+ const adapterDateFns = new AdapterDateFns();
1137
+ const adapterMoment = new AdatperMoment();
1138
+
1139
+ // Supported formats
1140
+ const isValid = adapterDayjs.isValid(null); // Same for the other adapters
1141
+ const isValid = adapterLuxon.isValid(DateTime.now());
1142
+ const isValid = adapterMoment.isValid(moment());
1143
+ const isValid = adapterDateFns.isValid(new Date());
1144
+
1145
+ // Non-supported formats (JS Date)
1146
+ -const isValid = adapterDayjs.isValid(new Date('2022-04-17'));
1147
+ +const isValid = adapterDayjs.isValid(dayjs('2022-04-17'));
1148
+
1149
+ -const isValid = adapterLuxon.isValid(new Date('2022-04-17'));
1150
+ +const isValid = adapterLuxon.isValid(DateTime.fromISO('2022-04-17'));
1151
+
1152
+ -const isValid = adapterMoment.isValid(new Date('2022-04-17'));
1153
+ +const isValid = adapterMoment.isValid(moment('2022-04-17'));
1154
+
1155
+ // Non-supported formats (string)
1156
+ -const isValid = adapterDayjs.isValid('2022-04-17');
1157
+ +const isValid = adapterDayjs.isValid(dayjs('2022-04-17'));
1158
+
1159
+ -const isValid = adapterLuxon.isValid('2022-04-17');
1160
+ +const isValid = adapterLuxon.isValid(DateTime.fromISO('2022-04-17'));
1161
+
1162
+ -const isValid = adapterMoment.isValid('2022-04-17');
1163
+ +const isValid = adapterMoment.isValid(moment('2022-04-17'));
1164
+
1165
+ -const isValid = adapterDateFns.isValid('2022-04-17');
1166
+ +const isValid = adapterDateFns.isValid(new Date('2022-04-17'));
1167
+ ```
1168
+
1169
+ #### Changes
1170
+
1171
+ - [pickers] Change the input format of `adapter.getYearRange` to be consistent with `adapter.isWithinRange` (#10978) @flaviendelangle
1172
+ - [pickers] Clean remaining `components` / `componentsProps` typings (#11040) @flaviendelangle
1173
+ - [pickers] Modify `adapter.isEqual` method to accept `TDate | null` instead of `any` (#10976) @flaviendelangle
1174
+ - [pickers] Modify `adapter.isValid` method to accept `TDate | null` instead of `any` (#10971) @flaviendelangle
1175
+ - [pickers] Remove the `hasLeadingZeros` property from `FieldSection` (#10994) @flaviendelangle
1176
+ - [pickers] Remove the deprecated methods and formats from the adapters (#10776) @flaviendelangle
1177
+ - [pickers] Remove the legacy UTC implementation for `dayjs` (#11023) @flaviendelangle
1178
+ - [pickers] Remove unused code (#11048) @flaviendelangle
1179
+ - [pickers] Move the exports of the `calendarHeader` slot to `@mui/x-date-pickers/PickersCalendarHeader` (#11020) @flaviendelangle
1180
+ - [DateCalendar] Allow to override the format of the header with a prop (#10990) @flaviendelangle
1181
+ - [DateCalendar] Remove the string argument of the `dayOfWeekFormatter` prop (#10992) @flaviendelangle
1182
+
1183
+ ### Docs
1184
+
1185
+ - [docs] Fix incorrect component name in the "Custom slots and subcomponents" page (#11024) @flaviendelangle
1186
+ - [docs] Fix typos in pickers migration guide (#11057) @flaviendelangle
1187
+
1188
+ ### Core
1189
+
1190
+ - [core] Clean the component slots doc generation (#11021) @flaviendelangle
1191
+ - [core] Fix script to release with `next` tag (#10996) @LukasTy
1192
+ - [test] Wait for images to load (#11004) @cherniavskii
1193
+
1194
+ ## 7.0.0-alpha.0
1195
+
1196
+ _Nov 10, 2023_
1197
+
1198
+ We're thrilled to announce the first alpha release of our next major version, v7.
1199
+ This release introduces a few breaking changes, paving the way for the upcoming features like Pivoting and DateTimeRangePicker.
1200
+
1201
+ A special shoutout to thank the 12 contributors who made this release possible. Here are some highlights ✨:
1202
+
1203
+ - 🚀 First v7 alpha release
1204
+ - ✨ Fix aggregation label not showing when `renderHeader` is used (#10961) @cherniavskii
1205
+ - 📘 Server side data source [early documentation](https://mui.com/x/react-data-grid/server-side-data/)
1206
+ - 💫 New recipes added for the data grid
1207
+ - 📈 `<ChartsReferenceLine />` component is now available
1208
+ - 🌍 Add Basque (eu) locale, improve Czech (cs-CZ) and Spanish (es-ES) locales
1209
+ - 🐞 Bugfixes
1210
+ - 📚 Documentation improvements
1211
+
1212
+ ### Data Grid
1213
+
1214
+ #### Breaking changes
1215
+
1216
+ - The deprecated `components` and `componentsProps` props have been removed. Use `slots` and `slotProps` instead. See [components section](/x/react-data-grid/components/) for more details.
1217
+ - The print export will now only print the selected rows if there are any.
1218
+ If there are no selected rows, it will print all rows. This makes the print export consistent with the other exports.
1219
+ You can [customize the rows to export by using the `getRowsToExport` function](/x/react-data-grid/export/#customizing-the-rows-to-export).
1220
+ - The `getApplyFilterFnV7` in `GridFilterOperator` was renamed to `getApplyFilterFn`.
1221
+ If you use `getApplyFilterFnV7` directly - rename it to `getApplyFilterFn`.
1222
+ - The signature of the function returned by `getApplyFilterFn` has changed for performance reasons:
1223
+
1224
+ ```diff
1225
+ const getApplyFilterFn: GetApplyFilterFn<any, unknown> = (filterItem) => {
1226
+ if (!filterItem.value) {
1227
+ return null;
1228
+ }
1229
+ const filterRegex = new RegExp(escapeRegExp(filterItem.value), 'i');
1230
+ - return (cellParams) => {
1231
+ - const { value } = cellParams;
1232
+ + return (value, row, colDef, apiRef) => {
1233
+ return value != null ? filterRegex.test(String(value)) : false;
1234
+ };
1235
+ }
1236
+ ```
1237
+
1238
+ - The `getApplyQuickFilterFnV7` in `GridColDef` was renamed to `getApplyQuickFilterFn`.
1239
+ If you use `getApplyQuickFilterFnV7` directly - rename it to `getApplyQuickFilterFn`.
1240
+ - The signature of the function returned by `getApplyQuickFilterFn` has changed for performance reasons:
1241
+
1242
+ ```diff
1243
+ const getGridStringQuickFilterFn: GetApplyQuickFilterFn<any, unknown> = (value) => {
1244
+ if (!value) {
1245
+ return null;
1246
+ }
1247
+ const filterRegex = new RegExp(escapeRegExp(value), 'i');
1248
+ - return (cellParams) => {
1249
+ - const { formattedValue } = cellParams;
1250
+ + return (value, row, column, apiRef) => {
1251
+ + let formattedValue = apiRef.current.getRowFormattedValue(row, column);
1252
+ return formattedValue != null ? filterRegex.test(formattedValue.toString()) : false;
1253
+ };
1254
+ };
1255
+ ```
1256
+
1257
+ #### `@mui/x-data-grid@7.0.0-alpha.0`
1258
+
1259
+ - [DataGrid] Fix for error thrown when removing skeleton rows, after sorting is applied (#10807) @benjaminbialy
1260
+ - [DataGrid] Fix: `undefined` slot value (#10937) @romgrk
1261
+ - [DataGrid] Print selected rows by default (#10846) @cherniavskii
1262
+ - [DataGrid] Remove deprecated `components` and `componentsProps` (#10911) @MBilalShafi
1263
+ - [DataGrid] Remove legacy filtering API (#10897) @cherniavskii
1264
+ - [DataGrid] Fix keyboard navigation for actions cell with disabled buttons (#10882) @michelengelen
1265
+ - [DataGrid] Added a recipe for using non-native select in filter panel (#10916) @michelengelen
1266
+ - [DataGrid] Added a recipe to style cells without impacting the aggregation cells (#10913) @michelengelen
1267
+ - [l10n] Improve Czech (cs-CZ) locale (#10949) @luborepka
1268
+
1269
+ #### `@mui/x-data-grid-pro@7.0.0-alpha.0` [![pro](https://mui.com/r/x-pro-svg)](https://mui.com/r/x-pro-svg-link 'Pro plan')
1270
+
1271
+ Same changes as in `@mui/x-data-grid@7.0.0-alpha.0`, plus:
1272
+
1273
+ - [DataGridPro] Autosize Columns - Fix headers being cut off (#10666) @gitstart
1274
+ - [DataGridPro] Add data source interface and basic documentation (#10543) @MBilalShafi
1275
+
1276
+ #### `@mui/x-data-grid-premium@7.0.0-alpha.0` [![premium](https://mui.com/r/x-premium-svg)](https://mui.com/r/x-premium-svg-link 'Premium plan')
1277
+
1278
+ Same changes as in `@mui/x-data-grid-pro@7.0.0-alpha.0`, plus:
1279
+
1280
+ - [DataGridPremium] Render aggregation label when `renderHeader` is used (#10936) @cherniavskii
1281
+
1282
+ ### Date Pickers
1283
+
1284
+ #### Breaking changes
1285
+
1286
+ - The deprecated `components` and `componentsProps` props have been removed. Use `slots` and `slotProps` instead.
1287
+
1288
+ #### `@mui/x-date-pickers@7.0.0-alpha.0`
1289
+
1290
+ - [pickers] Escape non tokens words (#10400) @alexfauquette
1291
+ - [fields] Fix `MultiInputTimeRangeField` section selection (#10922) @noraleonte
1292
+ - [pickers] Refine `referenceDate` behavior in views (#10863) @LukasTy
1293
+ - [pickers] Remove `components` and `componentsProps` props (#10700) @alexfauquette
1294
+ - [l10n] Add Basque (eu) locale and improve Spanish (es-ES) locale (#10819) @lajtomekadimon
1295
+ - [pickers] Add short weekdays token (#10988) @alexfauquette
1296
+
1297
+ #### `@mui/x-date-pickers-pro@7.0.0-alpha.0` [![pro](https://mui.com/r/x-pro-svg)](https://mui.com/r/x-pro-svg-link 'Pro plan')
1298
+
1299
+ Same changes as in `@mui/x-date-pickers@7.0.0-alpha.0`.
1300
+
1301
+ ### Charts / `@mui/x-charts@7.0.0-alpha.0`
1302
+
1303
+ #### Breaking changes
1304
+
1305
+ Types for `slots` and `slotProps` got renamed by removing the "Component" which is meaningless for charts.
1306
+ Unless you imported those types, to create a wrapper, you should not be impacted by this breaking change.
1307
+
1308
+ Here is an example of the renaming for the `<ChartsTooltip />` component.
1309
+
1310
+ ```diff
1311
+ -ChartsTooltipSlotsComponent
1312
+ +ChartsTooltipSlots
1313
+
1314
+ -ChartsTooltipSlotComponentProps
1315
+ +ChartsTooltipSlotProps
1316
+ ```
1317
+
1318
+ - [charts] Add `<ChartsReferenceLine />` component (#10597) (#10946) @alexfauquette
1319
+ - [charts] Improve properties JSDoc (#10931) (#10955) @alexfauquette
1320
+ - [charts] Rename `slots` and `slotProps` types (#10875) @alexfauquette
1321
+
1322
+ ### `@mui/x-codemod@7.0.0-alpha.0`
1323
+
1324
+ - [codemod] Add `v7.0.0/preset-safe` (#10973) @LukasTy
1325
+
1326
+ ### Docs
1327
+
1328
+ - [docs] Add `@next` tag to the installation instructions (#10963) @MBilalShafi
1329
+ - [docs] Document how to hide the legend (#10951) @alexfauquette
1330
+ - [docs] Fix typo in the migration guide (#10972) @flaviendelangle
1331
+
1332
+ ### Core
1333
+
1334
+ - [core] Adds migration docs for charts, pickers and tree view (#10926) @michelengelen
1335
+ - [core] Bump monorepo (#10959) @LukasTy
1336
+ - [core] Changed prettier branch value to next (#10917) @michelengelen
1337
+ - [core] Fix GitHub title tag consistency @oliviertassinari
1338
+ - [core] Fixed wrong package names in migration docs (#10953) @michelengelen
1339
+ - [core] Merge `master` into `next` (#10929) @cherniavskii
1340
+ - [core] Update release instructions as per v7 configuration (#10962) @MBilalShafi
1341
+ - [license] Correctly throw errors (#10924) @oliviertassinari
1342
+
1343
+ ## 6.18.7
1344
+
1345
+ _Jan 5, 2024_
1346
+
1347
+ We'd like to offer a big thanks to the 4 contributors who made this release possible. Here are some highlights ✨:
1348
+
1349
+ - 🌍 Improve Czech (cs-CZ) locale on Data Grid (#11429) @wensiet
1350
+ - 🐞 Bugfixes
1351
+
1352
+ ### Data Grid
1353
+
1354
+ #### `@mui/x-data-grid@6.18.7`
1355
+
1356
+ - [DataGrid] Don't evaluate `hasEval` when `disableEval` is set (#11553) @reihwald
1357
+ - [l10n] Update Czech (cs-CZ) locale (#11498) @fdebef
1358
+
1359
+ #### `@mui/x-data-grid-pro@6.18.7` [![pro](https://mui.com/r/x-pro-svg)](https://mui.com/r/x-pro-svg-link 'Pro plan')
1360
+
1361
+ Same changes as in `@mui/x-data-grid@6.18.7`.
1362
+
1363
+ #### `@mui/x-data-grid-premium@6.18.7` [![premium](https://mui.com/r/x-premium-svg)](https://mui.com/r/x-premium-svg-link 'Premium plan')
1364
+
1365
+ Same changes as in `@mui/x-data-grid-pro@6.18.7`.
1366
+
1367
+ ### Date Pickers
1368
+
1369
+ #### `@mui/x-date-pickers@6.18.7`
1370
+
1371
+ - [pickers] Fix views management (@LukasTy) (#11572)
1372
+
1373
+ #### `@mui/x-date-pickers-pro@6.18.7` [![pro](https://mui.com/r/x-pro-svg)](https://mui.com/r/x-pro-svg-link 'Pro plan')
1374
+
1375
+ Same changes as in `@mui/x-date-pickers@6.18.7`.
1376
+
1377
+ ### Charts / `@mui/x-charts@6.18.7`
1378
+
1379
+ - [charts] Fix `null` in line chart using dataset (@alexfauquette) (#11561)
1380
+
1381
+ ### Docs
1382
+
1383
+ - [docs] Clarify Pickers usage with Luxon (#11566) @LukasTy
1384
+
1385
+ ## 6.18.6
1386
+
1387
+ _Dec 22, 2023_
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
+ - 🌍 Improve Russian (ru-RU) locale (#11429) @wensiet
1392
+ - 🐞 Bugfixes
1393
+
1394
+ ### Data Grid
1395
+
1396
+ #### `@mui/x-data-grid@6.18.6`
1397
+
1398
+ - [DataGrid] Fix typos in the JSDoc (#11475) @flaviendelangle
1399
+ - [l10n] Improve Russian (ru-RU) locale (#11429) @wensiet
1400
+
1401
+ #### `@mui/x-data-grid-pro@6.18.6` [![pro](https://mui.com/r/x-pro-svg)](https://mui.com/r/x-pro-svg-link 'Pro plan')
1402
+
1403
+ Same changes as in `@mui/x-data-grid@6.18.6`.
1404
+
1405
+ #### `@mui/x-data-grid-premium@6.18.6` [![premium](https://mui.com/r/x-premium-svg)](https://mui.com/r/x-premium-svg-link 'Premium plan')
1406
+
1407
+ Same changes as in `@mui/x-data-grid-pro@6.18.6`.
1408
+
1409
+ ### Date Pickers
1410
+
1411
+ #### `@mui/x-date-pickers@6.18.6`
1412
+
1413
+ - [fields] Fix section pasting (#11467) @LukasTy
1414
+
1415
+ #### `@mui/x-date-pickers-pro@6.18.6` [![pro](https://mui.com/r/x-pro-svg)](https://mui.com/r/x-pro-svg-link 'Pro plan')
1416
+
1417
+ Same changes as in `@mui/x-date-pickers@6.18.6`.
1418
+
1419
+ ### Charts / `@mui/x-charts@6.18.4`
1420
+
1421
+ - [charts] Allow percentage values for pie chart center and radius (#11464) @alexfauquette
1422
+ - [charts] Make error message more explicit (#11457) @alexfauquette
1423
+ - [charts] Make the helper `ChartsText` component public (#11370) @alexfauquette
1424
+ - [charts] Improve dataset typing (#11372) @alexfauquette
1425
+ - [charts] Fix size overflow (#11385) @alexfauquette
1426
+
1427
+ ### Docs
1428
+
1429
+ - [docs] Document false default values for boolean props (#11489) @cherniavskii
1430
+ - [docs] Improve Pickers `name` prop examples (#11442) @LukasTy
1431
+ - [docs] Limit `date-fns` package to v2 in codesandbox (#11478) @LukasTy
1432
+ - [test] Reload the page if its blank and there are no links to the remaining tests (#11471) @cherniavskii
1433
+
1434
+ ## 6.18.5
1435
+
1436
+ _Dec 14, 2023_
1437
+
1438
+ We'd like to offer a big thanks to the 7 contributors who made this release possible. Here are some highlights ✨:
1439
+
1440
+ - 🌍 Improve Swedish (sv-SE) and Urdu (ur-PK) locales on the Data Grid
1441
+ - 🐞 Bugfixes
1442
+
1443
+ ### Data Grid
1444
+
1445
+ #### `@mui/x-data-grid@6.18.5`
1446
+
1447
+ - [l10n] Improve Swedish (sv-SE) locale (#11379) @fredrikcarlbom
1448
+ - [l10n] Improve Urdu (ur-PK) locale for data grid (#11409) @MBilalShafi
1449
+
1450
+ #### `@mui/x-data-grid-pro@6.18.5` [![pro](https://mui.com/r/x-pro-svg)](https://mui.com/r/x-pro-svg-link 'Pro plan')
1451
+
1452
+ Same changes as in `@mui/x-data-grid@6.18.5`.
1453
+
1454
+ #### `@mui/x-data-grid-premium@6.18.5` [![premium](https://mui.com/r/x-premium-svg)](https://mui.com/r/x-premium-svg-link 'Premium plan')
1455
+
1456
+ Same changes as in `@mui/x-data-grid-pro@6.18.5`.
1457
+
1458
+ ### Date Pickers
1459
+
1460
+ #### `@mui/x-date-pickers@6.18.5`
1461
+
1462
+ - [pickers] Fix field types to avoid error on latest `@types/react` version (#11398) @LukasTy
1463
+ - [pickers] Support name prop (#11380) @gitstart
1464
+
1465
+ #### `@mui/x-date-pickers-pro@6.18.5` [![pro](https://mui.com/r/x-pro-svg)](https://mui.com/r/x-pro-svg-link 'Pro plan')
1466
+
1467
+ Same changes as in `@mui/x-date-pickers@6.18.5`, plus:
1468
+
1469
+ - [DateRangePicker] Fix `autoFocus` behavior (#11376) @kealjones-wk
1470
+
1471
+ ### Docs
1472
+
1473
+ - [docs] Respect GoT books (#11294) @janoma
1474
+ - [test] Fix flaky screenshots (#11391) @cherniavskii
1475
+
1476
+ ## 6.18.4
1477
+
1478
+ _Dec 8, 2023_
1479
+
1480
+ We'd like to offer a big thanks to the 6 contributors who made this release possible. Here are some highlights ✨:
1481
+
1482
+ - 📚 Add [Pickers FAQ page](https://mui.com/x/react-date-pickers/faq/)
1483
+ - 🌍 Improve Danish (da-DK) locale on Data Grid
1484
+ - 🐞 Bugfixes
1485
+
1486
+ ### Data Grid
1487
+
1488
+ #### `@mui/x-data-grid@6.18.4`
1489
+
1490
+ - [DataGrid] Fix cell slot style override (#11215) @oliviertassinari
1491
+ - [l10n] Improve Danish (da-DK) locale (#11346) @goibon
1492
+
1493
+ #### `@mui/x-data-grid-pro@6.18.4` [![pro](https://mui.com/r/x-pro-svg)](https://mui.com/r/x-pro-svg-link 'Pro plan')
1494
+
1495
+ Same changes as in `@mui/x-data-grid@6.18.4`.
1496
+
1497
+ #### `@mui/x-data-grid-premium@6.18.4` [![premium](https://mui.com/r/x-premium-svg)](https://mui.com/r/x-premium-svg-link 'Premium plan')
1498
+
1499
+ Same changes as in `@mui/x-data-grid-pro@6.18.4`.
1500
+
1501
+ ### Date Pickers
1502
+
1503
+ #### `@mui/x-date-pickers@6.18.4`
1504
+
1505
+ - [pickers] Fix `MultiSectionDigitalClock` issues (#11308) @LukasTy
1506
+
1507
+ #### `@mui/x-date-pickers-pro@6.18.4` [![pro](https://mui.com/r/x-pro-svg)](https://mui.com/r/x-pro-svg-link 'Pro plan')
1508
+
1509
+ Same changes as in `@mui/x-date-pickers@6.18.4`.
1510
+
1511
+ ### Docs
1512
+
1513
+ - [docs] Fix typo (#11323) @cadam11
1514
+ - [docs] Add FAQ page (#11347) @noraleonte
1515
+
1516
+ ## 6.18.3
1517
+
1518
+ _Dec 4, 2023_
1519
+
1520
+ We'd like to offer a big thanks to the 10 contributors who made this release possible. Here are some highlights ✨:
1521
+
1522
+ - 📈 Fix a lot of Charts package issues
1523
+ - 🌍 Improve Bulgarian (bg-BG) locale on Data Grid
1524
+ - 🐞 Bugfixes
1525
+ - 📚 Documentation improvements
1526
+
1527
+ ### Data Grid
1528
+
1529
+ #### `@mui/x-data-grid@6.18.3`
1530
+
1531
+ - [DataGrid] Fix cell editing adding a leading "v" on paste (#11166) @prasad5795
1532
+ - [DataGrid] Fix handling of event target in portal (#11209) @cherniavskii
1533
+ - [DataGrid] Fix `onFilterModelChange` being fired with stale field value (#11244) @gitstart
1534
+ - [l10n] Improve Bulgarian (bg-BG) locale (#10856) (#11206) @Kristiqn95
1535
+
1536
+ #### `@mui/x-data-grid-pro@6.18.3` [![pro](https://mui.com/r/x-pro-svg)](https://mui.com/r/x-pro-svg-link 'Pro plan')
1537
+
1538
+ Same changes as in `@mui/x-data-grid@6.18.3`.
1539
+
1540
+ #### `@mui/x-data-grid-premium@6.18.3` [![premium](https://mui.com/r/x-premium-svg)](https://mui.com/r/x-premium-svg-link 'Premium plan')
1541
+
1542
+ Same changes as in `@mui/x-data-grid-pro@6.18.3`, plus:
1543
+
1544
+ - [DataGridPremium] Fix aggregated column ignoring column definition changes (#11176) @cherniavskii
1545
+ - [DataGridPremium] Fix custom filter operators not working on aggregated column (#11201) @cherniavskii
1546
+
1547
+ ### Date Pickers
1548
+
1549
+ #### `@mui/x-date-pickers@6.18.3`
1550
+
1551
+ - [pickers] Correctly format `MultiSectionDigitalClock` number sections (#11297) @LukasTy
1552
+ - [pickers] Expand field placeholder methods flexibility by providing `format` parameter (#11254) @LukasTy
1553
+
1554
+ #### `@mui/x-date-pickers-pro@6.18.3` [![pro](https://mui.com/r/x-pro-svg)](https://mui.com/r/x-pro-svg-link 'Pro plan')
1555
+
1556
+ Same changes as in `@mui/x-date-pickers@6.18.3`.
1557
+
1558
+ ### Charts / `@mui/x-charts@6.18.3`
1559
+
1560
+ - [charts] Adjusted `defaultizeValueFormatter` util to accept an optional `series.valueFormatter` value (#11213) @michelengelen
1561
+ - [charts] Apply `labelStyle` and `tickLabelStyle` props on `<ChartsYAxis />` (#11180) @akamfoad
1562
+ - [charts] Fix TS config (#11259) @alexfauquette
1563
+ - [charts] Fix error with empty dataset (#11063) @alexfauquette
1564
+ - [charts] Fix export strategy (#11235) @alexfauquette
1565
+
1566
+ ### Docs
1567
+
1568
+ - [docs] Add LTS section to support page (#11300) @joserodolfofreitas
1569
+ - [docs] Add end v6 blogpost to whats new page (#11299) @joserodolfofreitas
1570
+ - [docs] Document charts composition (#10710) @alexfauquette
1571
+ - [docs] Fix version links (#11167) @LukasTy
1572
+ - [docs] Improve Data Grid togglable columns example (#11241) @MBilalShafi
1573
+ - [docs] Split charts overview and getting started in distinct pages (#10910) @alexfauquette
1574
+
1575
+ ## 6.18.2
1576
+
1577
+ _Nov 23, 2023_
1578
+
1579
+ We'd like to offer a big thanks to the 11 contributors who made this release possible. Here are some highlights ✨:
1580
+
1581
+ - 🌍 Improve Arabic (ar-SD), Czech (cs-CZ), and Hebrew (he-IL) locales on Data Grid
1582
+ - 🌍 Add Basque (eu) and Macedonian (mk) locales on Pickers
1583
+ - 🌍 Improve German (de-DE) and Spanish (es-ES) locales on Pickers
1584
+ - 🐞 Bugfixes
1585
+ - 📚 Documentation improvements
1586
+
1587
+ ### Data Grid
1588
+
1589
+ #### `@mui/x-data-grid@6.18.2`
1590
+
1591
+ - [l10n] Improve Arabic (ar-SD) locale (#11096) @OmarWebDev
1592
+ - [l10n] Improve Czech (cs-CZ) locale (#10968) @luborepka
1593
+ - [l10n] Improve Hebrew (he-IL) locale (#11056) @LironKiloma
1594
+
1595
+ #### `@mui/x-data-grid-pro@6.18.2` [![pro](https://mui.com/r/x-pro-svg)](https://mui.com/r/x-pro-svg-link 'Pro plan')
1596
+
1597
+ Same changes as in `@mui/x-data-grid@6.18.2`.
1598
+
1599
+ #### `@mui/x-data-grid-premium@6.18.2` [![premium](https://mui.com/r/x-premium-svg)](https://mui.com/r/x-premium-svg-link 'Premium plan')
1600
+
1601
+ Same changes as in `@mui/x-data-grid-pro@6.18.2`.
1602
+
1603
+ ### Date Pickers
1604
+
1605
+ #### `@mui/x-date-pickers@6.18.2`
1606
+
1607
+ - [l10n] Add Basque (eu) locale and improve Spanish (es-ES) locale (#10985) @lajtomekadimon
1608
+ - [l10n] Add Macedonian (mk) locale (#11155) @brsnik
1609
+ - [l10n] Improve German (de-DE) locale (#11104) @jho-vema
1610
+ - [pickers] Deprecate `defaultCalendarMonth` prop (#11138) @flaviendelangle
1611
+ - [pickers] Fix `DateCalendar` crashing when given an invalid value (#11101) @flaviendelangle
1612
+
1613
+ #### `@mui/x-date-pickers-pro@6.18.2` [![pro](https://mui.com/r/x-pro-svg)](https://mui.com/r/x-pro-svg-link 'Pro plan')
1614
+
1615
+ Same changes as in `@mui/x-date-pickers@6.18.2`.
1616
+
1617
+ ### Charts / `@mui/x-charts@6.18.2`
1618
+
1619
+ - [charts] Fix `ChartsTooltip` component setup (#11157) @LukasTy
1620
+ - [charts] Remove outdated prop-types (#10998) @alexfauquette
1621
+
1622
+ ### Docs
1623
+
1624
+ - [docs] Fix incoherent naming of a component in `Custom slots and subcomponents` page (#11003) @lhilgert9
1625
+ - [test] Skip flaky e2e test in webkit (#11115) @cherniavskii
1626
+ - [test] Wait for images to load (#11109) @cherniavskii
1627
+
1628
+ ## 6.18.1
1629
+
1630
+ _Nov 9, 2023_
1631
+
1632
+ We'd like to offer a big thanks to the 9 contributors who made this release possible. Here are some highlights ✨:
1633
+
1634
+ - ✨ Fix aggregation label not showing when `renderHeader` is used (#10961) @cherniavskii
1635
+ - 📘 Server side data source [early documentation](https://mui.com/x/react-data-grid/server-side-data/) published
1636
+ - 📈 `<ChartsReferenceLine />` component is now available
1637
+ - 🐞 Bugfixes
1638
+ - 📚 Documentation improvements
1639
+
1640
+ ### Data Grid
1641
+
1642
+ #### `@mui/x-data-grid@6.18.1`
1643
+
1644
+ - [DataGrid] Fix cell value type in quick filtering v7 (#10884) @cherniavskii
1645
+ - [DataGrid] Fix keyboard navigation for actions cell with disabled buttons (#10947) @michelengelen
1646
+ - [DataGrid] Fix `undefined` slot values (#10934) @romgrk
1647
+
1648
+ #### `@mui/x-data-grid-pro@6.18.1` [![pro](https://mui.com/r/x-pro-svg)](https://mui.com/r/x-pro-svg-link 'Pro plan')
1649
+
1650
+ Same changes as in `@mui/x-data-grid@6.18.1`, plus:
1651
+
1652
+ - [DataGridPro] Add data source interface and basic documentation (#10543) @MBilalShafi
1653
+
1654
+ #### `@mui/x-data-grid-premium@6.18.1` [![premium](https://mui.com/r/x-premium-svg)](https://mui.com/r/x-premium-svg-link 'Premium plan')
1655
+
1656
+ Same changes as in `@mui/x-data-grid-pro@6.18.1`, plus:
1657
+
1658
+ - [DataGridPremium] Render aggregation label when `renderHeader` is used (#10961) @cherniavskii
1659
+
1660
+ ### Date Pickers
1661
+
1662
+ #### `@mui/x-date-pickers@6.18.1`
1663
+
1664
+ - [fields] Fix multi input date time field section selection (#10915) @noraleonte
1665
+ - [pickers] Always use up-to-date `defaultView` (#10889) @LukasTy
1666
+
1667
+ #### `@mui/x-date-pickers-pro@6.18.1` [![pro](https://mui.com/r/x-pro-svg)](https://mui.com/r/x-pro-svg-link 'Pro plan')
1668
+
1669
+ Same changes as in `@mui/x-date-pickers@6.18.1`.
1670
+
1671
+ ### Charts / `@mui/x-charts@6.18.1`
1672
+
1673
+ - [charts] Add `<ChartsReferenceLine />` component (#10597) @wascou
1674
+ - [charts] Improve properties JSDoc (#10931) @alexfauquette
1675
+
1676
+ ### Docs
1677
+
1678
+ - [docs] Fix charts docs as stable (#10888) @alexfauquette
1679
+ - [docs] Document how to hide the legend (#10954) @alexfauquette
1680
+
1681
+ ### Core
1682
+
1683
+ - [core] Adds new alpha version to version select on the docs (#10944) @michelengelen
1684
+ - [core] Fix GitHub title tag consistency @oliviertassinari
1685
+
1686
+ ## 6.18.0
1687
+
1688
+ _Nov 3, 2023_
1689
+
1690
+ We'd like to offer a big thanks to the 7 contributors who made this release possible. Here are some highlights ✨:
1691
+
1692
+ - 🎁 The Charts package is now officially stable!
1693
+ - 🥧 Pie charts are now animated.
1694
+ - 📈 Line charts now support partial data, and can interpolate missing data https://mui.com/x/react-charts/lines/#skip-missing-points.
1695
+
1696
+ <img src="https://github.com/mui/mui-x/assets/3165635/d2d50b1b-ee29-4e4c-9ebe-629c06f3093e" width="683" height="436" />
1697
+
1698
+ - ✨ The data grid allows to ignore [diacritics](https://en.wikipedia.org/wiki/Diacritic) when filtering.
1699
+ - 📚 Documentation improvements
1700
+
1701
+ ### Data Grid
1702
+
1703
+ #### `@mui/x-data-grid@6.18.0`
1704
+
1705
+ - [DataGrid] Allow to ignore [diacritics](https://en.wikipedia.org/wiki/Diacritic) when filtering (#10569) @cherniavskii
1706
+ - [DataGrid] Fix a typo in `gridFilterApi` (#10786) @vu-dao-93
1707
+ - [DataGrid] Fix `undefined` row id (#10670) @romgrk
1708
+ - [DataGrid] Make column autosizing work with dynamic row height (#10693) @cherniavskii
1709
+ - [l10n] Allow to customize sorting label per column (#10839) @JerryWu1234
1710
+
1711
+ #### `@mui/x-data-grid-pro@6.18.0` [![pro](https://mui.com/r/x-pro-svg)](https://mui.com/r/x-pro-svg-link 'Pro plan')
1712
+
1713
+ Same changes as in `@mui/x-data-grid@6.18.0`.
1714
+
1715
+ #### `@mui/x-data-grid-premium@6.18.0` [![premium](https://mui.com/r/x-premium-svg)](https://mui.com/r/x-premium-svg-link 'Premium plan')
1716
+
1717
+ Same changes as in `@mui/x-data-grid-pro@6.18.0`.
1718
+
1719
+ ### Date Pickers
1720
+
1721
+ #### `@mui/x-date-pickers@6.18.0`
1722
+
1723
+ - [pickers] Add reference links to calendar components (#10644) @michelengelen
1724
+
1725
+ #### `@mui/x-date-pickers-pro@6.18.0` [![pro](https://mui.com/r/x-pro-svg)](https://mui.com/r/x-pro-svg-link 'Pro plan')
1726
+
1727
+ Same changes as in `@mui/x-date-pickers@6.18.0`.
1728
+
1729
+ ### Charts / `@mui/x-charts@6.18.0`
1730
+
1731
+ - [charts] Add animation on pie chart (#10782) @alexfauquette
1732
+ - [charts] Add reference links to shared/misc chart components (#10660) @michelengelen
1733
+ - [charts] Allows to connect nulls (#10803) @alexfauquette
1734
+ - [charts] Fix axis highlight in dark mode (#10820) @LukasTy
1735
+
1736
+ ### Docs
1737
+
1738
+ - [docs] Add a data grid recipe for autosizing columns after fetching row-data (#10822) @michelengelen
1739
+ - [docs] Add a data grid recipe showing how to remove cell outline on `focus` (#10843) @michelengelen
1740
+ - [docs] Add demo about how to use charts margin (#10886) @alexfauquette
1741
+ - [docs] Improve custom field input demos readability (#10559) @LukasTy
1742
+
1743
+ ### Core
1744
+
1745
+ - [core] Generate `slot` API descriptions based on `slots` or `components` (#10879) @LukasTy
1746
+
6
1747
  ## 6.17.0
7
1748
 
8
1749
  _Oct 27, 2023_
@@ -116,7 +1857,7 @@ Same changes as in `@mui/x-date-pickers@6.16.3`, plus:
116
1857
 
117
1858
  - [charts] Add reference links to area + bar chart components (#10652) @michelengelen
118
1859
  - [charts] Add reference links to line chart + sparkline components (#10650) @michelengelen
119
- - [charts] Add reference links to pie + scatter chart components (#10653) @michelengelen
1860
+ - [charts] Add reference links to pie + scatter chart components (#10653) @michelengelen
120
1861
  - [charts] Render only when `width` and `height` are resolved (#10714) @alexfauquette
121
1862
  - [charts] Support animation on `BarChart` (#9926) @alexfauquette
122
1863
  - [charts] Use new text component to avoid tick label overflow on x-axis (#10648) @alexfauquette
@@ -192,6 +1933,7 @@ It adds line break support and avoids overlapping text in the legend.
192
1933
  This comes with some breaking changes.
193
1934
 
194
1935
  - The DOM structure is modified. An intermediary `<tspan />` element has been added. This can impact how your style is applied.
1936
+
195
1937
  ```diff
196
1938
  - <text>The label</text>
197
1939
  + <text><tspan>The label</tspan></text>
@@ -296,7 +2038,7 @@ Same changes as in `@mui/x-date-pickers@6.16.1`, plus:
296
2038
 
297
2039
  - [core] Fix casing consistency with legal and marketing content @oliviertassinari
298
2040
  - [core] Revert the link in the priority support ticket description (#10517) @michelengelen
299
- - [CHANGELOG] Polish image @oliviertassinari
2041
+ - [changelog] Polish image @oliviertassinari
300
2042
 
301
2043
  ## 6.16.0
302
2044
 
@@ -1088,7 +2830,7 @@ Same changes as in `@mui/x-date-pickers@6.10.1`.
1088
2830
  ### Core
1089
2831
 
1090
2832
  - [core] Add `validate` command (#9714) @romgrk
1091
- - [CHANGELOG] Update generator to new format @oliviertassinari
2833
+ - [changelog] Update generator to new format @oliviertassinari
1092
2834
 
1093
2835
  ## 6.10.0
1094
2836
 
@@ -1146,7 +2888,7 @@ Same changes as in `@mui/x-date-pickers@6.10.0`.
1146
2888
 
1147
2889
  - [core] Disambiguate eslint plugin name @oliviertassinari
1148
2890
  - [core] Update priority support issue template and prompt (#9574) @DanailH
1149
- - [CHANGELOG] Clarify each plan (#9446) @oliviertassinari
2891
+ - [changelog] Clarify each plan (#9446) @oliviertassinari
1150
2892
  - [license] Fix error terminology (#9614) @oliviertassinari
1151
2893
 
1152
2894
  ## 6.9.2
@@ -1295,8 +3037,8 @@ Same changes as in `@mui/x-date-pickers@6.9.1`.
1295
3037
  - [core] Fix priority support prompt action (#9472) @DanailH
1296
3038
  - [core] Update `uses` for priority support action (#9480) @DanailH
1297
3039
  - [core] Bumb update monorepo (#9476) @alexfauquette
1298
- - [CHANGELOG] Fix media quality (#9439) @oliviertassinari
1299
- - [CHANGELOG] Remove height img attribute @oliviertassinari
3040
+ - [changelog] Fix media quality (#9439) @oliviertassinari
3041
+ - [changelog] Remove height img attribute @oliviertassinari
1300
3042
  - [test] Skip flaky row pinning tests in JSDOM (#9511) @cherniavskii
1301
3043
 
1302
3044
  ## 6.9.0