@mui/x-date-pickers 7.4.0 → 7.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (40) hide show
  1. package/AdapterDateFns/AdapterDateFns.d.ts +5 -0
  2. package/AdapterDateFnsBase/AdapterDateFnsBase.d.ts +1 -5
  3. package/AdapterDateFnsBase/AdapterDateFnsBase.js +4 -2
  4. package/AdapterDateFnsJalali/AdapterDateFnsJalali.d.ts +3 -20
  5. package/AdapterDateFnsJalali/AdapterDateFnsJalali.js +14 -227
  6. package/AdapterDateFnsJalaliV3/AdapterDateFnsJalaliV3.d.ts +3 -20
  7. package/AdapterDateFnsJalaliV3/AdapterDateFnsJalaliV3.js +17 -230
  8. package/AdapterDateFnsV3/AdapterDateFnsV3.d.ts +5 -0
  9. package/AdapterDateFnsV3/AdapterDateFnsV3.js +0 -1
  10. package/AdapterMomentJalaali/AdapterMomentJalaali.js +2 -6
  11. package/CHANGELOG.md +93 -0
  12. package/DateCalendar/DateCalendar.js +5 -4
  13. package/PickersLayout/usePickerLayout.js +6 -7
  14. package/index.js +1 -1
  15. package/internals/components/PickersModalDialog.d.ts +2 -2
  16. package/internals/demo/DemoContainer.js +1 -1
  17. package/internals/hooks/useField/useFieldV6TextField.js +1 -1
  18. package/internals/hooks/usePicker/usePickerViews.js +1 -0
  19. package/modern/AdapterDateFnsBase/AdapterDateFnsBase.js +4 -2
  20. package/modern/AdapterDateFnsJalali/AdapterDateFnsJalali.js +14 -227
  21. package/modern/AdapterDateFnsJalaliV3/AdapterDateFnsJalaliV3.js +17 -230
  22. package/modern/AdapterDateFnsV3/AdapterDateFnsV3.js +0 -1
  23. package/modern/AdapterMomentJalaali/AdapterMomentJalaali.js +2 -6
  24. package/modern/DateCalendar/DateCalendar.js +5 -4
  25. package/modern/PickersLayout/usePickerLayout.js +6 -7
  26. package/modern/index.js +1 -1
  27. package/modern/internals/demo/DemoContainer.js +1 -1
  28. package/modern/internals/hooks/useField/useFieldV6TextField.js +1 -1
  29. package/modern/internals/hooks/usePicker/usePickerViews.js +1 -0
  30. package/node/AdapterDateFnsBase/AdapterDateFnsBase.js +4 -2
  31. package/node/AdapterDateFnsJalali/AdapterDateFnsJalali.js +14 -227
  32. package/node/AdapterDateFnsJalaliV3/AdapterDateFnsJalaliV3.js +17 -230
  33. package/node/AdapterMomentJalaali/AdapterMomentJalaali.js +2 -6
  34. package/node/DateCalendar/DateCalendar.js +5 -4
  35. package/node/PickersLayout/usePickerLayout.js +6 -7
  36. package/node/index.js +1 -1
  37. package/node/internals/demo/DemoContainer.js +1 -1
  38. package/node/internals/hooks/useField/useFieldV6TextField.js +1 -1
  39. package/node/internals/hooks/usePicker/usePickerViews.js +1 -0
  40. package/package.json +2 -2
