@mui/x-date-pickers 7.0.0-alpha.1 → 7.0.0-alpha.2

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 (227) hide show
  1. package/AdapterDateFns/AdapterDateFns.d.ts +2 -2
  2. package/AdapterDateFns/AdapterDateFns.js +1 -3
  3. package/AdapterDateFnsJalali/AdapterDateFnsJalali.d.ts +2 -2
  4. package/AdapterDateFnsJalali/AdapterDateFnsJalali.js +1 -3
  5. package/AdapterDayjs/AdapterDayjs.d.ts +2 -2
  6. package/AdapterDayjs/AdapterDayjs.js +2 -7
  7. package/AdapterLuxon/AdapterLuxon.d.ts +2 -2
  8. package/AdapterLuxon/AdapterLuxon.js +2 -23
  9. package/AdapterMoment/AdapterMoment.d.ts +2 -2
  10. package/AdapterMoment/AdapterMoment.js +2 -9
  11. package/AdapterMomentHijri/AdapterMomentHijri.d.ts +1 -2
  12. package/AdapterMomentHijri/AdapterMomentHijri.js +0 -3
  13. package/AdapterMomentJalaali/AdapterMomentJalaali.d.ts +1 -2
  14. package/AdapterMomentJalaali/AdapterMomentJalaali.js +0 -3
  15. package/CHANGELOG.md +366 -188
  16. package/DateCalendar/DateCalendar.js +2 -8
  17. package/DateCalendar/DateCalendar.types.d.ts +0 -4
  18. package/DateCalendar/dayCalendarClasses.d.ts +1 -1
  19. package/DateCalendar/dayCalendarClasses.js +1 -1
  20. package/DateCalendar/index.d.ts +1 -1
  21. package/DateCalendar/index.js +1 -1
  22. package/DateCalendar/useCalendarState.d.ts +1 -1
  23. package/DateCalendar/useCalendarState.js +1 -9
  24. package/DateField/DateField.js +1 -1
  25. package/DatePicker/DatePicker.js +1 -5
  26. package/DateTimeField/DateTimeField.js +1 -9
  27. package/DateTimePicker/DateTimePicker.js +1 -13
  28. package/DesktopDatePicker/DesktopDatePicker.js +1 -5
  29. package/DesktopDateTimePicker/DesktopDateTimePicker.js +1 -13
  30. package/DesktopTimePicker/DesktopTimePicker.js +1 -9
  31. package/DigitalClock/DigitalClock.js +3 -15
  32. package/MobileDatePicker/MobileDatePicker.js +1 -5
  33. package/MobileDateTimePicker/MobileDateTimePicker.js +1 -13
  34. package/MobileTimePicker/MobileTimePicker.js +1 -9
  35. package/MonthCalendar/MonthCalendar.js +1 -1
  36. package/MultiSectionDigitalClock/MultiSectionDigitalClock.js +3 -15
  37. package/PickersDay/PickersDay.js +1 -1
  38. package/StaticDatePicker/StaticDatePicker.js +1 -5
  39. package/StaticDateTimePicker/StaticDateTimePicker.js +1 -13
  40. package/StaticTimePicker/StaticTimePicker.js +1 -9
  41. package/TimeClock/Clock.js +1 -1
  42. package/TimeClock/TimeClock.js +3 -15
  43. package/TimeField/TimeField.js +1 -9
  44. package/TimePicker/TimePicker.js +1 -9
  45. package/YearCalendar/YearCalendar.js +1 -1
  46. package/dateTimeViewRenderers/dateTimeViewRenderers.d.ts +1 -1
  47. package/dateTimeViewRenderers/dateTimeViewRenderers.js +0 -4
  48. package/dateViewRenderers/dateViewRenderers.d.ts +1 -1
  49. package/dateViewRenderers/dateViewRenderers.js +0 -2
  50. package/index.js +1 -1
  51. package/internals/hooks/date-helpers-hooks.js +2 -2
  52. package/internals/hooks/useField/useField.utils.js +8 -8
  53. package/internals/hooks/useField/useFieldState.js +1 -1
  54. package/internals/hooks/usePicker/usePickerValue.types.d.ts +1 -1
  55. package/internals/hooks/useUtils.js +1 -1
  56. package/internals/hooks/useViews.js +2 -2
  57. package/internals/models/validation.d.ts +0 -8
  58. package/internals/utils/date-utils.js +2 -2
  59. package/internals/utils/validation/extractValidationProps.d.ts +1 -1
  60. package/internals/utils/validation/extractValidationProps.js +1 -1
  61. package/internals/utils/validation/validateDate.js +1 -1
  62. package/internals/utils/validation/validateTime.js +1 -8
  63. package/legacy/AdapterDateFns/AdapterDateFns.js +2 -2
  64. package/legacy/AdapterDateFnsJalali/AdapterDateFnsJalali.js +2 -2
  65. package/legacy/AdapterDayjs/AdapterDayjs.js +4 -6
  66. package/legacy/AdapterLuxon/AdapterLuxon.js +4 -22
  67. package/legacy/AdapterMoment/AdapterMoment.js +4 -8
  68. package/legacy/AdapterMomentHijri/AdapterMomentHijri.js +0 -3
  69. package/legacy/AdapterMomentJalaali/AdapterMomentJalaali.js +0 -3
  70. package/legacy/DateCalendar/DateCalendar.js +2 -8
  71. package/legacy/DateCalendar/PickersSlideTransition.js +8 -9
  72. package/legacy/DateCalendar/dayCalendarClasses.js +1 -1
  73. package/legacy/DateCalendar/index.js +1 -1
  74. package/legacy/DateCalendar/useCalendarState.js +1 -9
  75. package/legacy/DateField/DateField.js +1 -1
  76. package/legacy/DatePicker/DatePicker.js +1 -5
  77. package/legacy/DateTimeField/DateTimeField.js +1 -9
  78. package/legacy/DateTimePicker/DateTimePicker.js +1 -13
  79. package/legacy/DesktopDatePicker/DesktopDatePicker.js +1 -5
  80. package/legacy/DesktopDateTimePicker/DesktopDateTimePicker.js +1 -13
  81. package/legacy/DesktopTimePicker/DesktopTimePicker.js +1 -9
  82. package/legacy/DigitalClock/DigitalClock.js +3 -15
  83. package/legacy/MobileDatePicker/MobileDatePicker.js +1 -5
  84. package/legacy/MobileDateTimePicker/MobileDateTimePicker.js +1 -13
  85. package/legacy/MobileTimePicker/MobileTimePicker.js +1 -9
  86. package/legacy/MonthCalendar/MonthCalendar.js +1 -1
  87. package/legacy/MonthCalendar/PickersMonth.js +4 -5
  88. package/legacy/MultiSectionDigitalClock/MultiSectionDigitalClock.js +3 -15
  89. package/legacy/PickersDay/PickersDay.js +6 -7
  90. package/legacy/PickersLayout/PickersLayout.js +5 -6
  91. package/legacy/StaticDatePicker/StaticDatePicker.js +1 -5
  92. package/legacy/StaticDateTimePicker/StaticDateTimePicker.js +1 -13
  93. package/legacy/StaticTimePicker/StaticTimePicker.js +1 -9
  94. package/legacy/TimeClock/Clock.js +1 -1
  95. package/legacy/TimeClock/ClockNumber.js +4 -5
  96. package/legacy/TimeClock/TimeClock.js +3 -15
  97. package/legacy/TimeField/TimeField.js +1 -9
  98. package/legacy/TimePicker/TimePicker.js +1 -9
  99. package/legacy/TimePicker/TimePickerToolbar.js +1 -2
  100. package/legacy/YearCalendar/PickersYear.js +4 -5
  101. package/legacy/YearCalendar/YearCalendar.js +1 -1
  102. package/legacy/dateTimeViewRenderers/dateTimeViewRenderers.js +0 -4
  103. package/legacy/dateViewRenderers/dateViewRenderers.js +0 -2
  104. package/legacy/index.js +1 -1
  105. package/legacy/internals/components/PickersModalDialog.js +3 -4
  106. package/legacy/internals/hooks/date-helpers-hooks.js +2 -2
  107. package/legacy/internals/hooks/useField/useField.utils.js +8 -8
  108. package/legacy/internals/hooks/useField/useFieldState.js +1 -1
  109. package/legacy/internals/hooks/useUtils.js +1 -1
  110. package/legacy/internals/hooks/useViews.js +2 -2
  111. package/legacy/internals/utils/date-utils.js +2 -2
  112. package/legacy/internals/utils/validation/extractValidationProps.js +1 -1
  113. package/legacy/internals/utils/validation/validateDate.js +1 -1
  114. package/legacy/internals/utils/validation/validateTime.js +1 -8
  115. package/legacy/locales/deDE.js +4 -3
  116. package/legacy/locales/index.js +1 -0
  117. package/legacy/locales/mk.js +91 -0
  118. package/legacy/timeViewRenderers/timeViewRenderers.js +0 -6
  119. package/locales/deDE.js +2 -3
  120. package/locales/index.d.ts +1 -0
  121. package/locales/index.js +1 -0
  122. package/locales/mk.d.ts +53 -0
  123. package/locales/mk.js +55 -0
  124. package/models/adapters.d.ts +6 -10
  125. package/models/timezone.d.ts +1 -1
  126. package/models/validation.d.ts +1 -1
  127. package/modern/AdapterDateFns/AdapterDateFns.js +1 -3
  128. package/modern/AdapterDateFnsJalali/AdapterDateFnsJalali.js +1 -3
  129. package/modern/AdapterDayjs/AdapterDayjs.js +2 -7
  130. package/modern/AdapterLuxon/AdapterLuxon.js +2 -23
  131. package/modern/AdapterMoment/AdapterMoment.js +2 -9
  132. package/modern/AdapterMomentHijri/AdapterMomentHijri.js +0 -3
  133. package/modern/AdapterMomentJalaali/AdapterMomentJalaali.js +0 -3
  134. package/modern/DateCalendar/DateCalendar.js +2 -8
  135. package/modern/DateCalendar/dayCalendarClasses.js +1 -1
  136. package/modern/DateCalendar/index.js +1 -1
  137. package/modern/DateCalendar/useCalendarState.js +1 -9
  138. package/modern/DateField/DateField.js +1 -1
  139. package/modern/DatePicker/DatePicker.js +1 -5
  140. package/modern/DateTimeField/DateTimeField.js +1 -9
  141. package/modern/DateTimePicker/DateTimePicker.js +1 -13
  142. package/modern/DesktopDatePicker/DesktopDatePicker.js +1 -5
  143. package/modern/DesktopDateTimePicker/DesktopDateTimePicker.js +1 -13
  144. package/modern/DesktopTimePicker/DesktopTimePicker.js +1 -9
  145. package/modern/DigitalClock/DigitalClock.js +3 -15
  146. package/modern/MobileDatePicker/MobileDatePicker.js +1 -5
  147. package/modern/MobileDateTimePicker/MobileDateTimePicker.js +1 -13
  148. package/modern/MobileTimePicker/MobileTimePicker.js +1 -9
  149. package/modern/MonthCalendar/MonthCalendar.js +1 -1
  150. package/modern/MultiSectionDigitalClock/MultiSectionDigitalClock.js +3 -15
  151. package/modern/PickersDay/PickersDay.js +1 -1
  152. package/modern/StaticDatePicker/StaticDatePicker.js +1 -5
  153. package/modern/StaticDateTimePicker/StaticDateTimePicker.js +1 -13
  154. package/modern/StaticTimePicker/StaticTimePicker.js +1 -9
  155. package/modern/TimeClock/Clock.js +1 -1
  156. package/modern/TimeClock/TimeClock.js +3 -15
  157. package/modern/TimeField/TimeField.js +1 -9
  158. package/modern/TimePicker/TimePicker.js +1 -9
  159. package/modern/YearCalendar/YearCalendar.js +1 -1
  160. package/modern/dateTimeViewRenderers/dateTimeViewRenderers.js +0 -4
  161. package/modern/dateViewRenderers/dateViewRenderers.js +0 -2
  162. package/modern/index.js +1 -1
  163. package/modern/internals/hooks/date-helpers-hooks.js +2 -2
  164. package/modern/internals/hooks/useField/useField.utils.js +8 -8
  165. package/modern/internals/hooks/useField/useFieldState.js +1 -1
  166. package/modern/internals/hooks/useUtils.js +1 -1
  167. package/modern/internals/hooks/useViews.js +2 -2
  168. package/modern/internals/utils/date-utils.js +2 -2
  169. package/modern/internals/utils/validation/extractValidationProps.js +1 -1
  170. package/modern/internals/utils/validation/validateDate.js +1 -1
  171. package/modern/internals/utils/validation/validateTime.js +1 -8
  172. package/modern/locales/deDE.js +2 -3
  173. package/modern/locales/index.js +1 -0
  174. package/modern/locales/mk.js +55 -0
  175. package/modern/timeViewRenderers/timeViewRenderers.js +0 -6
  176. package/node/AdapterDateFns/AdapterDateFns.js +1 -3
  177. package/node/AdapterDateFnsJalali/AdapterDateFnsJalali.js +1 -3
  178. package/node/AdapterDayjs/AdapterDayjs.js +2 -7
  179. package/node/AdapterLuxon/AdapterLuxon.js +2 -23
  180. package/node/AdapterMoment/AdapterMoment.js +2 -9
  181. package/node/AdapterMomentHijri/AdapterMomentHijri.js +0 -3
  182. package/node/AdapterMomentJalaali/AdapterMomentJalaali.js +0 -3
  183. package/node/DateCalendar/DateCalendar.js +2 -8
  184. package/node/DateCalendar/dayCalendarClasses.js +2 -2
  185. package/node/DateCalendar/index.js +2 -2
  186. package/node/DateCalendar/useCalendarState.js +1 -9
  187. package/node/DateField/DateField.js +1 -1
  188. package/node/DatePicker/DatePicker.js +1 -5
  189. package/node/DateTimeField/DateTimeField.js +1 -9
  190. package/node/DateTimePicker/DateTimePicker.js +1 -13
  191. package/node/DesktopDatePicker/DesktopDatePicker.js +1 -5
  192. package/node/DesktopDateTimePicker/DesktopDateTimePicker.js +1 -13
  193. package/node/DesktopTimePicker/DesktopTimePicker.js +1 -9
  194. package/node/DigitalClock/DigitalClock.js +3 -15
  195. package/node/MobileDatePicker/MobileDatePicker.js +1 -5
  196. package/node/MobileDateTimePicker/MobileDateTimePicker.js +1 -13
  197. package/node/MobileTimePicker/MobileTimePicker.js +1 -9
  198. package/node/MonthCalendar/MonthCalendar.js +1 -1
  199. package/node/MultiSectionDigitalClock/MultiSectionDigitalClock.js +3 -15
  200. package/node/PickersDay/PickersDay.js +1 -1
  201. package/node/StaticDatePicker/StaticDatePicker.js +1 -5
  202. package/node/StaticDateTimePicker/StaticDateTimePicker.js +1 -13
  203. package/node/StaticTimePicker/StaticTimePicker.js +1 -9
  204. package/node/TimeClock/Clock.js +1 -1
  205. package/node/TimeClock/TimeClock.js +3 -15
  206. package/node/TimeField/TimeField.js +1 -9
  207. package/node/TimePicker/TimePicker.js +1 -9
  208. package/node/YearCalendar/YearCalendar.js +1 -1
  209. package/node/dateTimeViewRenderers/dateTimeViewRenderers.js +0 -4
  210. package/node/dateViewRenderers/dateViewRenderers.js +0 -2
  211. package/node/index.js +1 -1
  212. package/node/internals/hooks/date-helpers-hooks.js +2 -2
  213. package/node/internals/hooks/useField/useField.utils.js +8 -8
  214. package/node/internals/hooks/useField/useFieldState.js +1 -1
  215. package/node/internals/hooks/useUtils.js +1 -1
  216. package/node/internals/hooks/useViews.js +2 -2
  217. package/node/internals/utils/date-utils.js +2 -2
  218. package/node/internals/utils/validation/extractValidationProps.js +1 -1
  219. package/node/internals/utils/validation/validateDate.js +1 -1
  220. package/node/internals/utils/validation/validateTime.js +1 -8
  221. package/node/locales/deDE.js +2 -3
  222. package/node/locales/index.js +11 -0
  223. package/node/locales/mk.js +60 -0
  224. package/node/timeViewRenderers/timeViewRenderers.js +0 -6
  225. package/package.json +7 -6
  226. package/timeViewRenderers/timeViewRenderers.d.ts +3 -3
  227. package/timeViewRenderers/timeViewRenderers.js +0 -6
