@mui/x-date-pickers 7.0.0-beta.0 → 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 (283) 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 +406 -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/TimePicker/timePickerToolbarClasses.d.ts +8 -0
  103. package/YearCalendar/YearCalendar.d.ts +2 -1
  104. package/YearCalendar/YearCalendar.js +5 -5
  105. package/YearCalendar/YearCalendar.types.d.ts +2 -2
  106. package/dateTimeViewRenderers/dateTimeViewRenderers.d.ts +3 -2
  107. package/dateViewRenderers/dateViewRenderers.d.ts +3 -3
  108. package/index.js +1 -1
  109. package/internals/hooks/date-helpers-hooks.d.ts +5 -5
  110. package/internals/hooks/useClockReferenceDate.d.ts +3 -3
  111. package/internals/hooks/useDesktopPicker/useDesktopPicker.d.ts +2 -1
  112. package/internals/hooks/useDesktopPicker/useDesktopPicker.types.d.ts +7 -7
  113. package/internals/hooks/useField/useField.d.ts +2 -2
  114. package/internals/hooks/useField/useField.types.d.ts +7 -7
  115. package/internals/hooks/useField/useField.utils.d.ts +13 -13
  116. package/internals/hooks/useField/useFieldCharacterEditing.d.ts +3 -3
  117. package/internals/hooks/useField/useFieldState.d.ts +2 -2
  118. package/internals/hooks/useMobilePicker/useMobilePicker.d.ts +2 -1
  119. package/internals/hooks/useMobilePicker/useMobilePicker.types.d.ts +7 -7
  120. package/internals/hooks/usePicker/usePicker.d.ts +2 -2
  121. package/internals/hooks/usePicker/usePicker.types.d.ts +4 -4
  122. package/internals/hooks/usePicker/usePickerValue.d.ts +2 -2
  123. package/internals/hooks/usePicker/usePickerValue.types.d.ts +5 -5
  124. package/internals/hooks/usePicker/usePickerViews.d.ts +5 -5
  125. package/internals/hooks/useStaticPicker/useStaticPicker.d.ts +2 -1
  126. package/internals/hooks/useStaticPicker/useStaticPicker.types.d.ts +6 -6
  127. package/internals/hooks/useUtils.d.ts +6 -6
  128. package/internals/hooks/useValidation.d.ts +3 -2
  129. package/internals/hooks/useValueWithTimezone.d.ts +3 -3
  130. package/internals/hooks/useViews.d.ts +2 -1
  131. package/internals/models/fields.d.ts +2 -2
  132. package/internals/models/props/basePickerProps.d.ts +3 -2
  133. package/internals/models/props/clock.d.ts +4 -4
  134. package/internals/models/validation.d.ts +7 -7
  135. package/internals/utils/date-time-utils.d.ts +5 -5
  136. package/internals/utils/date-utils.d.ts +12 -12
  137. package/internals/utils/getDefaultReferenceDate.d.ts +3 -3
  138. package/internals/utils/time-utils.d.ts +6 -6
  139. package/internals/utils/validation/validateDate.d.ts +2 -2
  140. package/internals/utils/validation/validateDateTime.d.ts +2 -2
  141. package/internals/utils/validation/validateTime.d.ts +2 -2
  142. package/internals/utils/valueManagers.d.ts +2 -2
  143. package/legacy/AdapterDateFnsJalali/AdapterDateFnsJalali.js +0 -1
  144. package/legacy/AdapterDayjs/AdapterDayjs.js +0 -1
  145. package/legacy/AdapterLuxon/AdapterLuxon.js +1 -2
  146. package/legacy/AdapterMoment/AdapterMoment.js +0 -1
  147. package/legacy/AdapterMomentHijri/AdapterMomentHijri.js +0 -1
  148. package/legacy/AdapterMomentJalaali/AdapterMomentJalaali.js +0 -1
  149. package/legacy/DateCalendar/DateCalendar.js +5 -5
  150. package/legacy/DateField/DateField.js +5 -5
  151. package/legacy/DatePicker/DatePicker.js +5 -5
  152. package/legacy/DatePicker/DatePickerToolbar.js +1 -1
  153. package/legacy/DateTimeField/DateTimeField.js +9 -9
  154. package/legacy/DateTimePicker/DateTimePicker.js +9 -9
  155. package/legacy/DateTimePicker/DateTimePickerToolbar.js +1 -1
  156. package/legacy/DesktopDatePicker/DesktopDatePicker.js +5 -5
  157. package/legacy/DesktopDateTimePicker/DesktopDateTimePicker.js +9 -9
  158. package/legacy/DesktopTimePicker/DesktopTimePicker.js +5 -5
  159. package/legacy/DigitalClock/DigitalClock.js +5 -5
  160. package/legacy/MobileDatePicker/MobileDatePicker.js +5 -5
  161. package/legacy/MobileDateTimePicker/MobileDateTimePicker.js +9 -9
  162. package/legacy/MobileTimePicker/MobileTimePicker.js +5 -5
  163. package/legacy/MonthCalendar/MonthCalendar.js +5 -5
  164. package/legacy/MultiSectionDigitalClock/MultiSectionDigitalClock.js +5 -5
  165. package/legacy/PickersCalendarHeader/PickersCalendarHeader.js +3 -3
  166. package/legacy/PickersDay/PickersDay.js +1 -1
  167. package/legacy/StaticDatePicker/StaticDatePicker.js +5 -5
  168. package/legacy/StaticDateTimePicker/StaticDateTimePicker.js +9 -9
  169. package/legacy/StaticTimePicker/StaticTimePicker.js +5 -5
  170. package/legacy/TimeClock/TimeClock.js +5 -5
  171. package/legacy/TimeField/TimeField.js +5 -5
  172. package/legacy/TimePicker/TimePicker.js +5 -5
  173. package/legacy/TimePicker/TimePickerToolbar.js +1 -1
  174. package/legacy/YearCalendar/YearCalendar.js +5 -5
  175. package/legacy/index.js +1 -1
  176. package/locales/beBY.d.ts +6 -6
  177. package/locales/caES.d.ts +6 -6
  178. package/locales/csCZ.d.ts +6 -6
  179. package/locales/daDK.d.ts +6 -6
  180. package/locales/deDE.d.ts +6 -6
  181. package/locales/elGR.d.ts +6 -6
  182. package/locales/enUS.d.ts +6 -6
  183. package/locales/esES.d.ts +6 -6
  184. package/locales/eu.d.ts +6 -6
  185. package/locales/faIR.d.ts +6 -6
  186. package/locales/fiFI.d.ts +6 -6
  187. package/locales/frFR.d.ts +6 -6
  188. package/locales/heIL.d.ts +6 -6
  189. package/locales/huHU.d.ts +6 -6
  190. package/locales/isIS.d.ts +6 -6
  191. package/locales/itIT.d.ts +6 -6
  192. package/locales/jaJP.d.ts +6 -6
  193. package/locales/koKR.d.ts +6 -6
  194. package/locales/kzKZ.d.ts +6 -6
  195. package/locales/mk.d.ts +6 -6
  196. package/locales/nbNO.d.ts +6 -6
  197. package/locales/nlNL.d.ts +6 -6
  198. package/locales/plPL.d.ts +6 -6
  199. package/locales/ptBR.d.ts +6 -6
  200. package/locales/roRO.d.ts +6 -6
  201. package/locales/ruRU.d.ts +6 -6
  202. package/locales/skSK.d.ts +6 -6
  203. package/locales/svSE.d.ts +6 -6
  204. package/locales/trTR.d.ts +6 -6
  205. package/locales/ukUA.d.ts +6 -6
  206. package/locales/urPK.d.ts +6 -6
  207. package/locales/utils/getPickersLocalization.d.ts +6 -6
  208. package/locales/utils/pickersLocaleTextApi.d.ts +6 -6
  209. package/locales/viVN.d.ts +6 -6
  210. package/locales/zhCN.d.ts +6 -6
  211. package/locales/zhHK.d.ts +6 -6
  212. package/models/adapters.d.ts +2 -1
  213. package/models/fields.d.ts +3 -2
  214. package/models/pickers.d.ts +3 -0
  215. package/modern/AdapterDateFnsJalali/AdapterDateFnsJalali.js +0 -1
  216. package/modern/AdapterDayjs/AdapterDayjs.js +0 -1
  217. package/modern/AdapterLuxon/AdapterLuxon.js +1 -2
  218. package/modern/AdapterMoment/AdapterMoment.js +0 -1
  219. package/modern/AdapterMomentHijri/AdapterMomentHijri.js +0 -1
  220. package/modern/AdapterMomentJalaali/AdapterMomentJalaali.js +0 -1
  221. package/modern/DateCalendar/DateCalendar.js +5 -5
  222. package/modern/DateField/DateField.js +5 -5
  223. package/modern/DatePicker/DatePicker.js +5 -5
  224. package/modern/DatePicker/DatePickerToolbar.js +1 -1
  225. package/modern/DateTimeField/DateTimeField.js +9 -9
  226. package/modern/DateTimePicker/DateTimePicker.js +9 -9
  227. package/modern/DateTimePicker/DateTimePickerToolbar.js +1 -1
  228. package/modern/DesktopDatePicker/DesktopDatePicker.js +5 -5
  229. package/modern/DesktopDateTimePicker/DesktopDateTimePicker.js +9 -9
  230. package/modern/DesktopTimePicker/DesktopTimePicker.js +5 -5
  231. package/modern/DigitalClock/DigitalClock.js +5 -5
  232. package/modern/MobileDatePicker/MobileDatePicker.js +5 -5
  233. package/modern/MobileDateTimePicker/MobileDateTimePicker.js +9 -9
  234. package/modern/MobileTimePicker/MobileTimePicker.js +5 -5
  235. package/modern/MonthCalendar/MonthCalendar.js +5 -5
  236. package/modern/MultiSectionDigitalClock/MultiSectionDigitalClock.js +5 -5
  237. package/modern/PickersCalendarHeader/PickersCalendarHeader.js +3 -3
  238. package/modern/PickersDay/PickersDay.js +1 -1
  239. package/modern/StaticDatePicker/StaticDatePicker.js +5 -5
  240. package/modern/StaticDateTimePicker/StaticDateTimePicker.js +9 -9
  241. package/modern/StaticTimePicker/StaticTimePicker.js +5 -5
  242. package/modern/TimeClock/TimeClock.js +5 -5
  243. package/modern/TimeField/TimeField.js +5 -5
  244. package/modern/TimePicker/TimePicker.js +5 -5
  245. package/modern/TimePicker/TimePickerToolbar.js +1 -1
  246. package/modern/YearCalendar/YearCalendar.js +5 -5
  247. package/modern/index.js +1 -1
  248. package/node/AdapterDateFnsJalali/AdapterDateFnsJalali.js +0 -1
  249. package/node/AdapterDayjs/AdapterDayjs.js +0 -1
  250. package/node/AdapterLuxon/AdapterLuxon.js +1 -2
  251. package/node/AdapterMoment/AdapterMoment.js +0 -1
  252. package/node/AdapterMomentHijri/AdapterMomentHijri.js +0 -1
  253. package/node/AdapterMomentJalaali/AdapterMomentJalaali.js +0 -1
  254. package/node/DateCalendar/DateCalendar.js +5 -5
  255. package/node/DateField/DateField.js +5 -5
  256. package/node/DatePicker/DatePicker.js +5 -5
  257. package/node/DatePicker/DatePickerToolbar.js +1 -1
  258. package/node/DateTimeField/DateTimeField.js +9 -9
  259. package/node/DateTimePicker/DateTimePicker.js +9 -9
  260. package/node/DateTimePicker/DateTimePickerToolbar.js +1 -1
  261. package/node/DesktopDatePicker/DesktopDatePicker.js +5 -5
  262. package/node/DesktopDateTimePicker/DesktopDateTimePicker.js +9 -9
  263. package/node/DesktopTimePicker/DesktopTimePicker.js +5 -5
  264. package/node/DigitalClock/DigitalClock.js +5 -5
  265. package/node/MobileDatePicker/MobileDatePicker.js +5 -5
  266. package/node/MobileDateTimePicker/MobileDateTimePicker.js +9 -9
  267. package/node/MobileTimePicker/MobileTimePicker.js +5 -5
  268. package/node/MonthCalendar/MonthCalendar.js +5 -5
  269. package/node/MultiSectionDigitalClock/MultiSectionDigitalClock.js +5 -5
  270. package/node/PickersCalendarHeader/PickersCalendarHeader.js +3 -3
  271. package/node/PickersDay/PickersDay.js +1 -1
  272. package/node/StaticDatePicker/StaticDatePicker.js +5 -5
  273. package/node/StaticDateTimePicker/StaticDateTimePicker.js +9 -9
  274. package/node/StaticTimePicker/StaticTimePicker.js +5 -5
  275. package/node/TimeClock/TimeClock.js +5 -5
  276. package/node/TimeField/TimeField.js +5 -5
  277. package/node/TimePicker/TimePicker.js +5 -5
  278. package/node/TimePicker/TimePickerToolbar.js +1 -1
  279. package/node/YearCalendar/YearCalendar.js +5 -5
  280. package/node/index.js +1 -1
  281. package/package.json +5 -5
  282. package/themeAugmentation/props.d.ts +31 -31
  283. package/timeViewRenderers/timeViewRenderers.d.ts +4 -4
