@mui/x-date-pickers 7.0.0-alpha.3 → 7.0.0-alpha.5

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 (261) hide show
  1. package/AdapterLuxon/AdapterLuxon.d.ts +27 -27
  2. package/AdapterLuxon/AdapterLuxon.js +0 -1
  3. package/CHANGELOG.md +245 -0
  4. package/DateCalendar/DateCalendar.types.d.ts +6 -6
  5. package/DateCalendar/DayCalendar.d.ts +4 -4
  6. package/DateCalendar/index.d.ts +1 -1
  7. package/DateCalendar/useCalendarState.js +0 -1
  8. package/DateField/DateField.js +17 -50
  9. package/DateField/DateField.types.d.ts +5 -9
  10. package/DateField/useDateField.d.ts +2 -2
  11. package/DateField/useDateField.js +1 -5
  12. package/DatePicker/DatePicker.js +5 -1
  13. package/DatePicker/DatePicker.types.d.ts +6 -6
  14. package/DatePicker/index.d.ts +1 -1
  15. package/DatePicker/shared.d.ts +6 -6
  16. package/DateTimeField/DateTimeField.js +17 -50
  17. package/DateTimeField/DateTimeField.types.d.ts +5 -9
  18. package/DateTimeField/useDateTimeField.d.ts +2 -2
  19. package/DateTimeField/useDateTimeField.js +1 -5
  20. package/DateTimePicker/DateTimePicker.js +5 -1
  21. package/DateTimePicker/DateTimePicker.types.d.ts +6 -6
  22. package/DateTimePicker/index.d.ts +1 -1
  23. package/DateTimePicker/shared.d.ts +6 -6
  24. package/DesktopDatePicker/DesktopDatePicker.js +7 -2
  25. package/DesktopDatePicker/DesktopDatePicker.types.d.ts +6 -6
  26. package/DesktopDatePicker/index.d.ts +1 -1
  27. package/DesktopDateTimePicker/DesktopDateTimePicker.js +5 -1
  28. package/DesktopDateTimePicker/DesktopDateTimePicker.types.d.ts +8 -8
  29. package/DesktopDateTimePicker/index.d.ts +1 -1
  30. package/DesktopTimePicker/DesktopTimePicker.js +5 -1
  31. package/DesktopTimePicker/DesktopTimePicker.types.d.ts +8 -8
  32. package/DesktopTimePicker/index.d.ts +1 -1
  33. package/DigitalClock/DigitalClock.types.d.ts +4 -4
  34. package/DigitalClock/index.d.ts +1 -1
  35. package/MobileDatePicker/MobileDatePicker.js +7 -2
  36. package/MobileDatePicker/MobileDatePicker.types.d.ts +6 -6
  37. package/MobileDatePicker/index.d.ts +1 -1
  38. package/MobileDateTimePicker/MobileDateTimePicker.js +5 -1
  39. package/MobileDateTimePicker/MobileDateTimePicker.types.d.ts +6 -6
  40. package/MobileDateTimePicker/index.d.ts +1 -1
  41. package/MobileTimePicker/MobileTimePicker.js +5 -1
  42. package/MobileTimePicker/MobileTimePicker.types.d.ts +6 -6
  43. package/MobileTimePicker/index.d.ts +1 -1
  44. package/MonthCalendar/MonthCalendar.js +0 -1
  45. package/MultiSectionDigitalClock/MultiSectionDigitalClock.types.d.ts +4 -4
  46. package/MultiSectionDigitalClock/MultiSectionDigitalClockSection.d.ts +3 -3
  47. package/MultiSectionDigitalClock/MultiSectionDigitalClockSection.js +8 -2
  48. package/MultiSectionDigitalClock/index.d.ts +1 -1
  49. package/MultiSectionDigitalClock/multiSectionDigitalClockSectionClasses.js +2 -2
  50. package/PickersCalendarHeader/PickersCalendarHeader.js +4 -4
  51. package/PickersCalendarHeader/PickersCalendarHeader.types.d.ts +8 -8
  52. package/PickersCalendarHeader/index.d.ts +1 -1
  53. package/PickersLayout/PickersLayout.types.d.ts +6 -6
  54. package/PickersLayout/index.d.ts +1 -1
  55. package/StaticDatePicker/StaticDatePicker.js +1 -1
  56. package/StaticDatePicker/StaticDatePicker.types.d.ts +7 -7
  57. package/StaticDatePicker/index.d.ts +1 -1
  58. package/StaticDateTimePicker/StaticDateTimePicker.types.d.ts +7 -7
  59. package/StaticDateTimePicker/index.d.ts +1 -1
  60. package/StaticTimePicker/StaticTimePicker.types.d.ts +7 -7
  61. package/StaticTimePicker/index.d.ts +1 -1
  62. package/TimeClock/Clock.js +0 -1
  63. package/TimeClock/ClockPointer.js +0 -1
  64. package/TimeClock/TimeClock.types.d.ts +5 -5
  65. package/TimeClock/index.d.ts +1 -1
  66. package/TimeField/TimeField.js +17 -50
  67. package/TimeField/TimeField.types.d.ts +5 -9
  68. package/TimeField/useTimeField.d.ts +2 -2
  69. package/TimeField/useTimeField.js +1 -5
  70. package/TimePicker/TimePicker.js +5 -1
  71. package/TimePicker/TimePicker.types.d.ts +6 -6
  72. package/TimePicker/index.d.ts +1 -1
  73. package/TimePicker/shared.d.ts +5 -5
  74. package/YearCalendar/YearCalendar.js +0 -1
  75. package/hooks/index.d.ts +1 -0
  76. package/hooks/useClearableField.d.ts +32 -20
  77. package/hooks/useClearableField.js +32 -33
  78. package/index.js +1 -1
  79. package/internals/components/PickersArrowSwitcher/PickersArrowSwitcher.types.d.ts +9 -9
  80. package/internals/components/PickersArrowSwitcher/index.d.ts +3 -1
  81. package/internals/components/PickersArrowSwitcher/index.js +2 -1
  82. package/internals/components/PickersModalDialog.d.ts +4 -4
  83. package/internals/components/PickersPopper.d.ts +4 -4
  84. package/internals/components/PickersTextField/Outline.d.ts +7 -1
  85. package/internals/components/PickersTextField/Outline.js +2 -4
  86. package/internals/components/PickersTextField/PickersInput.d.ts +1 -2
  87. package/internals/components/PickersTextField/PickersInput.js +117 -112
  88. package/internals/components/PickersTextField/PickersInput.types.d.ts +35 -20
  89. package/internals/components/PickersTextField/PickersTextField.js +57 -48
  90. package/internals/components/PickersTextField/PickersTextField.types.d.ts +19 -16
  91. package/internals/components/PickersTextField/pickersTextFieldClasses.d.ts +11 -7
  92. package/internals/components/PickersTextField/pickersTextFieldClasses.js +1 -1
  93. package/internals/constants/dimensions.d.ts +1 -1
  94. package/internals/constants/dimensions.js +1 -1
  95. package/internals/demo/DemoContainer.d.ts +4 -0
  96. package/internals/demo/DemoContainer.js +47 -19
  97. package/internals/hooks/useClockReferenceDate.js +0 -1
  98. package/internals/hooks/useDesktopPicker/index.d.ts +1 -1
  99. package/internals/hooks/useDesktopPicker/useDesktopPicker.js +2 -0
  100. package/internals/hooks/useDesktopPicker/useDesktopPicker.types.d.ts +8 -8
  101. package/internals/hooks/useField/index.d.ts +1 -1
  102. package/internals/hooks/useField/useField.js +3 -3
  103. package/internals/hooks/useField/useField.types.d.ts +4 -24
  104. package/internals/hooks/useField/useField.utils.js +24 -6
  105. package/internals/hooks/useField/useFieldState.js +7 -3
  106. package/internals/hooks/useMobilePicker/index.d.ts +1 -1
  107. package/internals/hooks/useMobilePicker/useMobilePicker.js +3 -1
  108. package/internals/hooks/useMobilePicker/useMobilePicker.types.d.ts +7 -7
  109. package/internals/hooks/useStaticPicker/index.d.ts +1 -1
  110. package/internals/hooks/useStaticPicker/useStaticPicker.types.d.ts +5 -5
  111. package/internals/hooks/useViews.js +0 -1
  112. package/internals/index.d.ts +7 -6
  113. package/internals/index.js +1 -0
  114. package/internals/models/props/basePickerProps.d.ts +4 -0
  115. package/internals/utils/convertFieldResponseIntoMuiTextFieldProps.d.ts +3 -0
  116. package/internals/utils/convertFieldResponseIntoMuiTextFieldProps.js +26 -0
  117. package/legacy/AdapterLuxon/AdapterLuxon.js +0 -1
  118. package/legacy/DateCalendar/useCalendarState.js +0 -1
  119. package/legacy/DateField/DateField.js +19 -47
  120. package/legacy/DateField/useDateField.js +1 -4
  121. package/legacy/DatePicker/DatePicker.js +5 -1
  122. package/legacy/DateTimeField/DateTimeField.js +19 -47
  123. package/legacy/DateTimeField/useDateTimeField.js +1 -4
  124. package/legacy/DateTimePicker/DateTimePicker.js +5 -1
  125. package/legacy/DesktopDatePicker/DesktopDatePicker.js +7 -2
  126. package/legacy/DesktopDateTimePicker/DesktopDateTimePicker.js +5 -1
  127. package/legacy/DesktopTimePicker/DesktopTimePicker.js +5 -1
  128. package/legacy/MobileDatePicker/MobileDatePicker.js +7 -2
  129. package/legacy/MobileDateTimePicker/MobileDateTimePicker.js +5 -1
  130. package/legacy/MobileTimePicker/MobileTimePicker.js +5 -1
  131. package/legacy/MonthCalendar/MonthCalendar.js +0 -1
  132. package/legacy/MultiSectionDigitalClock/MultiSectionDigitalClockSection.js +8 -2
  133. package/legacy/MultiSectionDigitalClock/multiSectionDigitalClockSectionClasses.js +2 -2
  134. package/legacy/PickersCalendarHeader/PickersCalendarHeader.js +4 -4
  135. package/legacy/StaticDatePicker/StaticDatePicker.js +1 -1
  136. package/legacy/TimeClock/Clock.js +0 -1
  137. package/legacy/TimeClock/ClockPointer.js +0 -1
  138. package/legacy/TimeField/TimeField.js +19 -47
  139. package/legacy/TimeField/useTimeField.js +1 -4
  140. package/legacy/TimePicker/TimePicker.js +5 -1
  141. package/legacy/YearCalendar/YearCalendar.js +0 -1
  142. package/legacy/hooks/useClearableField.js +30 -32
  143. package/legacy/index.js +1 -1
  144. package/legacy/internals/components/PickersArrowSwitcher/index.js +2 -1
  145. package/legacy/internals/components/PickersTextField/Outline.js +1 -4
  146. package/legacy/internals/components/PickersTextField/PickersInput.js +119 -115
  147. package/legacy/internals/components/PickersTextField/PickersTextField.js +51 -51
  148. package/legacy/internals/components/PickersTextField/pickersTextFieldClasses.js +1 -1
  149. package/legacy/internals/constants/dimensions.js +1 -1
  150. package/legacy/internals/demo/DemoContainer.js +45 -19
  151. package/legacy/internals/hooks/useClockReferenceDate.js +0 -1
  152. package/legacy/internals/hooks/useDesktopPicker/useDesktopPicker.js +2 -0
  153. package/legacy/internals/hooks/useField/useField.js +4 -4
  154. package/legacy/internals/hooks/useField/useField.utils.js +26 -6
  155. package/legacy/internals/hooks/useField/useFieldState.js +7 -3
  156. package/legacy/internals/hooks/useMobilePicker/useMobilePicker.js +3 -1
  157. package/legacy/internals/hooks/useViews.js +0 -1
  158. package/legacy/internals/index.js +1 -0
  159. package/legacy/internals/utils/convertFieldResponseIntoMuiTextFieldProps.js +24 -0
  160. package/legacy/locales/plPL.js +0 -1
  161. package/legacy/locales/svSE.js +0 -1
  162. package/legacy/locales/urPK.js +0 -1
  163. package/locales/plPL.js +0 -1
  164. package/locales/svSE.js +0 -1
  165. package/locales/urPK.js +0 -1
  166. package/models/fields.d.ts +2 -1
  167. package/modern/AdapterLuxon/AdapterLuxon.js +0 -1
  168. package/modern/DateCalendar/useCalendarState.js +0 -1
  169. package/modern/DateField/DateField.js +17 -50
  170. package/modern/DateField/useDateField.js +1 -5
  171. package/modern/DatePicker/DatePicker.js +5 -1
  172. package/modern/DateTimeField/DateTimeField.js +17 -50
  173. package/modern/DateTimeField/useDateTimeField.js +1 -5
  174. package/modern/DateTimePicker/DateTimePicker.js +5 -1
  175. package/modern/DesktopDatePicker/DesktopDatePicker.js +7 -2
  176. package/modern/DesktopDateTimePicker/DesktopDateTimePicker.js +5 -1
  177. package/modern/DesktopTimePicker/DesktopTimePicker.js +5 -1
  178. package/modern/MobileDatePicker/MobileDatePicker.js +7 -2
  179. package/modern/MobileDateTimePicker/MobileDateTimePicker.js +5 -1
  180. package/modern/MobileTimePicker/MobileTimePicker.js +5 -1
  181. package/modern/MonthCalendar/MonthCalendar.js +0 -1
  182. package/modern/MultiSectionDigitalClock/MultiSectionDigitalClockSection.js +8 -2
  183. package/modern/MultiSectionDigitalClock/multiSectionDigitalClockSectionClasses.js +2 -2
  184. package/modern/PickersCalendarHeader/PickersCalendarHeader.js +4 -4
  185. package/modern/StaticDatePicker/StaticDatePicker.js +1 -1
  186. package/modern/TimeClock/Clock.js +0 -1
  187. package/modern/TimeClock/ClockPointer.js +0 -1
  188. package/modern/TimeField/TimeField.js +17 -50
  189. package/modern/TimeField/useTimeField.js +1 -5
  190. package/modern/TimePicker/TimePicker.js +5 -1
  191. package/modern/YearCalendar/YearCalendar.js +0 -1
  192. package/modern/hooks/useClearableField.js +32 -33
  193. package/modern/index.js +1 -1
  194. package/modern/internals/components/PickersArrowSwitcher/index.js +2 -1
  195. package/modern/internals/components/PickersTextField/Outline.js +2 -4
  196. package/modern/internals/components/PickersTextField/PickersInput.js +116 -112
  197. package/modern/internals/components/PickersTextField/PickersTextField.js +57 -47
  198. package/modern/internals/components/PickersTextField/pickersTextFieldClasses.js +1 -1
  199. package/modern/internals/constants/dimensions.js +1 -1
  200. package/modern/internals/demo/DemoContainer.js +47 -19
  201. package/modern/internals/hooks/useClockReferenceDate.js +0 -1
  202. package/modern/internals/hooks/useDesktopPicker/useDesktopPicker.js +2 -0
  203. package/modern/internals/hooks/useField/useField.js +3 -3
  204. package/modern/internals/hooks/useField/useField.utils.js +24 -6
  205. package/modern/internals/hooks/useField/useFieldState.js +7 -3
  206. package/modern/internals/hooks/useMobilePicker/useMobilePicker.js +3 -1
  207. package/modern/internals/hooks/useViews.js +0 -1
  208. package/modern/internals/index.js +1 -0
  209. package/modern/internals/utils/convertFieldResponseIntoMuiTextFieldProps.js +26 -0
  210. package/modern/locales/plPL.js +0 -1
  211. package/modern/locales/svSE.js +0 -1
  212. package/modern/locales/urPK.js +0 -1
  213. package/node/AdapterLuxon/AdapterLuxon.js +0 -1
  214. package/node/DateCalendar/useCalendarState.js +0 -1
  215. package/node/DateField/DateField.js +18 -51
  216. package/node/DateField/useDateField.js +1 -5
  217. package/node/DatePicker/DatePicker.js +5 -1
  218. package/node/DateTimeField/DateTimeField.js +18 -51
  219. package/node/DateTimeField/useDateTimeField.js +1 -5
  220. package/node/DateTimePicker/DateTimePicker.js +5 -1
  221. package/node/DesktopDatePicker/DesktopDatePicker.js +10 -5
  222. package/node/DesktopDateTimePicker/DesktopDateTimePicker.js +5 -1
  223. package/node/DesktopTimePicker/DesktopTimePicker.js +5 -1
  224. package/node/MobileDatePicker/MobileDatePicker.js +10 -5
  225. package/node/MobileDateTimePicker/MobileDateTimePicker.js +5 -1
  226. package/node/MobileTimePicker/MobileTimePicker.js +5 -1
  227. package/node/MonthCalendar/MonthCalendar.js +0 -1
  228. package/node/MultiSectionDigitalClock/MultiSectionDigitalClockSection.js +8 -2
  229. package/node/MultiSectionDigitalClock/multiSectionDigitalClockSectionClasses.js +2 -2
  230. package/node/PickersCalendarHeader/PickersCalendarHeader.js +4 -4
  231. package/node/StaticDatePicker/StaticDatePicker.js +2 -2
  232. package/node/TimeClock/Clock.js +0 -1
  233. package/node/TimeClock/ClockPointer.js +0 -1
  234. package/node/TimeField/TimeField.js +18 -51
  235. package/node/TimeField/useTimeField.js +1 -5
  236. package/node/TimePicker/TimePicker.js +5 -1
  237. package/node/YearCalendar/YearCalendar.js +0 -1
  238. package/node/hooks/useClearableField.js +33 -34
  239. package/node/index.js +1 -1
  240. package/node/internals/components/PickersArrowSwitcher/index.js +14 -1
  241. package/node/internals/components/PickersTextField/Outline.js +2 -4
  242. package/node/internals/components/PickersTextField/PickersInput.js +119 -115
  243. package/node/internals/components/PickersTextField/PickersTextField.js +58 -48
  244. package/node/internals/components/PickersTextField/pickersTextFieldClasses.js +1 -1
  245. package/node/internals/constants/dimensions.js +1 -1
  246. package/node/internals/demo/DemoContainer.js +47 -19
  247. package/node/internals/hooks/useClockReferenceDate.js +0 -1
  248. package/node/internals/hooks/useDesktopPicker/useDesktopPicker.js +2 -0
  249. package/node/internals/hooks/useField/useField.js +3 -3
  250. package/node/internals/hooks/useField/useField.utils.js +24 -6
  251. package/node/internals/hooks/useField/useFieldState.js +7 -3
  252. package/node/internals/hooks/useMobilePicker/useMobilePicker.js +3 -1
  253. package/node/internals/hooks/useViews.js +0 -1
  254. package/node/internals/index.js +7 -0
  255. package/node/internals/utils/convertFieldResponseIntoMuiTextFieldProps.js +34 -0
  256. package/node/locales/plPL.js +0 -1
  257. package/node/locales/svSE.js +0 -1
  258. package/node/locales/urPK.js +0 -1
  259. package/package.json +6 -6
  260. package/themeAugmentation/overrides.d.ts +5 -7
  261. package/themeAugmentation/props.d.ts +6 -8