@@ -50,175 +50,11 @@ var _startOfYear = _interopRequireDefault(require("date-fns-jalali/startOfYear")
50
50
  var _isWithinInterval = _interopRequireDefault(require("date-fns-jalali/isWithinInterval"));
51
51
  var _faIR = _interopRequireDefault(require("date-fns-jalali/locale/fa-IR"));
52
52
  var _longFormatters = _interopRequireDefault(require("date-fns-jalali/_lib/format/longFormatters"));
53
+ var _AdapterDateFnsBase = require("../AdapterDateFnsBase");
53
54
  /* eslint-disable class-methods-use-this */
54
55
 
55
56
  // @ts-ignore
56
57
 
57
- const formatTokenMap = {
58
- // Year
59
- y: {
60
- sectionType: 'year',
61
- contentType: 'digit',
62
- maxLength: 4
63
- },
64
- yy: 'year',
65
- yyy: {
66
- sectionType: 'year',
67
- contentType: 'digit',
68
- maxLength: 4
69
- },
70
- yyyy: 'year',
71
- // Month
72
- M: {
73
- sectionType: 'month',
74
- contentType: 'digit',
75
- maxLength: 2
76
- },
77
- MM: 'month',
78
- MMMM: {
79
- sectionType: 'month',
80
- contentType: 'letter'
81
- },
82
- MMM: {
83
- sectionType: 'month',
84
- contentType: 'letter'
85
- },
86
- L: {
87
- sectionType: 'month',
88
- contentType: 'digit',
89
- maxLength: 2
90
- },
91
- LL: 'month',
92
- LLL: {
93
- sectionType: 'month',
94
- contentType: 'letter'
95
- },
96
- LLLL: {
97
- sectionType: 'month',
98
- contentType: 'letter'
99
- },
100
- // Day of the month
101
- d: {
102
- sectionType: 'day',
103
- contentType: 'digit',
104
- maxLength: 2
105
- },
106
- dd: 'day',
107
- do: {
108
- sectionType: 'day',
109
- contentType: 'digit-with-letter'
110
- },
111
- // Day of the week
112
- E: {
113
- sectionType: 'weekDay',
114
- contentType: 'letter'
115
- },
116
- EE: {
117
- sectionType: 'weekDay',
118
- contentType: 'letter'
119
- },
120
- EEE: {
121
- sectionType: 'weekDay',
122
- contentType: 'letter'
123
- },
124
- EEEE: {
125
- sectionType: 'weekDay',
126
- contentType: 'letter'
127
- },
128
- EEEEE: {
129
- sectionType: 'weekDay',
130
- contentType: 'letter'
131
- },
132
- i: {
133
- sectionType: 'weekDay',
134
- contentType: 'digit',
135
- maxLength: 1
136
- },
137
- ii: 'weekDay',
138
- iii: {
139
- sectionType: 'weekDay',
140
- contentType: 'letter'
141
- },
142
- iiii: {
143
- sectionType: 'weekDay',
144
- contentType: 'letter'
145
- },
146
- e: {
147
- sectionType: 'weekDay',
148
- contentType: 'digit',
149
- maxLength: 1
150
- },
151
- ee: 'weekDay',
152
- eee: {
153
- sectionType: 'weekDay',
154
- contentType: 'letter'
155
- },
156
- eeee: {
157
- sectionType: 'weekDay',
158
- contentType: 'letter'
159
- },
160
- eeeee: {
161
- sectionType: 'weekDay',
162
- contentType: 'letter'
163
- },
164
- eeeeee: {
165
- sectionType: 'weekDay',
166
- contentType: 'letter'
167
- },
168
- c: {
169
- sectionType: 'weekDay',
170
- contentType: 'digit',
171
- maxLength: 1
172
- },
173
- cc: 'weekDay',
174
- ccc: {
175
- sectionType: 'weekDay',
176
- contentType: 'letter'
177
- },
178
- cccc: {
179
- sectionType: 'weekDay',
180
- contentType: 'letter'
181
- },
182
- ccccc: {
183
- sectionType: 'weekDay',
184
- contentType: 'letter'
185
- },
186
- cccccc: {
187
- sectionType: 'weekDay',
188
- contentType: 'letter'
189
- },
190
- // Meridiem
191
- a: 'meridiem',
192
- aa: 'meridiem',
193
- aaa: 'meridiem',
194
- // Hours
195
- H: {
196
- sectionType: 'hours',
197
- contentType: 'digit',
198
- maxLength: 2
199
- },
200
- HH: 'hours',
201
- h: {
202
- sectionType: 'hours',
203
- contentType: 'digit',
204
- maxLength: 2
205
- },
206
- hh: 'hours',
207
- // Minutes
208
- m: {
209
- sectionType: 'minutes',
210
- contentType: 'digit',
211
- maxLength: 2
212
- },
213
- mm: 'minutes',
214
- // Seconds
215
- s: {
216
- sectionType: 'seconds',
217
- contentType: 'digit',
218
- maxLength: 2
219
- },
220
- ss: 'seconds'
221
- };
222
58
  const defaultFormats = {
223
59
  year: 'yyyy',
224
60
  month: 'LLLL',
@@ -281,40 +117,22 @@ const NUMBER_SYMBOL_MAP = {
281
117
  * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
282
118
  * SOFTWARE.
283
119
  */
284
- class AdapterDateFnsJalali {
120
+ class AdapterDateFnsJalali extends _AdapterDateFnsBase.AdapterDateFnsBase {
285
121
  constructor({
286
- locale: _locale,
122
+ locale,
287
123
  formats
288
124
  } = {}) {
289
- this.isMUIAdapter = true;
290
- this.isTimezoneCompatible = false;
291
- this.lib = 'date-fns-jalali';
292
- this.locale = void 0;
293
- this.formats = void 0;
294
- this.formatTokenMap = formatTokenMap;
295
- this.escapedCharacters = {
296
- start: "'",
297
- end: "'"
298
- };
299
- this.date = value => {
300
- if (typeof value === 'undefined') {
301
- return new Date();
302
- }
303
- if (value === null) {
304
- return null;
305
- }
306
- return new Date(value);
307
- };
308
- this.getInvalidDate = () => new Date('Invalid Date');
309
- this.getTimezone = () => {
310
- return 'default';
311
- };
312
- this.setTimezone = value => {
313
- return value;
314
- };
315
- this.toJsDate = value => {
316
- return value;
317
- };
125
+ if (typeof _addDays.default !== 'function') {
126
+ throw new Error(['MUI: The `date-fns-jalali` package v3.x is not compatible with this adapter.', 'Please, install v2.x of the package or use the `AdapterDateFnsJalaliV3` instead.'].join('\n'));
127
+ }
128
+ super({
129
+ locale: locale ?? _faIR.default,
130
+ // some formats are different in jalali adapter,
131
+ // this ensures that `AdapterDateFnsBase` formats are overridden
132
+ formats: (0, _extends2.default)({}, defaultFormats, formats),
133
+ longFormatters: _longFormatters.default,
134
+ lib: 'date-fns-jalali'
135
+ });
318
136
  this.parse = (value, format) => {
319
137
  if (value === '') {
320
138
  return null;
@@ -326,29 +144,6 @@ class AdapterDateFnsJalali {
326
144
  this.getCurrentLocaleCode = () => {
327
145
  return this.locale?.code || 'fa-IR';
328
146
  };
329
- // Note: date-fns input types are more lenient than this adapter, so we need to expose our more
330
- // strict signature and delegate to the more lenient signature. Otherwise, we have downstream type errors upon usage.
331
- this.is12HourCycleInCurrentLocale = () => {
332
- if (this.locale) {
333
- return /a/.test(this.locale.formatLong.time());
334
- }
335
-
336
- // By default, date-fns-jalali is using fa-IR locale with am/pm enabled
337
- return true;
338
- };
339
- this.expandFormat = format => {
340
- // @see https://github.com/date-fns/date-fns/blob/master/src/format/index.js#L31
341
- const longFormatRegexp = /P+p+|P+|p+|''|'(''|[^'])+('|$)|./g;
342
- const locale = this.locale ?? _faIR.default;
343
- return format.match(longFormatRegexp).map(token => {
344
- const firstCharacter = token[0];
345
- if (firstCharacter === 'p' || firstCharacter === 'P') {
346
- const longFormatter = _longFormatters.default[firstCharacter];
347
- return longFormatter(token, locale.formatLong, {});
348
- }
349
- return token;
350
- }).join('');
351
- };
352
147
  this.isValid = value => {
353
148
  if (value == null) {
354
149
  return false;
@@ -536,14 +331,6 @@ class AdapterDateFnsJalali {
536
331
  }
537
332
  return years;
538
333
  };
539
- if (typeof _addDays.default !== 'function') {
540
- throw new Error(['MUI: The `date-fns-jalali` package v3.x is not compatible with this adapter.', 'Please, install v2.x of the package or use the `AdapterDateFnsJalaliV3` instead.'].join('\n'));
541
- }
542
- this.locale = _locale;
543
- this.formats = (0, _extends2.default)({}, defaultFormats, formats);
544
- }
545
- getDayOfWeek(value) {
546
- return value.getDay() + 1;
547
334
  }
548
335
  }
549
336
  exports.AdapterDateFnsJalali = AdapterDateFnsJalali;
@@ -49,6 +49,7 @@ var _startOfWeek = require("date-fns-jalali/startOfWeek");
49
49
  var _startOfYear = require("date-fns-jalali/startOfYear");
50
50
  var _isWithinInterval = require("date-fns-jalali/isWithinInterval");
51
51
  var _faIR = require("date-fns-jalali/locale/fa-IR");
52
+ var _AdapterDateFnsBase = require("../AdapterDateFnsBase");
52
53
  /* eslint-disable class-methods-use-this */
53
54
  // TODO remove when date-fns-jalali-v3 is the default
54
55
  // @ts-nocheck
@@ -56,171 +57,6 @@ var _faIR = require("date-fns-jalali/locale/fa-IR");
56
57
  // date-fns-jalali v2 does not export types
57
58
  // @ts-ignore TODO remove when date-fns-jalali-v3 is the default
58
59
 
59
- const formatTokenMap = {
60
- // Year
61
- y: {
62
- sectionType: 'year',
63
- contentType: 'digit',
64
- maxLength: 4
65
- },
66
- yy: 'year',
67
- yyy: {
68
- sectionType: 'year',
69
- contentType: 'digit',
70
- maxLength: 4
71
- },
72
- yyyy: 'year',
73
- // Month
74
- M: {
75
- sectionType: 'month',
76
- contentType: 'digit',
77
- maxLength: 2
78
- },
79
- MM: 'month',
80
- MMMM: {
81
- sectionType: 'month',
82
- contentType: 'letter'
83
- },
84
- MMM: {
85
- sectionType: 'month',
86
- contentType: 'letter'
87
- },
88
- L: {
89
- sectionType: 'month',
90
- contentType: 'digit',
91
- maxLength: 2
92
- },
93
- LL: 'month',
94
- LLL: {
95
- sectionType: 'month',
96
- contentType: 'letter'
97
- },
98
- LLLL: {
99
- sectionType: 'month',
100
- contentType: 'letter'
101
- },
102
- // Day of the month
103
- d: {
104
- sectionType: 'day',
105
- contentType: 'digit',
106
- maxLength: 2
107
- },
108
- dd: 'day',
109
- do: {
110
- sectionType: 'day',
111
- contentType: 'digit-with-letter'
112
- },
113
- // Day of the week
114
- E: {
115
- sectionType: 'weekDay',
116
- contentType: 'letter'
117
- },
118
- EE: {
119
- sectionType: 'weekDay',
120
- contentType: 'letter'
121
- },
122
- EEE: {
123
- sectionType: 'weekDay',
124
- contentType: 'letter'
125
- },
126
- EEEE: {
127
- sectionType: 'weekDay',
128
- contentType: 'letter'
129
- },
130
- EEEEE: {
131
- sectionType: 'weekDay',
132
- contentType: 'letter'
133
- },
134
- i: {
135
- sectionType: 'weekDay',
136
- contentType: 'digit',
137
- maxLength: 1
138
- },
139
- ii: 'weekDay',
140
- iii: {
141
- sectionType: 'weekDay',
142
- contentType: 'letter'
143
- },
144
- iiii: {
145
- sectionType: 'weekDay',
146
- contentType: 'letter'
147
- },
148
- e: {
149
- sectionType: 'weekDay',
150
- contentType: 'digit',
151
- maxLength: 1
152
- },
153
- ee: 'weekDay',
154
- eee: {
155
- sectionType: 'weekDay',
156
- contentType: 'letter'
157
- },
158
- eeee: {
159
- sectionType: 'weekDay',
160
- contentType: 'letter'
161
- },
162
- eeeee: {
163
- sectionType: 'weekDay',
164
- contentType: 'letter'
165
- },
166
- eeeeee: {
167
- sectionType: 'weekDay',
168
- contentType: 'letter'
169
- },
170
- c: {
171
- sectionType: 'weekDay',
172
- contentType: 'digit',
173
- maxLength: 1
174
- },
175
- cc: 'weekDay',
176
- ccc: {
177
- sectionType: 'weekDay',
178
- contentType: 'letter'
179
- },
180
- cccc: {
181
- sectionType: 'weekDay',
182
- contentType: 'letter'
183
- },
184
- ccccc: {
185
- sectionType: 'weekDay',
186
- contentType: 'letter'
187
- },
188
- cccccc: {
189
- sectionType: 'weekDay',
190
- contentType: 'letter'
191
- },
192
- // Meridiem
193
- a: 'meridiem',
194
- aa: 'meridiem',
195
- aaa: 'meridiem',
196
- // Hours
197
- H: {
198
- sectionType: 'hours',
199
- contentType: 'digit',
200
- maxLength: 2
201
- },
202
- HH: 'hours',
203
- h: {
204
- sectionType: 'hours',
205
- contentType: 'digit',
206
- maxLength: 2
207
- },
208
- hh: 'hours',
209
- // Minutes
210
- m: {
211
- sectionType: 'minutes',
212
- contentType: 'digit',
213
- maxLength: 2
214
- },
215
- mm: 'minutes',
216
- // Seconds
217
- s: {
218
- sectionType: 'seconds',
219
- contentType: 'digit',
220
- maxLength: 2
221
- },
222
- ss: 'seconds'
223
- };
224
60
  const defaultFormats = {
225
61
  year: 'yyyy',
226
62
  month: 'LLLL',
@@ -283,40 +119,25 @@ const NUMBER_SYMBOL_MAP = {
283
119
  * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
284
120
  * SOFTWARE.
285
121
  */
286
- class AdapterDateFnsJalali {
122
+ class AdapterDateFnsJalali extends _AdapterDateFnsBase.AdapterDateFnsBase {
287
123
  constructor({
288
- locale: _locale,
124
+ locale,
289
125
  formats
290
126
  } = {}) {
291
- this.isMUIAdapter = true;
292
- this.isTimezoneCompatible = false;
293
- this.lib = 'date-fns-jalali';
294
- this.locale = void 0;
295
- this.formats = void 0;
296
- this.formatTokenMap = formatTokenMap;
297
- this.escapedCharacters = {
298
- start: "'",
299
- end: "'"
300
- };
301
- this.date = value => {
302
- if (typeof value === 'undefined') {
303
- return new Date();
304
- }
305
- if (value === null) {
306
- return null;
307
- }
308
- return new Date(value);
309
- };
310
- this.getInvalidDate = () => new Date('Invalid Date');
311
- this.getTimezone = () => {
312
- return 'default';
313
- };
314
- this.setTimezone = value => {
315
- return value;
316
- };
317
- this.toJsDate = value => {
318
- return value;
319
- };
127
+ if (typeof _addDays.addDays !== 'function') {
128
+ throw new Error([`MUI: The \`date-fns-jalali\` package v2.x is not compatible with this adapter.`, 'Please, install v3.x of the package or use the `AdapterDateFnsJalali` instead.'].join('\n'));
129
+ }
130
+ if (!_format.longFormatters) {
131
+ throw new Error('MUI: The minimum supported `date-fns-jalali` package version compatible with this adapter is `3.2.x`.');
132
+ }
133
+ super({
134
+ locale: locale ?? _faIR.faIR,
135
+ // some formats are different in jalali adapter,
136
+ // this ensures that `AdapterDateFnsBase` formats are overridden
137
+ formats: (0, _extends2.default)({}, defaultFormats, formats),
138
+ longFormatters: _format.longFormatters,
139
+ lib: 'date-fns-jalali'
140
+ });
320
141
  this.parse = (value, format) => {
321
142
  if (value === '') {
322
143
  return null;
@@ -328,29 +149,6 @@ class AdapterDateFnsJalali {
328
149
  this.getCurrentLocaleCode = () => {
329
150
  return this.locale?.code || 'fa-IR';
330
151
  };
331
- // Note: date-fns input types are more lenient than this adapter, so we need to expose our more
332
- // strict signature and delegate to the more lenient signature. Otherwise, we have downstream type errors upon usage.
333
- this.is12HourCycleInCurrentLocale = () => {
334
- if (this.locale) {
335
- return /a/.test(this.locale.formatLong.time());
336
- }
337
-
338
- // By default, date-fns-jalali is using fa-IR locale with am/pm enabled
339
- return true;
340
- };
341
- this.expandFormat = format => {
342
- // @see https://github.com/date-fns/date-fns/blob/master/src/format/index.js#L31
343
- const longFormatRegexp = /P+p+|P+|p+|''|'(''|[^'])+('|$)|./g;
344
- const locale = this.locale ?? _faIR.faIR;
345
- return format.match(longFormatRegexp).map(token => {
346
- const firstCharacter = token[0];
347
- if (firstCharacter === 'p' || firstCharacter === 'P') {
348
- const longFormatter = _format.longFormatters[firstCharacter];
349
- return longFormatter(token, locale.formatLong, {});
350
- }
351
- return token;
352
- }).join('');
353
- };
354
152
  this.isValid = value => {
355
153
  if (value == null) {
356
154
  return false;
@@ -538,17 +336,6 @@ class AdapterDateFnsJalali {
538
336
  }
539
337
  return years;
540
338
  };
541
- if (typeof _addDays.addDays !== 'function') {
542
- throw new Error([`MUI: The \`date-fns-jalali\` package v2.x is not compatible with this adapter.`, 'Please, install v3.x of the package or use the `AdapterDateFnsJalali` instead.'].join('\n'));
543
- }
544
- if (!_format.longFormatters) {
545
- throw new Error('MUI: The minimum supported `date-fns-jalali` package version compatible with this adapter is `3.2.x`.');
546
- }
547
- this.locale = _locale;
548
- this.formats = (0, _extends2.default)({}, defaultFormats, formats);
549
- }
550
- getDayOfWeek(value) {
551
- return value.getDay() + 1;
552
339
  }
553
340
  }
554
341
  exports.AdapterDateFnsJalali = AdapterDateFnsJalali;
@@ -171,14 +171,10 @@ class AdapterMomentJalaali extends _AdapterMoment.AdapterMoment {
171
171
  return numberToFormat.replace(/\d/g, match => NUMBER_SYMBOL_MAP[match]).replace(/,/g, '،');
172
172
  };
173
173
  this.isSameYear = (value, comparing) => {
174
- // `isSame` seems to mutate the date on `moment-jalaali`
175
- // @ts-ignore
176
- return value.clone().isSame(comparing, 'jYear');
174
+ return value.jYear() === comparing.jYear();
177
175
  };
178
176
  this.isSameMonth = (value, comparing) => {
179
- // `isSame` seems to mutate the date on `moment-jalaali`
180
- // @ts-ignore
181
- return value.clone().isSame(comparing, 'jMonth');
177
+ return value.jYear() === comparing.jYear() && value.jMonth() === comparing.jMonth();
182
178
  };
183
179
  this.isAfterYear = (value, comparing) => {
184
180
  return value.jYear() > comparing.jYear();
@@ -207,9 +207,7 @@ const DateCalendar = exports.DateCalendar = /*#__PURE__*/React.forwardRef(functi
207
207
  disableFuture,
208
208
  reduceAnimations,
209
209
  timezone,
210
- labelId: gridLabelId,
211
- slots,
212
- slotProps
210
+ labelId: gridLabelId
213
211
  },
214
212
  ownerState: props
215
213
  });
@@ -303,7 +301,10 @@ const DateCalendar = exports.DateCalendar = /*#__PURE__*/React.forwardRef(functi
303
301
  className: (0, _clsx.default)(classes.root, className),
304
302
  ownerState: ownerState
305
303
  }, other, {
306
- children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(CalendarHeader, (0, _extends2.default)({}, calendarHeaderProps)), /*#__PURE__*/(0, _jsxRuntime.jsx)(DateCalendarViewTransitionContainer, {
304
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(CalendarHeader, (0, _extends2.default)({}, calendarHeaderProps, {
305
+ slots: slots,
306
+ slotProps: slotProps
307
+ })), /*#__PURE__*/(0, _jsxRuntime.jsx)(DateCalendarViewTransitionContainer, {
307
308
  reduceAnimations: reduceAnimations,
308
309
  className: classes.viewTransitionContainer,
309
310
  transKey: view,
@@ -72,9 +72,9 @@ const usePickerLayout = props => {
72
72
  onClear,
73
73
  onCancel,
74
74
  onSetToday,
75
- actions: wrapperVariant === 'desktop' ? [] : ['cancel', 'accept'],
76
- className: classes.actionBar
75
+ actions: wrapperVariant === 'desktop' ? [] : ['cancel', 'accept']
77
76
  },
77
+ className: classes.actionBar,
78
78
  ownerState: (0, _extends2.default)({}, props, {
79
79
  wrapperVariant
80
80
  })
@@ -95,9 +95,9 @@ const usePickerLayout = props => {
95
95
  onViewChange,
96
96
  views,
97
97
  disabled,
98
- readOnly,
99
- className: classes.toolbar
98
+ readOnly
100
99
  },
100
+ className: classes.toolbar,
101
101
  ownerState: (0, _extends2.default)({}, props, {
102
102
  wrapperVariant
103
103
  })
@@ -126,14 +126,13 @@ const usePickerLayout = props => {
126
126
  additionalProps: {
127
127
  isValid,
128
128
  isLandscape,
129
- onChange: onSelectShortcut,
130
- className: classes.shortcuts
129
+ onChange: onSelectShortcut
131
130
  },
131
+ className: classes.shortcuts,
132
132
  ownerState: {
133
133
  isValid,
134
134
  isLandscape,
135
135
  onChange: onSelectShortcut,
136
- className: classes.shortcuts,
137
136
  wrapperVariant
138
137
  }
139
138
  });
package/node/index.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @mui/x-date-pickers v7.4.0
2
+ * @mui/x-date-pickers v7.5.0
3
3
  *
4
4
  * @license MIT
5
5
  * This source code is licensed under the MIT license found in the
@@ -11,7 +11,7 @@ var React = _interopRequireWildcard(require("react"));
11
11
  var _Stack = _interopRequireWildcard(require("@mui/material/Stack"));
12
12
  var _Typography = _interopRequireDefault(require("@mui/material/Typography"));
13
13
  var _TextField = require("@mui/material/TextField");
14
- var _PickersTextField = require("@mui/x-date-pickers/PickersTextField");
14
+ var _PickersTextField = require("../../PickersTextField");
15
15
  var _jsxRuntime = require("react/jsx-runtime");
16
16
  function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
17
17
  function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
@@ -288,7 +288,7 @@ const useFieldV6TextField = params => {
288
288
  });
289
289
  });
290
290
  const placeholder = React.useMemo(() => {
291
- if (inPlaceholder) {
291
+ if (inPlaceholder !== undefined) {
292
292
  return inPlaceholder;
293
293
  }
294
294
  return fieldValueManager.getV6InputValueFromSections(getSectionsFromValue(valueManager.emptyValue), localizedDigits, isRTL);
@@ -108,6 +108,7 @@ const usePickerViews = ({
108
108
  if (currentViewMode === 'field' && open) {
109
109
  onClose();
110
110
  setTimeout(() => {
111
+ fieldRef?.current?.setSelectedSections(view);
111
112
  // focusing the input before the range selection is done
112
113
  // calling it outside of timeout results in an inconsistent behavior between Safari And Chrome
113
114
  fieldRef?.current?.focusField(view);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mui/x-date-pickers",
3
- "version": "7.4.0",
3
+ "version": "7.5.0",
4
4
  "description": "The community edition of the Date and Time Picker components (MUI X).",
5
5
  "author": "MUI Team",
6
6
  "main": "./node/index.js",
@@ -35,7 +35,7 @@
35
35
  "directory": "packages/x-date-pickers"
36
36
  },
37
37
  "dependencies": {
38
- "@babel/runtime": "^7.24.0",
38
+ "@babel/runtime": "^7.24.5",
39
39
  "@mui/base": "^5.0.0-beta.40",
40
40
  "@mui/system": "^5.15.14",
41
41
  "@mui/utils": "^5.15.14",