@@ -2,7 +2,7 @@ import { SxProps } from '@mui/system';
2
2
  import { Theme } from '@mui/material/styles';
3
3
  import { MonthCalendarClasses } from './monthCalendarClasses';
4
4
  import { BaseDateValidationProps, MonthValidationProps } from '../internals/models/validation';
5
- import { TimezoneProps } from '../models';
5
+ import { PickerValidDate, TimezoneProps } from '../models';
6
6
  export interface ExportedMonthCalendarProps {
7
7
  /**
8
8
  * Months rendered per row.
@@ -10,7 +10,7 @@ export interface ExportedMonthCalendarProps {
10
10
  */
11
11
  monthsPerRow?: 3 | 4;
12
12
  }
13
- export interface MonthCalendarProps<TDate> extends ExportedMonthCalendarProps, MonthValidationProps<TDate>, BaseDateValidationProps<TDate>, TimezoneProps {
13
+ export interface MonthCalendarProps<TDate extends PickerValidDate> extends ExportedMonthCalendarProps, MonthValidationProps<TDate>, BaseDateValidationProps<TDate>, TimezoneProps {
14
14
  autoFocus?: boolean;
15
15
  className?: string;
16
16
  /**
@@ -1,6 +1,7 @@
1
1
  import * as React from 'react';
2
2
  import { MultiSectionDigitalClockProps } from './MultiSectionDigitalClock.types';
3
- type MultiSectionDigitalClockComponent = (<TDate>(props: MultiSectionDigitalClockProps<TDate> & React.RefAttributes<HTMLDivElement>) => React.JSX.Element) & {
3
+ import { PickerValidDate } from '../models';
4
+ type MultiSectionDigitalClockComponent = (<TDate extends PickerValidDate>(props: MultiSectionDigitalClockProps<TDate> & React.RefAttributes<HTMLDivElement>) => React.JSX.Element) & {
4
5
  propTypes?: any;
5
6
  };
6
7
  /**
@@ -350,7 +350,7 @@ process.env.NODE_ENV !== "production" ? MultiSectionDigitalClock.propTypes = {
350
350
  * The default selected value.
351
351
  * Used when the component is not controlled.
352
352
  */
353
- defaultValue: PropTypes.any,
353
+ defaultValue: PropTypes.object,
354
354
  /**
355
355
  * If `true`, the picker views and text field are disabled.
356
356
  * @default false
@@ -379,12 +379,12 @@ process.env.NODE_ENV !== "production" ? MultiSectionDigitalClock.propTypes = {
379
379
  * Maximal selectable time.
380
380
  * The date part of the object will be ignored unless `props.disableIgnoringDatePartForTimeValidation === true`.
381
381
  */
382
- maxTime: PropTypes.any,
382
+ maxTime: PropTypes.object,
383
383
  /**
384
384
  * Minimal selectable time.
385
385
  * The date part of the object will be ignored unless `props.disableIgnoringDatePartForTimeValidation === true`.
386
386
  */
387
- minTime: PropTypes.any,
387
+ minTime: PropTypes.object,
388
388
  /**
389
389
  * Step over minutes.
390
390
  * @default 1
@@ -427,7 +427,7 @@ process.env.NODE_ENV !== "production" ? MultiSectionDigitalClock.propTypes = {
427
427
  * The date used to generate the new value when both `value` and `defaultValue` are empty.
428
428
  * @default The closest valid time using the validation props, except callbacks such as `shouldDisableTime`.
429
429
  */
430
- referenceDate: PropTypes.any,
430
+ referenceDate: PropTypes.object,
431
431
  /**
432
432
  * Disable specific time.
433
433
  * @template TDate
@@ -477,7 +477,7 @@ process.env.NODE_ENV !== "production" ? MultiSectionDigitalClock.propTypes = {
477
477
  * The selected value.
478
478
  * Used when the component is controlled.
479
479
  */
480
- value: PropTypes.any,
480
+ value: PropTypes.object,
481
481
  /**
482
482
  * The visible view.
483
483
  * Used when the component view is controlled.
@@ -1,10 +1,11 @@
1
- /// <reference types="react" />
1
+ import * as React from 'react';
2
2
  import { SlotComponentProps } from '@mui/base/utils';
3
3
  import MenuItem from '@mui/material/MenuItem';
4
4
  import { MultiSectionDigitalClockClasses } from './multiSectionDigitalClockClasses';
5
5
  import { BaseClockProps, ExportedBaseClockProps, MultiSectionDigitalClockOnlyProps } from '../internals/models/props/clock';
6
6
  import { MultiSectionDigitalClockSectionProps } from './MultiSectionDigitalClockSection';
7
7
  import { TimeViewWithMeridiem } from '../internals/models';
8
+ import { PickerValidDate } from '../models';
8
9
  export interface MultiSectionDigitalClockOption<TValue> {
9
10
  isDisabled?: (value: TValue) => boolean;
10
11
  isSelected: (value: TValue) => boolean;
@@ -13,7 +14,7 @@ export interface MultiSectionDigitalClockOption<TValue> {
13
14
  value: TValue;
14
15
  ariaLabel: string;
15
16
  }
16
- export interface ExportedMultiSectionDigitalClockProps<TDate> extends ExportedBaseClockProps<TDate>, MultiSectionDigitalClockOnlyProps {
17
+ export interface ExportedMultiSectionDigitalClockProps<TDate extends PickerValidDate> extends ExportedBaseClockProps<TDate>, MultiSectionDigitalClockOnlyProps {
17
18
  }
18
19
  export interface MultiSectionDigitalClockViewProps<TValue> extends Pick<MultiSectionDigitalClockSectionProps<TValue>, 'onChange' | 'items'> {
19
20
  }
@@ -27,7 +28,7 @@ export interface MultiSectionDigitalClockSlots {
27
28
  export interface MultiSectionDigitalClockSlotProps {
28
29
  digitalClockSectionItem?: SlotComponentProps<typeof MenuItem, {}, Record<string, any>>;
29
30
  }
30
- export interface MultiSectionDigitalClockProps<TDate> extends ExportedMultiSectionDigitalClockProps<TDate>, BaseClockProps<TDate, TimeViewWithMeridiem> {
31
+ export interface MultiSectionDigitalClockProps<TDate extends PickerValidDate> extends ExportedMultiSectionDigitalClockProps<TDate>, BaseClockProps<TDate, TimeViewWithMeridiem> {
31
32
  /**
32
33
  * Available views.
33
34
  * @default ['hours', 'minutes']
@@ -1,6 +1,6 @@
1
- import { MuiPickersAdapter } from '../models';
1
+ import { MuiPickersAdapter, PickerValidDate } from '../models';
2
2
  import { MultiSectionDigitalClockOption } from './MultiSectionDigitalClock.types';
3
- interface IGetHoursSectionOptions<TDate> {
3
+ interface IGetHoursSectionOptions<TDate extends PickerValidDate> {
4
4
  now: TDate;
5
5
  value: TDate | null;
6
6
  utils: MuiPickersAdapter<TDate>;
@@ -10,8 +10,8 @@ interface IGetHoursSectionOptions<TDate> {
10
10
  resolveAriaLabel: (value: string) => string;
11
11
  valueOrReferenceDate: TDate;
12
12
  }
13
- export declare const getHourSectionOptions: <TDate>({ now, value, utils, ampm, isDisabled, resolveAriaLabel, timeStep, valueOrReferenceDate, }: IGetHoursSectionOptions<TDate>) => MultiSectionDigitalClockOption<number>[];
14
- interface IGetTimeSectionOptions<TDate> {
13
+ export declare const getHourSectionOptions: <TDate extends PickerValidDate>({ now, value, utils, ampm, isDisabled, resolveAriaLabel, timeStep, valueOrReferenceDate, }: IGetHoursSectionOptions<TDate>) => MultiSectionDigitalClockOption<number>[];
14
+ interface IGetTimeSectionOptions<TDate extends PickerValidDate> {
15
15
  value: number | null;
16
16
  utils: MuiPickersAdapter<TDate>;
17
17
  isDisabled: (value: number) => boolean;
@@ -20,5 +20,5 @@ interface IGetTimeSectionOptions<TDate> {
20
20
  hasValue?: boolean;
21
21
  resolveAriaLabel: (value: string) => string;
22
22
  }
23
- export declare const getTimeSectionOptions: <TDate>({ value, utils, isDisabled, timeStep, resolveLabel, resolveAriaLabel, hasValue, }: IGetTimeSectionOptions<TDate>) => MultiSectionDigitalClockOption<number>[];
23
+ export declare const getTimeSectionOptions: <TDate extends PickerValidDate>({ value, utils, isDisabled, timeStep, resolveLabel, resolveAriaLabel, hasValue, }: IGetTimeSectionOptions<TDate>) => MultiSectionDigitalClockOption<number>[];
24
24
  export {};
@@ -1,6 +1,7 @@
1
1
  import * as React from 'react';
2
2
  import { PickersCalendarHeaderProps } from './PickersCalendarHeader.types';
3
- type PickersCalendarHeaderComponent = (<TDate>(props: PickersCalendarHeaderProps<TDate> & React.RefAttributes<HTMLButtonElement>) => React.JSX.Element) & {
3
+ import { PickerValidDate } from '../models';
4
+ type PickersCalendarHeaderComponent = (<TDate extends PickerValidDate>(props: PickersCalendarHeaderProps<TDate> & React.RefAttributes<HTMLButtonElement>) => React.JSX.Element) & {
4
5
  propTypes?: any;
5
6
  };
6
7
  /**
@@ -232,7 +232,7 @@ process.env.NODE_ENV !== "production" ? PickersCalendarHeader.propTypes = {
232
232
  */
233
233
  classes: PropTypes.object,
234
234
  className: PropTypes.string,
235
- currentMonth: PropTypes.any.isRequired,
235
+ currentMonth: PropTypes.object.isRequired,
236
236
  disabled: PropTypes.bool,
237
237
  disableFuture: PropTypes.bool,
238
238
  disablePast: PropTypes.bool,
@@ -242,8 +242,8 @@ process.env.NODE_ENV !== "production" ? PickersCalendarHeader.propTypes = {
242
242
  */
243
243
  format: PropTypes.string,
244
244
  labelId: PropTypes.string,
245
- maxDate: PropTypes.any.isRequired,
246
- minDate: PropTypes.any.isRequired,
245
+ maxDate: PropTypes.object.isRequired,
246
+ minDate: PropTypes.object.isRequired,
247
247
  onMonthChange: PropTypes.func.isRequired,
248
248
  onViewChange: PropTypes.func,
249
249
  reduceAnimations: PropTypes.bool.isRequired,
@@ -1,11 +1,11 @@
1
- /// <reference types="react" />
1
+ import * as React from 'react';
2
2
  import { SlotComponentProps } from '@mui/base/utils';
3
3
  import IconButton from '@mui/material/IconButton';
4
4
  import SvgIcon from '@mui/material/SvgIcon';
5
5
  import { SxProps, Theme } from '@mui/material/styles';
6
6
  import { ExportedPickersArrowSwitcherProps, PickersArrowSwitcherSlots, PickersArrowSwitcherSlotProps } from '../internals/components/PickersArrowSwitcher';
7
7
  import { MonthValidationOptions } from '../internals/hooks/date-helpers-hooks';
8
- import { DateView } from '../models/views';
8
+ import { PickerValidDate, DateView } from '../models';
9
9
  import { SlideDirection } from '../DateCalendar/PickersSlideTransition';
10
10
  import { PickersCalendarHeaderClasses } from './pickersCalendarHeaderClasses';
11
11
  export interface PickersCalendarHeaderSlots extends PickersArrowSwitcherSlots {
@@ -22,12 +22,12 @@ export interface PickersCalendarHeaderSlots extends PickersArrowSwitcherSlots {
22
22
  }
23
23
  export interface PickersCalendarHeaderSlotPropsOverrides {
24
24
  }
25
- export type PickersCalendarHeaderOwnerState<TDate> = PickersCalendarHeaderProps<TDate>;
26
- export interface PickersCalendarHeaderSlotProps<TDate> extends PickersArrowSwitcherSlotProps {
25
+ export type PickersCalendarHeaderOwnerState<TDate extends PickerValidDate> = PickersCalendarHeaderProps<TDate>;
26
+ export interface PickersCalendarHeaderSlotProps<TDate extends PickerValidDate> extends PickersArrowSwitcherSlotProps {
27
27
  switchViewButton?: SlotComponentProps<typeof IconButton, PickersCalendarHeaderSlotPropsOverrides, PickersCalendarHeaderOwnerState<TDate>>;
28
28
  switchViewIcon?: SlotComponentProps<typeof SvgIcon, PickersCalendarHeaderSlotPropsOverrides, undefined>;
29
29
  }
30
- export interface PickersCalendarHeaderProps<TDate> extends ExportedPickersArrowSwitcherProps, MonthValidationOptions<TDate> {
30
+ export interface PickersCalendarHeaderProps<TDate extends PickerValidDate> extends ExportedPickersArrowSwitcherProps, MonthValidationOptions<TDate> {
31
31
  /**
32
32
  * Overridable component slots.
33
33
  * @default {}
@@ -56,4 +56,4 @@ export interface PickersCalendarHeaderProps<TDate> extends ExportedPickersArrowS
56
56
  */
57
57
  sx?: SxProps<Theme>;
58
58
  }
59
- export type ExportedPickersCalendarHeaderProps<TDate> = Pick<PickersCalendarHeaderProps<TDate>, 'classes' | 'slots' | 'slotProps'>;
59
+ export type ExportedPickersCalendarHeaderProps<TDate extends PickerValidDate> = Pick<PickersCalendarHeaderProps<TDate>, 'classes' | 'slots' | 'slotProps'>;
@@ -2,6 +2,7 @@ import * as React from 'react';
2
2
  import { ButtonBaseProps } from '@mui/material/ButtonBase';
3
3
  import { ExtendMui } from '../internals/models/helpers';
4
4
  import { PickersDayClasses } from './pickersDayClasses';
5
+ import { PickerValidDate } from '../models';
5
6
  export interface ExportedPickersDayProps {
6
7
  /**
7
8
  * If `true`, today's date is rendering without highlighting with circle.
@@ -20,7 +21,7 @@ export interface ExportedPickersDayProps {
20
21
  */
21
22
  showDaysOutsideCurrentMonth?: boolean;
22
23
  }
23
- export interface PickersDayProps<TDate> extends ExportedPickersDayProps, Omit<ExtendMui<ButtonBaseProps>, 'onKeyDown' | 'onFocus' | 'onBlur' | 'onMouseEnter' | 'LinkComponent'> {
24
+ export interface PickersDayProps<TDate extends PickerValidDate> extends ExportedPickersDayProps, Omit<ExtendMui<ButtonBaseProps>, 'onKeyDown' | 'onFocus' | 'onBlur' | 'onMouseEnter' | 'LinkComponent'> {
24
25
  /**
25
26
  * Override or extend the styles applied to the component.
26
27
  */
@@ -70,7 +71,7 @@ export interface PickersDayProps<TDate> extends ExportedPickersDayProps, Omit<Ex
70
71
  */
71
72
  today?: boolean;
72
73
  }
73
- type PickersDayComponent = (<TDate>(props: PickersDayProps<TDate> & React.RefAttributes<HTMLButtonElement>) => React.JSX.Element) & {
74
+ type PickersDayComponent = (<TDate extends PickerValidDate>(props: PickersDayProps<TDate> & React.RefAttributes<HTMLButtonElement>) => React.JSX.Element) & {
74
75
  propTypes?: any;
75
76
  };
76
77
  /**
@@ -228,7 +228,7 @@ process.env.NODE_ENV !== "production" ? PickersDayRaw.propTypes = {
228
228
  /**
229
229
  * The date to show.
230
230
  */
231
- day: PropTypes.any.isRequired,
231
+ day: PropTypes.object.isRequired,
232
232
  /**
233
233
  * If `true`, renders as disabled.
234
234
  * @default false
@@ -1,6 +1,7 @@
1
1
  import * as React from 'react';
2
2
  import { PickersLayoutProps } from './PickersLayout.types';
3
3
  import { DateOrTimeViewWithMeridiem } from '../internals/models';
4
+ import { PickerValidDate } from '../models';
4
5
  declare const PickersLayoutRoot: import("@emotion/styled").StyledComponent<import("@mui/system").MUIStyledCommonProps<import("@mui/material/styles").Theme> & {
5
6
  ownerState: {
6
7
  isLandscape: boolean;
@@ -18,7 +19,7 @@ export declare const PickersLayoutContentWrapper: import("@emotion/styled").Styl
18
19
  * - [PickersLayout API](https://mui.com/x/api/date-pickers/pickers-layout/)
19
20
  */
20
21
  declare const PickersLayout: {
21
- <TValue, TDate, TView extends DateOrTimeViewWithMeridiem>(inProps: PickersLayoutProps<TValue, TDate, TView>): React.JSX.Element;
22
+ <TValue, TDate extends PickerValidDate, TView extends DateOrTimeViewWithMeridiem>(inProps: PickersLayoutProps<TValue, TDate, TView>): React.JSX.Element;
22
23
  propTypes: any;
23
24
  };
24
25
  export { PickersLayout };
@@ -9,7 +9,8 @@ import { PickersLayoutClasses } from './pickersLayoutClasses';
9
9
  import { DateOrTimeViewWithMeridiem, WrapperVariant } from '../internals/models/common';
10
10
  import { PickersShortcutsProps } from '../PickersShortcuts';
11
11
  import { ExportedPickersShortcutProps } from '../PickersShortcuts/PickersShortcuts';
12
- export interface ExportedPickersLayoutSlots<TValue, TDate, TView extends DateOrTimeViewWithMeridiem> {
12
+ import { PickerValidDate } from '../models';
13
+ export interface ExportedPickersLayoutSlots<TValue, TDate extends PickerValidDate, TView extends DateOrTimeViewWithMeridiem> {
13
14
  /**
14
15
  * Custom component for the action bar, it is placed below the picker views.
15
16
  * @default PickersActionBar
@@ -26,13 +27,13 @@ export interface ExportedPickersLayoutSlots<TValue, TDate, TView extends DateOrT
26
27
  */
27
28
  layout?: React.JSXElementConstructor<PickersLayoutProps<TValue, TDate, TView> & React.RefAttributes<HTMLDivElement>>;
28
29
  }
29
- interface PickersLayoutActionBarOwnerState<TValue, TDate, TView extends DateOrTimeViewWithMeridiem> extends PickersLayoutProps<TValue, TDate, TView> {
30
+ interface PickersLayoutActionBarOwnerState<TValue, TDate extends PickerValidDate, TView extends DateOrTimeViewWithMeridiem> extends PickersLayoutProps<TValue, TDate, TView> {
30
31
  wrapperVariant: WrapperVariant;
31
32
  }
32
33
  interface PickersShortcutsOwnerState<TValue> extends PickersShortcutsProps<TValue> {
33
34
  wrapperVariant: WrapperVariant;
34
35
  }
35
- export interface ExportedPickersLayoutSlotProps<TValue, TDate, TView extends DateOrTimeViewWithMeridiem> {
36
+ export interface ExportedPickersLayoutSlotProps<TValue, TDate extends PickerValidDate, TView extends DateOrTimeViewWithMeridiem> {
36
37
  /**
37
38
  * Props passed down to the action bar component.
38
39
  */
@@ -46,7 +47,7 @@ export interface ExportedPickersLayoutSlotProps<TValue, TDate, TView extends Dat
46
47
  */
47
48
  layout?: Partial<PickersLayoutProps<TValue, TDate, TView>>;
48
49
  }
49
- export interface PickersLayoutSlots<TValue, TDate, TView extends DateOrTimeViewWithMeridiem> extends ExportedPickersLayoutSlots<TValue, TDate, TView> {
50
+ export interface PickersLayoutSlots<TValue, TDate extends PickerValidDate, TView extends DateOrTimeViewWithMeridiem> extends ExportedPickersLayoutSlots<TValue, TDate, TView> {
50
51
  /**
51
52
  * Tabs enabling toggling between views.
52
53
  */
@@ -57,7 +58,7 @@ export interface PickersLayoutSlots<TValue, TDate, TView extends DateOrTimeViewW
57
58
  */
58
59
  toolbar?: React.JSXElementConstructor<BaseToolbarProps<TValue, TView>>;
59
60
  }
60
- export interface PickersLayoutSlotProps<TValue, TDate, TView extends DateOrTimeViewWithMeridiem> extends ExportedPickersLayoutSlotProps<TValue, TDate, TView> {
61
+ export interface PickersLayoutSlotProps<TValue, TDate extends PickerValidDate, TView extends DateOrTimeViewWithMeridiem> extends ExportedPickersLayoutSlotProps<TValue, TDate, TView> {
61
62
  /**
62
63
  * Props passed down to the tabs component.
63
64
  */
@@ -67,7 +68,7 @@ export interface PickersLayoutSlotProps<TValue, TDate, TView extends DateOrTimeV
67
68
  */
68
69
  toolbar?: ExportedBaseToolbarProps;
69
70
  }
70
- export interface PickersLayoutProps<TValue, TDate, TView extends DateOrTimeViewWithMeridiem> extends Omit<UsePickerLayoutPropsResponseLayoutProps<TValue, TView>, 'value'> {
71
+ export interface PickersLayoutProps<TValue, TDate extends PickerValidDate, TView extends DateOrTimeViewWithMeridiem> extends Omit<UsePickerLayoutPropsResponseLayoutProps<TValue, TView>, 'value'> {
71
72
  value?: TValue;
72
73
  className?: string;
73
74
  children?: React.ReactNode;
@@ -1,6 +1,7 @@
1
1
  import { PickersLayoutProps, SubComponents } from './PickersLayout.types';
2
2
  import { DateOrTimeViewWithMeridiem } from '../internals/models';
3
+ import { PickerValidDate } from '../models';
3
4
  interface UsePickerLayoutResponse<TValue> extends SubComponents<TValue> {
4
5
  }
5
- declare const usePickerLayout: <TValue, TDate, TView extends DateOrTimeViewWithMeridiem>(props: PickersLayoutProps<TValue, TDate, TView>) => UsePickerLayoutResponse<TValue>;
6
+ declare const usePickerLayout: <TValue, TDate extends PickerValidDate, TView extends DateOrTimeViewWithMeridiem>(props: PickersLayoutProps<TValue, TDate, TView>) => UsePickerLayoutResponse<TValue>;
6
7
  export default usePickerLayout;
@@ -1,6 +1,7 @@
1
1
  import * as React from 'react';
2
2
  import { StaticDatePickerProps } from './StaticDatePicker.types';
3
- type StaticDatePickerComponent = (<TDate>(props: StaticDatePickerProps<TDate> & React.RefAttributes<HTMLDivElement>) => React.JSX.Element) & {
3
+ import { PickerValidDate } from '../models';
4
+ type StaticDatePickerComponent = (<TDate extends PickerValidDate>(props: StaticDatePickerProps<TDate> & React.RefAttributes<HTMLDivElement>) => React.JSX.Element) & {
4
5
  propTypes?: any;
5
6
  };
6
7
  /**
@@ -72,7 +72,7 @@ StaticDatePicker.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
  * If `true`, the picker and text field are disabled.
78
78
  * @default false
@@ -122,11 +122,11 @@ StaticDatePicker.propTypes = {
122
122
  /**
123
123
  * Maximal selectable date.
124
124
  */
125
- maxDate: PropTypes.any,
125
+ maxDate: PropTypes.object,
126
126
  /**
127
127
  * Minimal selectable date.
128
128
  */
129
- minDate: PropTypes.any,
129
+ minDate: PropTypes.object,
130
130
  /**
131
131
  * Months rendered per row.
132
132
  * @default 3
@@ -200,7 +200,7 @@ StaticDatePicker.propTypes = {
200
200
  * The date used to generate the new value when both `value` and `defaultValue` are empty.
201
201
  * @default The closest valid date-time using the validation props, except callbacks like `shouldDisable<...>`.
202
202
  */
203
- referenceDate: PropTypes.any,
203
+ referenceDate: PropTypes.object,
204
204
  /**
205
205
  * Component displaying when passed `loading` true.
206
206
  * @returns {React.ReactNode} The node to render when loading.
@@ -268,7 +268,7 @@ StaticDatePicker.propTypes = {
268
268
  * The selected value.
269
269
  * Used when the component is controlled.
270
270
  */
271
- value: PropTypes.any,
271
+ value: PropTypes.object,
272
272
  /**
273
273
  * The visible view.
274
274
  * Used when the component view is controlled.
@@ -1,12 +1,12 @@
1
1
  import { BaseDatePickerProps, BaseDatePickerSlots, BaseDatePickerSlotProps } from '../DatePicker/shared';
2
2
  import { StaticOnlyPickerProps, UseStaticPickerSlots, UseStaticPickerSlotProps } from '../internals/hooks/useStaticPicker';
3
3
  import { MakeOptional } from '../internals/models/helpers';
4
- import { DateView } from '../models';
5
- export interface StaticDatePickerSlots<TDate> extends BaseDatePickerSlots<TDate>, UseStaticPickerSlots<TDate, DateView> {
4
+ import { DateView, PickerValidDate } from '../models';
5
+ export interface StaticDatePickerSlots<TDate extends PickerValidDate> extends BaseDatePickerSlots<TDate>, UseStaticPickerSlots<TDate, DateView> {
6
6
  }
7
- export interface StaticDatePickerSlotProps<TDate> extends BaseDatePickerSlotProps<TDate>, UseStaticPickerSlotProps<TDate, DateView> {
7
+ export interface StaticDatePickerSlotProps<TDate extends PickerValidDate> extends BaseDatePickerSlotProps<TDate>, UseStaticPickerSlotProps<TDate, DateView> {
8
8
  }
9
- export interface StaticDatePickerProps<TDate> extends BaseDatePickerProps<TDate>, MakeOptional<StaticOnlyPickerProps, 'displayStaticWrapperAs'> {
9
+ export interface StaticDatePickerProps<TDate extends PickerValidDate> extends BaseDatePickerProps<TDate>, MakeOptional<StaticOnlyPickerProps, 'displayStaticWrapperAs'> {
10
10
  /**
11
11
  * Overridable component slots.
12
12
  * @default {}
@@ -1,6 +1,7 @@
1
1
  import * as React from 'react';
2
2
  import { StaticDateTimePickerProps } from './StaticDateTimePicker.types';
3
- type StaticDateTimePickerComponent = (<TDate>(props: StaticDateTimePickerProps<TDate> & React.RefAttributes<HTMLDivElement>) => React.JSX.Element) & {
3
+ import { PickerValidDate } from '../models';
4
+ type StaticDateTimePickerComponent = (<TDate extends PickerValidDate>(props: StaticDateTimePickerProps<TDate> & React.RefAttributes<HTMLDivElement>) => React.JSX.Element) & {
4
5
  propTypes?: any;
5
6
  };
6
7
  /**
@@ -92,7 +92,7 @@ StaticDateTimePicker.propTypes = {
92
92
  * The default value.
93
93
  * Used when the component is not controlled.
94
94
  */
95
- defaultValue: PropTypes.any,
95
+ defaultValue: PropTypes.object,
96
96
  /**
97
97
  * If `true`, the picker and text field are disabled.
98
98
  * @default false
@@ -147,29 +147,29 @@ StaticDateTimePicker.propTypes = {
147
147
  /**
148
148
  * Maximal selectable date.
149
149
  */
150
- maxDate: PropTypes.any,
150
+ maxDate: PropTypes.object,
151
151
  /**
152
152
  * Maximal selectable moment of time with binding to date, to set max time in each day use `maxTime`.
153
153
  */
154
- maxDateTime: PropTypes.any,
154
+ maxDateTime: PropTypes.object,
155
155
  /**
156
156
  * Maximal selectable time.
157
157
  * The date part of the object will be ignored unless `props.disableIgnoringDatePartForTimeValidation === true`.
158
158
  */
159
- maxTime: PropTypes.any,
159
+ maxTime: PropTypes.object,
160
160
  /**
161
161
  * Minimal selectable date.
162
162
  */
163
- minDate: PropTypes.any,
163
+ minDate: PropTypes.object,
164
164
  /**
165
165
  * Minimal selectable moment of time with binding to date, to set min time in each day use `minTime`.
166
166
  */
167
- minDateTime: PropTypes.any,
167
+ minDateTime: PropTypes.object,
168
168
  /**
169
169
  * Minimal selectable time.
170
170
  * The date part of the object will be ignored unless `props.disableIgnoringDatePartForTimeValidation === true`.
171
171
  */
172
- minTime: PropTypes.any,
172
+ minTime: PropTypes.object,
173
173
  /**
174
174
  * Step over minutes.
175
175
  * @default 1
@@ -248,7 +248,7 @@ StaticDateTimePicker.propTypes = {
248
248
  * The date used to generate the new value when both `value` and `defaultValue` are empty.
249
249
  * @default The closest valid date-time using the validation props, except callbacks like `shouldDisable<...>`.
250
250
  */
251
- referenceDate: PropTypes.any,
251
+ referenceDate: PropTypes.object,
252
252
  /**
253
253
  * Component displaying when passed `loading` true.
254
254
  * @returns {React.ReactNode} The node to render when loading.
@@ -324,7 +324,7 @@ StaticDateTimePicker.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,12 +1,12 @@
1
1
  import { BaseDateTimePickerProps, BaseDateTimePickerSlots, BaseDateTimePickerSlotProps } from '../DateTimePicker/shared';
2
2
  import { StaticOnlyPickerProps, UseStaticPickerSlots, UseStaticPickerSlotProps } from '../internals/hooks/useStaticPicker';
3
3
  import { MakeOptional } from '../internals/models/helpers';
4
- import { DateOrTimeView } from '../models';
5
- export interface StaticDateTimePickerSlots<TDate> extends BaseDateTimePickerSlots<TDate>, UseStaticPickerSlots<TDate, DateOrTimeView> {
4
+ import { DateOrTimeView, PickerValidDate } from '../models';
5
+ export interface StaticDateTimePickerSlots<TDate extends PickerValidDate> extends BaseDateTimePickerSlots<TDate>, UseStaticPickerSlots<TDate, DateOrTimeView> {
6
6
  }
7
- export interface StaticDateTimePickerSlotProps<TDate> extends BaseDateTimePickerSlotProps<TDate>, UseStaticPickerSlotProps<TDate, DateOrTimeView> {
7
+ export interface StaticDateTimePickerSlotProps<TDate extends PickerValidDate> extends BaseDateTimePickerSlotProps<TDate>, UseStaticPickerSlotProps<TDate, DateOrTimeView> {
8
8
  }
9
- export interface StaticDateTimePickerProps<TDate> extends BaseDateTimePickerProps<TDate, DateOrTimeView>, MakeOptional<StaticOnlyPickerProps, 'displayStaticWrapperAs'> {
9
+ export interface StaticDateTimePickerProps<TDate extends PickerValidDate> extends BaseDateTimePickerProps<TDate, DateOrTimeView>, MakeOptional<StaticOnlyPickerProps, 'displayStaticWrapperAs'> {
10
10
  /**
11
11
  * Overridable component slots.
12
12
  * @default {}
@@ -1,6 +1,7 @@
1
1
  import * as React from 'react';
2
+ import { PickerValidDate } from '../models';
2
3
  import { StaticTimePickerProps } from './StaticTimePicker.types';
3
- type StaticTimePickerComponent = (<TDate>(props: StaticTimePickerProps<TDate> & React.RefAttributes<HTMLDivElement>) => React.JSX.Element) & {
4
+ type StaticTimePickerComponent = (<TDate extends PickerValidDate>(props: StaticTimePickerProps<TDate> & React.RefAttributes<HTMLDivElement>) => React.JSX.Element) & {
4
5
  propTypes?: any;
5
6
  };
6
7
  /**
@@ -77,7 +77,7 @@ StaticTimePicker.propTypes = {
77
77
  * The default value.
78
78
  * Used when the component is not controlled.
79
79
  */
80
- defaultValue: PropTypes.any,
80
+ defaultValue: PropTypes.object,
81
81
  /**
82
82
  * If `true`, the picker and text field are disabled.
83
83
  * @default false
@@ -112,12 +112,12 @@ StaticTimePicker.propTypes = {
112
112
  * Maximal selectable time.
113
113
  * The date part of the object will be ignored unless `props.disableIgnoringDatePartForTimeValidation === true`.
114
114
  */
115
- maxTime: PropTypes.any,
115
+ maxTime: PropTypes.object,
116
116
  /**
117
117
  * Minimal selectable time.
118
118
  * The date part of the object will be ignored unless `props.disableIgnoringDatePartForTimeValidation === true`.
119
119
  */
120
- minTime: PropTypes.any,
120
+ minTime: PropTypes.object,
121
121
  /**
122
122
  * Step over minutes.
123
123
  * @default 1
@@ -179,7 +179,7 @@ StaticTimePicker.propTypes = {
179
179
  * The date used to generate the new value when both `value` and `defaultValue` are empty.
180
180
  * @default The closest valid date-time using the validation props, except callbacks like `shouldDisable<...>`.
181
181
  */
182
- referenceDate: PropTypes.any,
182
+ referenceDate: PropTypes.object,
183
183
  /**
184
184
  * Disable specific time.
185
185
  * @template TDate
@@ -214,7 +214,7 @@ StaticTimePicker.propTypes = {
214
214
  * The selected value.
215
215
  * Used when the component is controlled.
216
216
  */
217
- value: PropTypes.any,
217
+ value: PropTypes.object,
218
218
  /**
219
219
  * The visible view.
220
220
  * Used when the component view is controlled.
@@ -1,12 +1,12 @@
1
1
  import { BaseTimePickerProps, BaseTimePickerSlots, BaseTimePickerSlotProps } from '../TimePicker/shared';
2
2
  import { StaticOnlyPickerProps, UseStaticPickerSlots, UseStaticPickerSlotProps } from '../internals/hooks/useStaticPicker';
3
3
  import { MakeOptional } from '../internals/models/helpers';
4
- import { TimeView } from '../models';
5
- export interface StaticTimePickerSlots<TDate> extends BaseTimePickerSlots<TDate>, UseStaticPickerSlots<TDate, TimeView> {
4
+ import { PickerValidDate, TimeView } from '../models';
5
+ export interface StaticTimePickerSlots<TDate extends PickerValidDate> extends BaseTimePickerSlots<TDate>, UseStaticPickerSlots<TDate, TimeView> {
6
6
  }
7
- export interface StaticTimePickerSlotProps<TDate> extends BaseTimePickerSlotProps, UseStaticPickerSlotProps<TDate, TimeView> {
7
+ export interface StaticTimePickerSlotProps<TDate extends PickerValidDate> extends BaseTimePickerSlotProps, UseStaticPickerSlotProps<TDate, TimeView> {
8
8
  }
9
- export interface StaticTimePickerProps<TDate> extends BaseTimePickerProps<TDate, TimeView>, MakeOptional<StaticOnlyPickerProps, 'displayStaticWrapperAs'> {
9
+ export interface StaticTimePickerProps<TDate extends PickerValidDate> extends BaseTimePickerProps<TDate, TimeView>, MakeOptional<StaticOnlyPickerProps, 'displayStaticWrapperAs'> {
10
10
  /**
11
11
  * Overridable component slots.
12
12
  * @default {}
@@ -1,9 +1,9 @@
1
1
  import * as React from 'react';
2
2
  import type { PickerSelectionState } from '../internals/hooks/usePicker';
3
3
  import { useMeridiemMode } from '../internals/hooks/date-helpers-hooks';
4
- import { TimeView } from '../models';
4
+ import { PickerValidDate, TimeView } from '../models';
5
5
  import { ClockClasses } from './clockClasses';
6
- export interface ClockProps<TDate> extends ReturnType<typeof useMeridiemMode> {
6
+ export interface ClockProps<TDate extends PickerValidDate> extends ReturnType<typeof useMeridiemMode> {
7
7
  ampm: boolean;
8
8
  ampmInClock: boolean;
9
9
  autoFocus?: boolean;
@@ -33,4 +33,4 @@ export interface ClockProps<TDate> extends ReturnType<typeof useMeridiemMode> {
33
33
  /**
34
34
  * @ignore - internal component.
35
35
  */
36
- export declare function Clock<TDate>(inProps: ClockProps<TDate>): React.JSX.Element;
36
+ export declare function Clock<TDate extends PickerValidDate>(inProps: ClockProps<TDate>): React.JSX.Element;
@@ -1,7 +1,7 @@
1
1
  import * as React from 'react';
2
- import { MuiPickersAdapter } from '../models';
2
+ import { MuiPickersAdapter, PickerValidDate } from '../models';
3
3
  import type { PickerSelectionState } from '../internals/hooks/usePicker';
4
- interface GetHourNumbersOptions<TDate> {
4
+ interface GetHourNumbersOptions<TDate extends PickerValidDate> {
5
5
  ampm: boolean;
6
6
  value: TDate | null;
7
7
  getClockNumberText: (hour: string) => string;
@@ -17,8 +17,8 @@ interface GetHourNumbersOptions<TDate> {
17
17
  /**
18
18
  * @ignore - internal component.
19
19
  */
20
- export declare const getHourNumbers: <TDate extends unknown>({ ampm, value, getClockNumberText, isDisabled, selectedId, utils, }: GetHourNumbersOptions<TDate>) => React.JSX.Element[];
21
- export declare const getMinutesNumbers: <TDate extends unknown>({ utils, value, isDisabled, getClockNumberText, selectedId, }: Omit<GetHourNumbersOptions<TDate>, "value" | "ampm"> & {
20
+ export declare const getHourNumbers: <TDate extends PickerValidDate>({ ampm, value, getClockNumberText, isDisabled, selectedId, utils, }: GetHourNumbersOptions<TDate>) => React.JSX.Element[];
21
+ export declare const getMinutesNumbers: <TDate extends PickerValidDate>({ utils, value, isDisabled, getClockNumberText, selectedId, }: Omit<GetHourNumbersOptions<TDate>, "value" | "ampm"> & {
22
22
  value: number;
23
23
  }) => React.JSX.Element[];
24
24
  export {};
@@ -1,6 +1,7 @@
1
1
  import * as React from 'react';
2
+ import { PickerValidDate } from '../models';
2
3
  import { TimeClockProps } from './TimeClock.types';
3
- type TimeClockComponent = (<TDate>(props: TimeClockProps<TDate> & React.RefAttributes<HTMLDivElement>) => React.JSX.Element) & {
4
+ type TimeClockComponent = (<TDate extends PickerValidDate>(props: TimeClockProps<TDate> & React.RefAttributes<HTMLDivElement>) => React.JSX.Element) & {
4
5
  propTypes?: any;
5
6
  };
6
7
  /**