@@ -38,12 +38,12 @@ export declare class AdapterLuxon implements MuiPickersAdapter<DateTime, string>
38
38
  formatTokenMap: FieldFormatTokenMap;
39
39
  constructor({ locale, formats }?: AdapterOptions<string, never>);
40
40
  private setLocaleToValue;
41
- date: <T extends string | null | undefined>(value?: T | undefined, timezone?: PickersTimezone) => DateBuilderReturnType<T, DateTime>;
42
- getInvalidDate: () => DateTime;
41
+ date: <T extends string | null | undefined>(value?: T | undefined, timezone?: PickersTimezone) => DateBuilderReturnType<T, DateTime<boolean>>;
42
+ getInvalidDate: () => DateTime<true> | DateTime<false>;
43
43
  getTimezone: (value: DateTime) => string;
44
44
  setTimezone: (value: DateTime, timezone: PickersTimezone) => DateTime;
45
45
  toJsDate: (value: DateTime) => Date;
46
- parse: (value: string, formatString: string) => DateTime | null;
46
+ parse: (value: string, formatString: string) => DateTime<true> | DateTime<false> | null;
47
47
  getCurrentLocaleCode: () => string;
48
48
  is12HourCycleInCurrentLocale: () => boolean;
49
49
  expandFormat: (format: string) => string;
