@mui/x-date-pickers 8.2.0 → 8.3.1

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 (56) hide show
  1. package/AdapterDateFns/AdapterDateFns.js +2 -1
  2. package/AdapterDateFnsJalali/AdapterDateFnsJalali.js +2 -1
  3. package/AdapterDateFnsJalaliV2/AdapterDateFnsJalaliV2.js +79 -75
  4. package/AdapterDateFnsV2/AdapterDateFnsV2.js +79 -75
  5. package/AdapterDayjs/AdapterDayjs.js +12 -9
  6. package/AdapterLuxon/AdapterLuxon.js +3 -2
  7. package/AdapterMoment/AdapterMoment.js +2 -2
  8. package/AdapterMomentHijri/AdapterMomentHijri.js +3 -0
  9. package/AdapterMomentJalaali/AdapterMomentJalaali.js +1 -0
  10. package/CHANGELOG.md +199 -6
  11. package/DateCalendar/PickersFadeTransitionGroup.js +1 -3
  12. package/DesktopDateTimePicker/DesktopDateTimePicker.js +2 -0
  13. package/DigitalClock/DigitalClock.d.ts +1 -1
  14. package/DigitalClock/DigitalClock.js +2 -1
  15. package/MultiSectionDigitalClock/MultiSectionDigitalClock.js +1 -1
  16. package/MultiSectionDigitalClock/MultiSectionDigitalClockSection.js +2 -1
  17. package/PickersLayout/PickersLayout.d.ts +2 -2
  18. package/PickersSectionList/PickersSectionList.d.ts +1 -1
  19. package/PickersTextField/PickersFilledInput/pickersFilledInputClasses.d.ts +6 -6
  20. package/PickersTextField/PickersInput/pickersInputClasses.d.ts +6 -6
  21. package/PickersTextField/PickersInputBase/PickersInputBase.d.ts +2 -2
  22. package/PickersTextField/PickersOutlinedInput/pickersOutlinedInputClasses.d.ts +5 -5
  23. package/PickersTextField/PickersTextField.js +8 -1
  24. package/YearCalendar/yearCalendarClasses.d.ts +1 -1
  25. package/esm/AdapterDateFns/AdapterDateFns.js +2 -1
  26. package/esm/AdapterDateFnsJalali/AdapterDateFnsJalali.js +2 -1
  27. package/esm/AdapterDateFnsJalaliV2/AdapterDateFnsJalaliV2.js +5 -1
  28. package/esm/AdapterDateFnsV2/AdapterDateFnsV2.js +5 -1
  29. package/esm/AdapterDayjs/AdapterDayjs.js +12 -9
  30. package/esm/AdapterLuxon/AdapterLuxon.js +3 -2
  31. package/esm/AdapterMoment/AdapterMoment.js +2 -2
  32. package/esm/AdapterMomentHijri/AdapterMomentHijri.js +3 -0
  33. package/esm/AdapterMomentJalaali/AdapterMomentJalaali.js +1 -0
  34. package/esm/DateCalendar/PickersFadeTransitionGroup.js +1 -3
  35. package/esm/DesktopDateTimePicker/DesktopDateTimePicker.js +2 -0
  36. package/esm/DigitalClock/DigitalClock.d.ts +1 -1
  37. package/esm/DigitalClock/DigitalClock.js +2 -1
  38. package/esm/MultiSectionDigitalClock/MultiSectionDigitalClock.js +1 -1
  39. package/esm/MultiSectionDigitalClock/MultiSectionDigitalClockSection.js +2 -1
  40. package/esm/PickersLayout/PickersLayout.d.ts +2 -2
  41. package/esm/PickersSectionList/PickersSectionList.d.ts +1 -1
  42. package/esm/PickersTextField/PickersFilledInput/pickersFilledInputClasses.d.ts +6 -6
  43. package/esm/PickersTextField/PickersInput/pickersInputClasses.d.ts +6 -6
  44. package/esm/PickersTextField/PickersInputBase/PickersInputBase.d.ts +2 -2
  45. package/esm/PickersTextField/PickersOutlinedInput/pickersOutlinedInputClasses.d.ts +5 -5
  46. package/esm/PickersTextField/PickersTextField.js +8 -1
  47. package/esm/YearCalendar/yearCalendarClasses.d.ts +1 -1
  48. package/esm/index.js +1 -1
  49. package/esm/internals/components/PickersArrowSwitcher/pickersArrowSwitcherClasses.d.ts +1 -1
  50. package/esm/internals/components/PickersModalDialog.js +6 -2
  51. package/esm/internals/components/pickersToolbarClasses.d.ts +1 -1
  52. package/index.js +1 -1
  53. package/internals/components/PickersArrowSwitcher/pickersArrowSwitcherClasses.d.ts +1 -1
  54. package/internals/components/PickersModalDialog.js +6 -2
  55. package/internals/components/pickersToolbarClasses.d.ts +1 -1
  56. package/package.json +4 -4
@@ -14,11 +14,13 @@ var _isBetween = _interopRequireDefault(require("dayjs/plugin/isBetween.js"));
14
14
  var _advancedFormat = _interopRequireDefault(require("dayjs/plugin/advancedFormat.js"));
15
15
  var _warning = require("@mui/x-internals/warning");
16
16
  /* eslint-disable class-methods-use-this */
17
+ /* v8 ignore start */
17
18
 
18
19
  // dayjs has no exports field defined
19
20
  // See https://github.com/iamkun/dayjs/issues/2562
20
21
  /* eslint-disable import/extensions */
21
22
 
23
+ /* v8 ignore stop */
22
24
  /* eslint-enable import/extensions */
23
25
 
24
26
  _dayjs.default.extend(_localizedFormat.default);