package/CHANGELOG.md CHANGED
@@ -3,6 +3,131 @@
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.2
7
+
8
+ _Nov 23, 2023_
9
+
10
+ We'd like to offer a big thanks to the 10 contributors who made this release possible. Here are some highlights ✨:
11
+
12
+ - 📈 Export missing Charts props
13
+ - 🌍 Improve Arabic (ar-SD) and Hebrew (he-IL) locales on Data Grid
14
+ - 🌍 Add Macedonian (mk) locale and improve German (de-DE) locale on Pickers
15
+ - 🐞 Bugfixes
16
+ - 📚 Documentation improvements
17
+
18
+ ### Data Grid
19
+
20
+ #### `@mui/x-data-grid@7.0.0-alpha.2`
21
+
22
+ - [l10n] Improve Arabic (ar-SD) locale (#11114) @MBilalShafi
23
+ - [l10n] Improve Hebrew (he-IL) locale (#11056) (#11149) @MBilalShafi
24
+ - [DataGrid] Remove unused utilities (#11156) @flaviendelangle
25
+
26
+ #### `@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')
27
+
28
+ Same changes as in `@mui/x-data-grid@7.0.0-alpha.2`.
29
+
30
+ #### `@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')
31
+
32
+ Same changes as in `@mui/x-data-grid-pro@7.0.0-alpha.2`.
33
+
34
+ ### Date Pickers
35
+
36
+ #### Breaking changes
37
+
38
+ - The deprecated `shouldDisableClock` prop has been removed in favor of the more flexible `shouldDisableTime` prop.
39
+ The `shouldDisableClock` prop received `value` as a `number` of hours, minutes, or seconds.
40
+ Instead, the `shouldDisableTime` prop receives the date object (based on the used adapter).
41
+
42
+ 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).
43
+
44
+ ```diff
45
+ <DateTimePicker
46
+ - shouldDisableClock={(timeValue, view) => view === 'hours' && timeValue < 12}
47
+ + shouldDisableTime={(value, view) => view === 'hours' && value.hour() < 12}
48
+ />
49
+ ```
50
+
51
+ - The `adapter.dateWithTimezone` method has been removed and its content moved to the `date` method.
52
+ You can use the `adapter.date` method instead:
53
+
54
+ ```diff
55
+ - adapter.dateWithTimezone(undefined, 'system');
56
+ + adapter.date(undefined, 'system');
57
+ ```
58
+
59
+ - The `dayPickerClasses` variable has been renamed to `dayCalendarClasses` to be consistent with the new name of the `DayCalendar` component introduced in v6.0.0.
60
+
61
+ ```diff
62
+ - import { dayPickerClasses } from '@mui/x-date-pickers/DateCalendar';
63
+ + import { dayCalendarClasses } from '@mui/x-date-pickers/DateCalendar';
64
+ ```
65
+
66
+ - The deprecated `defaultCalendarMonth` prop has been removed in favor of the more flexible `referenceDate` prop.
67
+
68
+ ```diff
69
+ - <DateCalendar defaultCalendarMonth={dayjs('2022-04-01')};
70
+ + <DateCalendar referenceDate{dayjs('2022-04-01')} />
71
+ ```
72
+
73
+ - The `adapter.date` method now has the v6 `adapter.dateWithTimezone` method behavior.
74
+ It no longer accepts `any` as a value but only `string | null | undefined`.
75
+
76
+ ```diff
77
+ - adapter.date(new Date());
78
+ + adapter.date();
79
+
80
+ - adapter.date(new Date('2022-04-17');
81
+ + adapter.date('2022-04-17');
82
+
83
+ - adapter.date(new Date(2022, 3, 17, 4, 5, 34));
84
+ + adapter.date('2022-04-17T04:05:34');
85
+
86
+ - adapter.date(new Date('Invalid Date'));
87
+ + adapter.getInvalidDate();
88
+ ```
89
+
90
+ #### `@mui/x-date-pickers@7.0.0-alpha.2`
91
+
92
+ - [l10n] Improve German (de-DE) locale (#11103) @jho-vema
93
+ - [l10n] Add Macedonian (mk) locale (#10935) @brsnik
94
+ - [pickers] Remove the `defaultCalendarMonth` prop (#10987) @flaviendelangle
95
+ - [pickers] Remove the `shouldDisableClock` prop (#11042) @flaviendelangle
96
+ - [pickers] Rename the `dayPickerClasses` variable `dayCalendarClasses` (#11140) @flaviendelangle
97
+ - [pickers] Replace `adapter.date` with the current `adapter.dateWithTimezone` (#10979) @flaviendelangle
98
+
99
+ #### `@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')
100
+
101
+ Same changes as in `@mui/x-date-pickers@7.0.0-alpha.2`.
102
+
103
+ ### Charts / `@mui/x-charts@7.0.0-alpha.2`
104
+
105
+ - [charts] Change export strategy in index files (#11113) @michelengelen
106
+ - [charts] Fix `ChartsTooltip` component setup (#11152) @LukasTy
107
+
108
+ ### `@mui/x-codemod@7.0.0-alpha.2`
109
+
110
+ - [codemod] Add codemod to use `referenceDate` instead of `defaultCalendarMonth` (#11139) @flaviendelangle
111
+ - [codemod] Clean the components to slots codemod usage (#11145) @flaviendelangle
112
+
113
+ ### Docs
114
+
115
+ - [docs] Add LTS section to support docs (#10927) @joserodolfofreitas
116
+ - [docs] Clean the codemod README (#11051) @flaviendelangle
117
+ - [docs] Fix typos and grammar issues (#11049) @flaviendelangle
118
+ - [docs] Fix version links (#11001) @LukasTy
119
+ - [docs] Point to the source of `@mui/x-data-grid-generator` (#11134) @oliviertassinari
120
+
121
+ ### Core
122
+
123
+ - [core] Bump monorepo (#11160) @LukasTy
124
+ - [core] Fix comment in doc generation (#11098) @flaviendelangle
125
+ - [core] Rename OpenCollective @oliviertassinari
126
+ - [core] Upgrade `babel-plugin-module-resolver` to 5.0.0 (#11065) @flaviendelangle
127
+ - [changelog] Improve git diff format @oliviertassinari
128
+ - [renovate] Monthly schedule for lockfile maintenance (#10336) @Janpot
129
+ - [test] Skip flaky e2e test in webkit (#11110) @cherniavskii
130
+
6
131
  ## 7.0.0-alpha.1
7
132
 
8
133
  _Nov 17, 2023_
@@ -23,29 +148,29 @@ We'd like to offer a big thanks to the 3 contributors who made this release poss
23
148
  ```diff
24
149
  <DateCalendar
25
150
  // If you were still using the day string, you can get it back with your date library.
26
- - dayOfWeekFormatter={dayStr => `${dayStr}.`}
27
- + dayOfWeekFormatter={day => `${day.format('dd')}.`}
151
+ - dayOfWeekFormatter={dayStr => `${dayStr}.`}
152
+ + dayOfWeekFormatter={day => `${day.format('dd')}.`}
28
153
 
29
154
  // If you were already using the day object, just remove the first argument.
30
- - dayOfWeekFormatter={(_dayStr, day) => `${day.format('dd')}.`}
31
- + dayOfWeekFormatter={day => `${day.format('dd')}.`}
155
+ - dayOfWeekFormatter={(_dayStr, day) => `${day.format('dd')}.`}
156
+ + dayOfWeekFormatter={day => `${day.format('dd')}.`}
32
157
  />
33
158
  ```
34
159
 
35
160
  - The imports related to the `calendarHeader` slot have been moved from `@mui/x-date-pickers/DateCalendar` to `@mui/x-date-pickers/PIckersCalendarHeader`:
36
161
 
37
162
  ```diff
38
- export {
39
- pickersCalendarHeaderClasses,
40
- PickersCalendarHeaderClassKey,
41
- PickersCalendarHeaderClasses,
42
- PickersCalendarHeader,
43
- PickersCalendarHeaderProps,
44
- PickersCalendarHeaderSlotsComponent,
45
- PickersCalendarHeaderSlotsComponentsProps,
46
- ExportedPickersCalendarHeaderProps,
47
- - } from '@mui/x-date-pickers/DateCalendar';
48
- + } from '@mui/x-date-pickers/PickersCalendarHeader';
163
+ export {
164
+ pickersCalendarHeaderClasses,
165
+ PickersCalendarHeaderClassKey,
166
+ PickersCalendarHeaderClasses,
167
+ PickersCalendarHeader,
168
+ PickersCalendarHeaderProps,
169
+ PickersCalendarHeaderSlotsComponent,
170
+ PickersCalendarHeaderSlotsComponentsProps,
171
+ ExportedPickersCalendarHeaderProps,
172
+ -} from '@mui/x-date-pickers/DateCalendar';
173
+ +} from '@mui/x-date-pickers/PickersCalendarHeader';
49
174
 
50
175
  ```
51
176
 
@@ -53,170 +178,170 @@ We'd like to offer a big thanks to the 3 contributors who made this release poss
53
178
  It was used in the header of the calendar views, you can replace it with the new `format` prop of the `calendarHeader` slot:
54
179
 
55
180
  ```diff
56
- <LocalizationProvider
57
- adapter={AdapterDayJS}
58
- - formats={{ monthAndYear: 'MM/YYYY' }}
59
- />
60
- <DatePicker
61
- + slotProps={{ calendarHeader: { format: 'MM/YYYY' }}}
62
- />
63
- <DateRangePicker
64
- + slotProps={{ calendarHeader: { format: 'MM/YYYY' }}}
65
- />
66
- <LocalizationProvider />
181
+ <LocalizationProvider
182
+ adapter={AdapterDayJS}
183
+ - formats={{ monthAndYear: 'MM/YYYY' }}
184
+ />
185
+ <DatePicker
186
+ + slotProps={{ calendarHeader: { format: 'MM/YYYY' }}}
187
+ />
188
+ <DateRangePicker
189
+ + slotProps={{ calendarHeader: { format: 'MM/YYYY' }}}
190
+ />
191
+ <LocalizationProvider />
67
192
  ```
68
193
 
69
194
  - The `adapter.getDiff` method have been removed, you can directly use your date library:
70
195
 
71
196
  ```diff
72
- // For Day.js
73
- - const diff = adapter.getDiff(value, comparing, unit);
74
- + const diff = value.diff(comparing, unit);
75
-
76
- // For Luxon
77
- - const diff = adapter.getDiff(value, comparing, unit);
78
- + const getDiff = (value: DateTime, comparing: DateTime | string, unit?: AdapterUnits) => {
79
- + const parsedComparing = typeof comparing === 'string'
80
- + ? DateTime.fromJSDate(new Date(comparing))
81
- + : comparing;
82
- + if (unit) {
83
- + return Math.floor(value.diff(comparing).as(unit));
84
- + }
85
- + return value.diff(comparing).as('millisecond');
86
- + };
197
+ // For Day.js
198
+ -const diff = adapter.getDiff(value, comparing, unit);
199
+ +const diff = value.diff(comparing, unit);
200
+
201
+ // For Luxon
202
+ -const diff = adapter.getDiff(value, comparing, unit);
203
+ +const getDiff = (value: DateTime, comparing: DateTime | string, unit?: AdapterUnits) => {
204
+ + const parsedComparing = typeof comparing === 'string'
205
+ + ? DateTime.fromJSDate(new Date(comparing))
206
+ + : comparing;
207
+ + if (unit) {
208
+ + return Math.floor(value.diff(comparing).as(unit));
209
+ + }
210
+ + return value.diff(comparing).as('millisecond');
211
+ +};
87
212
  +
88
- + const diff = getDiff(value, comparing, unit);
213
+ +const diff = getDiff(value, comparing, unit);
89
214
 
90
215
  // For DateFns
91
- - const diff = adapter.getDiff(value, comparing, unit);
92
- + const getDiff = (value: Date, comparing: Date | string, unit?: AdapterUnits) => {
93
- + const parsedComparing = typeof comparing === 'string' ? new Date(comparing) : comparing;
94
- + switch (unit) {
95
- + case 'years':
96
- + return dateFns.differenceInYears(value, parsedComparing);
97
- + case 'quarters':
98
- + return dateFns.differenceInQuarters(value, parsedComparing);
99
- + case 'months':
100
- + return dateFns.differenceInMonths(value, parsedComparing);
101
- + case 'weeks':
102
- + return dateFns.differenceInWeeks(value, parsedComparing);
103
- + case 'days':
104
- + return dateFns.differenceInDays(value, parsedComparing);
105
- + case 'hours':
106
- + return dateFns.differenceInHours(value, parsedComparing);
107
- + case 'minutes':
108
- + return dateFns.differenceInMinutes(value, parsedComparing);
109
- + case 'seconds':
110
- + return dateFns.differenceInSeconds(value, parsedComparing);
111
- + default: {
112
- + return dateFns.differenceInMilliseconds(value, parsedComparing);
113
- + }
114
- + }
115
- + };
216
+ -const diff = adapter.getDiff(value, comparing, unit);
217
+ +const getDiff = (value: Date, comparing: Date | string, unit?: AdapterUnits) => {
218
+ + const parsedComparing = typeof comparing === 'string' ? new Date(comparing) : comparing;
219
+ + switch (unit) {
220
+ + case 'years':
221
+ + return dateFns.differenceInYears(value, parsedComparing);
222
+ + case 'quarters':
223
+ + return dateFns.differenceInQuarters(value, parsedComparing);
224
+ + case 'months':
225
+ + return dateFns.differenceInMonths(value, parsedComparing);
226
+ + case 'weeks':
227
+ + return dateFns.differenceInWeeks(value, parsedComparing);
228
+ + case 'days':
229
+ + return dateFns.differenceInDays(value, parsedComparing);
230
+ + case 'hours':
231
+ + return dateFns.differenceInHours(value, parsedComparing);
232
+ + case 'minutes':
233
+ + return dateFns.differenceInMinutes(value, parsedComparing);
234
+ + case 'seconds':
235
+ + return dateFns.differenceInSeconds(value, parsedComparing);
236
+ + default: {
237
+ + return dateFns.differenceInMilliseconds(value, parsedComparing);
238
+ + }
239
+ + }
240
+ +};
116
241
  +
117
- + const diff = getDiff(value, comparing, unit);
242
+ +const diff = getDiff(value, comparing, unit);
118
243
 
119
- // For Moment
120
- - const diff = adapter.getDiff(value, comparing, unit);
121
- + const diff = value.diff(comparing, unit);
244
+ // For Moment
245
+ -const diff = adapter.getDiff(value, comparing, unit);
246
+ +const diff = value.diff(comparing, unit);
122
247
  ```
123
248
 
124
249
  - The `adapter.getFormatHelperText` method have been removed, you can use the `adapter.expandFormat` instead:
125
250
 
126
251
  ```diff
127
- - const expandedFormat = adapter.getFormatHelperText(format);
128
- + const expandedFormat = adapter.expandFormat(format);
252
+ -const expandedFormat = adapter.getFormatHelperText(format);
253
+ +const expandedFormat = adapter.expandFormat(format);
129
254
  ```
130
255
 
131
256
  And if you need the exact same output you can apply the following transformation:
132
257
 
133
258
  ```diff
134
- // For Day.js
135
- - const expandedFormat = adapter.getFormatHelperText(format);
136
- + const expandedFormat = adapter.expandFormat(format).replace(/a/gi, '(a|p)m').toLocaleLowerCase();
259
+ // For Day.js
260
+ -const expandedFormat = adapter.getFormatHelperText(format);
261
+ +const expandedFormat = adapter.expandFormat(format).replace(/a/gi, '(a|p)m').toLocaleLowerCase();
137
262
 
138
- // For Luxon
139
- - const expandedFormat = adapter.getFormatHelperText(format);
140
- + const expandedFormat = adapter.expandFormat(format).replace(/(a)/g, '(a|p)m').toLocaleLowerCase();
263
+ // For Luxon
264
+ -const expandedFormat = adapter.getFormatHelperText(format);
265
+ +const expandedFormat = adapter.expandFormat(format).replace(/(a)/g, '(a|p)m').toLocaleLowerCase();
141
266
 
142
- // For DateFns
143
- - const expandedFormat = adapter.getFormatHelperText(format);
144
- + const expandedFormat = adapter.expandFormat(format).replace(/(aaa|aa|a)/g, '(a|p)m').toLocaleLowerCase();
267
+ // For DateFns
268
+ -const expandedFormat = adapter.getFormatHelperText(format);
269
+ +const expandedFormat = adapter.expandFormat(format).replace(/(aaa|aa|a)/g, '(a|p)m').toLocaleLowerCase();
145
270
 
146
- // For Moment
147
- - const expandedFormat = adapter.getFormatHelperText(format);
148
- + const expandedFormat = adapter.expandFormat(format).replace(/a/gi, '(a|p)m').toLocaleLowerCase();
271
+ // For Moment
272
+ -const expandedFormat = adapter.getFormatHelperText(format);
273
+ +const expandedFormat = adapter.expandFormat(format).replace(/a/gi, '(a|p)m').toLocaleLowerCase();
149
274
  ```
150
275
 
151
276
  - The `adapter.getMeridiemText` method have been removed, you can use the `adapter.setHours`, `adapter.date` and `adapter.format` methods to recreate its behavior:
152
277
 
153
278
  ```diff
154
- - const meridiem = adapter.getMeridiemText('am');
155
- + const getMeridiemText = (meridiem: 'am' | 'pm') => {
156
- + const date = adapter.setHours(adapter.date()!, meridiem === 'am' ? 2 : 14);
157
- + return utils.format(date, 'meridiem');
158
- + };
279
+ -const meridiem = adapter.getMeridiemText('am');
280
+ +const getMeridiemText = (meridiem: 'am' | 'pm') => {
281
+ + const date = adapter.setHours(adapter.date()!, meridiem === 'am' ? 2 : 14);
282
+ + return utils.format(date, 'meridiem');
283
+ +};
159
284
  +
160
- + const meridiem = getMeridiemText('am');
285
+ +const meridiem = getMeridiemText('am');
161
286
  ```
162
287
 
163
288
  - The `adapter.getMonthArray` method have been removed, you can use the `adapter.startOfYear` and `adapter.addMonths` methods to recreate its behavior:
164
289
 
165
290
  ```diff
166
- - const monthArray = adapter.getMonthArray(value);
167
- + const getMonthArray = (year) => {
168
- + const firstMonth = utils.startOfYear(year);
169
- + const months = [firstMonth];
291
+ -const monthArray = adapter.getMonthArray(value);
292
+ +const getMonthArray = (year) => {
293
+ + const firstMonth = utils.startOfYear(year);
294
+ + const months = [firstMonth];
170
295
  +
171
- + while (months.length < 12) {
172
- + const prevMonth = months[months.length - 1];
173
- + months.push(utils.addMonths(prevMonth, 1));
174
- + }
296
+ + while (months.length < 12) {
297
+ + const prevMonth = months[months.length - 1];
298
+ + months.push(utils.addMonths(prevMonth, 1));
299
+ + }
175
300
  +
176
- + return months;
177
- + }
301
+ + return months;
302
+ +}
178
303
  +
179
- + const monthArray = getMonthArray(value);
304
+ +const monthArray = getMonthArray(value);
180
305
  ```
181
306
 
182
307
  - The `adapter.getNextMonth` method have been removed, you can use the `adapter.addMonths` method instead:
183
308
 
184
309
  ```diff
185
- - const nextMonth = adapter.getNextMonth(value);
186
- + const nextMonth = adapter.addMonths(value, 1);
310
+ -const nextMonth = adapter.getNextMonth(value);
311
+ +const nextMonth = adapter.addMonths(value, 1);
187
312
  ```
188
313
 
189
314
  - The `adapter.getPreviousMonth` method have been removed, you can use the `adapter.addMonths` method instead:
190
315
 
191
316
  ```diff
192
- - const previousMonth = adapter.getPreviousMonth(value);
193
- + const previousMonth = adapter.addMonths(value, -1);
317
+ -const previousMonth = adapter.getPreviousMonth(value);
318
+ +const previousMonth = adapter.addMonths(value, -1);
194
319
  ```
195
320
 
196
321
  - The `adapter.getWeekdays` method have been removed, you can use the `adapter.startOfWeek` and `adapter.addDays` methods instead:
197
322
 
198
323
  ```diff
199
- - const weekDays = adapter.getWeekdays(value);
200
- + const getWeekdays = (value) => {
201
- + const start = adapter.startOfWeek(value);
202
- + return [0, 1, 2, 3, 4, 5, 6].map((diff) => utils.addDays(start, diff));
203
- + };
324
+ -const weekDays = adapter.getWeekdays(value);
325
+ +const getWeekdays = (value) => {
326
+ + const start = adapter.startOfWeek(value);
327
+ + return [0, 1, 2, 3, 4, 5, 6].map((diff) => utils.addDays(start, diff));
328
+ +};
204
329
  +
205
- + const weekDays = getWeekdays(value);
330
+ +const weekDays = getWeekdays(value);
206
331
  ```
207
332
 
208
333
  - The `isNull` method have been removed, you can replace it with a very basic check:
209
334
 
210
335
  ```diff
211
- - const isNull = adapter.isNull(value);
212
- + const isNull = value === null;
336
+ -const isNull = adapter.isNull(value);
337
+ +const isNull = value === null;
213
338
  ```
214
339
 
215
340
  - The `adapter.mergeDateAndTime` method have been removed, you can use the `adapter.setHours`, `adapter.setMinutes`, and `adapter.setSeconds` methods to recreate its behavior:
216
341
 
217
342
  ```diff
218
- - const result = adapter.mergeDateAndTime(valueWithDate, valueWithTime);
219
- + const mergeDateAndTime = <TDate>(
343
+ -const result = adapter.mergeDateAndTime(valueWithDate, valueWithTime);
344
+ +const mergeDateAndTime = <TDate>(
220
345
  + dateParam,
221
346
  + timeParam,
222
347
  + ) => {
@@ -228,37 +353,37 @@ And if you need the exact same output you can apply the following transformation
228
353
  + return mergedDate;
229
354
  + };
230
355
  +
231
- + const result = mergeDateAndTime(valueWithDate, valueWithTime);
356
+ +const result = mergeDateAndTime(valueWithDate, valueWithTime);
232
357
  ```
233
358
 
234
359
  - The `adapter.parseISO` method have been removed, you can directly use your date library:
235
360
 
236
361
  ```diff
237
- // For Day.js
238
- - const value = adapter.parseISO(isoString);
239
- + const value = dayjs(isoString);
362
+ // For Day.js
363
+ -const value = adapter.parseISO(isoString);
364
+ +const value = dayjs(isoString);
240
365
 
241
- // For Luxon
242
- - const value = adapter.parseISO(isoString);
243
- + const value = DateTime.fromISO(isoString);
366
+ // For Luxon
367
+ -const value = adapter.parseISO(isoString);
368
+ +const value = DateTime.fromISO(isoString);
244
369
 
245
- // For DateFns
246
- - const value = adapter.parseISO(isoString);
247
- + const value = dateFns.parseISO(isoString);
370
+ // For DateFns
371
+ -const value = adapter.parseISO(isoString);
372
+ +const value = dateFns.parseISO(isoString);
248
373
 
249
- // For Moment
250
- - const value = adapter.parseISO(isoString);
251
- + const value = moment(isoString, true);
374
+ // For Moment
375
+ -const value = adapter.parseISO(isoString);
376
+ +const value = moment(isoString, true);
252
377
  ```
253
378
 
254
379
  - The `adapter.toISO` method have been removed, you can directly use your date library:
255
380
 
256
381
  ```diff
257
- - const isoString = adapter.toISO(value);
258
- + const isoString = value.toISOString();
259
- + const isoString = value.toUTC().toISO({ format: 'extended' });
260
- + const isoString = dateFns.formatISO(value, { format: 'extended' });
261
- + const isoString = value.toISOString();
382
+ -const isoString = adapter.toISO(value);
383
+ +const isoString = value.toISOString();
384
+ +const isoString = value.toUTC().toISO({ format: 'extended' });
385
+ +const isoString = dateFns.formatISO(value, { format: 'extended' });
386
+ +const isoString = value.toISOString();
262
387
  ```
263
388
 
264
389
  - 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.
@@ -277,49 +402,49 @@ And if you need the exact same output you can apply the following transformation
277
402
  const isEqual = adapterDateFns.isEqual(new Date(), new Date('2022-04-17'));
278
403
 
279
404
  // Non-supported formats (JS Date)
280
- - const isEqual = adapterDayjs.isEqual(new Date(), new Date('2022-04-17'));
281
- + const isEqual = adapterDayjs.isEqual(dayjs(), dayjs('2022-04-17'));
405
+ -const isEqual = adapterDayjs.isEqual(new Date(), new Date('2022-04-17'));
406
+ +const isEqual = adapterDayjs.isEqual(dayjs(), dayjs('2022-04-17'));
282
407
 
283
- - const isEqual = adapterLuxon.isEqual(new Date(), new Date('2022-04-17'));
284
- + const isEqual = adapterLuxon.isEqual(DateTime.now(), DateTime.fromISO('2022-04-17'));
408
+ -const isEqual = adapterLuxon.isEqual(new Date(), new Date('2022-04-17'));
409
+ +const isEqual = adapterLuxon.isEqual(DateTime.now(), DateTime.fromISO('2022-04-17'));
285
410
 
286
- - const isEqual = adapterMoment.isEqual(new Date(), new Date('2022-04-17'));
287
- + const isEqual = adapterMoment.isEqual(moment(), moment('2022-04-17'));
411
+ -const isEqual = adapterMoment.isEqual(new Date(), new Date('2022-04-17'));
412
+ +const isEqual = adapterMoment.isEqual(moment(), moment('2022-04-17'));
288
413
 
289
414
  // Non-supported formats (string)
290
- - const isEqual = adapterDayjs.isEqual('2022-04-16', '2022-04-17');
291
- + const isEqual = adapterDayjs.isEqual(dayjs('2022-04-17'), dayjs('2022-04-17'));
415
+ -const isEqual = adapterDayjs.isEqual('2022-04-16', '2022-04-17');
416
+ +const isEqual = adapterDayjs.isEqual(dayjs('2022-04-17'), dayjs('2022-04-17'));
292
417
 
293
- - const isEqual = adapterLuxon.isEqual('2022-04-16', '2022-04-17');
294
- + const isEqual = adapterLuxon.isEqual(DateTime.fromISO('2022-04-17'), DateTime.fromISO('2022-04-17'));
418
+ -const isEqual = adapterLuxon.isEqual('2022-04-16', '2022-04-17');
419
+ +const isEqual = adapterLuxon.isEqual(DateTime.fromISO('2022-04-17'), DateTime.fromISO('2022-04-17'));
295
420
 
296
- - const isEqual = adapterMoment.isEqual('2022-04-16', '2022-04-17');
297
- + const isEqual = adapterMoment.isEqual(moment('2022-04-17'), moment('2022-04-17'));
421
+ -const isEqual = adapterMoment.isEqual('2022-04-16', '2022-04-17');
422
+ +const isEqual = adapterMoment.isEqual(moment('2022-04-17'), moment('2022-04-17'));
298
423
 
299
- - const isEqual = adapterDateFns.isEqual('2022-04-16', '2022-04-17');
300
- + const isEqual = adapterDateFns.isEqual(new Date('2022-04-17'), new Date('2022-04-17'));
424
+ -const isEqual = adapterDateFns.isEqual('2022-04-16', '2022-04-17');
425
+ +const isEqual = adapterDateFns.isEqual(new Date('2022-04-17'), new Date('2022-04-17'));
301
426
  ```
302
427
 
303
428
  - 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.
304
429
  You can learn more about the new approach on the [dedicated doc page](https://mui.com/x/react-date-pickers/timezone/).
305
430
 
306
431
  ```diff
307
- // When a `value` or a `defaultValue` is provided
308
- <LocalizationProvider
309
- adapter={AdapterDayjs}
310
- - dateLibInstance={dayjs.utc}
311
- >
312
- <DatePicker value={dayjs.utc('2022-04-17')} />
313
- </LocalizationProvider>
314
-
315
- // When no `value` or `defaultValue` is provided
316
- <LocalizationProvider
317
- adapter={AdapterDayjs}
318
- - dateLibInstance={dayjs.utc}
319
- >
320
- - <DatePicker />
321
- + <DatePicker timezone="UTC" />
322
- </LocalizationProvider>
432
+ // When a `value` or a `defaultValue` is provided
433
+ <LocalizationProvider
434
+ adapter={AdapterDayjs}
435
+ - dateLibInstance={dayjs.utc}
436
+ >
437
+ <DatePicker value={dayjs.utc('2022-04-17')} />
438
+ </LocalizationProvider>
439
+
440
+ // When no `value` or `defaultValue` is provided
441
+ <LocalizationProvider
442
+ adapter={AdapterDayjs}
443
+ - dateLibInstance={dayjs.utc}
444
+ >
445
+ - <DatePicker />
446
+ + <DatePicker timezone="UTC" />
447
+ </LocalizationProvider>
323
448
  ```
324
449
 
325
450
  - 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`:
@@ -328,10 +453,10 @@ And if you need the exact same output you can apply the following transformation
328
453
  const fieldRef = React.useRef<FieldRef<FieldSection>>(null);
329
454
 
330
455
  React.useEffect(() => {
331
- const firstSection = fieldRef.current!.getSections()[0]
332
- - console.log(firstSection.hasLeadingZeros)
333
- + console.log(firstSection.hasLeadingZerosInFormat)
334
- }, [])
456
+ const firstSection = fieldRef.current!.getSections()[0];
457
+ - console.log(firstSection.hasLeadingZeros);
458
+ + console.log(firstSection.hasLeadingZerosInFormat);
459
+ }, []);
335
460
 
336
461
  return (
337
462
  <DateField unstableFieldRef={fieldRef} />
@@ -341,8 +466,8 @@ And if you need the exact same output you can apply the following transformation
341
466
  - The `adapter.getYearRange` method used to accept two params and now accepts a tuple to be consistent with the `adapter.isWithinRange` method (#10978):
342
467
 
343
468
  ```diff
344
- - adapter.getYearRange(start, end);
345
- + adapter.getYearRange([start, end])
469
+ -adapter.getYearRange(start, end);
470
+ +adapter.getYearRange([start, end])
346
471
  ```
347
472
 
348
473
  - The `adapter.isValid` method used to accept any type of value and tried to parse them before checking their validity (#10971).
@@ -362,27 +487,27 @@ And if you need the exact same output you can apply the following transformation
362
487
  const isValid = adapterDateFns.isValid(new Date());
363
488
 
364
489
  // Non-supported formats (JS Date)
365
- - const isValid = adapterDayjs.isValid(new Date('2022-04-17'));
366
- + const isValid = adapterDayjs.isValid(dayjs('2022-04-17'));
490
+ -const isValid = adapterDayjs.isValid(new Date('2022-04-17'));
491
+ +const isValid = adapterDayjs.isValid(dayjs('2022-04-17'));
367
492
 
368
- - const isValid = adapterLuxon.isValid(new Date('2022-04-17'));
369
- + const isValid = adapterLuxon.isValid(DateTime.fromISO('2022-04-17'));
493
+ -const isValid = adapterLuxon.isValid(new Date('2022-04-17'));
494
+ +const isValid = adapterLuxon.isValid(DateTime.fromISO('2022-04-17'));
370
495
 
371
- - const isValid = adapterMoment.isValid(new Date('2022-04-17'));
372
- + const isValid = adapterMoment.isValid(moment('2022-04-17'));
496
+ -const isValid = adapterMoment.isValid(new Date('2022-04-17'));
497
+ +const isValid = adapterMoment.isValid(moment('2022-04-17'));
373
498
 
374
499
  // Non-supported formats (string)
375
- - const isValid = adapterDayjs.isValid('2022-04-17');
376
- + const isValid = adapterDayjs.isValid(dayjs('2022-04-17'));
500
+ -const isValid = adapterDayjs.isValid('2022-04-17');
501
+ +const isValid = adapterDayjs.isValid(dayjs('2022-04-17'));
377
502
 
378
- - const isValid = adapterLuxon.isValid('2022-04-17');
379
- + const isValid = adapterLuxon.isValid(DateTime.fromISO('2022-04-17'));
503
+ -const isValid = adapterLuxon.isValid('2022-04-17');
504
+ +const isValid = adapterLuxon.isValid(DateTime.fromISO('2022-04-17'));
380
505
 
381
- - const isValid = adapterMoment.isValid('2022-04-17');
382
- + const isValid = adapterMoment.isValid(moment('2022-04-17'));
506
+ -const isValid = adapterMoment.isValid('2022-04-17');
507
+ +const isValid = adapterMoment.isValid(moment('2022-04-17'));
383
508
 
384
- - const isValid = adapterDateFns.isValid('2022-04-17');
385
- + const isValid = adapterDateFns.isValid(new Date('2022-04-17'));
509
+ -const isValid = adapterDateFns.isValid('2022-04-17');
510
+ +const isValid = adapterDateFns.isValid(new Date('2022-04-17'));
386
511
  ```
387
512
 
388
513
  #### Changes
@@ -447,7 +572,7 @@ A special shoutout to thank the 12 contributors who made this release possible.
447
572
  }
448
573
  const filterRegex = new RegExp(escapeRegExp(filterItem.value), 'i');
449
574
  - return (cellParams) => {
450
- - const { value } = cellParams;
575
+ - const { value } = cellParams;
451
576
  + return (value, row, colDef, apiRef) => {
452
577
  return value != null ? filterRegex.test(String(value)) : false;
453
578
  };
@@ -559,6 +684,59 @@ Here is an example of the renaming for the `<ChartsTooltip />` component.
559
684
  - [core] Update release instructions as per v7 configuration (#10962) @MBilalShafi
560
685
  - [license] Correctly throw errors (#10924) @oliviertassinari
561
686
 
687
+ ## 6.18.2
688
+
689
+ _Nov 23, 2023_
690
+
691
+ We'd like to offer a big thanks to the 11 contributors who made this release possible. Here are some highlights ✨:
692
+
693
+ - 🌍 Improve Arabic (ar-SD), Czech (cs-CZ), and Hebrew (he-IL) locales on Data Grid
694
+ - 🌍 Add Basque (eu) and Macedonian (mk) locales on Pickers
695
+ - 🌍 Improve German (de-DE) and Spanish (es-ES) locales on Pickers
696
+ - 🐞 Bugfixes
697
+ - 📚 Documentation improvements
698
+
699
+ ### Data Grid
700
+
701
+ #### `@mui/x-data-grid@6.18.2`
702
+
703
+ - [l10n] Improve Arabic (ar-SD) locale (#11096) @OmarWebDev
704
+ - [l10n] Improve Czech (cs-CZ) locale (#10968) @luborepka
705
+ - [l10n] Improve Hebrew (he-IL) locale (#11056) @LironKiloma
706
+
707
+ #### `@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')
708
+
709
+ Same changes as in `@mui/x-data-grid@6.18.2`.
710
+
711
+ #### `@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')
712
+
713
+ Same changes as in `@mui/x-data-grid-pro@6.18.2`.
714
+
715
+ ### Date Pickers
716
+
717
+ #### `@mui/x-date-pickers@6.18.2`
718
+
719
+ - [l10n] Add Basque (eu) locale and improve Spanish (es-ES) locale (#10985) @lajtomekadimon
720
+ - [l10n] Add Macedonian (mk) locale (#11155) @brsnik
721
+ - [l10n] Improve German (de-DE) locale (#11104) @jho-vema
722
+ - [pickers] Deprecate `defaultCalendarMonth` prop (#11138) @flaviendelangle
723
+ - [pickers] Fix `DateCalendar` crashing when given an invalid value (#11101) @flaviendelangle
724
+
725
+ #### `@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')
726
+
727
+ Same changes as in `@mui/x-date-pickers@6.18.2`.
728
+
729
+ ### Charts / `@mui/x-charts@6.18.2`
730
+
731
+ - [charts] Fix `ChartsTooltip` component setup (#11157) @LukasTy
732
+ - [charts] Remove outdated prop-types (#10998) @alexfauquette
733
+
734
+ ### Docs
735
+
736
+ - [docs] Fix incoherent naming of a component in `Custom slots and subcomponents` page (#11003) @lhilgert9
737
+ - [test] Skip flaky e2e test in webkit (#11115) @cherniavskii
738
+ - [test] Wait for images to load (#11109) @cherniavskii
739
+
562
740
  ## 6.18.1
563
741
 
564
742
  _Nov 9, 2023_
@@ -625,11 +803,11 @@ We'd like to offer a big thanks to the 7 contributors who made this release poss
625
803
 
626
804
  - 🎁 The Charts package is now officially stable!
627
805
  - 🥧 Pie charts are now animated.
628
- - 📈 Line charts now support partial data, and can interpolate missing data.
806
+ - 📈 Line charts now support partial data, and can interpolate missing data https://mui.com/x/react-charts/lines/#skip-missing-points.
629
807
 
630
- <img width="380" alt="line charts with partial data" src="https://github.com/mui/mui-x/assets/45398769/385ecf77-19b2-4a03-8aef-5d547db1d9ad">
808
+ <img src="https://github.com/mui/mui-x/assets/3165635/d2d50b1b-ee29-4e4c-9ebe-629c06f3093e" width="683" height="436" />
631
809
 
632
- - ✨ Allow to ignore [diacritics](https://en.wikipedia.org/wiki/Diacritic) when filtering
810
+ - ✨ The data grid allows to ignore [diacritics](https://en.wikipedia.org/wiki/Diacritic) when filtering.
633
811
  - 📚 Documentation improvements
634
812
 
635
813
  ### Data Grid