@@ -63,21 +63,21 @@ export declare class AdapterLuxon implements MuiPickersAdapter<DateTime, string>
63
63
  isBeforeYear: (value: DateTime, comparing: DateTime) => boolean;
64
64
  isBeforeDay: (value: DateTime, comparing: DateTime) => boolean;
65
65
  isWithinRange: (value: DateTime, [start, end]: [DateTime, DateTime]) => boolean;
66
- startOfYear: (value: DateTime) => DateTime;
67
- startOfMonth: (value: DateTime) => DateTime;
68
- startOfWeek: (value: DateTime) => DateTime;
69
- startOfDay: (value: DateTime) => DateTime;
70
- endOfYear: (value: DateTime) => DateTime;
71
- endOfMonth: (value: DateTime) => DateTime;
72
- endOfWeek: (value: DateTime) => DateTime;
73
- endOfDay: (value: DateTime) => DateTime;
74
- addYears: (value: DateTime, amount: number) => DateTime;
75
- addMonths: (value: DateTime, amount: number) => DateTime;
76
- addWeeks: (value: DateTime, amount: number) => DateTime;
77
- addDays: (value: DateTime, amount: number) => DateTime;
78
- addHours: (value: DateTime, amount: number) => DateTime;
79
- addMinutes: (value: DateTime, amount: number) => DateTime;
80
- addSeconds: (value: DateTime, amount: number) => DateTime;
66
+ startOfYear: (value: DateTime) => DateTime<boolean>;
67
+ startOfMonth: (value: DateTime) => DateTime<boolean>;
68
+ startOfWeek: (value: DateTime) => DateTime<boolean>;
69
+ startOfDay: (value: DateTime) => DateTime<boolean>;
70
+ endOfYear: (value: DateTime) => DateTime<boolean>;
71
+ endOfMonth: (value: DateTime) => DateTime<boolean>;
72
+ endOfWeek: (value: DateTime) => DateTime<boolean>;
73
+ endOfDay: (value: DateTime) => DateTime<boolean>;
74
+ addYears: (value: DateTime, amount: number) => DateTime<boolean>;
75
+ addMonths: (value: DateTime, amount: number) => DateTime<boolean>;
76
+ addWeeks: (value: DateTime, amount: number) => DateTime<boolean>;
77
+ addDays: (value: DateTime, amount: number) => DateTime<boolean>;
78
+ addHours: (value: DateTime, amount: number) => DateTime<boolean>;
79
+ addMinutes: (value: DateTime, amount: number) => DateTime<boolean>;
80
+ addSeconds: (value: DateTime, amount: number) => DateTime<boolean>;
81
81
  getYear: (value: DateTime) => number;
