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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (282) hide show
  1. package/AdapterDateFnsBase/AdapterDateFnsBase.d.ts +5 -0
  2. package/AdapterDateFnsJalali/AdapterDateFnsJalali.d.ts +5 -0
  3. package/AdapterDateFnsJalali/AdapterDateFnsJalali.js +0 -1
  4. package/AdapterDayjs/AdapterDayjs.d.ts +5 -0
  5. package/AdapterDayjs/AdapterDayjs.js +0 -1
  6. package/AdapterLuxon/AdapterLuxon.d.ts +5 -0
  7. package/AdapterLuxon/AdapterLuxon.js +1 -2
  8. package/AdapterMoment/AdapterMoment.d.ts +5 -0
  9. package/AdapterMoment/AdapterMoment.js +0 -1
  10. package/AdapterMomentHijri/AdapterMomentHijri.d.ts +5 -0
  11. package/AdapterMomentHijri/AdapterMomentHijri.js +0 -1
  12. package/AdapterMomentJalaali/AdapterMomentJalaali.d.ts +5 -0
  13. package/AdapterMomentJalaali/AdapterMomentJalaali.js +0 -1
  14. package/CHANGELOG.md +159 -1
  15. package/DateCalendar/DateCalendar.d.ts +2 -1
  16. package/DateCalendar/DateCalendar.js +5 -5
  17. package/DateCalendar/DateCalendar.types.d.ts +6 -6
  18. package/DateCalendar/DayCalendar.d.ts +6 -6
  19. package/DateCalendar/useCalendarState.d.ts +7 -7
  20. package/DateCalendar/useIsDateDisabled.d.ts +2 -1
  21. package/DateField/DateField.d.ts +2 -1
  22. package/DateField/DateField.js +5 -5
  23. package/DateField/DateField.types.d.ts +7 -7
  24. package/DateField/useDateField.d.ts +2 -1
  25. package/DatePicker/DatePicker.d.ts +2 -1
  26. package/DatePicker/DatePicker.js +5 -5
  27. package/DatePicker/DatePicker.types.d.ts +4 -3
  28. package/DatePicker/DatePickerToolbar.d.ts +3 -3
  29. package/DatePicker/DatePickerToolbar.js +1 -1
  30. package/DatePicker/shared.d.ts +6 -6
  31. package/DateTimeField/DateTimeField.d.ts +2 -1
  32. package/DateTimeField/DateTimeField.js +9 -9
  33. package/DateTimeField/DateTimeField.types.d.ts +7 -7
  34. package/DateTimeField/useDateTimeField.d.ts +2 -1
  35. package/DateTimePicker/DateTimePicker.d.ts +2 -1
  36. package/DateTimePicker/DateTimePicker.js +9 -9
  37. package/DateTimePicker/DateTimePicker.types.d.ts +4 -3
  38. package/DateTimePicker/DateTimePickerToolbar.d.ts +3 -2
  39. package/DateTimePicker/DateTimePickerToolbar.js +1 -1
  40. package/DateTimePicker/shared.d.ts +6 -6
  41. package/DesktopDatePicker/DesktopDatePicker.d.ts +2 -1
  42. package/DesktopDatePicker/DesktopDatePicker.js +5 -5
  43. package/DesktopDatePicker/DesktopDatePicker.types.d.ts +4 -4
  44. package/DesktopDateTimePicker/DesktopDateTimePicker.d.ts +2 -1
  45. package/DesktopDateTimePicker/DesktopDateTimePicker.js +9 -9
  46. package/DesktopDateTimePicker/DesktopDateTimePicker.types.d.ts +4 -4
  47. package/DesktopTimePicker/DesktopTimePicker.d.ts +2 -1
  48. package/DesktopTimePicker/DesktopTimePicker.js +5 -5
  49. package/DesktopTimePicker/DesktopTimePicker.types.d.ts +4 -4
  50. package/DigitalClock/DigitalClock.d.ts +2 -1
  51. package/DigitalClock/DigitalClock.js +5 -5
  52. package/DigitalClock/DigitalClock.types.d.ts +4 -4
  53. package/LocalizationProvider/LocalizationProvider.d.ts +5 -5
  54. package/MobileDatePicker/MobileDatePicker.d.ts +2 -1
  55. package/MobileDatePicker/MobileDatePicker.js +5 -5
  56. package/MobileDatePicker/MobileDatePicker.types.d.ts +4 -4
  57. package/MobileDateTimePicker/MobileDateTimePicker.d.ts +2 -1
  58. package/MobileDateTimePicker/MobileDateTimePicker.js +9 -9
  59. package/MobileDateTimePicker/MobileDateTimePicker.types.d.ts +4 -4
  60. package/MobileTimePicker/MobileTimePicker.d.ts +2 -1
  61. package/MobileTimePicker/MobileTimePicker.js +5 -5
  62. package/MobileTimePicker/MobileTimePicker.types.d.ts +4 -4
  63. package/MonthCalendar/MonthCalendar.d.ts +3 -2
  64. package/MonthCalendar/MonthCalendar.js +5 -5
  65. package/MonthCalendar/MonthCalendar.types.d.ts +2 -2
  66. package/MultiSectionDigitalClock/MultiSectionDigitalClock.d.ts +2 -1
  67. package/MultiSectionDigitalClock/MultiSectionDigitalClock.js +5 -5
  68. package/MultiSectionDigitalClock/MultiSectionDigitalClock.types.d.ts +4 -3
  69. package/MultiSectionDigitalClock/MultiSectionDigitalClock.utils.d.ts +5 -5
  70. package/PickersCalendarHeader/PickersCalendarHeader.d.ts +2 -1
  71. package/PickersCalendarHeader/PickersCalendarHeader.js +3 -3
  72. package/PickersCalendarHeader/PickersCalendarHeader.types.d.ts +6 -6
  73. package/PickersDay/PickersDay.d.ts +3 -2
  74. package/PickersDay/PickersDay.js +1 -1
  75. package/PickersLayout/PickersLayout.d.ts +2 -1
  76. package/PickersLayout/PickersLayout.types.d.ts +7 -6
  77. package/PickersLayout/usePickerLayout.d.ts +2 -1
  78. package/StaticDatePicker/StaticDatePicker.d.ts +2 -1
  79. package/StaticDatePicker/StaticDatePicker.js +5 -5
  80. package/StaticDatePicker/StaticDatePicker.types.d.ts +4 -4
  81. package/StaticDateTimePicker/StaticDateTimePicker.d.ts +2 -1
  82. package/StaticDateTimePicker/StaticDateTimePicker.js +9 -9
  83. package/StaticDateTimePicker/StaticDateTimePicker.types.d.ts +4 -4
  84. package/StaticTimePicker/StaticTimePicker.d.ts +2 -1
  85. package/StaticTimePicker/StaticTimePicker.js +5 -5
  86. package/StaticTimePicker/StaticTimePicker.types.d.ts +4 -4
  87. package/TimeClock/Clock.d.ts +3 -3
  88. package/TimeClock/ClockNumbers.d.ts +4 -4
  89. package/TimeClock/TimeClock.d.ts +2 -1
  90. package/TimeClock/TimeClock.js +5 -5
  91. package/TimeClock/TimeClock.types.d.ts +3 -3
  92. package/TimeField/TimeField.d.ts +2 -1
  93. package/TimeField/TimeField.js +5 -5
  94. package/TimeField/TimeField.types.d.ts +7 -7
  95. package/TimeField/useTimeField.d.ts +2 -1
  96. package/TimePicker/TimePicker.d.ts +2 -1
  97. package/TimePicker/TimePicker.js +5 -5
  98. package/TimePicker/TimePicker.types.d.ts +4 -3
  99. package/TimePicker/TimePickerToolbar.d.ts +3 -2
  100. package/TimePicker/TimePickerToolbar.js +1 -1
  101. package/TimePicker/shared.d.ts +5 -5
  102. package/YearCalendar/YearCalendar.d.ts +2 -1
  103. package/YearCalendar/YearCalendar.js +5 -5
  104. package/YearCalendar/YearCalendar.types.d.ts +2 -2
  105. package/dateTimeViewRenderers/dateTimeViewRenderers.d.ts +3 -2
  106. package/dateViewRenderers/dateViewRenderers.d.ts +3 -3
  107. package/index.js +1 -1
  108. package/internals/hooks/date-helpers-hooks.d.ts +5 -5
  109. package/internals/hooks/useClockReferenceDate.d.ts +3 -3
  110. package/internals/hooks/useDesktopPicker/useDesktopPicker.d.ts +2 -1
  111. package/internals/hooks/useDesktopPicker/useDesktopPicker.types.d.ts +7 -7
  112. package/internals/hooks/useField/useField.d.ts +2 -2
  113. package/internals/hooks/useField/useField.types.d.ts +7 -7
  114. package/internals/hooks/useField/useField.utils.d.ts +13 -13
  115. package/internals/hooks/useField/useFieldCharacterEditing.d.ts +3 -3
  116. package/internals/hooks/useField/useFieldState.d.ts +2 -2
  117. package/internals/hooks/useMobilePicker/useMobilePicker.d.ts +2 -1
  118. package/internals/hooks/useMobilePicker/useMobilePicker.types.d.ts +7 -7
  119. package/internals/hooks/usePicker/usePicker.d.ts +2 -2
  120. package/internals/hooks/usePicker/usePicker.types.d.ts +4 -4
  121. package/internals/hooks/usePicker/usePickerValue.d.ts +2 -2
  122. package/internals/hooks/usePicker/usePickerValue.types.d.ts +5 -5
  123. package/internals/hooks/usePicker/usePickerViews.d.ts +5 -5
  124. package/internals/hooks/useStaticPicker/useStaticPicker.d.ts +2 -1
  125. package/internals/hooks/useStaticPicker/useStaticPicker.types.d.ts +6 -6
  126. package/internals/hooks/useUtils.d.ts +6 -6
  127. package/internals/hooks/useValidation.d.ts +3 -2
  128. package/internals/hooks/useValueWithTimezone.d.ts +3 -3
  129. package/internals/hooks/useViews.d.ts +2 -1
  130. package/internals/models/fields.d.ts +2 -2
  131. package/internals/models/props/basePickerProps.d.ts +3 -2
  132. package/internals/models/props/clock.d.ts +4 -4
  133. package/internals/models/validation.d.ts +7 -7
  134. package/internals/utils/date-time-utils.d.ts +5 -5
  135. package/internals/utils/date-utils.d.ts +12 -12
  136. package/internals/utils/getDefaultReferenceDate.d.ts +3 -3
  137. package/internals/utils/time-utils.d.ts +6 -6
  138. package/internals/utils/validation/validateDate.d.ts +2 -2
  139. package/internals/utils/validation/validateDateTime.d.ts +2 -2
  140. package/internals/utils/validation/validateTime.d.ts +2 -2
  141. package/internals/utils/valueManagers.d.ts +2 -2
  142. package/legacy/AdapterDateFnsJalali/AdapterDateFnsJalali.js +0 -1
  143. package/legacy/AdapterDayjs/AdapterDayjs.js +0 -1
  144. package/legacy/AdapterLuxon/AdapterLuxon.js +1 -2
  145. package/legacy/AdapterMoment/AdapterMoment.js +0 -1
  146. package/legacy/AdapterMomentHijri/AdapterMomentHijri.js +0 -1
  147. package/legacy/AdapterMomentJalaali/AdapterMomentJalaali.js +0 -1
  148. package/legacy/DateCalendar/DateCalendar.js +5 -5
  149. package/legacy/DateField/DateField.js +5 -5
  150. package/legacy/DatePicker/DatePicker.js +5 -5
  151. package/legacy/DatePicker/DatePickerToolbar.js +1 -1
  152. package/legacy/DateTimeField/DateTimeField.js +9 -9
  153. package/legacy/DateTimePicker/DateTimePicker.js +9 -9
  154. package/legacy/DateTimePicker/DateTimePickerToolbar.js +1 -1
  155. package/legacy/DesktopDatePicker/DesktopDatePicker.js +5 -5
  156. package/legacy/DesktopDateTimePicker/DesktopDateTimePicker.js +9 -9
  157. package/legacy/DesktopTimePicker/DesktopTimePicker.js +5 -5
  158. package/legacy/DigitalClock/DigitalClock.js +5 -5
  159. package/legacy/MobileDatePicker/MobileDatePicker.js +5 -5
  160. package/legacy/MobileDateTimePicker/MobileDateTimePicker.js +9 -9
  161. package/legacy/MobileTimePicker/MobileTimePicker.js +5 -5
  162. package/legacy/MonthCalendar/MonthCalendar.js +5 -5
  163. package/legacy/MultiSectionDigitalClock/MultiSectionDigitalClock.js +5 -5
  164. package/legacy/PickersCalendarHeader/PickersCalendarHeader.js +3 -3
  165. package/legacy/PickersDay/PickersDay.js +1 -1
  166. package/legacy/StaticDatePicker/StaticDatePicker.js +5 -5
  167. package/legacy/StaticDateTimePicker/StaticDateTimePicker.js +9 -9
  168. package/legacy/StaticTimePicker/StaticTimePicker.js +5 -5
  169. package/legacy/TimeClock/TimeClock.js +5 -5
  170. package/legacy/TimeField/TimeField.js +5 -5
  171. package/legacy/TimePicker/TimePicker.js +5 -5
  172. package/legacy/TimePicker/TimePickerToolbar.js +1 -1
  173. package/legacy/YearCalendar/YearCalendar.js +5 -5
  174. package/legacy/index.js +1 -1
  175. package/locales/beBY.d.ts +6 -6
  176. package/locales/caES.d.ts +6 -6
  177. package/locales/csCZ.d.ts +6 -6
  178. package/locales/daDK.d.ts +6 -6
  179. package/locales/deDE.d.ts +6 -6
  180. package/locales/elGR.d.ts +6 -6
  181. package/locales/enUS.d.ts +6 -6
  182. package/locales/esES.d.ts +6 -6
  183. package/locales/eu.d.ts +6 -6
  184. package/locales/faIR.d.ts +6 -6
  185. package/locales/fiFI.d.ts +6 -6
  186. package/locales/frFR.d.ts +6 -6
  187. package/locales/heIL.d.ts +6 -6
  188. package/locales/huHU.d.ts +6 -6
  189. package/locales/isIS.d.ts +6 -6
  190. package/locales/itIT.d.ts +6 -6
  191. package/locales/jaJP.d.ts +6 -6
  192. package/locales/koKR.d.ts +6 -6
  193. package/locales/kzKZ.d.ts +6 -6
  194. package/locales/mk.d.ts +6 -6
  195. package/locales/nbNO.d.ts +6 -6
  196. package/locales/nlNL.d.ts +6 -6
  197. package/locales/plPL.d.ts +6 -6
  198. package/locales/ptBR.d.ts +6 -6
  199. package/locales/roRO.d.ts +6 -6
  200. package/locales/ruRU.d.ts +6 -6
  201. package/locales/skSK.d.ts +6 -6
  202. package/locales/svSE.d.ts +6 -6
  203. package/locales/trTR.d.ts +6 -6
  204. package/locales/ukUA.d.ts +6 -6
  205. package/locales/urPK.d.ts +6 -6
  206. package/locales/utils/getPickersLocalization.d.ts +6 -6
  207. package/locales/utils/pickersLocaleTextApi.d.ts +6 -6
  208. package/locales/viVN.d.ts +6 -6
  209. package/locales/zhCN.d.ts +6 -6
  210. package/locales/zhHK.d.ts +6 -6
  211. package/models/adapters.d.ts +2 -1
  212. package/models/fields.d.ts +3 -2
  213. package/models/pickers.d.ts +3 -0
  214. package/modern/AdapterDateFnsJalali/AdapterDateFnsJalali.js +0 -1
  215. package/modern/AdapterDayjs/AdapterDayjs.js +0 -1
  216. package/modern/AdapterLuxon/AdapterLuxon.js +1 -2
  217. package/modern/AdapterMoment/AdapterMoment.js +0 -1
  218. package/modern/AdapterMomentHijri/AdapterMomentHijri.js +0 -1
  219. package/modern/AdapterMomentJalaali/AdapterMomentJalaali.js +0 -1
  220. package/modern/DateCalendar/DateCalendar.js +5 -5
  221. package/modern/DateField/DateField.js +5 -5
  222. package/modern/DatePicker/DatePicker.js +5 -5
  223. package/modern/DatePicker/DatePickerToolbar.js +1 -1
  224. package/modern/DateTimeField/DateTimeField.js +9 -9
  225. package/modern/DateTimePicker/DateTimePicker.js +9 -9
  226. package/modern/DateTimePicker/DateTimePickerToolbar.js +1 -1
  227. package/modern/DesktopDatePicker/DesktopDatePicker.js +5 -5
  228. package/modern/DesktopDateTimePicker/DesktopDateTimePicker.js +9 -9
  229. package/modern/DesktopTimePicker/DesktopTimePicker.js +5 -5
  230. package/modern/DigitalClock/DigitalClock.js +5 -5
  231. package/modern/MobileDatePicker/MobileDatePicker.js +5 -5
  232. package/modern/MobileDateTimePicker/MobileDateTimePicker.js +9 -9
  233. package/modern/MobileTimePicker/MobileTimePicker.js +5 -5
  234. package/modern/MonthCalendar/MonthCalendar.js +5 -5
  235. package/modern/MultiSectionDigitalClock/MultiSectionDigitalClock.js +5 -5
  236. package/modern/PickersCalendarHeader/PickersCalendarHeader.js +3 -3
  237. package/modern/PickersDay/PickersDay.js +1 -1
  238. package/modern/StaticDatePicker/StaticDatePicker.js +5 -5
  239. package/modern/StaticDateTimePicker/StaticDateTimePicker.js +9 -9
  240. package/modern/StaticTimePicker/StaticTimePicker.js +5 -5
  241. package/modern/TimeClock/TimeClock.js +5 -5
  242. package/modern/TimeField/TimeField.js +5 -5
  243. package/modern/TimePicker/TimePicker.js +5 -5
  244. package/modern/TimePicker/TimePickerToolbar.js +1 -1
  245. package/modern/YearCalendar/YearCalendar.js +5 -5
  246. package/modern/index.js +1 -1
  247. package/node/AdapterDateFnsJalali/AdapterDateFnsJalali.js +0 -1
  248. package/node/AdapterDayjs/AdapterDayjs.js +0 -1
  249. package/node/AdapterLuxon/AdapterLuxon.js +1 -2
  250. package/node/AdapterMoment/AdapterMoment.js +0 -1
  251. package/node/AdapterMomentHijri/AdapterMomentHijri.js +0 -1
  252. package/node/AdapterMomentJalaali/AdapterMomentJalaali.js +0 -1
  253. package/node/DateCalendar/DateCalendar.js +5 -5
  254. package/node/DateField/DateField.js +5 -5
  255. package/node/DatePicker/DatePicker.js +5 -5
  256. package/node/DatePicker/DatePickerToolbar.js +1 -1
  257. package/node/DateTimeField/DateTimeField.js +9 -9
  258. package/node/DateTimePicker/DateTimePicker.js +9 -9
  259. package/node/DateTimePicker/DateTimePickerToolbar.js +1 -1
  260. package/node/DesktopDatePicker/DesktopDatePicker.js +5 -5
  261. package/node/DesktopDateTimePicker/DesktopDateTimePicker.js +9 -9
  262. package/node/DesktopTimePicker/DesktopTimePicker.js +5 -5
  263. package/node/DigitalClock/DigitalClock.js +5 -5
  264. package/node/MobileDatePicker/MobileDatePicker.js +5 -5
  265. package/node/MobileDateTimePicker/MobileDateTimePicker.js +9 -9
  266. package/node/MobileTimePicker/MobileTimePicker.js +5 -5
  267. package/node/MonthCalendar/MonthCalendar.js +5 -5
  268. package/node/MultiSectionDigitalClock/MultiSectionDigitalClock.js +5 -5
  269. package/node/PickersCalendarHeader/PickersCalendarHeader.js +3 -3
  270. package/node/PickersDay/PickersDay.js +1 -1
  271. package/node/StaticDatePicker/StaticDatePicker.js +5 -5
  272. package/node/StaticDateTimePicker/StaticDateTimePicker.js +9 -9
  273. package/node/StaticTimePicker/StaticTimePicker.js +5 -5
  274. package/node/TimeClock/TimeClock.js +5 -5
  275. package/node/TimeField/TimeField.js +5 -5
  276. package/node/TimePicker/TimePicker.js +5 -5
  277. package/node/TimePicker/TimePickerToolbar.js +1 -1
  278. package/node/YearCalendar/YearCalendar.js +5 -5
  279. package/node/index.js +1 -1
  280. package/package.json +1 -1
  281. package/themeAugmentation/props.d.ts +31 -31
  282. package/timeViewRenderers/timeViewRenderers.d.ts +4 -4