@@ -212,7 +214,7 @@ class AdapterDayjs {
212
214
  const timezone = _dayjs.default.tz.guess();
213
215
 
214
216
  // We can't change the system timezone in the tests
215
- /* istanbul ignore next */
217
+ /* v8 ignore next 3 */
216
218
  if (timezone !== 'UTC') {
217
219
  return _dayjs.default.tz(value, timezone);
218
220
  }
@@ -221,19 +223,19 @@ class AdapterDayjs {
221
223
  return (0, _dayjs.default)(value);
222
224
  };
223
225
  this.createUTCDate = value => {
224
- /* istanbul ignore next */
226
+ /* v8 ignore next 3 */
225
227
  if (!this.hasUTCPlugin()) {
226
228
  throw new Error(MISSING_UTC_PLUGIN);
227
229
  }
228
230
  return _dayjs.default.utc(value);
229
231
  };
230
232
  this.createTZDate = (value, timezone) => {
231
- /* istanbul ignore next */
233
+ /* v8 ignore next 3 */
232
234
  if (!this.hasUTCPlugin()) {
233
235
  throw new Error(MISSING_UTC_PLUGIN);
234
236
  }
235
237
 
236
- /* istanbul ignore next */
238
+ /* v8 ignore next 3 */
237
239
  if (!this.hasTimezonePlugin()) {
238
240
  throw new Error(MISSING_TIMEZONE_PLUGIN);
239
241
  }
@@ -245,10 +247,11 @@ class AdapterDayjs {
245
247
  const locale = this.locale || 'en';
246
248
  let localeObject = locales[locale];
247
249
  if (localeObject === undefined) {
248
- /* istanbul ignore next */
250
+ /* v8 ignore start */
249
251
  if (process.env.NODE_ENV !== 'production') {
250
252
  (0, _warning.warnOnce)(['MUI X: Your locale has not been found.', 'Either the locale key is not a supported one. Locales supported by dayjs are available here: https://github.com/iamkun/dayjs/tree/dev/src/locale.', "Or you forget to import the locale from 'dayjs/locale/{localeUsed}'", 'fallback on English locale.']);
251
253
  }
254
+ /* v8 ignore stop */
252
255
  localeObject = locales.en;
253
256
  }
254
257
  return localeObject.formats;
@@ -267,7 +270,7 @@ class AdapterDayjs {
267
270
  if (timezone !== 'UTC') {
268
271
  const fixedValue = value.tz(this.cleanTimezone(timezone), true);
269
272
  // TODO: Simplify the case when we raise the `dayjs` peer dep to 1.11.12 (https://github.com/iamkun/dayjs/releases/tag/v1.11.12)
270
- /* istanbul ignore next */
273
+ /* v8 ignore next 3 */
271
274
  // @ts-ignore
272
275
  if (fixedValue.$offset === (value.$offset ?? 0)) {
273
276
  return value;
@@ -316,7 +319,7 @@ class AdapterDayjs {
316
319
  return value;
317
320
  }
318
321
  if (timezone === 'UTC') {
319
- /* istanbul ignore next */
322
+ /* v8 ignore next 3 */
320
323
  if (!this.hasUTCPlugin()) {
321
324
  throw new Error(MISSING_UTC_PLUGIN);
322
325
  }
@@ -334,7 +337,7 @@ class AdapterDayjs {
334
337
  return value;
335
338
  }
336
339
 
337
- /* istanbul ignore next */
340
+ /* v8 ignore next */
338
341
  throw new Error(MISSING_TIMEZONE_PLUGIN);
339
342
  }
340
343
  return _dayjs.default.tz(value, this.cleanTimezone(timezone));
@@ -352,7 +355,7 @@ class AdapterDayjs {
352
355
  return this.locale || 'en';
353
356
  };
354
357
  this.is12HourCycleInCurrentLocale = () => {
355
- /* istanbul ignore next */
358
+ /* v8 ignore next */
356
359
  return /A|a/.test(this.getLocaleFormats().LT || '');
357
360
  };
358
361
  this.expandFormat = format => {
@@ -233,7 +233,7 @@ class AdapterLuxon {
233
233
  this.getCurrentLocaleCode = () => {
234
234
  return this.locale;
235
235
  };
236
- /* istanbul ignore next */
236
+ /* v8 ignore start */
237
237
  this.is12HourCycleInCurrentLocale = () => {
238
238
  if (typeof Intl === 'undefined' || typeof Intl.DateTimeFormat === 'undefined') {
239
239
  return true; // Luxon defaults to en-US if Intl not found
@@ -242,6 +242,7 @@ class AdapterLuxon {
242
242
  hour: 'numeric'
243
243
  })?.resolvedOptions()?.hour12);
244
244
  };
245
+ /* v8 ignore stop */
245
246
  this.expandFormat = format => {
246
247
  // Extract escaped section to avoid extending them
247
248
  const catchEscapedSectionsRegexp = /''|'(''|[^'])+('|$)|[^']*/g;
@@ -485,7 +486,7 @@ class AdapterLuxon {
485
486
  return weeks;
486
487
  };
487
488
  this.getWeekNumber = value => {
488
- /* istanbul ignore next */
489
+ /* v8 ignore next */
489
490
  return value.localWeekNumber ?? value.weekNumber;
490
491
  };
491
492
  this.getDayOfWeek = value => {
@@ -194,7 +194,7 @@ class AdapterMoment {
194
194
  return parsedValue.locale(this.locale);
195
195
  };
196
196
  this.createTZDate = (value, timezone) => {
197
- /* istanbul ignore next */
197
+ /* v8 ignore next 3 */
198
198
  if (!this.hasTimezonePlugin()) {
199
199
  throw new Error(MISSING_TIMEZONE_PLUGIN);
200
200
  }
@@ -237,7 +237,7 @@ class AdapterMoment {
237
237
  return value.clone().local();
238
238
  }
239
239
  if (!this.hasTimezonePlugin()) {
240
- /* istanbul ignore next */
240
+ /* v8 ignore next 3 */
241
241
  if (timezone !== 'default') {
242
242
  throw new Error(MISSING_TIMEZONE_PLUGIN);
243
243
  }
@@ -9,6 +9,7 @@ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends")
9
9
  var _momentHijri = _interopRequireDefault(require("moment-hijri"));
10
10
  var _AdapterMoment = require("../AdapterMoment");
11
11
  /* eslint-disable class-methods-use-this */
12
+ /* v8 ignore next */
12
13
 
13
14
  // From https://momentjs.com/docs/#/displaying/format/
14
15
  const formatTokenMap = {
@@ -155,9 +156,11 @@ class AdapterMomentHijri extends _AdapterMoment.AdapterMoment {
155
156
  }
156
157
  return this.moment(value).locale('ar-SA');
157
158
  };
159
+ /* v8 ignore next 3 */
158
160
  this.getTimezone = () => {
159
161
  return 'default';
160
162
  };
163
+ /* v8 ignore next 3 */
161
164
  this.setTimezone = value => {
162
165
  return value;
163
166
  };
@@ -9,6 +9,7 @@ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends")
9
9
  var _momentJalaali = _interopRequireDefault(require("moment-jalaali"));
10
10
  var _AdapterMoment = require("../AdapterMoment");
11
11
  /* eslint-disable class-methods-use-this */
12
+ /* v8 ignore next */
12
13
 
13
14
  // From https://momentjs.com/docs/#/displaying/format/
14
15
  const formatTokenMap = {
package/CHANGELOG.md CHANGED
@@ -5,6 +5,201 @@
5
5
  All notable changes to this project will be documented in this file.
6
6
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
7
7
 
8
+ ## 8.3.1
9
+
10
+ _May 14, 2025_
11
+
12
+ We'd like to offer a big thanks to the 12 contributors who made this release possible. Here are some highlights ✨:
13
+
14
+ - 🌍 Improve Norwegian Bokmål (nb-NO) locale on the Data Grid
15
+ - 🌍 Improve Korean (ko-KR) locale on the Data Grid and Pickers
16
+ - 📚 Documentation improvements
17
+ - 🐞 Bugfixes
18
+
19
+ Special thanks go out to the community members for their valuable contributions:
20
+ @100pearlcent, @htollefsen, @JanPretzel, @sai6855.
21
+ Following are all team members who have contributed to this release:
22
+ @bernardobelchior, @cherniavskii, @flaviendelangle, @Janpot, @JCQuintas, @MBilalShafi, @oliviertassinari, @prakhargupta1.
23
+
24
+ <!--/ HIGHLIGHT_ABOVE_SEPARATOR /-->
25
+
26
+ ### Data Grid
27
+
28
+ #### `@mui/x-data-grid@8.3.1`
29
+
30
+ - [DataGrid] Add `reason` param for `onRowSelectionModelChange` callback (#17545) @sai6855
31
+ - [DataGrid] Fix `renderContext` calculation loop (#17779) @cherniavskii
32
+ - [DataGrid] Fix column spanning jump on scroll (#17759) @cherniavskii
33
+ - [DataGrid] Fix material augmentation not working (#17761) @cherniavskii
34
+ - [DataGrid] Use arguments selector for checkbox props (#17683) @MBilalShafi
35
+ - [l10n] Improve Norwegian Bokmål (nb-NO) locale (#17766) @htollefsen
36
+ - [l10n] Improve Korean (ko-KR) locale (#17484) @100pearlcent
37
+
38
+ #### `@mui/x-data-grid-pro@8.3.1` [![pro](https://mui.com/r/x-pro-svg)](https://mui.com/r/x-pro-svg-link 'Pro plan')
39
+
40
+ Same changes as in `@mui/x-data-grid@8.3.1`.
41
+
42
+ #### `@mui/x-data-grid-premium@8.3.1` [![premium](https://mui.com/r/x-premium-svg)](https://mui.com/r/x-premium-svg-link 'Premium plan')
43
+
44
+ Same changes as in `@mui/x-data-grid-pro@8.3.1`, plus:
45
+
46
+ - [DataGridPremium] Fix aggregation label not being used in pivot panel (#17760) @cherniavskii
47
+
48
+ ### Date and Time Pickers
49
+
50
+ #### `@mui/x-date-pickers@8.3.1`
51
+
52
+ - [fields] Add notch to the field outlined when the label is manually shrank (#17620) @flaviendelangle
53
+ - [l10n] Improve Korean (ko-KR) locale (#17484) @100pearlcent
54
+
55
+ #### `@mui/x-date-pickers-pro@8.3.1` [![pro](https://mui.com/r/x-pro-svg)](https://mui.com/r/x-pro-svg-link 'Pro plan')
56
+
57
+ Same changes as in `@mui/x-date-pickers@8.3.1`.
58
+
59
+ ### Charts
60
+
61
+ #### `@mui/x-charts@8.3.1`
62
+
63
+ - [charts] Fix infinite tick number when zoom range is zero (#17750) @bernardobelchior
64
+ - [charts] Improve tick rendering performance (#17755) @bernardobelchior
65
+
66
+ #### `@mui/x-charts-pro@8.3.1` [![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-charts@8.3.1`, plus:
69
+
70
+ - [charts-pro] Fix ESM build issue with Vite (#17774) @bernardobelchior
71
+ - [charts-pro] Add benchmark for zoomed in scatter chart (#17756) @bernardobelchior
72
+
73
+ ### Tree View
74
+
75
+ #### `@mui/x-tree-view@8.3.1`
76
+
77
+ Internal changes.
78
+
79
+ #### `@mui/x-tree-view-pro@8.3.1` [![pro](https://mui.com/r/x-pro-svg)](https://mui.com/r/x-pro-svg-link 'Pro plan')
80
+
81
+ Same changes as in `@mui/x-tree-view@8.3.1`.
82
+
83
+ ### Docs
84
+
85
+ - [docs] Fix 301 to Next.js docs for license @oliviertassinari
86
+ - [docs] Fix AI assistant API URL (#17745) @oliviertassinari
87
+ - [docs] Fix heading structure in README @oliviertassinari
88
+ - [docs] Fix translation keys documentation (#17811) @JanPretzel
89
+ - [docs] Improve CHANGELOG format @oliviertassinari
90
+
91
+ ### Core
92
+
93
+ - [core] Apply YAML convention, blank line only at top level @oliviertassinari
94
+ - [code-infra] Fix dynamic import missing extensions (#17767) @Janpot
95
+ - [code-infra] Replace `mocha` with `vitest` for browser & jsdom tests (#14508) @JCQuintas
96
+ - [scheduler] Create the package and setup a private doc page (#17239) @flaviendelangle
97
+
98
+ ## 8.3.0
99
+
100
+ _May 8, 2025_
101
+
102
+ We'd like to offer a big thanks to the 11 contributors who made this release possible. Here are some highlights ✨:
103
+
104
+ - 🎨 Added new styling options and shapes for `<FunnelChart />`, including `variant`, `borderRadius`, `pyramid`, and `step-pyramid` curves.
105
+ - 📚 Documentation improvements
106
+ - 🐞 Bugfixes
107
+
108
+ Special thanks go out to this community member for a valuable contribution: @ptuukkan.
109
+ Team members who have contributed to this release: @alexfauquette, @arminmeh, @bernardobelchior, @flaviendelangle, @Janpot, @JCQuintas, @LukasTy, @MBilalShafi, @rita-codes, @romgrk.
110
+
111
+ ### Data Grid
112
+
113
+ #### `@mui/x-data-grid@8.3.0`
114
+
115
+ - [DataGrid] Fix cell editing of computed columns with data source (#17684) @ptuukkan
116
+ - [DataGrid] Fix lazy loading crash with `isRowSelectable` prop (#17629) @MBilalShafi
117
+ - [DataGrid] Fix: use CSS nonce (#17726) @romgrk
118
+ - [DataGrid] Ignore `preProcessEditCellProps` for non-editable columns when starting a row update (#17732) @arminmeh
119
+ - [DataGrid] Avoid applying row selection propagation on filtered rows (#17739) @MBilalShafi
120
+
121
+ #### `@mui/x-data-grid-pro@8.3.0` [![pro](https://mui.com/r/x-pro-svg)](https://mui.com/r/x-pro-svg-link 'Pro plan')
122
+
123
+ Same changes as in `@mui/x-data-grid@8.3.0`.
124
+
125
+ #### `@mui/x-data-grid-premium@8.3.0` [![premium](https://mui.com/r/x-premium-svg)](https://mui.com/r/x-premium-svg-link 'Premium plan')
126
+
127
+ Same changes as in `@mui/x-data-grid-pro@8.3.0`.
128
+
129
+ ### Date and Time Pickers
130
+
131
+ #### `@mui/x-date-pickers@8.3.0`
132
+
133
+ - [DateTimePicker] Fix focus behavior on desktop variant (#17719) @LukasTy
134
+ - [pickers] Avoid `DigitalClock` stealing focus from a Picker open button on close (#17686) @LukasTy
135
+
136
+ #### `@mui/x-date-pickers-pro@8.3.0` [![pro](https://mui.com/r/x-pro-svg)](https://mui.com/r/x-pro-svg-link 'Pro plan')
137
+
138
+ Same changes as in `@mui/x-date-pickers@8.3.0`, plus:
139
+
140
+ - [DateRangePicker] Fix to reset range position after closing mobile Picker (#17631) @LukasTy
141
+
142
+ ### Charts
143
+
144
+ - The `<FunnelChart />` series now accepts a `variant='outlined'` prop for a simpler style.
145
+ <img width="398" alt="Screenshot 2025-05-06 at 20 36 12" src="https://github.com/user-attachments/assets/00fef14f-9026-421e-a4b6-7e081adce1e8" />
146
+
147
+ - Add a `borderRadius` property to `<FunnelChart />`. All funnels have `8px` as a default value.
148
+ <img width="386" alt="Screenshot 2025-05-06 at 14 00 20" src="https://github.com/user-attachments/assets/4f4cc0e7-01ce-4ed6-a0e1-a387f78def23" />
149
+
150
+ - Add a `pyramid` curve to `<FunnelChart />`, which allows creation of a pyramid-shaped funnel.
151
+ <img width="344" alt="Screenshot 2025-05-06 at 14 32 59" src="https://github.com/user-attachments/assets/0b2896e0-0478-4766-bb1b-258a4977a751" />
152
+
153
+ - Add a `step-pyramid` curve to `<FunnelChart />`, which creates a stepped-pyramid like shape.
154
+ <img width="344" alt="Screenshot 2025-05-06 at 14 33 03" src="https://github.com/user-attachments/assets/894f0ab3-7898-40fe-b0df-560feea4085a" />
155
+
156
+ #### `@mui/x-charts@8.3.0`
157
+
158
+ - [charts] Add charts toolbar with zoom options (#17615) @bernardobelchior
159
+ - [charts] Add zoom slider (#17496) @bernardobelchior
160
+ - [charts] Cleanup compiler warnings (#17360) @alexfauquette
161
+ - [charts] Fix `<PieArcLabel />` not taking `arcLabelRadius` into account (#17655) @bernardobelchior
162
+ - [charts] Fix spark line not having clip path (#17501) @bernardobelchior
163
+ - [charts] Fix type issue with ESM (#17624) @alexfauquette
164
+ - [charts] Improve `<MarkElement />` performance (#17546) @bernardobelchior
165
+ - [charts] Rename `materialSlots` internal constant (#17710) @bernardobelchior
166
+ - [charts] Update zoom slider design (#17682) @bernardobelchior
167
+ - [charts] Fix zoom being documented as available for heatmap (#17657) @bernardobelchior
168
+
169
+ #### `@mui/x-charts-pro@8.3.0` [![pro](https://mui.com/r/x-pro-svg)](https://mui.com/r/x-pro-svg-link 'Pro plan')
170
+
171
+ Same changes as in `@mui/x-charts@8.3.0`, plus:
172
+
173
+ - [charts-pro] Add `pyramid` curve to `<FunnelChart />` (#17665) @JCQuintas
174
+ - [charts-pro] Add `variant='outlined'` to `<FunnelChart />` series (#17661) @JCQuintas
175
+ - [charts-pro] Add a `borderRadius` property to `<FunnelChart />` (#17660) @JCQuintas
176
+
177
+ ### Tree View
178
+
179
+ #### `@mui/x-tree-view@8.3.0`
180
+
181
+ - [tree view] Bug fix - Escape does not cancel Drag n Drop (#17735) @rita-codes
182
+ - [tree view] Fix keyboard navigation error (#17685) @rita-codes
183
+ - [tree view] Continue cleaning the plugin system (#17386) @flaviendelangle
184
+
185
+ #### `@mui/x-tree-view-pro@8.3.0` [![pro](https://mui.com/r/x-pro-svg)](https://mui.com/r/x-pro-svg-link 'Pro plan')
186
+
187
+ Same changes as in `@mui/x-tree-view@8.3.0`.
188
+
189
+ ### Docs
190
+
191
+ - [charts] Add population pyramid demo (#17652) @bernardobelchior
192
+ - [charts] Fix randomised argos test (#17658) @JCQuintas
193
+ - [docs] Make preview messaging consistent in charts @bernardobelchior
194
+
195
+ ### Core
196
+
197
+ - [code-infra] Avoid `node` types in the built packages (#17533) @LukasTy
198
+ - [code-infra] Add `pkg.pr.new` publishing (#17402) @Janpot
199
+ - [code-infra] Normalize author package in org @oliviertassinari
200
+ - [code-infra] Remove required checkout step (#17729) @JCQuintas
201
+ - [docs-infra] Normalize netlify.toml in org @oliviertassinari
202
+
8
203
  ## 8.2.0
9
204
 
10
205
  _May 1, 2025_
@@ -424,8 +619,7 @@ We'd like to offer a big thanks to the 12 contributors who made this release pos
424
619
  - 📚 Documentation improvements
425
620
  - 🐞 Bugfixes
426
621
 
427
- Team members who have contributed to this release:
428
- @bernardobelchior, @cherniavskii, @flaviendelangle, @JCQuintas, @KenanYusuf, @LukasTy, @MBilalShafi, @michelengelen, @oliviertassinari, @noraleonte, @romgrk, @alexfauquette.
622
+ Team members who have contributed to this release: @bernardobelchior, @cherniavskii, @flaviendelangle, @JCQuintas, @KenanYusuf, @LukasTy, @MBilalShafi, @michelengelen, @oliviertassinari, @noraleonte, @romgrk, @alexfauquette.
429
623
 
430
624
  <!--/ HIGHLIGHT_ABOVE_SEPARATOR /-->
431
625
 
@@ -738,7 +932,7 @@ We'd like to offer a big thanks to the 21 contributors who made this release pos
738
932
  - 🌍 Improve Chinese (zh-CN), (zh-HK), (zh-TW), Czech (cs-CZ), Korean (ko-KR) and Slovak (sk-Sk) locales on the Data Grid
739
933
  - 🌍 Improve Chinese (zh-CN), (zh-HK) and (zh-TW) locales on the Pickers
740
934
 
741
- ## Breaking changes
935
+ ### Breaking changes
742
936
 
743
937
  - ℹ️ The peer dependency on `@mui/material` has been updated to accept only v7.
744
938
  This has been done to increase the adoption rate of ESM.
@@ -751,7 +945,7 @@ Following are all team members who have contributed to this release:
751
945
 
752
946
  <!--/ HIGHLIGHT_ABOVE_SEPARATOR /-->
753
947
 
754
- ## Alpha release highlights
948
+ ### Alpha release highlights
755
949
 
756
950
  Below are the highlights of the alpha releases leading up to this beta release:
757
951
 
@@ -3045,8 +3239,7 @@ We'd like to offer a big thanks to the 4 contributors who made this release poss
3045
3239
 
3046
3240
  - 🐞 Bugfixes
3047
3241
 
3048
- Team members who have contributed to this release:
3049
- @arminmeh, @cherniavskii, @LukasTy, @michelengelen.
3242
+ Team members who have contributed to this release: @arminmeh, @cherniavskii, @LukasTy, @michelengelen.
3050
3243
 
3051
3244
  <!--/ HIGHLIGHT_ABOVE_SEPARATOR /-->
3052
3245
 
@@ -6,7 +6,6 @@ Object.defineProperty(exports, "__esModule", {
6
6
  value: true
7
7
  });
8
8
  exports.PickersFadeTransitionGroup = PickersFadeTransitionGroup;
9
- var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
10
9
  var _objectWithoutPropertiesLoose2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutPropertiesLoose"));
11
10
  var React = _interopRequireWildcard(require("react"));
12
11
  var _clsx = _interopRequireDefault(require("clsx"));
@@ -54,10 +53,9 @@ function PickersFadeTransitionGroup(inProps) {
54
53
  if (reduceAnimations) {
55
54
  return children;
56
55
  }
57
- const ownerState = (0, _extends2.default)({}, other);
58
56
  return /*#__PURE__*/(0, _jsxRuntime.jsx)(PickersFadeTransitionGroupRoot, {
59
57
  className: (0, _clsx.default)(classes.root, className),
60
- ownerState: ownerState,
58
+ ownerState: other,
61
59
  children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Fade.default, {
62
60
  appear: false,
63
61
  mountOnEnter: true,
@@ -44,6 +44,8 @@ const rendererInterceptor = function RendererInterceptor(props) {
44
44
  } = rendererProps,
45
45
  otherProps = (0, _objectWithoutPropertiesLoose2.default)(rendererProps, _excluded);
46
46
  const finalProps = (0, _extends2.default)({}, otherProps, {
47
+ // we control the focused view manually
48
+ autoFocus: false,
47
49
  focusedView: null,
48
50
  sx: [{
49
51
  [`&.${_MultiSectionDigitalClock.multiSectionDigitalClockClasses.root}`]: {
@@ -1,6 +1,6 @@
1
1
  import * as React from 'react';
2
2
  import { DigitalClockProps } from "./DigitalClock.types.js";
3
- export declare const DigitalClockItem: import("@emotion/styled").StyledComponent<import("@mui/material").MenuItemOwnProps & Omit<import("@mui/material").ButtonBaseOwnProps, "classes"> & import("@mui/material/OverridableComponent").CommonProps & Omit<React.DetailedHTMLProps<React.LiHTMLAttributes<HTMLLIElement>, HTMLLIElement>, "style" | "dense" | "disabled" | "action" | "selected" | "autoFocus" | "className" | "tabIndex" | "children" | "sx" | "classes" | "disableGutters" | "divider" | "centerRipple" | "disableRipple" | "disableTouchRipple" | "focusRipple" | "focusVisibleClassName" | "LinkComponent" | "onFocusVisible" | "TouchRippleProps" | "touchRippleRef"> & import("@mui/system").MUIStyledCommonProps<import("@mui/material").Theme>, {}, {}>;
3
+ export declare const DigitalClockItem: import("@emotion/styled").StyledComponent<import("@mui/material").MenuItemOwnProps & Omit<import("@mui/material").ButtonBaseOwnProps, "classes"> & import("@mui/material/OverridableComponent").CommonProps & Omit<React.DetailedHTMLProps<React.LiHTMLAttributes<HTMLLIElement>, HTMLLIElement>, "disabled" | "autoFocus" | "dense" | "tabIndex" | "classes" | "className" | "style" | "children" | "sx" | "action" | "centerRipple" | "disableRipple" | "disableTouchRipple" | "focusRipple" | "focusVisibleClassName" | "LinkComponent" | "onFocusVisible" | "TouchRippleProps" | "touchRippleRef" | "disableGutters" | "divider" | "selected"> & import("@mui/system").MUIStyledCommonProps<import("@mui/material").Theme>, {}, {}>;
4
4
  type DigitalClockComponent = ((props: DigitalClockProps & React.RefAttributes<HTMLDivElement>) => React.JSX.Element) & {
5
5
  propTypes?: any;
6
6
  };
@@ -19,6 +19,7 @@ var _composeClasses = _interopRequireDefault(require("@mui/utils/composeClasses"
19
19
  var _MenuItem = _interopRequireDefault(require("@mui/material/MenuItem"));
20
20
  var _MenuList = _interopRequireDefault(require("@mui/material/MenuList"));
21
21
  var _useForkRef = _interopRequireDefault(require("@mui/utils/useForkRef"));
22
+ var _useEnhancedEffect = _interopRequireDefault(require("@mui/utils/useEnhancedEffect"));
22
23
  var _usePickerTranslations = require("../hooks/usePickerTranslations");
23
24
  var _useUtils = require("../internals/hooks/useUtils");
24
25
  var _timeUtils = require("../internals/utils/time-utils");
@@ -196,7 +197,7 @@ const DigitalClock = exports.DigitalClock = /*#__PURE__*/React.forwardRef(functi
196
197
  const handleItemSelect = (0, _useEventCallback.default)(newValue => {
197
198
  setValueAndGoToNextView(newValue, 'finish');
198
199
  });
199
- React.useEffect(() => {
200
+ (0, _useEnhancedEffect.default)(() => {
200
201
  if (containerRef.current === null) {
201
202
  return;
202
203
  }
@@ -340,7 +340,7 @@ const MultiSectionDigitalClock = exports.MultiSectionDigitalClock = /*#__PURE__*
340
340
  items: viewTimeOptions[timeView].items,
341
341
  onChange: viewTimeOptions[timeView].onChange,
342
342
  active: view === timeView,
343
- autoFocus: autoFocus ?? focusedView === timeView,
343
+ autoFocus: autoFocus || focusedView === timeView,
344
344
  disabled: disabled,
345
345
  readOnly: readOnly,
346
346
  slots: slots,
@@ -16,6 +16,7 @@ var _composeClasses = _interopRequireDefault(require("@mui/utils/composeClasses"
16
16
  var _MenuList = _interopRequireDefault(require("@mui/material/MenuList"));
17
17
  var _MenuItem = _interopRequireDefault(require("@mui/material/MenuItem"));
18
18
  var _useForkRef = _interopRequireDefault(require("@mui/utils/useForkRef"));
19
+ var _useEnhancedEffect = _interopRequireDefault(require("@mui/utils/useEnhancedEffect"));
19
20
  var _multiSectionDigitalClockSectionClasses = require("./multiSectionDigitalClockSectionClasses");
20
21
  var _dimensions = require("../internals/constants/dimensions");
21
22
  var _utils = require("../internals/utils/utils");
@@ -131,7 +132,7 @@ const MultiSectionDigitalClockSection = exports.MultiSectionDigitalClockSection
131
132
  });
132
133
  const classes = useUtilityClasses(classesProp);
133
134
  const DigitalClockSectionItem = slots?.digitalClockSectionItem ?? MultiSectionDigitalClockSectionItem;
134
- React.useEffect(() => {
135
+ (0, _useEnhancedEffect.default)(() => {
135
136
  if (containerRef.current === null) {
136
137
  return;
137
138
  }
@@ -3,10 +3,10 @@ import { PickerLayoutOwnerState, PickersLayoutProps } from "./PickersLayout.type
3
3
  import { PickerValidValue } from "../internals/models/index.js";
4
4
  export declare const PickersLayoutRoot: import("@emotion/styled").StyledComponent<import("@mui/system").MUIStyledCommonProps<import("@mui/material").Theme> & {
5
5
  ownerState: PickerLayoutOwnerState;
6
- }, Pick<React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, keyof React.ClassAttributes<HTMLDivElement> | keyof React.HTMLAttributes<HTMLDivElement>>, {}>;
6
+ }, Pick<React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, keyof React.HTMLAttributes<HTMLDivElement> | keyof React.ClassAttributes<HTMLDivElement>>, {}>;
7
7
  export declare const PickersLayoutContentWrapper: import("@emotion/styled").StyledComponent<import("@mui/system").MUIStyledCommonProps<import("@mui/material").Theme> & {
8
8
  ownerState: PickerLayoutOwnerState;
9
- }, Pick<React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, keyof React.ClassAttributes<HTMLDivElement> | keyof React.HTMLAttributes<HTMLDivElement>>, {}>;
9
+ }, Pick<React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, keyof React.HTMLAttributes<HTMLDivElement> | keyof React.ClassAttributes<HTMLDivElement>>, {}>;
10
10
  type PickersLayoutComponent = (<TValue extends PickerValidValue>(props: PickersLayoutProps<TValue> & React.RefAttributes<HTMLDivElement>) => React.JSX.Element) & {
11
11
  propTypes?: any;
12
12
  };
@@ -1,6 +1,6 @@
1
1
  import * as React from 'react';
2
2
  import type { PickersSectionListProps } from "./PickersSectionList.types.js";
3
- export declare const PickersSectionListRoot: import("@emotion/styled").StyledComponent<import("@mui/system").MUIStyledCommonProps<import("@mui/material").Theme>, Pick<React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, keyof React.ClassAttributes<HTMLDivElement> | keyof React.HTMLAttributes<HTMLDivElement>>, {}>;
3
+ export declare const PickersSectionListRoot: import("@emotion/styled").StyledComponent<import("@mui/system").MUIStyledCommonProps<import("@mui/material").Theme>, Pick<React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, keyof React.HTMLAttributes<HTMLDivElement> | keyof React.ClassAttributes<HTMLDivElement>>, {}>;
4
4
  export declare const PickersSectionListSection: import("@emotion/styled").StyledComponent<import("@mui/system").MUIStyledCommonProps<import("@mui/material").Theme>, Pick<React.DetailedHTMLProps<React.HTMLAttributes<HTMLSpanElement>, HTMLSpanElement>, keyof React.ClassAttributes<HTMLSpanElement> | keyof React.HTMLAttributes<HTMLSpanElement>>, {}>;
5
5
  export declare const PickersSectionListSectionSeparator: import("@emotion/styled").StyledComponent<import("@mui/system").MUIStyledCommonProps<import("@mui/material").Theme>, Pick<React.DetailedHTMLProps<React.HTMLAttributes<HTMLSpanElement>, HTMLSpanElement>, keyof React.ClassAttributes<HTMLSpanElement> | keyof React.HTMLAttributes<HTMLSpanElement>>, {}>;
6
6
  export declare const PickersSectionListSectionContent: import("@emotion/styled").StyledComponent<import("@mui/system").MUIStyledCommonProps<import("@mui/material").Theme>, Pick<React.DetailedHTMLProps<React.HTMLAttributes<HTMLSpanElement>, HTMLSpanElement>, keyof React.ClassAttributes<HTMLSpanElement> | keyof React.HTMLAttributes<HTMLSpanElement>>, {}>;
@@ -6,19 +6,19 @@ export interface PickersFilledInputClasses extends PickersInputBaseClasses {
6
6
  export type PickersFilledInputClassKey = keyof PickersFilledInputClasses;
7
7
  export declare function getPickersFilledInputUtilityClass(slot: string): string;
8
8
  export declare const pickersFilledInputClasses: {
9
- underline: string;
10
- input: string;
11
9
  root: string;
10
+ input: string;
11
+ underline: string;
12
+ sectionContent: string;
12
13
  disabled: string;
13
14
  readOnly: string;
14
- error: string;
15
15
  focused: string;
16
- adornedStart: string;
17
- adornedEnd: string;
16
+ error: string;
18
17
  notchedOutline: string;
19
18
  sectionsContainer: string;
20
- sectionContent: string;
21
19
  sectionBefore: string;
22
20
  sectionAfter: string;
21
+ adornedStart: string;
22
+ adornedEnd: string;
23
23
  activeBar: string;
24
24
  };
@@ -6,19 +6,19 @@ export interface PickersInputClasses extends PickersInputBaseClasses {
6
6
  export type PickersInputClassKey = keyof PickersInputClasses;
7
7
  export declare function getPickersInputUtilityClass(slot: string): string;
8
8
  export declare const pickersInputClasses: {
9
- underline: string;
10
- input: string;
11
9
  root: string;
10
+ input: string;
11
+ underline: string;
12
+ sectionContent: string;
12
13
  disabled: string;
13
14
  readOnly: string;
14
- error: string;
15
15
  focused: string;
16
- adornedStart: string;
17
- adornedEnd: string;
16
+ error: string;
18
17
  notchedOutline: string;
19
18
  sectionsContainer: string;
20
- sectionContent: string;
21
19
  sectionBefore: string;
22
20
  sectionAfter: string;
21
+ adornedStart: string;
22
+ adornedEnd: string;
23
23
  activeBar: string;
24
24
  };
@@ -3,8 +3,8 @@ import { PickersInputBaseProps } from "./PickersInputBase.types.js";
3
3
  import { PickerTextFieldOwnerState } from "../../models/fields.js";
4
4
  export declare const PickersInputBaseRoot: import("@emotion/styled").StyledComponent<import("@mui/system").MUIStyledCommonProps<import("@mui/material").Theme> & {
5
5
  ownerState: PickerTextFieldOwnerState;
6
- }, Pick<React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, keyof React.ClassAttributes<HTMLDivElement> | keyof React.HTMLAttributes<HTMLDivElement>>, {}>;
7
- export declare const PickersInputBaseSectionsContainer: import("@emotion/styled").StyledComponent<Pick<import("@mui/system").MUIStyledCommonProps<import("@mui/material").Theme> & Pick<React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, keyof React.ClassAttributes<HTMLDivElement> | keyof React.HTMLAttributes<HTMLDivElement>>, keyof React.ClassAttributes<HTMLDivElement> | keyof React.HTMLAttributes<HTMLDivElement> | keyof import("@mui/system").MUIStyledCommonProps<import("@mui/material").Theme>> & import("@mui/system").MUIStyledCommonProps<import("@mui/material").Theme> & {
6
+ }, Pick<React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, keyof React.HTMLAttributes<HTMLDivElement> | keyof React.ClassAttributes<HTMLDivElement>>, {}>;
7
+ export declare const PickersInputBaseSectionsContainer: import("@emotion/styled").StyledComponent<Pick<import("@mui/system").MUIStyledCommonProps<import("@mui/material").Theme> & Pick<React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, keyof React.HTMLAttributes<HTMLDivElement> | keyof React.ClassAttributes<HTMLDivElement>>, keyof React.HTMLAttributes<HTMLDivElement> | keyof React.ClassAttributes<HTMLDivElement> | keyof import("@mui/system").MUIStyledCommonProps<import("@mui/material").Theme>> & import("@mui/system").MUIStyledCommonProps<import("@mui/material").Theme> & {
8
8
  ownerState: PickerTextFieldOwnerState;
9
9
  }, {}, {}>;
10
10
  /**
@@ -6,18 +6,18 @@ export interface PickersOutlinedInputClasses extends PickersInputBaseClasses {
6
6
  export type PickersOutlinedInputClassKey = keyof PickersOutlinedInputClasses;
7
7
  export declare function getPickersOutlinedInputUtilityClass(slot: string): string;
8
8
  export declare const pickersOutlinedInputClasses: {
9
- input: string;
10
9
  root: string;
10
+ input: string;
11
11
  notchedOutline: string;
12
+ sectionContent: string;
12
13
  disabled: string;
13
14
  readOnly: string;
14
- error: string;
15
15
  focused: string;
16
- adornedStart: string;
17
- adornedEnd: string;
16
+ error: string;
18
17
  sectionsContainer: string;
19
- sectionContent: string;
20
18
  sectionBefore: string;
21
19
  sectionAfter: string;
20
+ adornedStart: string;
21
+ adornedEnd: string;
22
22
  activeBar: string;
23
23
  };
@@ -119,6 +119,13 @@ const PickersTextField = exports.PickersTextField = /*#__PURE__*/React.forwardRe
119
119
  }), [fieldOwnerState, areAllSectionsEmpty, focused, error, props.size, color, fullWidth, startAdornment, endAdornment, InputProps?.startAdornment, InputProps?.endAdornment, label]);
120
120
  const classes = useUtilityClasses(classesProp, ownerState);
121
121
  const PickersInputComponent = VARIANT_COMPONENT[variant];
122
+ const inputAdditionalProps = {};
123
+ if (variant === 'outlined') {
124
+ if (InputLabelProps && typeof InputLabelProps.shrink !== 'undefined') {
125
+ inputAdditionalProps.notched = InputLabelProps.shrink;
126
+ }
127
+ inputAdditionalProps.label = label;
128
+ }
122
129
  return /*#__PURE__*/(0, _jsxRuntime.jsx)(_usePickerTextFieldOwnerState.PickerTextFieldOwnerStateContext.Provider, {
123
130
  value: ownerState,
124
131
  children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(PickersTextFieldRoot, (0, _extends2.default)({
@@ -166,7 +173,7 @@ const PickersTextField = exports.PickersTextField = /*#__PURE__*/React.forwardRe
166
173
  "aria-describedby": helperTextId,
167
174
  "aria-live": helperTextId ? 'polite' : undefined,
168
175
  "data-active-range-position": dataActiveRangePosition
169
- }, InputProps)), helperText && /*#__PURE__*/(0, _jsxRuntime.jsx)(_FormHelperText.default, (0, _extends2.default)({
176
+ }, inputAdditionalProps, InputProps)), helperText && /*#__PURE__*/(0, _jsxRuntime.jsx)(_FormHelperText.default, (0, _extends2.default)({
170
177
  id: helperTextId
171
178
  }, FormHelperTextProps, {
172
179
  children: helperText
@@ -10,4 +10,4 @@ export interface YearCalendarClasses {
10
10
  }
11
11
  export type YearCalendarClassKey = keyof YearCalendarClasses;
12
12
  export declare function getYearCalendarUtilityClass(slot: string): string;
13
- export declare const yearCalendarClasses: Record<"button" | "disabled" | "selected" | "root", string>;
13
+ export declare const yearCalendarClasses: Record<"root" | "disabled" | "button" | "selected", string>;