82
82
  getMonth: (value: DateTime) => number;
83
83
  getDate: (value: DateTime) => number;
@@ -85,15 +85,15 @@ export declare class AdapterLuxon implements MuiPickersAdapter<DateTime, string>
85
85
  getMinutes: (value: DateTime) => number;
86
86
  getSeconds: (value: DateTime) => number;
87
87
  getMilliseconds: (value: DateTime) => number;
88
- setYear: (value: DateTime, year: number) => DateTime;
89
- setMonth: (value: DateTime, month: number) => DateTime;
90
- setDate: (value: DateTime, date: number) => DateTime;
91
- setHours: (value: DateTime, hours: number) => DateTime;
92
- setMinutes: (value: DateTime, minutes: number) => DateTime;
93
- setSeconds: (value: DateTime, seconds: number) => DateTime;
94
- setMilliseconds: (value: DateTime, milliseconds: number) => DateTime;
88
+ setYear: (value: DateTime, year: number) => DateTime<boolean>;
89
+ setMonth: (value: DateTime, month: number) => DateTime<boolean>;
90
+ setDate: (value: DateTime, date: number) => DateTime<boolean>;
91
+ setHours: (value: DateTime, hours: number) => DateTime<boolean>;
92
+ setMinutes: (value: DateTime, minutes: number) => DateTime<boolean>;
93
+ setSeconds: (value: DateTime, seconds: number) => DateTime<boolean>;
94
+ setMilliseconds: (value: DateTime, milliseconds: number) => DateTime<boolean>;
95
95
  getDaysInMonth: (value: DateTime) => import("luxon").PossibleDaysInMonth;
96
- getWeekArray: (value: DateTime) => DateTime[][];
96
+ getWeekArray: (value: DateTime) => DateTime<boolean>[][];
97
97
  getWeekNumber: (value: DateTime) => any;
98
- getYearRange: ([start, end]: [DateTime, DateTime]) => DateTime[];
98
+ getYearRange: ([start, end]: [DateTime, DateTime]) => DateTime<boolean>[];
99
99
  }