@@ -72,7 +72,7 @@ process.env.NODE_ENV !== "production" ? DatePicker.propTypes = {
72
72
  * The default value.
73
73
  * Used when the component is not controlled.
74
74
  */
75
- defaultValue: PropTypes.any,
75
+ defaultValue: PropTypes.object,
76
76
  /**
77
77
  * CSS media query when `Mobile` mode will be changed to `Desktop`.
78
78
  * @default '@media (pointer: fine)'
@@ -147,11 +147,11 @@ process.env.NODE_ENV !== "production" ? DatePicker.propTypes = {
147
147
  /**
148
148
  * Maximal selectable date.
149
149
  */
150
- maxDate: PropTypes.any,
150
+ maxDate: PropTypes.object,
151
151
  /**
152
152
  * Minimal selectable date.
153
153
  */
154
- minDate: PropTypes.any,
154
+ minDate: PropTypes.object,
155
155
  /**
156
156
  * Months rendered per row.
157
157
  * @default 3
@@ -243,7 +243,7 @@ process.env.NODE_ENV !== "production" ? DatePicker.propTypes = {
243
243
  * The date used to generate the new value when both `value` and `defaultValue` are empty.
244
244
  * @default The closest valid date-time using the validation props, except callbacks like `shouldDisable<...>`.
245
245
  */
246
- referenceDate: PropTypes.any,
246
+ referenceDate: PropTypes.object,
247
247
  /**
248
248
  * Component displaying when passed `loading` true.
249
249
  * @returns {React.ReactNode} The node to render when loading.
@@ -324,7 +324,7 @@ process.env.NODE_ENV !== "production" ? DatePicker.propTypes = {
324
324
  * The selected value.
325
325
  * Used when the component is controlled.
326
326
  */
327
- value: PropTypes.any,
327
+ value: PropTypes.object,
328
328
  /**
329
329
  * The visible view.
330
330
  * Used when the component view is controlled.
@@ -1,10 +1,11 @@
1
1
  import { DesktopDatePickerProps, DesktopDatePickerSlots, DesktopDatePickerSlotProps } from '../DesktopDatePicker';
2
2
  import { MobileDatePickerProps, MobileDatePickerSlots, MobileDatePickerSlotProps } from '../MobileDatePicker';
3
- export interface DatePickerSlots<TDate> extends DesktopDatePickerSlots<TDate>, MobileDatePickerSlots<TDate> {
3
+ import { PickerValidDate } from '../models';
4
+ export interface DatePickerSlots<TDate extends PickerValidDate> extends DesktopDatePickerSlots<TDate>, MobileDatePickerSlots<TDate> {
4
5
  }
5
- export interface DatePickerSlotProps<TDate> extends DesktopDatePickerSlotProps<TDate>, MobileDatePickerSlotProps<TDate> {
6
+ export interface DatePickerSlotProps<TDate extends PickerValidDate> extends DesktopDatePickerSlotProps<TDate>, MobileDatePickerSlotProps<TDate> {
6
7
  }
7
- export interface DatePickerProps<TDate> extends DesktopDatePickerProps<TDate>, MobileDatePickerProps<TDate> {
8
+ export interface DatePickerProps<TDate extends PickerValidDate> extends DesktopDatePickerProps<TDate>, MobileDatePickerProps<TDate> {
8
9
  /**
9
10
  * CSS media query when `Mobile` mode will be changed to `Desktop`.
10
11
  * @default '@media (pointer: fine)'
@@ -1,15 +1,15 @@
1
1
  import * as React from 'react';
2
2
  import { SxProps, Theme } from '@mui/material/styles';
3
3
  import { BaseToolbarProps, ExportedBaseToolbarProps } from '../internals/models/props/toolbar';
4
- import { DateView } from '../models';
4
+ import { DateView, PickerValidDate } from '../models';
5
5
  import { DatePickerToolbarClasses } from './datePickerToolbarClasses';
6
- export interface DatePickerToolbarProps<TDate> extends BaseToolbarProps<TDate | null, DateView> {
6
+ export interface DatePickerToolbarProps<TDate extends PickerValidDate> extends BaseToolbarProps<TDate | null, DateView> {
7
7
  classes?: Partial<DatePickerToolbarClasses>;
8
8
  sx?: SxProps<Theme>;
9
9
  }
10
10
  export interface ExportedDatePickerToolbarProps extends ExportedBaseToolbarProps {
11
11
  }
12
- type DatePickerToolbarComponent = (<TDate>(props: DatePickerToolbarProps<TDate> & React.RefAttributes<HTMLDivElement>) => React.JSX.Element) & {
12
+ type DatePickerToolbarComponent = (<TDate extends PickerValidDate>(props: DatePickerToolbarProps<TDate> & React.RefAttributes<HTMLDivElement>) => React.JSX.Element) & {
13
13
  propTypes?: any;
14
14
  };
15
15
  /**
@@ -120,7 +120,7 @@ process.env.NODE_ENV !== "production" ? DatePickerToolbar.propTypes = {
120
120
  * @default "––"
121
121
  */
122
122
  toolbarPlaceholder: PropTypes.node,
123
- value: PropTypes.any,
123
+ value: PropTypes.object,
124
124
  /**
125
125
  * Currently visible picker view.
126
126
  */
@@ -1,24 +1,24 @@
1
1
  import * as React from 'react';
2
2
  import { DefaultizedProps } from '../internals/models/helpers';
3
3
  import { DateCalendarSlots, DateCalendarSlotProps, ExportedDateCalendarProps } from '../DateCalendar/DateCalendar.types';
4
- import { DateValidationError, DateView } from '../models';
4
+ import { DateValidationError, DateView, PickerValidDate } from '../models';
5
5
  import { BasePickerInputProps } from '../internals/models/props/basePickerProps';
6
6
  import { BaseDateValidationProps } from '../internals/models/validation';
7
7
  import { LocalizedComponent } from '../locales/utils/pickersLocaleTextApi';
8
8
  import { DatePickerToolbarProps, ExportedDatePickerToolbarProps } from './DatePickerToolbar';
9
9
  import { PickerViewRendererLookup } from '../internals/hooks/usePicker/usePickerViews';
10
10
  import { DateViewRendererProps } from '../dateViewRenderers';
11
- export interface BaseDatePickerSlots<TDate> extends DateCalendarSlots<TDate> {
11
+ export interface BaseDatePickerSlots<TDate extends PickerValidDate> extends DateCalendarSlots<TDate> {
12
12
  /**
13
13
  * Custom component for the toolbar rendered above the views.
14
14
  * @default DatePickerToolbar
15
15
  */
16
16
  toolbar?: React.JSXElementConstructor<DatePickerToolbarProps<TDate>>;
17
17
  }
18
- export interface BaseDatePickerSlotProps<TDate> extends DateCalendarSlotProps<TDate> {
18
+ export interface BaseDatePickerSlotProps<TDate extends PickerValidDate> extends DateCalendarSlotProps<TDate> {
19
19
  toolbar?: ExportedDatePickerToolbarProps;
20
20
  }
21
- export interface BaseDatePickerProps<TDate> extends BasePickerInputProps<TDate | null, TDate, DateView, DateValidationError>, ExportedDateCalendarProps<TDate> {
21
+ export interface BaseDatePickerProps<TDate extends PickerValidDate> extends BasePickerInputProps<TDate | null, TDate, DateView, DateValidationError>, ExportedDateCalendarProps<TDate> {
22
22
  /**
23
23
  * Overridable component slots.
24
24
  * @default {}
@@ -36,6 +36,6 @@ export interface BaseDatePickerProps<TDate> extends BasePickerInputProps<TDate |
36
36
  */
37
37
  viewRenderers?: Partial<PickerViewRendererLookup<TDate | null, DateView, DateViewRendererProps<TDate, DateView>, {}>>;
38
38
  }
39
- type UseDatePickerDefaultizedProps<TDate, Props extends BaseDatePickerProps<TDate>> = LocalizedComponent<TDate, DefaultizedProps<Props, 'views' | 'openTo' | keyof BaseDateValidationProps<TDate>>>;
40
- export declare function useDatePickerDefaultizedProps<TDate, Props extends BaseDatePickerProps<TDate>>(props: Props, name: string): UseDatePickerDefaultizedProps<TDate, Props>;
39
+ type UseDatePickerDefaultizedProps<TDate extends PickerValidDate, Props extends BaseDatePickerProps<TDate>> = LocalizedComponent<TDate, DefaultizedProps<Props, 'views' | 'openTo' | keyof BaseDateValidationProps<TDate>>>;
40
+ export declare function useDatePickerDefaultizedProps<TDate extends PickerValidDate, Props extends BaseDatePickerProps<TDate>>(props: Props, name: string): UseDatePickerDefaultizedProps<TDate, Props>;
41
41
  export {};
@@ -1,6 +1,7 @@
1
1
  import * as React from 'react';
2
2
  import { DateTimeFieldProps } from './DateTimeField.types';
3
- type DateTimeFieldComponent = (<TDate>(props: DateTimeFieldProps<TDate> & React.RefAttributes<HTMLDivElement>) => React.JSX.Element) & {
3
+ import { PickerValidDate } from '../models';
4
+ type DateTimeFieldComponent = (<TDate extends PickerValidDate>(props: DateTimeFieldProps<TDate> & React.RefAttributes<HTMLDivElement>) => React.JSX.Element) & {
4
5
  propTypes?: any;
5
6
  };
6
7
  /**
@@ -89,7 +89,7 @@ process.env.NODE_ENV !== "production" ? DateTimeField.propTypes = {
89
89
  /**
90
90
  * The default value. Use when the component is not controlled.
91
91
  */
92
- defaultValue: PropTypes.any,
92
+ defaultValue: PropTypes.object,
93
93
  /**
94
94
  * If `true`, the component is disabled.
95
95
  * @default false
@@ -181,29 +181,29 @@ process.env.NODE_ENV !== "production" ? DateTimeField.propTypes = {
181
181
  /**
182
182
  * Maximal selectable date.
183
183
  */
184
- maxDate: PropTypes.any,
184
+ maxDate: PropTypes.object,
185
185
  /**
186
186
  * Maximal selectable moment of time with binding to date, to set max time in each day use `maxTime`.
187
187
  */
188
- maxDateTime: PropTypes.any,
188
+ maxDateTime: PropTypes.object,
189
189
  /**
190
190
  * Maximal selectable time.
191
191
  * The date part of the object will be ignored unless `props.disableIgnoringDatePartForTimeValidation === true`.
192
192
  */
193
- maxTime: PropTypes.any,
193
+ maxTime: PropTypes.object,
194
194
  /**
195
195
  * Minimal selectable date.
196
196
  */
197
- minDate: PropTypes.any,
197
+ minDate: PropTypes.object,
198
198
  /**
199
199
  * Minimal selectable moment of time with binding to date, to set min time in each day use `minTime`.
200
200
  */
201
- minDateTime: PropTypes.any,
201
+ minDateTime: PropTypes.object,
202
202
  /**
203
203
  * Minimal selectable time.
204
204
  * The date part of the object will be ignored unless `props.disableIgnoringDatePartForTimeValidation === true`.
205
205
  */
206
- minTime: PropTypes.any,
206
+ minTime: PropTypes.object,
207
207
  /**
208
208
  * Step over minutes.
209
209
  * @default 1
@@ -251,7 +251,7 @@ process.env.NODE_ENV !== "production" ? DateTimeField.propTypes = {
251
251
  * For example, on time fields it will be used to determine the date to set.
252
252
  * @default The closest valid date using the validation props, except callbacks such as `shouldDisableDate`. Value is rounded to the most granular section used.
253
253
  */
254
- referenceDate: PropTypes.any,
254
+ referenceDate: PropTypes.object,
255
255
  /**
256
256
  * If `true`, the label is displayed as required and the `input` element is required.
257
257
  * @default false
@@ -352,7 +352,7 @@ process.env.NODE_ENV !== "production" ? DateTimeField.propTypes = {
352
352
  * The selected value.
353
353
  * Used when the component is controlled.
354
354
  */
355
- value: PropTypes.any,
355
+ value: PropTypes.object,
356
356
  /**
357
357
  * The variant to use.
358
358
  * @default 'outlined'
@@ -1,22 +1,22 @@
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 { DateTimeValidationError, FieldSection } from '../models';
4
+ import { DateTimeValidationError, FieldSection, PickerValidDate } from '../models';
5
5
  import { UseFieldInternalProps } from '../internals/hooks/useField';
6
6
  import { DefaultizedProps, MakeOptional } from '../internals/models/helpers';
7
7
  import { BaseDateValidationProps, BaseTimeValidationProps, DateTimeValidationProps, DayValidationProps, MonthValidationProps, TimeValidationProps, YearValidationProps } from '../internals/models/validation';
8
8
  import { FieldsTextFieldProps } from '../internals/models/fields';
9
9
  import { UseClearableFieldSlots, UseClearableFieldSlotProps } from '../hooks/useClearableField';
10
- export interface UseDateTimeFieldProps<TDate> extends MakeOptional<UseFieldInternalProps<TDate | null, TDate, FieldSection, DateTimeValidationError>, 'format'>, DayValidationProps<TDate>, MonthValidationProps<TDate>, YearValidationProps<TDate>, BaseDateValidationProps<TDate>, TimeValidationProps<TDate>, BaseTimeValidationProps, DateTimeValidationProps<TDate> {
10
+ export interface UseDateTimeFieldProps<TDate extends PickerValidDate> extends MakeOptional<UseFieldInternalProps<TDate | null, TDate, FieldSection, DateTimeValidationError>, 'format'>, DayValidationProps<TDate>, MonthValidationProps<TDate>, YearValidationProps<TDate>, BaseDateValidationProps<TDate>, TimeValidationProps<TDate>, BaseTimeValidationProps, DateTimeValidationProps<TDate> {
11
11
  /**
12
12
  * 12h/24h view for hour selection clock.
13
13
  * @default `utils.is12HourCycleInCurrentLocale()`
14
14
  */
15
15
  ampm?: boolean;
16
16
  }
17
- export type UseDateTimeFieldDefaultizedProps<TDate> = DefaultizedProps<UseDateTimeFieldProps<TDate>, keyof BaseDateValidationProps<any> | keyof BaseTimeValidationProps | 'format'>;
18
- export type UseDateTimeFieldComponentProps<TDate, TChildProps extends {}> = Omit<TChildProps, keyof UseDateTimeFieldProps<TDate>> & UseDateTimeFieldProps<TDate>;
19
- export interface DateTimeFieldProps<TDate> extends UseDateTimeFieldComponentProps<TDate, FieldsTextFieldProps> {
17
+ export type UseDateTimeFieldDefaultizedProps<TDate extends PickerValidDate> = DefaultizedProps<UseDateTimeFieldProps<TDate>, keyof BaseDateValidationProps<any> | keyof BaseTimeValidationProps | 'format'>;
18
+ export type UseDateTimeFieldComponentProps<TDate extends PickerValidDate, TChildProps extends {}> = Omit<TChildProps, keyof UseDateTimeFieldProps<TDate>> & UseDateTimeFieldProps<TDate>;
19
+ export interface DateTimeFieldProps<TDate extends PickerValidDate> extends UseDateTimeFieldComponentProps<TDate, FieldsTextFieldProps> {
20
20
  /**
21
21
  * Overridable component slots.
22
22
  * @default {}
@@ -28,7 +28,7 @@ export interface DateTimeFieldProps<TDate> extends UseDateTimeFieldComponentProp
28
28
  */
29
29
  slotProps?: DateTimeFieldSlotProps<TDate>;
30
30
  }
31
- export type DateTimeFieldOwnerState<TDate> = DateTimeFieldProps<TDate>;
31
+ export type DateTimeFieldOwnerState<TDate extends PickerValidDate> = DateTimeFieldProps<TDate>;
32
32
  export interface DateTimeFieldSlots extends UseClearableFieldSlots {
33
33
  /**
34
34
  * Form control with an input to render the value.
@@ -37,6 +37,6 @@ export interface DateTimeFieldSlots extends UseClearableFieldSlots {
37
37
  */
38
38
  textField?: React.ElementType;
39
39
  }
40
- export interface DateTimeFieldSlotProps<TDate> extends UseClearableFieldSlotProps {
40
+ export interface DateTimeFieldSlotProps<TDate extends PickerValidDate> extends UseClearableFieldSlotProps {
41
41
  textField?: SlotComponentProps<typeof TextField, {}, DateTimeFieldOwnerState<TDate>>;
42
42
  }
@@ -1,2 +1,3 @@
1
1
  import { UseDateTimeFieldProps, UseDateTimeFieldComponentProps } from './DateTimeField.types';
2
- export declare const useDateTimeField: <TDate, TChildProps extends {}>(inProps: UseDateTimeFieldComponentProps<TDate, TChildProps>) => import("../internals/hooks/useField").UseFieldResponse<Omit<TChildProps & Omit<UseDateTimeFieldProps<TDate>, "format" | "disableFuture" | "disablePast" | "maxDate" | "minDate"> & Required<Pick<UseDateTimeFieldProps<TDate>, "format" | "disableFuture" | "disablePast" | "maxDate" | "minDate">>, keyof UseDateTimeFieldProps<any>>>;
2
+ import { PickerValidDate } from '../models';
3
+ export declare const useDateTimeField: <TDate extends PickerValidDate, TChildProps extends {}>(inProps: UseDateTimeFieldComponentProps<TDate, TChildProps>) => import("../internals/hooks/useField").UseFieldResponse<Omit<TChildProps & Omit<UseDateTimeFieldProps<TDate>, "format" | "disableFuture" | "disablePast" | "maxDate" | "minDate"> & Required<Pick<UseDateTimeFieldProps<TDate>, "format" | "disableFuture" | "disablePast" | "maxDate" | "minDate">>, keyof UseDateTimeFieldProps<any>>>;
@@ -1,6 +1,7 @@
1
1
  import * as React from 'react';
2
2
  import { DateTimePickerProps } from './DateTimePicker.types';
3
- type DateTimePickerComponent = (<TDate>(props: DateTimePickerProps<TDate> & React.RefAttributes<HTMLDivElement>) => React.JSX.Element) & {
3
+ import { PickerValidDate } from '../models';
4
+ type DateTimePickerComponent = (<TDate extends PickerValidDate>(props: DateTimePickerProps<TDate> & React.RefAttributes<HTMLDivElement>) => React.JSX.Element) & {
4
5
  propTypes?: any;
5
6
  };
6
7
  /**
@@ -82,7 +82,7 @@ process.env.NODE_ENV !== "production" ? DateTimePicker.propTypes = {
82
82
  * The default value.
83
83
  * Used when the component is not controlled.
84
84
  */
85
- defaultValue: PropTypes.any,
85
+ defaultValue: PropTypes.object,
86
86
  /**
87
87
  * CSS media query when `Mobile` mode will be changed to `Desktop`.
88
88
  * @default '@media (pointer: fine)'
@@ -162,29 +162,29 @@ process.env.NODE_ENV !== "production" ? DateTimePicker.propTypes = {
162
162
  /**
163
163
  * Maximal selectable date.
164
164
  */
165
- maxDate: PropTypes.any,
165
+ maxDate: PropTypes.object,
166
166
  /**
167
167
  * Maximal selectable moment of time with binding to date, to set max time in each day use `maxTime`.
168
168
  */
169
- maxDateTime: PropTypes.any,
169
+ maxDateTime: PropTypes.object,
170
170
  /**
171
171
  * Maximal selectable time.
172
172
  * The date part of the object will be ignored unless `props.disableIgnoringDatePartForTimeValidation === true`.
173
173
  */
174
- maxTime: PropTypes.any,
174
+ maxTime: PropTypes.object,
175
175
  /**
176
176
  * Minimal selectable date.
177
177
  */
178
- minDate: PropTypes.any,
178
+ minDate: PropTypes.object,
179
179
  /**
180
180
  * Minimal selectable moment of time with binding to date, to set min time in each day use `minTime`.
181
181
  */
182
- minDateTime: PropTypes.any,
182
+ minDateTime: PropTypes.object,
183
183
  /**
184
184
  * Minimal selectable time.
185
185
  * The date part of the object will be ignored unless `props.disableIgnoringDatePartForTimeValidation === true`.
186
186
  */
187
- minTime: PropTypes.any,
187
+ minTime: PropTypes.object,
188
188
  /**
189
189
  * Step over minutes.
190
190
  * @default 1
@@ -281,7 +281,7 @@ process.env.NODE_ENV !== "production" ? DateTimePicker.propTypes = {
281
281
  * The date used to generate the new value when both `value` and `defaultValue` are empty.
282
282
  * @default The closest valid date-time using the validation props, except callbacks like `shouldDisable<...>`.
283
283
  */
284
- referenceDate: PropTypes.any,
284
+ referenceDate: PropTypes.object,
285
285
  /**
286
286
  * Component displaying when passed `loading` true.
287
287
  * @returns {React.ReactNode} The node to render when loading.
@@ -391,7 +391,7 @@ process.env.NODE_ENV !== "production" ? DateTimePicker.propTypes = {
391
391
  * The selected value.
392
392
  * Used when the component is controlled.
393
393
  */
394
- value: PropTypes.any,
394
+ value: PropTypes.object,
395
395
  /**
396
396
  * The visible view.
397
397
  * Used when the component view is controlled.
@@ -1,11 +1,12 @@
1
1
  import { DesktopDateTimePickerProps, DesktopDateTimePickerSlots, DesktopDateTimePickerSlotProps } from '../DesktopDateTimePicker';
2
2
  import { DateOrTimeViewWithMeridiem } from '../internals/models';
3
3
  import { MobileDateTimePickerProps, MobileDateTimePickerSlots, MobileDateTimePickerSlotProps } from '../MobileDateTimePicker';
4
- export interface DateTimePickerSlots<TDate> extends DesktopDateTimePickerSlots<TDate>, MobileDateTimePickerSlots<TDate, DateOrTimeViewWithMeridiem> {
4
+ import { PickerValidDate } from '../models';
5
+ export interface DateTimePickerSlots<TDate extends PickerValidDate> extends DesktopDateTimePickerSlots<TDate>, MobileDateTimePickerSlots<TDate, DateOrTimeViewWithMeridiem> {
5
6
  }
6
- export interface DateTimePickerSlotProps<TDate> extends DesktopDateTimePickerSlotProps<TDate>, MobileDateTimePickerSlotProps<TDate, DateOrTimeViewWithMeridiem> {
7
+ export interface DateTimePickerSlotProps<TDate extends PickerValidDate> extends DesktopDateTimePickerSlotProps<TDate>, MobileDateTimePickerSlotProps<TDate, DateOrTimeViewWithMeridiem> {
7
8
  }
8
- export interface DateTimePickerProps<TDate> extends DesktopDateTimePickerProps<TDate>, Omit<MobileDateTimePickerProps<TDate, DateOrTimeViewWithMeridiem>, 'views'> {
9
+ export interface DateTimePickerProps<TDate extends PickerValidDate> extends DesktopDateTimePickerProps<TDate>, Omit<MobileDateTimePickerProps<TDate, DateOrTimeViewWithMeridiem>, 'views'> {
9
10
  /**
10
11
  * CSS media query when `Mobile` mode will be changed to `Desktop`.
11
12
  * @default '@media (pointer: fine)'
@@ -3,11 +3,12 @@ import { BaseToolbarProps, ExportedBaseToolbarProps } from '../internals/models/
3
3
  import { DateTimePickerToolbarClasses } from './dateTimePickerToolbarClasses';
4
4
  import { DateOrTimeViewWithMeridiem, WrapperVariant } from '../internals/models';
5
5
  import { MakeOptional } from '../internals/models/helpers';
6
+ import { PickerValidDate } from '../models';
6
7
  export interface ExportedDateTimePickerToolbarProps extends ExportedBaseToolbarProps {
7
8
  ampm?: boolean;
8
9
  ampmInClock?: boolean;
9
10
  }
10
- export interface DateTimePickerToolbarProps<TDate> extends ExportedDateTimePickerToolbarProps, MakeOptional<BaseToolbarProps<TDate | null, DateOrTimeViewWithMeridiem>, 'view'> {
11
+ export interface DateTimePickerToolbarProps<TDate extends PickerValidDate> extends ExportedDateTimePickerToolbarProps, MakeOptional<BaseToolbarProps<TDate | null, DateOrTimeViewWithMeridiem>, 'view'> {
11
12
  /**
12
13
  * Override or extend the styles applied to the component.
13
14
  */
@@ -28,7 +29,7 @@ export interface DateTimePickerToolbarProps<TDate> extends ExportedDateTimePicke
28
29
  *
29
30
  * - [DateTimePickerToolbar API](https://mui.com/x/api/date-pickers/date-time-picker-toolbar/)
30
31
  */
31
- declare function DateTimePickerToolbar<TDate extends unknown>(inProps: DateTimePickerToolbarProps<TDate>): React.JSX.Element;
32
+ declare function DateTimePickerToolbar<TDate extends PickerValidDate>(inProps: DateTimePickerToolbarProps<TDate>): React.JSX.Element;
32
33
  declare namespace DateTimePickerToolbar {
33
34
  var propTypes: any;
34
35
  }
@@ -352,7 +352,7 @@ process.env.NODE_ENV !== "production" ? DateTimePickerToolbar.propTypes = {
352
352
  */
353
353
  toolbarTitle: PropTypes.node,
354
354
  toolbarVariant: PropTypes.oneOf(['desktop', 'mobile']),
355
- value: PropTypes.any,
355
+ value: PropTypes.object,
356
356
  /**
357
357
  * Currently visible picker view.
358
358
  */
@@ -1,6 +1,6 @@
1
1
  import * as React from 'react';
2
2
  import { DefaultizedProps } from '../internals/models/helpers';
3
- import { DateTimeValidationError } from '../models';
3
+ import { DateTimeValidationError, PickerValidDate } from '../models';
4
4
  import { DateCalendarSlots, DateCalendarSlotProps, ExportedDateCalendarProps } from '../DateCalendar/DateCalendar.types';
5
5
  import { TimeClockSlots, TimeClockSlotProps } from '../TimeClock/TimeClock.types';
6
6
  import { BasePickerInputProps } from '../internals/models/props/basePickerProps';
@@ -13,7 +13,7 @@ import { DateViewRendererProps } from '../dateViewRenderers';
13
13
  import { TimeViewRendererProps } from '../timeViewRenderers';
14
14
  import { BaseClockProps, ExportedBaseClockProps } from '../internals/models/props/clock';
15
15
  import { DateOrTimeViewWithMeridiem, TimeViewWithMeridiem } from '../internals/models';
16
- export interface BaseDateTimePickerSlots<TDate> extends DateCalendarSlots<TDate>, TimeClockSlots {
16
+ export interface BaseDateTimePickerSlots<TDate extends PickerValidDate> extends DateCalendarSlots<TDate>, TimeClockSlots {
17
17
  /**
18
18
  * Tabs enabling toggling between date and time pickers.
19
19
  * @default DateTimePickerTabs
@@ -25,7 +25,7 @@ export interface BaseDateTimePickerSlots<TDate> extends DateCalendarSlots<TDate>
25
25
  */
26
26
  toolbar?: React.JSXElementConstructor<DateTimePickerToolbarProps<TDate>>;
27
27
  }
28
- export interface BaseDateTimePickerSlotProps<TDate> extends DateCalendarSlotProps<TDate>, TimeClockSlotProps {
28
+ export interface BaseDateTimePickerSlotProps<TDate extends PickerValidDate> extends DateCalendarSlotProps<TDate>, TimeClockSlotProps {
29
29
  /**
30
30
  * Props passed down to the tabs component.
31
31
  */
@@ -35,7 +35,7 @@ export interface BaseDateTimePickerSlotProps<TDate> extends DateCalendarSlotProp
35
35
  */
36
36
  toolbar?: ExportedDateTimePickerToolbarProps;
37
37
  }
38
- export interface BaseDateTimePickerProps<TDate, TView extends DateOrTimeViewWithMeridiem> extends BasePickerInputProps<TDate | null, TDate, TView, DateTimeValidationError>, Omit<ExportedDateCalendarProps<TDate>, 'onViewChange'>, ExportedBaseClockProps<TDate>, DateTimeValidationProps<TDate> {
38
+ export interface BaseDateTimePickerProps<TDate extends PickerValidDate, TView extends DateOrTimeViewWithMeridiem> extends BasePickerInputProps<TDate | null, TDate, TView, DateTimeValidationError>, Omit<ExportedDateCalendarProps<TDate>, 'onViewChange'>, ExportedBaseClockProps<TDate>, DateTimeValidationProps<TDate> {
39
39
  /**
40
40
  * Display ampm controls under the clock (instead of in the toolbar).
41
41
  * @default true on desktop, false on mobile
@@ -58,6 +58,6 @@ export interface BaseDateTimePickerProps<TDate, TView extends DateOrTimeViewWith
58
58
  */
59
59
  viewRenderers?: Partial<PickerViewRendererLookup<TDate | null, TView, DateViewRendererProps<TDate, TView> & TimeViewRendererProps<TimeViewWithMeridiem, BaseClockProps<TDate, TimeViewWithMeridiem>>, {}>>;
60
60
  }
61
- type UseDateTimePickerDefaultizedProps<TDate, TView extends DateOrTimeViewWithMeridiem, Props extends BaseDateTimePickerProps<TDate, TView>> = LocalizedComponent<TDate, DefaultizedProps<Props, 'views' | 'openTo' | 'orientation' | 'ampm' | keyof BaseDateValidationProps<TDate> | keyof BaseTimeValidationProps>>;
62
- export declare function useDateTimePickerDefaultizedProps<TDate, TView extends DateOrTimeViewWithMeridiem, Props extends BaseDateTimePickerProps<TDate, TView>>(props: Props, name: string): UseDateTimePickerDefaultizedProps<TDate, TView, Props>;
61
+ type UseDateTimePickerDefaultizedProps<TDate extends PickerValidDate, TView extends DateOrTimeViewWithMeridiem, Props extends BaseDateTimePickerProps<TDate, TView>> = LocalizedComponent<TDate, DefaultizedProps<Props, 'views' | 'openTo' | 'orientation' | 'ampm' | keyof BaseDateValidationProps<TDate> | keyof BaseTimeValidationProps>>;
62
+ export declare function useDateTimePickerDefaultizedProps<TDate extends PickerValidDate, TView extends DateOrTimeViewWithMeridiem, Props extends BaseDateTimePickerProps<TDate, TView>>(props: Props, name: string): UseDateTimePickerDefaultizedProps<TDate, TView, Props>;
63
63
  export {};
@@ -1,6 +1,7 @@
1
1
  import * as React from 'react';
2
2
  import { DesktopDatePickerProps } from './DesktopDatePicker.types';
3
- type DesktopDatePickerComponent = (<TDate>(props: DesktopDatePickerProps<TDate> & React.RefAttributes<HTMLDivElement>) => React.JSX.Element) & {
3
+ import { PickerValidDate } from '../models';
4
+ type DesktopDatePickerComponent = (<TDate extends PickerValidDate>(props: DesktopDatePickerProps<TDate> & React.RefAttributes<HTMLDivElement>) => React.JSX.Element) & {
4
5
  propTypes?: any;
5
6
  };
6
7
  /**
@@ -97,7 +97,7 @@ DesktopDatePicker.propTypes = {
97
97
  * The default value.
98
98
  * Used when the component is not controlled.
99
99
  */
100
- defaultValue: PropTypes.any,
100
+ defaultValue: PropTypes.object,
101
101
  /**
102
102
  * If `true`, the picker and text field are disabled.
103
103
  * @default false
@@ -166,11 +166,11 @@ DesktopDatePicker.propTypes = {
166
166
  /**
167
167
  * Maximal selectable date.
168
168
  */
169
- maxDate: PropTypes.any,
169
+ maxDate: PropTypes.object,
170
170
  /**
171
171
  * Minimal selectable date.
172
172
  */
173
- minDate: PropTypes.any,
173
+ minDate: PropTypes.object,
174
174
  /**
175
175
  * Months rendered per row.
176
176
  * @default 3
@@ -262,7 +262,7 @@ DesktopDatePicker.propTypes = {
262
262
  * The date used to generate the new value when both `value` and `defaultValue` are empty.
263
263
  * @default The closest valid date-time using the validation props, except callbacks like `shouldDisable<...>`.
264
264
  */
265
- referenceDate: PropTypes.any,
265
+ referenceDate: PropTypes.object,
266
266
  /**
267
267
  * Component displaying when passed `loading` true.
268
268
  * @returns {React.ReactNode} The node to render when loading.
@@ -343,7 +343,7 @@ DesktopDatePicker.propTypes = {
343
343
  * The selected value.
344
344
  * Used when the component is controlled.
345
345
  */
346
- value: PropTypes.any,
346
+ value: PropTypes.object,
347
347
  /**
348
348
  * The visible view.
349
349
  * Used when the component view is controlled.
@@ -1,12 +1,12 @@
1
1
  import { UseDesktopPickerSlots, ExportedUseDesktopPickerSlotProps, DesktopOnlyPickerProps } from '../internals/hooks/useDesktopPicker';
2
2
  import { BaseDatePickerProps, BaseDatePickerSlots, BaseDatePickerSlotProps } from '../DatePicker/shared';
3
3
  import { MakeOptional } from '../internals/models/helpers';
4
- import { DateView } from '../models';
5
- export interface DesktopDatePickerSlots<TDate> extends BaseDatePickerSlots<TDate>, MakeOptional<UseDesktopPickerSlots<TDate, DateView>, 'field' | 'openPickerIcon'> {
4
+ import { DateView, PickerValidDate } from '../models';
5
+ export interface DesktopDatePickerSlots<TDate extends PickerValidDate> extends BaseDatePickerSlots<TDate>, MakeOptional<UseDesktopPickerSlots<TDate, DateView>, 'field' | 'openPickerIcon'> {
6
6
  }
7
- export interface DesktopDatePickerSlotProps<TDate> extends BaseDatePickerSlotProps<TDate>, ExportedUseDesktopPickerSlotProps<TDate, DateView> {
7
+ export interface DesktopDatePickerSlotProps<TDate extends PickerValidDate> extends BaseDatePickerSlotProps<TDate>, ExportedUseDesktopPickerSlotProps<TDate, DateView> {
8
8
  }
9
- export interface DesktopDatePickerProps<TDate> extends BaseDatePickerProps<TDate>, DesktopOnlyPickerProps<TDate> {
9
+ export interface DesktopDatePickerProps<TDate extends PickerValidDate> extends BaseDatePickerProps<TDate>, DesktopOnlyPickerProps<TDate> {
10
10
  /**
11
11
  * Years rendered per row.
12
12
  * @default 4
@@ -1,6 +1,7 @@
1
1
  import * as React from 'react';
2
2
  import { DesktopDateTimePickerProps } from './DesktopDateTimePicker.types';
3
- type DesktopDateTimePickerComponent = (<TDate>(props: DesktopDateTimePickerProps<TDate> & React.RefAttributes<HTMLDivElement>) => React.JSX.Element) & {
3
+ import { PickerValidDate } from '../models';
4
+ type DesktopDateTimePickerComponent = (<TDate extends PickerValidDate>(props: DesktopDateTimePickerProps<TDate> & React.RefAttributes<HTMLDivElement>) => React.JSX.Element) & {
4
5
  propTypes?: any;
5
6
  };
6
7
  /**
@@ -145,7 +145,7 @@ DesktopDateTimePicker.propTypes = {
145
145
  * The default value.
146
146
  * Used when the component is not controlled.
147
147
  */
148
- defaultValue: PropTypes.any,
148
+ defaultValue: PropTypes.object,
149
149
  /**
150
150
  * If `true`, the picker and text field are disabled.
151
151
  * @default false
@@ -219,29 +219,29 @@ DesktopDateTimePicker.propTypes = {
219
219
  /**
220
220
  * Maximal selectable date.
221
221
  */
222
- maxDate: PropTypes.any,
222
+ maxDate: PropTypes.object,
223
223
  /**
224
224
  * Maximal selectable moment of time with binding to date, to set max time in each day use `maxTime`.
225
225
  */
226
- maxDateTime: PropTypes.any,
226
+ maxDateTime: PropTypes.object,
227
227
  /**
228
228
  * Maximal selectable time.
229
229
  * The date part of the object will be ignored unless `props.disableIgnoringDatePartForTimeValidation === true`.
230
230
  */
231
- maxTime: PropTypes.any,
231
+ maxTime: PropTypes.object,
232
232
  /**
233
233
  * Minimal selectable date.
234
234
  */
235
- minDate: PropTypes.any,
235
+ minDate: PropTypes.object,
236
236
  /**
237
237
  * Minimal selectable moment of time with binding to date, to set min time in each day use `minTime`.
238
238
  */
239
- minDateTime: PropTypes.any,
239
+ minDateTime: PropTypes.object,
240
240
  /**
241
241
  * Minimal selectable time.
242
242
  * The date part of the object will be ignored unless `props.disableIgnoringDatePartForTimeValidation === true`.
243
243
  */
244
- minTime: PropTypes.any,
244
+ minTime: PropTypes.object,
245
245
  /**
246
246
  * Step over minutes.
247
247
  * @default 1
@@ -338,7 +338,7 @@ DesktopDateTimePicker.propTypes = {
338
338
  * The date used to generate the new value when both `value` and `defaultValue` are empty.
339
339
  * @default The closest valid date-time using the validation props, except callbacks like `shouldDisable<...>`.
340
340
  */
341
- referenceDate: PropTypes.any,
341
+ referenceDate: PropTypes.object,
342
342
  /**
343
343
  * Component displaying when passed `loading` true.
344
344
  * @returns {React.ReactNode} The node to render when loading.
@@ -448,7 +448,7 @@ DesktopDateTimePicker.propTypes = {
448
448
  * The selected value.
449
449
  * Used when the component is controlled.
450
450
  */
451
- value: PropTypes.any,
451
+ value: PropTypes.object,
452
452
  /**
453
453
  * The visible view.
454
454
  * Used when the component view is controlled.
@@ -1,16 +1,16 @@
1
1
  import { UseDesktopPickerSlots, ExportedUseDesktopPickerSlotProps, DesktopOnlyPickerProps } from '../internals/hooks/useDesktopPicker';
2
2
  import { BaseDateTimePickerProps, BaseDateTimePickerSlots, BaseDateTimePickerSlotProps } from '../DateTimePicker/shared';
3
3
  import { MakeOptional } from '../internals/models/helpers';
4
- import { DateOrTimeView } from '../models';
4
+ import { DateOrTimeView, PickerValidDate } from '../models';
5
5
  import { DesktopOnlyTimePickerProps } from '../internals/models/props/clock';
6
6
  import { DateOrTimeViewWithMeridiem } from '../internals/models';
7
7
  import { MultiSectionDigitalClockSlots, MultiSectionDigitalClockSlotProps } from '../MultiSectionDigitalClock';
8
8
  import { DigitalClockSlots, DigitalClockSlotProps } from '../DigitalClock';
9
- export interface DesktopDateTimePickerSlots<TDate> extends BaseDateTimePickerSlots<TDate>, MakeOptional<UseDesktopPickerSlots<TDate, DateOrTimeViewWithMeridiem>, 'field' | 'openPickerIcon'>, DigitalClockSlots, MultiSectionDigitalClockSlots {
9
+ export interface DesktopDateTimePickerSlots<TDate extends PickerValidDate> extends BaseDateTimePickerSlots<TDate>, MakeOptional<UseDesktopPickerSlots<TDate, DateOrTimeViewWithMeridiem>, 'field' | 'openPickerIcon'>, DigitalClockSlots, MultiSectionDigitalClockSlots {
10
10
  }
11
- export interface DesktopDateTimePickerSlotProps<TDate> extends BaseDateTimePickerSlotProps<TDate>, ExportedUseDesktopPickerSlotProps<TDate, DateOrTimeViewWithMeridiem>, DigitalClockSlotProps, MultiSectionDigitalClockSlotProps {
11
+ export interface DesktopDateTimePickerSlotProps<TDate extends PickerValidDate> extends BaseDateTimePickerSlotProps<TDate>, ExportedUseDesktopPickerSlotProps<TDate, DateOrTimeViewWithMeridiem>, DigitalClockSlotProps, MultiSectionDigitalClockSlotProps {
12
12
  }
13
- export interface DesktopDateTimePickerProps<TDate> extends BaseDateTimePickerProps<TDate, DateOrTimeViewWithMeridiem>, DesktopOnlyPickerProps<TDate>, DesktopOnlyTimePickerProps<TDate> {
13
+ export interface DesktopDateTimePickerProps<TDate extends PickerValidDate> extends BaseDateTimePickerProps<TDate, DateOrTimeViewWithMeridiem>, DesktopOnlyPickerProps<TDate>, DesktopOnlyTimePickerProps<TDate> {
14
14
  /**
15
15
  * Available views.
16
16
  */
@@ -1,6 +1,7 @@
1
1
  import * as React from 'react';
2
2
  import { DesktopTimePickerProps } from './DesktopTimePicker.types';
3
- type DesktopTimePickerComponent = (<TDate>(props: DesktopTimePickerProps<TDate> & React.RefAttributes<HTMLDivElement>) => React.JSX.Element) & {
3
+ import { PickerValidDate } from '../models';
4
+ type DesktopTimePickerComponent = (<TDate extends PickerValidDate>(props: DesktopTimePickerProps<TDate> & React.RefAttributes<HTMLDivElement>) => React.JSX.Element) & {
4
5
  propTypes?: any;
5
6
  };
6
7
  /**