@@ -231,7 +231,6 @@ export class AdapterLuxon {
231
231
  if (typeof Intl === 'undefined' || typeof Intl.DateTimeFormat === 'undefined') {
232
232
  return true; // Luxon defaults to en-US if Intl not found
233
233
  }
234
-
235
234
  return Boolean((_Intl$DateTimeFormat = new Intl.DateTimeFormat(this.locale, {
236
235
  hour: 'numeric'
237
236
  })) == null || (_Intl$DateTimeFormat = _Intl$DateTimeFormat.resolvedOptions()) == null ? void 0 : _Intl$DateTimeFormat.hour12);
package/CHANGELOG.md CHANGED
@@ -3,6 +3,169 @@
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.5
7
+
8
+ _Dec 14, 2023_
9
+
10
+ We'd like to offer a big thanks to the 9 contributors who made this release possible. Here are some highlights ✨:
11
+
12
+ - 💫 New recipe added for the Data Grid
13
+ - 🌍 Improve Swedish (sv-SE) and Urdu (ur-PK) locales on the Data Grid
14
+ - 🐞 Bugfixes
15
+
16
+ ### Data Grid
17
+
18
+ #### Breaking changes
19
+
20
+ - The `instanceId` prop is now required for state selectors.
21
+ This prop is used to distinguish between multiple Data Grid instances on the same page.
22
+ See [migration docs](https://next.mui.com/x/migration/migration-data-grid-v6/#instanceid-prop-is-required-for-state-selectors) for more details.
23
+
24
+ #### `@mui/x-data-grid@7.0.0-alpha.5`
25
+
26
+ - [DataGrid] Make `instanceId` required for state selectors (#11395) @cherniavskii
27
+ - [DataGrid] Recipe for grouped rows autosizing (#11401) @michelengelen
28
+ - [l10n] Improve Swedish (sv-SE) locale (#11373) @fredrikcarlbom
29
+ - [l10n] Improve Urdu (ur-PK) locale (#11400) @MBilalShafi
30
+
31
+ #### `@mui/x-data-grid-pro@7.0.0-alpha.5` [![pro](https://mui.com/r/x-pro-svg)](https://mui.com/r/x-pro-svg-link 'Pro plan')
32
+
33
+ Same changes as in `@mui/x-data-grid@7.0.0-alpha.5`.
34
+
35
+ #### `@mui/x-data-grid-premium@7.0.0-alpha.5` [![premium](https://mui.com/r/x-premium-svg)](https://mui.com/r/x-premium-svg-link 'Premium plan')
36
+
37
+ Same changes as in `@mui/x-data-grid-pro@7.0.0-alpha.5`.
38
+
39
+ ### Date Pickers
40
+
41
+ #### Breaking changes
42
+
43
+ - The slot interfaces got renamed to match with `@mui/base` naming.
44
+ The `SlotsComponent` suffix has been replaced with `Slots` and `SlotsComponentsProps` with `SlotProps`.
45
+
46
+ ```diff
47
+ - DateCalendarSlotsComponent
48
+ + DateCalendarSlots
49
+ - DateCalendarSlotsComponentsProps
50
+ + DateCalendarSlotProps
51
+ ```
52
+
53
+ #### `@mui/x-date-pickers@7.0.0-alpha.5`
54
+
55
+ - [fields] Support empty sections (#10307) @flaviendelangle
56
+ - [pickers] Fix field types to avoid error on latest `@types/react` version (#11397) @LukasTy
57
+ - [pickers] Remove all relative imports to the internals index file (#11375) @flaviendelangle
58
+ - [pickers] Rename slots interfaces (#11339) @alexfauquette
59
+ - [pickers] Simplify the API of the field hooks (#11371) @flaviendelangle
60
+ - [pickers] Support name prop (#11025) @gitstart
61
+
62
+ #### `@mui/x-date-pickers-pro@7.0.0-alpha.5` [![pro](https://mui.com/r/x-pro-svg)](https://mui.com/r/x-pro-svg-link 'Pro plan')
63
+
64
+ Same changes as in `@mui/x-date-pickers@7.0.0-alpha.5`, plus:
65
+
66
+ - [DateRangePicker] Fix `autoFocus` behavior (#11273) @kealjones-wk
67
+
68
+ ### Charts / `@mui/x-charts@7.0.0-alpha.5`
69
+
70
+ - [charts] Fix size overflow (#11385) @alexfauquette
71
+
72
+ ### `@mui/x-codemod@7.0.0-alpha.5`
73
+
74
+ - [codemod] Add `cellSelection` codemod and update migration guide (#11353) @MBilalShafi
75
+
76
+ ### Docs
77
+
78
+ - [docs] Respect GoT books (@janoma) (#11387) @alexfauquette
79
+
80
+ ### Core
81
+
82
+ - [core] Automate cherry-pick of PRs from `next` -> `master` (#11382) @MBilalShafi
83
+ - [github] Update `no-response` workflow (#11369) @MBilalShafi
84
+ - [test] Fix flaky screenshots (#11388) @cherniavskii
85
+
86
+ ## 7.0.0-alpha.4
87
+
88
+ _Dec 8, 2023_
89
+
90
+ We'd like to offer a big thanks to the 11 contributors who made this release possible. Here are some highlights ✨:
91
+
92
+ - 🚀 The scatter charts now use voronoi to trigger items
93
+
94
+ Users needed to hover the item to highlight the scatter item or show the tooltip.
95
+ Now they can interact with data by triggering the closest element. See the [docs page](https://next.mui.com/x/react-charts/scatter/#interaction) for more info.
96
+
97
+ - 📚 Add [Pickers FAQ page](https://next.mui.com/x/react-date-pickers/faq/)
98
+ - 🎉 The Data Grid Header filters feature is now stable
99
+ - 🌍 Improve Danish (da-DK) locale on Data Grid
100
+ - 🐞 Bugfixes
101
+
102
+ ### Data Grid
103
+
104
+ #### Breaking changes
105
+
106
+ - The header filters feature is now stable. `unstable_` prefix is removed from prop `headerFilters` and related exports.
107
+ See [migration docs](https://next.mui.com/x/migration/migration-data-grid-v6/#filtering) for more details.
108
+
109
+ - The `GridColDef['type']` has been narrowed down to only accept the built-in column types.
110
+ TypeScript users need to use the `GridColDef` interface when defining columns:
111
+
112
+ ```tsx
113
+ // 🛑 `type` is inferred as `string` and is too wide
114
+ const columns = [{ type: 'number', field: 'id' }];
115
+ <DataGrid columns={columns} />;
116
+
117
+ // ✅ `type` is `'number'`
118
+ const columns: GridColDef[] = [{ type: 'number', field: 'id' }];
119
+ <DataGrid columns={columns} />;
120
+
121
+ // ✅ Alternalively, `as const` can be used to narrow down the type
122
+ const columns = [{ type: 'number' as const, field: 'id' }];
123
+ <DataGrid columns={columns} />;
124
+ ```
125
+
126
+ #### `@mui/x-data-grid@7.0.0-alpha.4`
127
+
128
+ - [DataGrid] Added a guard for reorder cells (#11159) @michelengelen
129
+ - [DataGrid] Narrow down `GridColDef['type']` (#11270) @cherniavskii
130
+ - [l10n] Improve Danish (da-DK) locale (#11304) @goibon
131
+
132
+ #### `@mui/x-data-grid-pro@7.0.0-alpha.4` [![pro](https://mui.com/r/x-pro-svg)](https://mui.com/r/x-pro-svg-link 'Pro plan')
133
+
134
+ Same changes as in `@mui/x-data-grid@7.0.0-alpha.4`, plus:
135
+
136
+ - [DataGridPro] Make header filters feature stable (#11243) @MBilalShafi
137
+
138
+ #### `@mui/x-data-grid-premium@7.0.0-alpha.4` [![premium](https://mui.com/r/x-premium-svg)](https://mui.com/r/x-premium-svg-link 'Premium plan')
139
+
140
+ Same changes as in `@mui/x-data-grid-pro@7.0.0-alpha.4`.
141
+
142
+ ### Date Pickers
143
+
144
+ #### `@mui/x-date-pickers@7.0.0-alpha.4`
145
+
146
+ - [fields] Rework `PickersTextField` (#11258) @flaviendelangle
147
+ - [pickers] Fix `MultiSectionDigitalClock` issues (#11305) @LukasTy
148
+ - [pickers] Fix views height consistency (#11337) @LukasTy
149
+
150
+ #### `@mui/x-date-pickers-pro@7.0.0-alpha.4` [![pro](https://mui.com/r/x-pro-svg)](https://mui.com/r/x-pro-svg-link 'Pro plan')
151
+
152
+ Same changes as in `@mui/x-date-pickers@7.0.0-alpha.4`.
153
+
154
+ ### Charts / `@mui/x-charts@7.0.0-alpha.4`
155
+
156
+ - [charts] Remove animation on sparkline (#11311) @oliviertassinari
157
+ - [charts] Use voronoi cells to trigger interaction with scatter items (#10981) @alexfauquette
158
+ - [charts] Add `@mui/utils` as a dependency (#11351) @michelengelen
159
+
160
+ ### Docs
161
+
162
+ - [docs] Add FAQ page (#11271) @noraleonte
163
+ - [docs] Add a doc section on how to override the start of the week with each adapter (#11223) @flaviendelangle
164
+ - [docs] Added params to `onPaginationModelChange` docs (#10191) @JFBenzs
165
+ - [docs] Fix typo (#11324) @cadam11
166
+ - [docs] Improve `DemoContainer` styling coverage (#11315) @LukasTy
167
+ - [docs] General revision of the Charts docs (#11249) @danilo-leal
168
+
6
169
  ## 7.0.0-alpha.3
7
170
 
8
171
  _Dec 4, 2023_
@@ -866,6 +1029,88 @@ Here is an example of the renaming for the `<ChartsTooltip />` component.
866
1029
  - [core] Update release instructions as per v7 configuration (#10962) @MBilalShafi
867
1030
  - [license] Correctly throw errors (#10924) @oliviertassinari
868
1031
 
1032
+ ## 6.18.5
1033
+
1034
+ _Dec 14, 2023_
1035
+
1036
+ We'd like to offer a big thanks to the 7 contributors who made this release possible. Here are some highlights ✨:
1037
+
1038
+ - 🌍 Improve Swedish (sv-SE) and Urdu (ur-PK) locales on the Data Grid
1039
+ - 🐞 Bugfixes
1040
+
1041
+ ### Data Grid
1042
+
1043
+ #### `@mui/x-data-grid@6.18.5`
1044
+
1045
+ - [l10n] Improve Swedish (sv-SE) locale (#11379) @fredrikcarlbom
1046
+ - [l10n] Improve Urdu (ur-PK) locale for data grid (#11409) @MBilalShafi
1047
+
1048
+ #### `@mui/x-data-grid-pro@6.18.5` [![pro](https://mui.com/r/x-pro-svg)](https://mui.com/r/x-pro-svg-link 'Pro plan')
1049
+
1050
+ Same changes as in `@mui/x-data-grid@6.18.5`.
1051
+
1052
+ #### `@mui/x-data-grid-premium@6.18.5` [![premium](https://mui.com/r/x-premium-svg)](https://mui.com/r/x-premium-svg-link 'Premium plan')
1053
+
1054
+ Same changes as in `@mui/x-data-grid-pro@6.18.5`.
1055
+
1056
+ ### Date Pickers
1057
+
1058
+ #### `@mui/x-date-pickers@6.18.5`
1059
+
1060
+ - [pickers] Fix field types to avoid error on latest `@types/react` version (#11398) @LukasTy
1061
+ - [pickers] Support name prop (#11380) @gitstart
1062
+
1063
+ #### `@mui/x-date-pickers-pro@6.18.5` [![pro](https://mui.com/r/x-pro-svg)](https://mui.com/r/x-pro-svg-link 'Pro plan')
1064
+
1065
+ Same changes as in `@mui/x-date-pickers@6.18.5`, plus:
1066
+
1067
+ - [DateRangePicker] Fix `autoFocus` behavior (#11376) @kealjones-wk
1068
+
1069
+ ### Docs
1070
+
1071
+ - [docs] Respect GoT books (#11294) @janoma
1072
+ - [test] Fix flaky screenshots (#11391) @cherniavskii
1073
+
1074
+ ## 6.18.4
1075
+
1076
+ _Dec 8, 2023_
1077
+
1078
+ We'd like to offer a big thanks to the 6 contributors who made this release possible. Here are some highlights ✨:
1079
+
1080
+ - 📚 Add [Pickers FAQ page](https://mui.com/x/react-date-pickers/faq/)
1081
+ - 🌍 Improve Danish (da-DK) locale on Data Grid
1082
+ - 🐞 Bugfixes
1083
+
1084
+ ### Data Grid
1085
+
1086
+ #### `@mui/x-data-grid@6.18.4`
1087
+
1088
+ - [DataGrid] Fix cell slot style override (#11215) @oliviertassinari
1089
+ - [l10n] Improve Danish (da-DK) locale (#11346) @goibon
1090
+
1091
+ #### `@mui/x-data-grid-pro@6.18.4` [![pro](https://mui.com/r/x-pro-svg)](https://mui.com/r/x-pro-svg-link 'Pro plan')
1092
+
1093
+ Same changes as in `@mui/x-data-grid@6.18.4`.
1094
+
1095
+ #### `@mui/x-data-grid-premium@6.18.4` [![premium](https://mui.com/r/x-premium-svg)](https://mui.com/r/x-premium-svg-link 'Premium plan')
1096
+
1097
+ Same changes as in `@mui/x-data-grid-pro@6.18.4`.
1098
+
1099
+ ### Date Pickers
1100
+
1101
+ #### `@mui/x-date-pickers@6.18.4`
1102
+
1103
+ - [pickers] Fix `MultiSectionDigitalClock` issues (#11308) @LukasTy
1104
+
1105
+ #### `@mui/x-date-pickers-pro@6.18.4` [![pro](https://mui.com/r/x-pro-svg)](https://mui.com/r/x-pro-svg-link 'Pro plan')
1106
+
1107
+ Same changes as in `@mui/x-date-pickers@6.18.4`.
1108
+
1109
+ ### Docs
1110
+
1111
+ - [docs] Fix typo (#11323) @cadam11
1112
+ - [docs] Add FAQ page (#11347) @noraleonte
1113
+
869
1114
  ## 6.18.3
870
1115
 
871
1116
  _Dec 4, 2023_
@@ -2,8 +2,8 @@ import * as React from 'react';
2
2
  import { SxProps } from '@mui/system';
3
3
  import { Theme } from '@mui/material/styles';
4
4
  import { SlotComponentProps } from '@mui/base/utils';
5
- import { PickersCalendarHeader, PickersCalendarHeaderProps, PickersCalendarHeaderSlotsComponent, PickersCalendarHeaderSlotsComponentsProps } from '../PickersCalendarHeader';
6
- import { DayCalendarSlotsComponent, DayCalendarSlotsComponentsProps, ExportedDayCalendarProps } from './DayCalendar';
5
+ import { PickersCalendarHeader, PickersCalendarHeaderProps, PickersCalendarHeaderSlots, PickersCalendarHeaderSlotProps } from '../PickersCalendarHeader';
6
+ import { DayCalendarSlots, DayCalendarSlotProps, ExportedDayCalendarProps } from './DayCalendar';
7
7
  import { DateCalendarClasses } from './dateCalendarClasses';
8
8
  import { BaseDateValidationProps, YearValidationProps, MonthValidationProps, DayValidationProps } from '../internals/models/validation';
9
9
  import { PickerSelectionState } from '../internals/hooks/usePicker/usePickerValue.types';
@@ -12,7 +12,7 @@ import { DateView, TimezoneProps } from '../models';
12
12
  import { DefaultizedProps } from '../internals/models/helpers';
13
13
  import { ExportedYearCalendarProps } from '../YearCalendar/YearCalendar.types';
14
14
  import { ExportedMonthCalendarProps } from '../MonthCalendar/MonthCalendar.types';
15
- export interface DateCalendarSlotsComponent<TDate> extends PickersCalendarHeaderSlotsComponent, DayCalendarSlotsComponent<TDate> {
15
+ export interface DateCalendarSlots<TDate> extends PickersCalendarHeaderSlots, DayCalendarSlots<TDate> {
16
16
  /**
17
17
  * Custom component for calendar header.
18
18
  * Check the [PickersCalendarHeader](https://mui.com/x/api/date-pickers/pickers-calendar-header/) component.
@@ -20,7 +20,7 @@ export interface DateCalendarSlotsComponent<TDate> extends PickersCalendarHeader
20
20
  */
21
21
  calendarHeader?: React.ElementType<PickersCalendarHeaderProps<TDate>>;
22
22
  }
23
- export interface DateCalendarSlotsComponentsProps<TDate> extends PickersCalendarHeaderSlotsComponentsProps<TDate>, DayCalendarSlotsComponentsProps<TDate> {
23
+ export interface DateCalendarSlotProps<TDate> extends PickersCalendarHeaderSlotProps<TDate>, DayCalendarSlotProps<TDate> {
24
24
  calendarHeader?: SlotComponentProps<typeof PickersCalendarHeader, {}, DateCalendarProps<TDate>>;
25
25
  }
26
26
  export interface ExportedDateCalendarProps<TDate> extends ExportedDayCalendarProps<TDate>, ExportedMonthCalendarProps, ExportedYearCalendarProps, BaseDateValidationProps<TDate>, DayValidationProps<TDate>, YearValidationProps<TDate>, MonthValidationProps<TDate>, TimezoneProps {
@@ -91,11 +91,11 @@ export interface DateCalendarProps<TDate> extends ExportedDateCalendarProps<TDat
91
91
  * Overridable component slots.
92
92
  * @default {}
93
93
  */
94
- slots?: DateCalendarSlotsComponent<TDate>;
94
+ slots?: DateCalendarSlots<TDate>;
95
95
  /**
96
96
  * The props used for each component slot.
97
97
  * @default {}
98
98
  */
99
- slotProps?: DateCalendarSlotsComponentsProps<TDate>;
99
+ slotProps?: DateCalendarSlotProps<TDate>;
100
100
  }
101
101
  export type DateCalendarDefaultizedProps<TDate> = DefaultizedProps<DateCalendarProps<TDate>, 'views' | 'openTo' | 'loading' | 'reduceAnimations' | 'renderLoading' | keyof BaseDateValidationProps<TDate>>;
@@ -7,7 +7,7 @@ import { BaseDateValidationProps, DayValidationProps, MonthValidationProps, Year
7
7
  import { DayCalendarClasses } from './dayCalendarClasses';
8
8
  import { TimezoneProps } from '../models';
9
9
  import { DefaultizedProps } from '../internals/models/helpers';
10
- export interface DayCalendarSlotsComponent<TDate> {
10
+ export interface DayCalendarSlots<TDate> {
11
11
  /**
12
12
  * Custom component for day.
13
13
  * Check the [PickersDay](https://mui.com/x/api/date-pickers/pickers-day/) component.
@@ -15,7 +15,7 @@ export interface DayCalendarSlotsComponent<TDate> {
15
15
  */
16
16
  day?: React.ElementType<PickersDayProps<TDate>>;
17
17
  }
18
- export interface DayCalendarSlotsComponentsProps<TDate> {
18
+ export interface DayCalendarSlotProps<TDate> {
19
19
  day?: SlotComponentProps<typeof PickersDay, {}, DayCalendarProps<TDate> & {
20
20
  day: TDate;
21
21
  selected: boolean;
@@ -75,12 +75,12 @@ export interface DayCalendarProps<TDate> extends ExportedDayCalendarProps<TDate>
75
75
  * Overridable component slots.
76
76
  * @default {}
77
77
  */
78
- slots?: DayCalendarSlotsComponent<TDate>;
78
+ slots?: DayCalendarSlots<TDate>;
79
79
  /**
80
80
  * The props used for each component slot.
81
81
  * @default {}
82
82
  */
83
- slotProps?: DayCalendarSlotsComponentsProps<TDate>;
83
+ slotProps?: DayCalendarSlotProps<TDate>;
84
84
  }
85
85
  /**
86
86
  * @ignore - do not document.
@@ -1,5 +1,5 @@
1
1
  export { DateCalendar } from './DateCalendar';
2
- export type { DateCalendarProps, DateCalendarSlotsComponent, DateCalendarSlotsComponentsProps, } from './DateCalendar.types';
2
+ export type { DateCalendarProps, DateCalendarSlots, DateCalendarSlotProps, } from './DateCalendar.types';
3
3
  export { getDateCalendarUtilityClass, dateCalendarClasses } from './dateCalendarClasses';
4
4
  export type { DateCalendarClassKey, DateCalendarClasses } from './dateCalendarClasses';
5
5
  export { dayCalendarClasses } from './dayCalendarClasses';
@@ -61,7 +61,6 @@ export const useCalendarState = params => {
61
61
  });
62
62
  }, [] // eslint-disable-line react-hooks/exhaustive-deps
63
63
  );
64
-
65
64
  const [calendarState, dispatch] = React.useReducer(reducerFn, {
66
65
  isMonthSwitchingAnimating: false,
67
66
  focusedDay: referenceDate,
@@ -1,8 +1,6 @@
1
1
  import _extends from "@babel/runtime/helpers/esm/extends";
2
2
  import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/esm/objectWithoutPropertiesLoose";
3
- const _excluded = ["slots", "slotProps", "InputProps", "inputProps"],
4
- _excluded2 = ["inputRef"],
5
- _excluded3 = ["ref", "onPaste", "onKeyDown", "inputMode", "readOnly", "clearable", "onClear"];
3
+ const _excluded = ["slots", "slotProps", "InputProps", "inputProps"];
6
4
  import * as React from 'react';
7
5
  import PropTypes from 'prop-types';
8
6
  import MuiTextField from '@mui/material/TextField';
@@ -11,6 +9,7 @@ import { useSlotProps } from '@mui/base/utils';
11
9
  import { refType } from '@mui/utils';
12
10
  import { useDateField } from './useDateField';
13
11
  import { useClearableField } from '../hooks';
12
+ import { convertFieldResponseIntoMuiTextFieldProps } from '../internals/utils/convertFieldResponseIntoMuiTextFieldProps';
14
13
  import { jsx as _jsx } from "react/jsx-runtime";
15
14
  /**
16
15
  * Demos:
@@ -22,7 +21,7 @@ import { jsx as _jsx } from "react/jsx-runtime";
22
21
  *
23
22
  * - [DateField API](https://mui.com/x/api/date-pickers/date-field/)
24
23
  */
25
- const DateField = /*#__PURE__*/React.forwardRef(function DateField(inProps, ref) {
24
+ const DateField = /*#__PURE__*/React.forwardRef(function DateField(inProps, inRef) {
26
25
  var _slots$textField;
27
26
  const themeProps = useThemeProps({
28
27
  props: inProps,
@@ -37,58 +36,26 @@ const DateField = /*#__PURE__*/React.forwardRef(function DateField(inProps, ref)
37
36
  other = _objectWithoutPropertiesLoose(themeProps, _excluded);
38
37
  const ownerState = themeProps;
39
38
  const TextField = (_slots$textField = slots == null ? void 0 : slots.textField) != null ? _slots$textField : MuiTextField;
40
- const _useSlotProps = useSlotProps({
41
- elementType: TextField,
42
- externalSlotProps: slotProps == null ? void 0 : slotProps.textField,
43
- externalForwardedProps: other,
44
- ownerState
45
- }),
46
- {
47
- inputRef: externalInputRef
48
- } = _useSlotProps,
49
- textFieldProps = _objectWithoutPropertiesLoose(_useSlotProps, _excluded2);
39
+ const textFieldProps = useSlotProps({
40
+ elementType: TextField,
41
+ externalSlotProps: slotProps == null ? void 0 : slotProps.textField,
42
+ externalForwardedProps: other,
43
+ additionalProps: {
44
+ ref: inRef
45
+ },
46
+ ownerState
47
+ });
50
48
 
51
49
  // TODO: Remove when mui/material-ui#35088 will be merged
52
50
  textFieldProps.inputProps = _extends({}, inputProps, textFieldProps.inputProps);
53
51
  textFieldProps.InputProps = _extends({}, InputProps, textFieldProps.InputProps);
54
- const _useDateField = useDateField({
55
- props: textFieldProps,
56
- inputRef: externalInputRef
57
- }),
58
- {
59
- ref: inputRef,
60
- onPaste,
61
- onKeyDown,
62
- inputMode,
63
- readOnly,
64
- clearable,
65
- onClear
66
- } = _useDateField,
67
- fieldProps = _objectWithoutPropertiesLoose(_useDateField, _excluded3);
68
- const {
69
- InputProps: ProcessedInputProps,
70
- fieldProps: processedFieldProps
71
- } = useClearableField({
72
- onClear,
73
- clearable,
74
- fieldProps,
75
- InputProps: fieldProps.InputProps,
52
+ const fieldResponse = useDateField(textFieldProps);
53
+ const convertedFieldResponse = convertFieldResponseIntoMuiTextFieldProps(fieldResponse);
54
+ const processedFieldProps = useClearableField(_extends({}, convertedFieldResponse, {
76
55
  slots,
77
56
  slotProps
78
- });
79
- return /*#__PURE__*/_jsx(TextField, _extends({
80
- ref: ref
81
- }, processedFieldProps, {
82
- InputProps: _extends({}, ProcessedInputProps, {
83
- readOnly
84
- }),
85
- inputProps: _extends({}, fieldProps.inputProps, {
86
- inputMode,
87
- onPaste,
88
- onKeyDown,
89
- ref: inputRef
90
- })
91
57
  }));
58
+ return /*#__PURE__*/_jsx(TextField, _extends({}, processedFieldProps));
92
59
  });
93
60
  process.env.NODE_ENV !== "production" ? DateField.propTypes = {
94
61
  // ----------------------------- Warning --------------------------------
@@ -266,7 +233,7 @@ process.env.NODE_ENV !== "production" ? DateField.propTypes = {
266
233
  * 4. If `null` is provided, no section will be selected
267
234
  * If not provided, the selected sections will be handled internally.
268
235
  */
269
- selectedSections: PropTypes.oneOfType([PropTypes.oneOf(['all', 'day', 'hours', 'meridiem', 'minutes', 'month', 'seconds', 'weekDay', 'year']), PropTypes.number, PropTypes.shape({
236
+ selectedSections: PropTypes.oneOfType([PropTypes.oneOf(['all', 'day', 'empty', 'hours', 'meridiem', 'minutes', 'month', 'seconds', 'weekDay', 'year']), PropTypes.number, PropTypes.shape({
270
237
  endIndex: PropTypes.number.isRequired,
271
238
  startIndex: PropTypes.number.isRequired
272
239
  })]),
@@ -1,16 +1,12 @@
1
1
  import * as React from 'react';
2
2
  import { SlotComponentProps } from '@mui/base/utils';
3
3
  import TextField from '@mui/material/TextField';
4
- import { FieldSlotsComponents, FieldSlotsComponentsProps } from '../internals';
4
+ import { UseClearableFieldSlots, UseClearableFieldSlotProps } from '../hooks/useClearableField';
5
5
  import { DateValidationError, FieldSection } from '../models';
6
6
  import { UseFieldInternalProps } from '../internals/hooks/useField';
7
7
  import { DefaultizedProps, MakeOptional } from '../internals/models/helpers';
8
8
  import { BaseDateValidationProps, DayValidationProps, MonthValidationProps, YearValidationProps } from '../internals/models/validation';
9
9
  import { FieldsTextFieldProps } from '../internals/models/fields';
10
- export interface UseDateFieldParams<TDate, TChildProps extends {}> {
11
- props: UseDateFieldComponentProps<TDate, TChildProps>;
12
- inputRef?: React.Ref<HTMLInputElement>;
13
- }
14
10
  export interface UseDateFieldProps<TDate> extends MakeOptional<UseFieldInternalProps<TDate | null, TDate, FieldSection, DateValidationError>, 'format'>, DayValidationProps<TDate>, MonthValidationProps<TDate>, YearValidationProps<TDate>, BaseDateValidationProps<TDate> {
15
11
  }
16
12
  export type UseDateFieldDefaultizedProps<TDate> = DefaultizedProps<UseDateFieldProps<TDate>, keyof BaseDateValidationProps<any> | 'format'>;
@@ -20,15 +16,15 @@ export interface DateFieldProps<TDate> extends UseDateFieldComponentProps<TDate,
20
16
  * Overridable component slots.
21
17
  * @default {}
22
18
  */
23
- slots?: DateFieldSlotsComponent;
19
+ slots?: DateFieldSlots;
24
20
  /**
25
21
  * The props used for each component slot.
26
22
  * @default {}
27
23
  */
28
- slotProps?: DateFieldSlotsComponentsProps<TDate>;
24
+ slotProps?: DateFieldSlotProps<TDate>;
29
25
  }
30
26
  export type DateFieldOwnerState<TDate> = DateFieldProps<TDate>;
31
- export interface DateFieldSlotsComponent extends FieldSlotsComponents {
27
+ export interface DateFieldSlots extends UseClearableFieldSlots {
32
28
  /**
33
29
  * Form control with an input to render the value.
34
30
  * Receives the same props as `@mui/material/TextField`.
@@ -36,6 +32,6 @@ export interface DateFieldSlotsComponent extends FieldSlotsComponents {
36
32
  */
37
33
  textField?: React.ElementType;
38
34
  }
39
- export interface DateFieldSlotsComponentsProps<TDate> extends FieldSlotsComponentsProps {
35
+ export interface DateFieldSlotProps<TDate> extends UseClearableFieldSlotProps {
40
36
  textField?: SlotComponentProps<typeof TextField, {}, DateFieldOwnerState<TDate>>;
41
37
  }
@@ -1,2 +1,2 @@
1
- import { UseDateFieldProps, UseDateFieldParams } from './DateField.types';
2
- export declare const useDateField: <TDate, TChildProps extends {}>({ props: inProps, inputRef, }: UseDateFieldParams<TDate, TChildProps>) => import("../internals/hooks/useField").UseFieldResponse<Omit<TChildProps & Omit<UseDateFieldProps<TDate>, "format" | keyof import("../internals").BaseDateValidationProps<any>> & Required<Pick<UseDateFieldProps<TDate>, "format" | keyof import("../internals").BaseDateValidationProps<any>>>, keyof UseDateFieldProps<TDate>>>;
1
+ import { UseDateFieldProps, UseDateFieldComponentProps } from './DateField.types';
2
+ export declare const useDateField: <TDate, TChildProps extends {}>(inProps: UseDateFieldComponentProps<TDate, TChildProps>) => import("../internals/hooks/useField").UseFieldResponse<Omit<TChildProps & Omit<UseDateFieldProps<TDate>, "format" | keyof import("../internals").BaseDateValidationProps<any>> & Required<Pick<UseDateFieldProps<TDate>, "format" | keyof import("../internals").BaseDateValidationProps<any>>>, keyof UseDateFieldProps<TDate>>>;
@@ -17,17 +17,13 @@ const useDefaultizedDateField = props => {
17
17
  maxDate: applyDefaultDate(utils, props.maxDate, defaultDates.maxDate)
18
18
  });
19
19
  };
20
- export const useDateField = ({
21
- props: inProps,
22
- inputRef
23
- }) => {
20
+ export const useDateField = inProps => {
24
21
  const props = useDefaultizedDateField(inProps);
25
22
  const {
26
23
  forwardedProps,
27
24
  internalProps
28
25
  } = splitFieldInternalAndForwardedProps(props, 'date');
29
26
  return useField({
30
- inputRef,
31
27
  forwardedProps,
32
28
  internalProps,
33
29
  valueManager: singleItemValueManager,
@@ -160,6 +160,10 @@ process.env.NODE_ENV !== "production" ? DatePicker.propTypes = {
160
160
  * @default 3
161
161
  */
162
162
  monthsPerRow: PropTypes.oneOf([3, 4]),
163
+ /**
164
+ * Name attribute used by the `input` element in the Field.
165
+ */
166
+ name: PropTypes.string,
163
167
  /**
164
168
  * Callback fired when the value is accepted.
165
169
  * @template TValue The value type. Will be either the same type as `value` or `null`. Can be in `[start, end]` format in case of range value.
@@ -258,7 +262,7 @@ process.env.NODE_ENV !== "production" ? DatePicker.propTypes = {
258
262
  * 4. If `null` is provided, no section will be selected
259
263
  * If not provided, the selected sections will be handled internally.
260
264
  */
261
- selectedSections: PropTypes.oneOfType([PropTypes.oneOf(['all', 'day', 'hours', 'meridiem', 'minutes', 'month', 'seconds', 'weekDay', 'year']), PropTypes.number, PropTypes.shape({
265
+ selectedSections: PropTypes.oneOfType([PropTypes.oneOf(['all', 'day', 'empty', 'hours', 'meridiem', 'minutes', 'month', 'seconds', 'weekDay', 'year']), PropTypes.number, PropTypes.shape({
262
266
  endIndex: PropTypes.number.isRequired,
263
267
  startIndex: PropTypes.number.isRequired
264
268
  })]),