@mui/x-date-pickers 7.22.3 → 8.0.0-alpha.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (514) hide show
  1. package/AdapterDateFns/AdapterDateFns.d.ts +1 -1
  2. package/AdapterDateFnsBase/AdapterDateFnsBase.d.ts +3 -3
  3. package/AdapterDateFnsJalali/AdapterDateFnsJalali.d.ts +1 -1
  4. package/AdapterDateFnsJalaliV3/AdapterDateFnsJalaliV3.d.ts +1 -1
  5. package/AdapterDateFnsV3/AdapterDateFnsV3.d.ts +1 -1
  6. package/AdapterDayjs/AdapterDayjs.d.ts +2 -2
  7. package/AdapterLuxon/AdapterLuxon.d.ts +2 -2
  8. package/AdapterMoment/AdapterMoment.d.ts +2 -2
  9. package/AdapterMomentHijri/AdapterMomentHijri.d.ts +2 -2
  10. package/AdapterMomentJalaali/AdapterMomentJalaali.d.ts +2 -2
  11. package/CHANGELOG.md +348 -12
  12. package/DateCalendar/DateCalendar.d.ts +1 -2
  13. package/DateCalendar/DateCalendar.js +21 -22
  14. package/DateCalendar/DateCalendar.types.d.ts +21 -31
  15. package/DateCalendar/DayCalendar.d.ts +25 -24
  16. package/DateCalendar/DayCalendar.js +13 -10
  17. package/DateCalendar/index.d.ts +1 -0
  18. package/DateCalendar/useCalendarState.d.ts +16 -16
  19. package/DateCalendar/useIsDateDisabled.d.ts +2 -2
  20. package/DateField/DateField.d.ts +1 -2
  21. package/DateField/DateField.js +8 -10
  22. package/DateField/DateField.types.d.ts +8 -9
  23. package/DateField/index.d.ts +1 -1
  24. package/DateField/useDateField.d.ts +1 -2
  25. package/DatePicker/DatePicker.d.ts +1 -2
  26. package/DatePicker/DatePicker.js +15 -14
  27. package/DatePicker/DatePicker.types.d.ts +10 -11
  28. package/DatePicker/DatePickerToolbar.d.ts +2 -2
  29. package/DatePicker/DatePickerToolbar.js +2 -4
  30. package/DatePicker/shared.d.ts +11 -11
  31. package/DateTimeField/DateTimeField.d.ts +1 -2
  32. package/DateTimeField/DateTimeField.js +9 -12
  33. package/DateTimeField/DateTimeField.types.d.ts +9 -14
  34. package/DateTimeField/index.d.ts +1 -1
  35. package/DateTimeField/useDateTimeField.d.ts +1 -2
  36. package/DateTimePicker/DateTimePicker.d.ts +1 -2
  37. package/DateTimePicker/DateTimePicker.js +16 -16
  38. package/DateTimePicker/DateTimePicker.types.d.ts +10 -13
  39. package/DateTimePicker/DateTimePickerTabs.d.ts +1 -2
  40. package/DateTimePicker/DateTimePickerTabs.js +2 -2
  41. package/DateTimePicker/DateTimePickerToolbar.d.ts +5 -5
  42. package/DateTimePicker/DateTimePickerToolbar.js +8 -7
  43. package/DateTimePicker/shared.d.ts +12 -12
  44. package/DesktopDatePicker/DesktopDatePicker.d.ts +1 -2
  45. package/DesktopDatePicker/DesktopDatePicker.js +17 -16
  46. package/DesktopDatePicker/DesktopDatePicker.types.d.ts +7 -7
  47. package/DesktopDateTimePicker/DesktopDateTimePicker.d.ts +1 -2
  48. package/DesktopDateTimePicker/DesktopDateTimePicker.js +18 -18
  49. package/DesktopDateTimePicker/DesktopDateTimePicker.types.d.ts +8 -8
  50. package/DesktopDateTimePicker/DesktopDateTimePickerLayout.d.ts +1 -2
  51. package/DesktopDateTimePicker/DesktopDateTimePickerLayout.js +0 -2
  52. package/DesktopTimePicker/DesktopTimePicker.d.ts +1 -2
  53. package/DesktopTimePicker/DesktopTimePicker.js +11 -6
  54. package/DesktopTimePicker/DesktopTimePicker.types.d.ts +8 -8
  55. package/DigitalClock/DigitalClock.d.ts +1 -2
  56. package/DigitalClock/DigitalClock.js +8 -6
  57. package/DigitalClock/DigitalClock.types.d.ts +4 -4
  58. package/LocalizationProvider/LocalizationProvider.d.ts +12 -12
  59. package/MobileDatePicker/MobileDatePicker.d.ts +1 -2
  60. package/MobileDatePicker/MobileDatePicker.js +17 -16
  61. package/MobileDatePicker/MobileDatePicker.types.d.ts +7 -7
  62. package/MobileDateTimePicker/MobileDateTimePicker.d.ts +2 -2
  63. package/MobileDateTimePicker/MobileDateTimePicker.js +18 -18
  64. package/MobileDateTimePicker/MobileDateTimePicker.types.d.ts +7 -7
  65. package/MobileTimePicker/MobileTimePicker.d.ts +2 -2
  66. package/MobileTimePicker/MobileTimePicker.js +11 -6
  67. package/MobileTimePicker/MobileTimePicker.types.d.ts +7 -7
  68. package/MonthCalendar/MonthCalendar.d.ts +3 -4
  69. package/MonthCalendar/MonthCalendar.js +18 -14
  70. package/MonthCalendar/MonthCalendar.types.d.ts +14 -15
  71. package/MonthCalendar/PickersMonth.js +17 -13
  72. package/MultiSectionDigitalClock/MultiSectionDigitalClock.d.ts +1 -2
  73. package/MultiSectionDigitalClock/MultiSectionDigitalClock.js +8 -6
  74. package/MultiSectionDigitalClock/MultiSectionDigitalClock.types.d.ts +3 -4
  75. package/MultiSectionDigitalClock/MultiSectionDigitalClock.utils.d.ts +9 -9
  76. package/MultiSectionDigitalClock/MultiSectionDigitalClockSection.d.ts +2 -3
  77. package/PickersActionBar/PickersActionBar.js +2 -2
  78. package/PickersCalendarHeader/PickersCalendarHeader.d.ts +1 -2
  79. package/PickersCalendarHeader/PickersCalendarHeader.js +2 -2
  80. package/PickersCalendarHeader/PickersCalendarHeader.types.d.ts +9 -9
  81. package/PickersDay/PickersDay.d.ts +8 -8
  82. package/PickersLayout/PickersLayout.d.ts +2 -3
  83. package/PickersLayout/PickersLayout.js +0 -2
  84. package/PickersLayout/PickersLayout.types.d.ts +16 -19
  85. package/PickersLayout/index.d.ts +1 -1
  86. package/PickersLayout/usePickerLayout.d.ts +1 -2
  87. package/PickersLayout/usePickerLayout.js +18 -23
  88. package/PickersTextField/PickersInputBase/PickersInputBase.js +10 -9
  89. package/PickersTextField/PickersTextField.js +2 -2
  90. package/README.md +4 -4
  91. package/StaticDatePicker/StaticDatePicker.d.ts +1 -2
  92. package/StaticDatePicker/StaticDatePicker.js +14 -13
  93. package/StaticDatePicker/StaticDatePicker.types.d.ts +7 -7
  94. package/StaticDateTimePicker/StaticDateTimePicker.d.ts +1 -2
  95. package/StaticDateTimePicker/StaticDateTimePicker.js +15 -15
  96. package/StaticDateTimePicker/StaticDateTimePicker.types.d.ts +7 -7
  97. package/StaticTimePicker/StaticTimePicker.d.ts +1 -2
  98. package/StaticTimePicker/StaticTimePicker.js +8 -3
  99. package/StaticTimePicker/StaticTimePicker.types.d.ts +7 -7
  100. package/TimeClock/Clock.d.ts +4 -5
  101. package/TimeClock/Clock.js +4 -3
  102. package/TimeClock/ClockNumbers.d.ts +5 -5
  103. package/TimeClock/TimeClock.d.ts +1 -2
  104. package/TimeClock/TimeClock.js +8 -6
  105. package/TimeClock/TimeClock.types.d.ts +4 -4
  106. package/TimeField/TimeField.d.ts +1 -2
  107. package/TimeField/TimeField.js +6 -6
  108. package/TimeField/TimeField.types.d.ts +9 -14
  109. package/TimeField/index.d.ts +1 -1
  110. package/TimeField/useTimeField.d.ts +1 -2
  111. package/TimePicker/TimePicker.d.ts +1 -2
  112. package/TimePicker/TimePicker.js +9 -4
  113. package/TimePicker/TimePicker.types.d.ts +10 -13
  114. package/TimePicker/TimePickerToolbar.d.ts +2 -2
  115. package/TimePicker/TimePickerToolbar.js +8 -7
  116. package/TimePicker/shared.d.ts +10 -10
  117. package/YearCalendar/PickersYear.js +17 -13
  118. package/YearCalendar/YearCalendar.d.ts +1 -2
  119. package/YearCalendar/YearCalendar.js +18 -14
  120. package/YearCalendar/YearCalendar.types.d.ts +14 -15
  121. package/dateViewRenderers/dateViewRenderers.d.ts +3 -3
  122. package/hooks/index.d.ts +2 -2
  123. package/hooks/index.js +2 -2
  124. package/hooks/useClearableField.js +4 -3
  125. package/hooks/useParsedFormat.d.ts +2 -3
  126. package/hooks/useParsedFormat.js +2 -2
  127. package/hooks/usePickerContext.d.ts +4 -0
  128. package/hooks/usePickerContext.js +15 -0
  129. package/hooks/usePickerTranslations.d.ts +1 -0
  130. package/{modern/hooks/usePickersTranslations.js → hooks/usePickerTranslations.js} +1 -1
  131. package/hooks/useSplitFieldProps.d.ts +3 -3
  132. package/index.js +1 -1
  133. package/internals/components/PickerProvider.d.ts +67 -0
  134. package/internals/components/PickerProvider.js +40 -0
  135. package/internals/hooks/date-helpers-hooks.d.ts +6 -6
  136. package/internals/hooks/defaultizedFieldProps.d.ts +7 -8
  137. package/internals/hooks/useClockReferenceDate.d.ts +5 -5
  138. package/internals/hooks/useDesktopPicker/useDesktopPicker.d.ts +1 -2
  139. package/internals/hooks/useDesktopPicker/useDesktopPicker.js +22 -18
  140. package/internals/hooks/useDesktopPicker/useDesktopPicker.types.d.ts +15 -15
  141. package/internals/hooks/useField/buildSectionsFromFormat.d.ts +5 -5
  142. package/internals/hooks/useField/useField.d.ts +3 -3
  143. package/internals/hooks/useField/useField.js +1 -1
  144. package/internals/hooks/useField/useField.types.d.ts +40 -50
  145. package/internals/hooks/useField/useField.utils.d.ts +15 -15
  146. package/internals/hooks/useField/useFieldCharacterEditing.d.ts +4 -4
  147. package/internals/hooks/useField/useFieldState.d.ts +4 -4
  148. package/internals/hooks/useField/useFieldState.js +4 -3
  149. package/internals/hooks/useField/useFieldV7TextField.js +4 -3
  150. package/internals/hooks/useMobilePicker/useMobilePicker.d.ts +1 -2
  151. package/internals/hooks/useMobilePicker/useMobilePicker.js +24 -19
  152. package/internals/hooks/useMobilePicker/useMobilePicker.types.d.ts +12 -12
  153. package/internals/hooks/usePicker/usePicker.d.ts +2 -2
  154. package/internals/hooks/usePicker/usePicker.js +15 -10
  155. package/internals/hooks/usePicker/usePicker.types.d.ts +9 -7
  156. package/internals/hooks/usePicker/usePickerLayoutProps.d.ts +6 -8
  157. package/internals/hooks/usePicker/usePickerLayoutProps.js +2 -5
  158. package/internals/hooks/usePicker/usePickerProvider.d.ts +26 -0
  159. package/internals/hooks/usePicker/usePickerProvider.js +77 -0
  160. package/internals/hooks/usePicker/usePickerValue.d.ts +2 -2
  161. package/internals/hooks/usePicker/usePickerValue.js +7 -10
  162. package/internals/hooks/usePicker/usePickerValue.types.d.ts +38 -39
  163. package/internals/hooks/usePicker/usePickerViews.d.ts +7 -11
  164. package/internals/hooks/usePicker/usePickerViews.js +1 -0
  165. package/internals/hooks/usePickerPrivateContext.d.ts +4 -0
  166. package/internals/hooks/usePickerPrivateContext.js +9 -0
  167. package/internals/hooks/useStaticPicker/useStaticPicker.d.ts +1 -2
  168. package/internals/hooks/useStaticPicker/useStaticPicker.js +6 -5
  169. package/internals/hooks/useStaticPicker/useStaticPicker.types.d.ts +6 -6
  170. package/internals/hooks/useUtils.d.ts +7 -7
  171. package/internals/hooks/useValueWithTimezone.d.ts +19 -15
  172. package/internals/hooks/useValueWithTimezone.js +13 -1
  173. package/internals/hooks/useViews.d.ts +3 -3
  174. package/internals/hooks/useViews.js +1 -1
  175. package/internals/index.d.ts +7 -5
  176. package/internals/index.js +2 -1
  177. package/internals/models/common.d.ts +2 -1
  178. package/internals/models/fields.d.ts +32 -7
  179. package/internals/models/formProps.d.ts +14 -0
  180. package/internals/models/helpers.d.ts +0 -4
  181. package/internals/models/index.d.ts +2 -0
  182. package/internals/models/index.js +3 -1
  183. package/internals/models/props/basePickerProps.d.ts +5 -6
  184. package/internals/models/props/{clock.d.ts → time.d.ts} +10 -17
  185. package/internals/models/props/toolbar.d.ts +0 -2
  186. package/internals/models/validation.d.ts +21 -25
  187. package/internals/models/value.d.ts +3 -0
  188. package/internals/models/value.js +1 -0
  189. package/internals/utils/date-time-utils.d.ts +7 -7
  190. package/internals/utils/date-utils.d.ts +17 -17
  191. package/internals/utils/getDefaultReferenceDate.d.ts +10 -10
  192. package/internals/utils/time-utils.d.ts +5 -5
  193. package/internals/utils/valueManagers.d.ts +3 -3
  194. package/locales/beBY.d.ts +3 -3
  195. package/locales/beBY.js +3 -3
  196. package/locales/bgBG.d.ts +3 -3
  197. package/locales/bgBG.js +3 -3
  198. package/locales/caES.d.ts +3 -3
  199. package/locales/caES.js +3 -3
  200. package/locales/csCZ.d.ts +3 -3
  201. package/locales/csCZ.js +3 -3
  202. package/locales/daDK.d.ts +3 -3
  203. package/locales/daDK.js +3 -3
  204. package/locales/deDE.d.ts +3 -3
  205. package/locales/deDE.js +3 -3
  206. package/locales/elGR.d.ts +3 -3
  207. package/locales/elGR.js +12 -13
  208. package/locales/enUS.d.ts +4 -4
  209. package/locales/enUS.js +3 -3
  210. package/locales/esES.d.ts +3 -3
  211. package/locales/esES.js +3 -3
  212. package/locales/eu.d.ts +3 -3
  213. package/locales/eu.js +3 -3
  214. package/locales/faIR.d.ts +3 -3
  215. package/locales/faIR.js +3 -3
  216. package/locales/fiFI.d.ts +3 -3
  217. package/locales/fiFI.js +3 -3
  218. package/locales/frFR.d.ts +3 -3
  219. package/locales/frFR.js +3 -3
  220. package/locales/heIL.d.ts +3 -3
  221. package/locales/heIL.js +3 -3
  222. package/locales/hrHR.d.ts +3 -3
  223. package/locales/hrHR.js +3 -3
  224. package/locales/huHU.d.ts +3 -3
  225. package/locales/huHU.js +3 -3
  226. package/locales/isIS.d.ts +3 -3
  227. package/locales/isIS.js +3 -3
  228. package/locales/itIT.d.ts +3 -3
  229. package/locales/itIT.js +3 -3
  230. package/locales/jaJP.d.ts +3 -3
  231. package/locales/jaJP.js +3 -3
  232. package/locales/koKR.d.ts +3 -3
  233. package/locales/koKR.js +3 -3
  234. package/locales/kzKZ.d.ts +3 -3
  235. package/locales/kzKZ.js +3 -3
  236. package/locales/mk.d.ts +3 -3
  237. package/locales/mk.js +3 -3
  238. package/locales/nbNO.d.ts +3 -3
  239. package/locales/nbNO.js +3 -3
  240. package/locales/nlNL.d.ts +3 -3
  241. package/locales/nlNL.js +3 -3
  242. package/locales/nnNO.d.ts +3 -3
  243. package/locales/nnNO.js +3 -3
  244. package/locales/plPL.d.ts +3 -3
  245. package/locales/plPL.js +3 -3
  246. package/locales/ptBR.d.ts +3 -3
  247. package/locales/ptBR.js +5 -3
  248. package/locales/ptPT.d.ts +3 -3
  249. package/locales/ptPT.js +3 -3
  250. package/locales/roRO.d.ts +3 -3
  251. package/locales/roRO.js +3 -3
  252. package/locales/ruRU.d.ts +3 -3
  253. package/locales/ruRU.js +3 -3
  254. package/locales/skSK.d.ts +3 -3
  255. package/locales/skSK.js +3 -3
  256. package/locales/svSE.d.ts +3 -3
  257. package/locales/svSE.js +3 -3
  258. package/locales/trTR.d.ts +3 -3
  259. package/locales/trTR.js +3 -3
  260. package/locales/ukUA.d.ts +3 -3
  261. package/locales/ukUA.js +3 -3
  262. package/locales/urPK.d.ts +3 -3
  263. package/locales/urPK.js +3 -3
  264. package/locales/utils/getPickersLocalization.d.ts +9 -9
  265. package/locales/utils/getPickersLocalization.js +1 -1
  266. package/locales/utils/pickersLocaleTextApi.d.ts +12 -36
  267. package/locales/viVN.d.ts +3 -3
  268. package/locales/viVN.js +3 -3
  269. package/locales/zhCN.d.ts +3 -3
  270. package/locales/zhCN.js +3 -3
  271. package/locales/zhHK.d.ts +3 -3
  272. package/locales/zhHK.js +3 -3
  273. package/models/adapters.d.ts +151 -202
  274. package/models/common.d.ts +1 -0
  275. package/models/fields.d.ts +9 -42
  276. package/models/pickers.d.ts +28 -6
  277. package/modern/DateCalendar/DateCalendar.js +21 -22
  278. package/modern/DateCalendar/DayCalendar.js +13 -10
  279. package/modern/DateField/DateField.js +8 -10
  280. package/modern/DatePicker/DatePicker.js +15 -14
  281. package/modern/DatePicker/DatePickerToolbar.js +2 -4
  282. package/modern/DateTimeField/DateTimeField.js +9 -12
  283. package/modern/DateTimePicker/DateTimePicker.js +16 -16
  284. package/modern/DateTimePicker/DateTimePickerTabs.js +2 -2
  285. package/modern/DateTimePicker/DateTimePickerToolbar.js +8 -7
  286. package/modern/DesktopDatePicker/DesktopDatePicker.js +17 -16
  287. package/modern/DesktopDateTimePicker/DesktopDateTimePicker.js +18 -18
  288. package/modern/DesktopDateTimePicker/DesktopDateTimePickerLayout.js +0 -2
  289. package/modern/DesktopTimePicker/DesktopTimePicker.js +11 -6
  290. package/modern/DigitalClock/DigitalClock.js +8 -6
  291. package/modern/MobileDatePicker/MobileDatePicker.js +17 -16
  292. package/modern/MobileDateTimePicker/MobileDateTimePicker.js +18 -18
  293. package/modern/MobileTimePicker/MobileTimePicker.js +11 -6
  294. package/modern/MonthCalendar/MonthCalendar.js +18 -14
  295. package/modern/MonthCalendar/PickersMonth.js +17 -13
  296. package/modern/MultiSectionDigitalClock/MultiSectionDigitalClock.js +8 -6
  297. package/modern/PickersActionBar/PickersActionBar.js +2 -2
  298. package/modern/PickersCalendarHeader/PickersCalendarHeader.js +2 -2
  299. package/modern/PickersLayout/PickersLayout.js +0 -2
  300. package/modern/PickersLayout/usePickerLayout.js +18 -23
  301. package/modern/PickersTextField/PickersInputBase/PickersInputBase.js +10 -9
  302. package/modern/PickersTextField/PickersTextField.js +2 -2
  303. package/modern/StaticDatePicker/StaticDatePicker.js +14 -13
  304. package/modern/StaticDateTimePicker/StaticDateTimePicker.js +15 -15
  305. package/modern/StaticTimePicker/StaticTimePicker.js +8 -3
  306. package/modern/TimeClock/Clock.js +4 -3
  307. package/modern/TimeClock/TimeClock.js +8 -6
  308. package/modern/TimeField/TimeField.js +6 -6
  309. package/modern/TimePicker/TimePicker.js +9 -4
  310. package/modern/TimePicker/TimePickerToolbar.js +8 -7
  311. package/modern/YearCalendar/PickersYear.js +17 -13
  312. package/modern/YearCalendar/YearCalendar.js +18 -14
  313. package/modern/hooks/index.js +2 -2
  314. package/modern/hooks/useClearableField.js +4 -3
  315. package/modern/hooks/useParsedFormat.js +2 -2
  316. package/modern/hooks/usePickerContext.js +15 -0
  317. package/{hooks/usePickersTranslations.js → modern/hooks/usePickerTranslations.js} +1 -1
  318. package/modern/index.js +1 -1
  319. package/modern/internals/components/PickerProvider.js +40 -0
  320. package/modern/internals/hooks/useDesktopPicker/useDesktopPicker.js +22 -18
  321. package/modern/internals/hooks/useField/useField.js +1 -1
  322. package/modern/internals/hooks/useField/useFieldState.js +4 -3
  323. package/modern/internals/hooks/useField/useFieldV7TextField.js +4 -3
  324. package/modern/internals/hooks/useMobilePicker/useMobilePicker.js +24 -19
  325. package/modern/internals/hooks/usePicker/usePicker.js +15 -10
  326. package/modern/internals/hooks/usePicker/usePickerLayoutProps.js +2 -5
  327. package/modern/internals/hooks/usePicker/usePickerProvider.js +77 -0
  328. package/modern/internals/hooks/usePicker/usePickerValue.js +7 -10
  329. package/modern/internals/hooks/usePicker/usePickerViews.js +1 -0
  330. package/modern/internals/hooks/usePickerPrivateContext.js +9 -0
  331. package/modern/internals/hooks/useStaticPicker/useStaticPicker.js +6 -5
  332. package/modern/internals/hooks/useValueWithTimezone.js +13 -1
  333. package/modern/internals/hooks/useViews.js +1 -1
  334. package/modern/internals/index.js +2 -1
  335. package/modern/internals/models/formProps.js +1 -0
  336. package/modern/internals/models/index.js +3 -1
  337. package/modern/internals/models/props/time.js +1 -0
  338. package/modern/internals/models/value.js +1 -0
  339. package/modern/locales/beBY.js +3 -3
  340. package/modern/locales/bgBG.js +3 -3
  341. package/modern/locales/caES.js +3 -3
  342. package/modern/locales/csCZ.js +3 -3
  343. package/modern/locales/daDK.js +3 -3
  344. package/modern/locales/deDE.js +3 -3
  345. package/modern/locales/elGR.js +12 -13
  346. package/modern/locales/enUS.js +3 -3
  347. package/modern/locales/esES.js +3 -3
  348. package/modern/locales/eu.js +3 -3
  349. package/modern/locales/faIR.js +3 -3
  350. package/modern/locales/fiFI.js +3 -3
  351. package/modern/locales/frFR.js +3 -3
  352. package/modern/locales/heIL.js +3 -3
  353. package/modern/locales/hrHR.js +3 -3
  354. package/modern/locales/huHU.js +3 -3
  355. package/modern/locales/isIS.js +3 -3
  356. package/modern/locales/itIT.js +3 -3
  357. package/modern/locales/jaJP.js +3 -3
  358. package/modern/locales/koKR.js +3 -3
  359. package/modern/locales/kzKZ.js +3 -3
  360. package/modern/locales/mk.js +3 -3
  361. package/modern/locales/nbNO.js +3 -3
  362. package/modern/locales/nlNL.js +3 -3
  363. package/modern/locales/nnNO.js +3 -3
  364. package/modern/locales/plPL.js +3 -3
  365. package/modern/locales/ptBR.js +5 -3
  366. package/modern/locales/ptPT.js +3 -3
  367. package/modern/locales/roRO.js +3 -3
  368. package/modern/locales/ruRU.js +3 -3
  369. package/modern/locales/skSK.js +3 -3
  370. package/modern/locales/svSE.js +3 -3
  371. package/modern/locales/trTR.js +3 -3
  372. package/modern/locales/ukUA.js +3 -3
  373. package/modern/locales/urPK.js +3 -3
  374. package/modern/locales/utils/getPickersLocalization.js +1 -1
  375. package/modern/locales/viVN.js +3 -3
  376. package/modern/locales/zhCN.js +3 -3
  377. package/modern/locales/zhHK.js +3 -3
  378. package/modern/validation/useValidation.js +2 -3
  379. package/modern/validation/validateDate.js +5 -0
  380. package/modern/validation/validateDateTime.js +5 -0
  381. package/modern/validation/validateTime.js +5 -0
  382. package/node/DateCalendar/DateCalendar.js +21 -22
  383. package/node/DateCalendar/DayCalendar.js +13 -10
  384. package/node/DateField/DateField.js +8 -10
  385. package/node/DatePicker/DatePicker.js +15 -14
  386. package/node/DatePicker/DatePickerToolbar.js +2 -4
  387. package/node/DateTimeField/DateTimeField.js +9 -12
  388. package/node/DateTimePicker/DateTimePicker.js +16 -16
  389. package/node/DateTimePicker/DateTimePickerTabs.js +2 -2
  390. package/node/DateTimePicker/DateTimePickerToolbar.js +8 -7
  391. package/node/DesktopDatePicker/DesktopDatePicker.js +17 -16
  392. package/node/DesktopDateTimePicker/DesktopDateTimePicker.js +18 -18
  393. package/node/DesktopDateTimePicker/DesktopDateTimePickerLayout.js +0 -2
  394. package/node/DesktopTimePicker/DesktopTimePicker.js +11 -6
  395. package/node/DigitalClock/DigitalClock.js +8 -6
  396. package/node/MobileDatePicker/MobileDatePicker.js +17 -16
  397. package/node/MobileDateTimePicker/MobileDateTimePicker.js +18 -18
  398. package/node/MobileTimePicker/MobileTimePicker.js +11 -6
  399. package/node/MonthCalendar/MonthCalendar.js +18 -14
  400. package/node/MonthCalendar/PickersMonth.js +17 -13
  401. package/node/MultiSectionDigitalClock/MultiSectionDigitalClock.js +8 -6
  402. package/node/PickersActionBar/PickersActionBar.js +2 -2
  403. package/node/PickersCalendarHeader/PickersCalendarHeader.js +2 -2
  404. package/node/PickersLayout/PickersLayout.js +0 -2
  405. package/node/PickersLayout/usePickerLayout.js +18 -23
  406. package/node/PickersTextField/PickersInputBase/PickersInputBase.js +10 -9
  407. package/node/PickersTextField/PickersTextField.js +2 -2
  408. package/node/StaticDatePicker/StaticDatePicker.js +14 -13
  409. package/node/StaticDateTimePicker/StaticDateTimePicker.js +15 -15
  410. package/node/StaticTimePicker/StaticTimePicker.js +8 -3
  411. package/node/TimeClock/Clock.js +4 -3
  412. package/node/TimeClock/TimeClock.js +8 -6
  413. package/node/TimeField/TimeField.js +6 -6
  414. package/node/TimePicker/TimePicker.js +9 -4
  415. package/node/TimePicker/TimePickerToolbar.js +8 -7
  416. package/node/YearCalendar/PickersYear.js +17 -13
  417. package/node/YearCalendar/YearCalendar.js +18 -14
  418. package/node/hooks/index.js +6 -6
  419. package/node/hooks/useClearableField.js +4 -3
  420. package/node/hooks/useParsedFormat.js +2 -2
  421. package/node/hooks/usePickerContext.js +21 -0
  422. package/node/hooks/usePickerTranslations.js +10 -0
  423. package/node/index.js +1 -1
  424. package/node/internals/components/PickerProvider.js +48 -0
  425. package/node/internals/hooks/useDesktopPicker/useDesktopPicker.js +22 -18
  426. package/node/internals/hooks/useField/useField.js +1 -1
  427. package/node/internals/hooks/useField/useFieldState.js +4 -3
  428. package/node/internals/hooks/useField/useFieldV7TextField.js +4 -3
  429. package/node/internals/hooks/useMobilePicker/useMobilePicker.js +24 -19
  430. package/node/internals/hooks/usePicker/usePicker.js +15 -10
  431. package/node/internals/hooks/usePicker/usePickerLayoutProps.js +2 -5
  432. package/node/internals/hooks/usePicker/usePickerProvider.js +87 -0
  433. package/node/internals/hooks/usePicker/usePickerValue.js +6 -10
  434. package/node/internals/hooks/usePicker/usePickerViews.js +1 -0
  435. package/node/internals/hooks/usePickerPrivateContext.js +15 -0
  436. package/node/internals/hooks/useStaticPicker/useStaticPicker.js +6 -5
  437. package/node/internals/hooks/useValueWithTimezone.js +13 -1
  438. package/node/internals/hooks/useViews.js +3 -3
  439. package/node/internals/index.js +14 -7
  440. package/node/internals/models/index.js +22 -0
  441. package/node/internals/models/props/time.js +5 -0
  442. package/node/internals/models/value.js +5 -0
  443. package/node/locales/beBY.js +3 -3
  444. package/node/locales/bgBG.js +3 -3
  445. package/node/locales/caES.js +3 -3
  446. package/node/locales/csCZ.js +3 -3
  447. package/node/locales/daDK.js +3 -3
  448. package/node/locales/deDE.js +3 -3
  449. package/node/locales/elGR.js +12 -13
  450. package/node/locales/enUS.js +3 -3
  451. package/node/locales/esES.js +3 -3
  452. package/node/locales/eu.js +3 -3
  453. package/node/locales/faIR.js +3 -3
  454. package/node/locales/fiFI.js +3 -3
  455. package/node/locales/frFR.js +3 -3
  456. package/node/locales/heIL.js +3 -3
  457. package/node/locales/hrHR.js +3 -3
  458. package/node/locales/huHU.js +3 -3
  459. package/node/locales/isIS.js +3 -3
  460. package/node/locales/itIT.js +3 -3
  461. package/node/locales/jaJP.js +3 -3
  462. package/node/locales/koKR.js +3 -3
  463. package/node/locales/kzKZ.js +3 -3
  464. package/node/locales/mk.js +3 -3
  465. package/node/locales/nbNO.js +3 -3
  466. package/node/locales/nlNL.js +3 -3
  467. package/node/locales/nnNO.js +3 -3
  468. package/node/locales/plPL.js +3 -3
  469. package/node/locales/ptBR.js +5 -3
  470. package/node/locales/ptPT.js +3 -3
  471. package/node/locales/roRO.js +3 -3
  472. package/node/locales/ruRU.js +3 -3
  473. package/node/locales/skSK.js +3 -3
  474. package/node/locales/svSE.js +3 -3
  475. package/node/locales/trTR.js +3 -3
  476. package/node/locales/ukUA.js +3 -3
  477. package/node/locales/urPK.js +3 -3
  478. package/node/locales/utils/getPickersLocalization.js +1 -1
  479. package/node/locales/viVN.js +3 -3
  480. package/node/locales/zhCN.js +3 -3
  481. package/node/locales/zhHK.js +3 -3
  482. package/node/validation/useValidation.js +2 -3
  483. package/node/validation/validateDate.js +4 -0
  484. package/node/validation/validateDateTime.js +4 -0
  485. package/node/validation/validateTime.js +4 -0
  486. package/package.json +5 -5
  487. package/themeAugmentation/props.d.ts +28 -28
  488. package/timeViewRenderers/timeViewRenderers.d.ts +6 -6
  489. package/validation/extractValidationProps.d.ts +4 -4
  490. package/validation/useValidation.d.ts +9 -10
  491. package/validation/useValidation.js +2 -3
  492. package/validation/validateDate.d.ts +7 -2
  493. package/validation/validateDate.js +5 -0
  494. package/validation/validateDateTime.d.ts +10 -4
  495. package/validation/validateDateTime.js +5 -0
  496. package/validation/validateTime.d.ts +7 -2
  497. package/validation/validateTime.js +5 -0
  498. package/hooks/usePickersContext.d.ts +0 -4
  499. package/hooks/usePickersContext.js +0 -15
  500. package/hooks/usePickersTranslations.d.ts +0 -2
  501. package/internals/components/PickersProvider.d.ts +0 -34
  502. package/internals/components/PickersProvider.js +0 -26
  503. package/internals/hooks/usePicker/usePickerOwnerState.d.ts +0 -9
  504. package/internals/hooks/usePicker/usePickerOwnerState.js +0 -13
  505. package/modern/hooks/usePickersContext.js +0 -15
  506. package/modern/internals/components/PickersProvider.js +0 -26
  507. package/modern/internals/hooks/usePicker/usePickerOwnerState.js +0 -13
  508. package/node/hooks/usePickersContext.js +0 -21
  509. package/node/hooks/usePickersTranslations.js +0 -10
  510. package/node/internals/components/PickersProvider.js +0 -34
  511. package/node/internals/hooks/usePicker/usePickerOwnerState.js +0 -20
  512. /package/internals/models/{props/clock.js → formProps.js} +0 -0
  513. /package/{modern/internals/models/props/clock.js → internals/models/props/time.js} +0 -0
  514. /package/node/internals/models/{props/clock.js → formProps.js} +0 -0
@@ -37,7 +37,7 @@ const zhCNPickers = {
37
37
  timePickerToolbarTitle: '选择时间',
38
38
  dateRangePickerToolbarTitle: '选择时间范围',
39
39
  // Clock labels
40
- clockLabelText: (view, time, utils, formattedTime) => `选择 ${views[view]}. ${!formattedTime && (time === null || !utils.isValid(time)) ? '未选择时间' : `已选择${formattedTime ?? utils.format(time, 'fullTime')}`}`,
40
+ clockLabelText: (view, formattedTime) => `选择 ${views[view]}. ${!formattedTime ? '未选择时间' : `已选择${formattedTime}`}`,
41
41
  hoursClockNumberText: hours => `${hours}小时`,
42
42
  minutesClockNumberText: minutes => `${minutes}分钟`,
43
43
  secondsClockNumberText: seconds => `${seconds}秒`,
@@ -49,8 +49,8 @@ const zhCNPickers = {
49
49
  calendarWeekNumberAriaLabelText: weekNumber => `第${weekNumber}周`,
50
50
  calendarWeekNumberText: weekNumber => `${weekNumber}`,
51
51
  // Open picker labels
52
- openDatePickerDialogue: (value, utils, formattedDate) => formattedDate || value !== null && utils.isValid(value) ? `选择日期,已选择${formattedDate ?? utils.format(value, 'fullDate')}` : '选择日期',
53
- openTimePickerDialogue: (value, utils, formattedTime) => formattedTime || value !== null && utils.isValid(value) ? `选择时间,已选择${formattedTime ?? utils.format(value, 'fullTime')}` : '选择时间',
52
+ openDatePickerDialogue: formattedDate => formattedDate ? `选择日期,已选择${formattedDate}` : '选择日期',
53
+ openTimePickerDialogue: formattedTime => formattedTime ? `选择时间,已选择${formattedTime}` : '选择时间',
54
54
  fieldClearLabel: '清除',
55
55
  // Table labels
56
56
  timeTableLabel: '选择时间',
@@ -37,7 +37,7 @@ const zhHKPickers = {
37
37
  timePickerToolbarTitle: '選擇時間',
38
38
  dateRangePickerToolbarTitle: '選擇時間範圍',
39
39
  // Clock labels
40
- clockLabelText: (view, time, utils, formattedTime) => `選擇 ${views[view]}. ${!formattedTime && (time === null || !utils.isValid(time)) ? '未選擇時間' : `已選擇${formattedTime ?? utils.format(time, 'fullTime')}`}`,
40
+ clockLabelText: (view, formattedTime) => `選擇 ${views[view]}. ${!formattedTime ? '未選擇時間' : `已選擇${formattedTime}`}`,
41
41
  hoursClockNumberText: hours => `${hours}小時`,
42
42
  minutesClockNumberText: minutes => `${minutes}分鐘`,
43
43
  secondsClockNumberText: seconds => `${seconds}秒`,
@@ -49,8 +49,8 @@ const zhHKPickers = {
49
49
  calendarWeekNumberAriaLabelText: weekNumber => `第${weekNumber}週`,
50
50
  calendarWeekNumberText: weekNumber => `${weekNumber}`,
51
51
  // Open picker labels
52
- openDatePickerDialogue: (value, utils, formattedDate) => formattedDate || value !== null && utils.isValid(value) ? `選擇日期,已選擇${formattedDate ?? utils.format(value, 'fullDate')}` : '選擇日期',
53
- openTimePickerDialogue: (value, utils, formattedTime) => formattedTime || value !== null && utils.isValid(value) ? `選擇時間,已選擇${formattedTime ?? utils.format(value, 'fullTime')}` : '選擇時間',
52
+ openDatePickerDialogue: formattedDate => formattedDate ? `選擇日期,已選擇${formattedDate}` : '選擇日期',
53
+ openTimePickerDialogue: formattedTime => formattedTime ? `選擇時間,已選擇${formattedTime}` : '選擇時間',
54
54
  fieldClearLabel: '清除',
55
55
  // Table labels
56
56
  timeTableLabel: '選擇時間',
@@ -12,13 +12,12 @@ var _useEventCallback = _interopRequireDefault(require("@mui/utils/useEventCallb
12
12
  var _useUtils = require("../internals/hooks/useUtils");
13
13
  /**
14
14
  * Utility hook to check if a given value is valid based on the provided validation props.
15
- * @template TDate
16
15
  * @template TValue The value type. It will be either the same type as `value` or `null`. It can be in `[start, end]` format in case of range value.
17
16
  * @template TError The validation error type. It will be either `string` or a `null`. It can be in `[start, end]` format in case of range value.
18
- * @param {UseValidationOptions<TValue, TDate, TError, TValidationProps>} options The options to configure the hook.
17
+ * @param {UseValidationOptions<TValue, TError, TValidationProps>} options The options to configure the hook.
19
18
  * @param {TValue} options.value The value to validate.
20
19
  * @param {PickersTimezone} options.timezone The timezone to use for the validation.
21
- * @param {Validator<TValue, TDate, TError, TValidationProps>} options.validator The validator function to use.
20
+ * @param {Validator<TValue, TError, TValidationProps>} options.validator The validator function to use.
22
21
  * @param {TValidationProps} options.props The validation props, they differ depending on the component.
23
22
  * @param {(error: TError, value: TValue) => void} options.onError Callback fired when the error associated with the current value changes.
24
23
  */
@@ -6,6 +6,10 @@ Object.defineProperty(exports, "__esModule", {
6
6
  exports.validateDate = void 0;
7
7
  var _dateUtils = require("../internals/utils/date-utils");
8
8
  var _valueManagers = require("../internals/utils/valueManagers");
9
+ /**
10
+ * Validation props used by the Date Picker, Date Field and Date Calendar components.
11
+ */
12
+
9
13
  const validateDate = ({
10
14
  props,
11
15
  value,
@@ -7,6 +7,10 @@ exports.validateDateTime = void 0;
7
7
  var _validateDate = require("./validateDate");
8
8
  var _validateTime = require("./validateTime");
9
9
  var _valueManagers = require("../internals/utils/valueManagers");
10
+ /**
11
+ * Validation props used by the Date Time Picker and Date Time Field components.
12
+ */
13
+
10
14
  const validateDateTime = ({
11
15
  adapter,
12
16
  value,
@@ -6,6 +6,10 @@ Object.defineProperty(exports, "__esModule", {
6
6
  exports.validateTime = void 0;
7
7
  var _timeUtils = require("../internals/utils/time-utils");
8
8
  var _valueManagers = require("../internals/utils/valueManagers");
9
+ /**
10
+ * Validation props used by the Time Picker, Time Field and Clock components.
11
+ */
12
+
9
13
  const validateTime = ({
10
14
  adapter,
11
15
  value,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mui/x-date-pickers",
3
- "version": "7.22.3",
3
+ "version": "8.0.0-alpha.1",
4
4
  "description": "The community edition of the Date and Time Picker components (MUI X).",
5
5
  "author": "MUI Team",
6
6
  "main": "./node/index.js",
@@ -35,13 +35,13 @@
35
35
  "directory": "packages/x-date-pickers"
36
36
  },
37
37
  "dependencies": {
38
- "@babel/runtime": "^7.25.7",
38
+ "@babel/runtime": "^7.26.0",
39
39
  "@mui/utils": "^5.16.6 || ^6.0.0",
40
40
  "@types/react-transition-group": "^4.4.11",
41
41
  "clsx": "^2.1.1",
42
42
  "prop-types": "^15.8.1",
43
43
  "react-transition-group": "^4.4.5",
44
- "@mui/x-internals": "7.21.0"
44
+ "@mui/x-internals": "8.0.0-alpha.1"
45
45
  },
46
46
  "peerDependencies": {
47
47
  "@emotion/react": "^11.9.0",
@@ -55,8 +55,8 @@
55
55
  "moment": "^2.29.4",
56
56
  "moment-hijri": "^2.1.2 || ^3.0.0",
57
57
  "moment-jalaali": "^0.7.4 || ^0.8.0 || ^0.9.0 || ^0.10.0",
58
- "react": "^17.0.0 || ^18.0.0",
59
- "react-dom": "^17.0.0 || ^18.0.0"
58
+ "react": "^17.0.0 || ^18.0.0 || ^19.0.0",
59
+ "react-dom": "^17.0.0 || ^18.0.0 || ^19.0.0"
60
60
  },
61
61
  "peerDependenciesMeta": {
62
62
  "@emotion/react": {
@@ -17,7 +17,7 @@ import { PickerPopperProps } from '../internals/components/PickersPopper';
17
17
  import { PickersToolbarProps } from '../internals/components/PickersToolbar';
18
18
  import { PickersToolbarButtonProps } from '../internals/components/PickersToolbarButton';
19
19
  import { ExportedPickersToolbarTextProps } from '../internals/components/PickersToolbarText';
20
- import { DateOrTimeView, PickerValidDate } from '../models';
20
+ import { DateOrTimeView } from '../models';
21
21
 
22
22
  import { DatePickerProps } from '../DatePicker';
23
23
  import { ExportedDatePickerToolbarProps } from '../DatePicker/DatePickerToolbar';
@@ -54,25 +54,25 @@ import {
54
54
  import { PickersSectionListProps } from '../PickersSectionList';
55
55
 
56
56
  export interface PickersComponentsPropsList {
57
- MuiClock: ClockProps<PickerValidDate>;
57
+ MuiClock: ClockProps;
58
58
  MuiClockNumber: ClockNumberProps;
59
59
  MuiClockPointer: ClockPointerProps;
60
- MuiDateCalendar: DateCalendarProps<PickerValidDate>;
61
- MuiDateField: DateFieldProps<PickerValidDate, any>;
60
+ MuiDateCalendar: DateCalendarProps;
61
+ MuiDateField: DateFieldProps<any>;
62
62
  MuiDatePickerToolbar: ExportedDatePickerToolbarProps;
63
- MuiDateTimeField: DateTimeFieldProps<PickerValidDate, any>;
63
+ MuiDateTimeField: DateTimeFieldProps<any>;
64
64
  MuiDateTimePickerTabs: DateTimePickerTabsProps;
65
65
  MuiDateTimePickerToolbar: ExportedDateTimePickerToolbarProps;
66
- MuiDayCalendar: DayCalendarProps<PickerValidDate>;
66
+ MuiDayCalendar: DayCalendarProps;
67
67
  MuiDayCalendarSkeleton: DayCalendarSkeletonProps;
68
- MuiDigitalClock: ExportedDigitalClockProps<PickerValidDate>;
69
- MuiLocalizationProvider: LocalizationProviderProps<PickerValidDate, unknown>;
70
- MuiMonthCalendar: MonthCalendarProps<PickerValidDate>;
71
- MuiMultiSectionDigitalClock: MultiSectionDigitalClockProps<PickerValidDate>;
68
+ MuiDigitalClock: ExportedDigitalClockProps;
69
+ MuiLocalizationProvider: LocalizationProviderProps<unknown>;
70
+ MuiMonthCalendar: MonthCalendarProps;
71
+ MuiMultiSectionDigitalClock: MultiSectionDigitalClockProps;
72
72
  MuiMultiSectionDigitalClockSection: ExportedMultiSectionDigitalClockSectionProps;
73
73
  MuiPickersArrowSwitcher: ExportedPickersArrowSwitcherProps;
74
- MuiPickersCalendarHeader: ExportedPickersCalendarHeaderProps<PickerValidDate>;
75
- MuiPickersDay: PickersDayProps<PickerValidDate>;
74
+ MuiPickersCalendarHeader: ExportedPickersCalendarHeaderProps;
75
+ MuiPickersDay: PickersDayProps;
76
76
  MuiPickersFadeTransitionGroup: PickersFadeTransitionGroupProps;
77
77
  MuiPickersMonth: ExportedPickersMonthProps;
78
78
  MuiPickersPopper: PickerPopperProps;
@@ -80,30 +80,30 @@ export interface PickersComponentsPropsList {
80
80
  MuiPickersToolbar: PickersToolbarProps<unknown, DateOrTimeView>;
81
81
  MuiPickersToolbarButton: PickersToolbarButtonProps;
82
82
  MuiPickersToolbarText: ExportedPickersToolbarTextProps;
83
- MuiPickersLayout: PickersLayoutProps<unknown, PickerValidDate, DateOrTimeView>;
83
+ MuiPickersLayout: PickersLayoutProps<unknown, DateOrTimeView>;
84
84
  MuiPickersYear: ExportedPickersYearProps;
85
- MuiTimeClock: TimeClockProps<PickerValidDate>;
86
- MuiTimeField: TimeFieldProps<PickerValidDate, any>;
85
+ MuiTimeClock: TimeClockProps;
86
+ MuiTimeField: TimeFieldProps<any>;
87
87
  MuiTimePickerToolbar: ExportedTimePickerToolbarProps;
88
- MuiYearCalendar: YearCalendarProps<PickerValidDate>;
88
+ MuiYearCalendar: YearCalendarProps;
89
89
 
90
90
  // Date Pickers
91
- MuiDatePicker: DatePickerProps<PickerValidDate>;
92
- MuiDesktopDatePicker: DesktopDatePickerProps<PickerValidDate>;
93
- MuiMobileDatePicker: MobileDatePickerProps<PickerValidDate>;
94
- MuiStaticDatePicker: StaticDatePickerProps<PickerValidDate>;
91
+ MuiDatePicker: DatePickerProps;
92
+ MuiDesktopDatePicker: DesktopDatePickerProps;
93
+ MuiMobileDatePicker: MobileDatePickerProps;
94
+ MuiStaticDatePicker: StaticDatePickerProps;
95
95
 
96
96
  // Time Pickers
97
- MuiTimePicker: TimePickerProps<PickerValidDate>;
98
- MuiDesktopTimePicker: DesktopTimePickerProps<PickerValidDate>;
99
- MuiMobileTimePicker: MobileTimePickerProps<PickerValidDate>;
100
- MuiStaticTimePicker: StaticTimePickerProps<PickerValidDate>;
97
+ MuiTimePicker: TimePickerProps;
98
+ MuiDesktopTimePicker: DesktopTimePickerProps;
99
+ MuiMobileTimePicker: MobileTimePickerProps;
100
+ MuiStaticTimePicker: StaticTimePickerProps;
101
101
 
102
102
  // Date Time Pickers
103
- MuiDateTimePicker: DateTimePickerProps<PickerValidDate>;
104
- MuiDesktopDateTimePicker: DesktopDateTimePickerProps<PickerValidDate>;
105
- MuiMobileDateTimePicker: MobileDateTimePickerProps<PickerValidDate>;
106
- MuiStaticDateTimePicker: StaticDateTimePickerProps<PickerValidDate>;
103
+ MuiDateTimePicker: DateTimePickerProps;
104
+ MuiDesktopDateTimePicker: DesktopDateTimePickerProps;
105
+ MuiMobileDateTimePicker: MobileDateTimePickerProps;
106
+ MuiStaticDateTimePicker: StaticDateTimePickerProps;
107
107
 
108
108
  // V7 Picker's TextField
109
109
  MuiPickersTextField: PickersTextFieldProps;
@@ -1,16 +1,16 @@
1
1
  import * as React from 'react';
2
2
  import { TimeClockProps } from '../TimeClock';
3
- import { PickerValidDate, TimeView } from '../models';
3
+ import { TimeView } from '../models';
4
4
  import { DigitalClockProps } from '../DigitalClock';
5
- import { BaseClockProps } from '../internals/models/props/clock';
5
+ import { BaseClockProps } from '../internals/models/props/time';
6
6
  import { MultiSectionDigitalClockProps } from '../MultiSectionDigitalClock';
7
7
  import { TimeViewWithMeridiem } from '../internals/models';
8
8
  import type { TimePickerProps } from '../TimePicker/TimePicker.types';
9
- export type TimeViewRendererProps<TView extends TimeViewWithMeridiem, TComponentProps extends BaseClockProps<any, TView>> = Omit<TComponentProps, 'views' | 'openTo' | 'view' | 'onViewChange'> & {
9
+ export type TimeViewRendererProps<TView extends TimeViewWithMeridiem, TComponentProps extends BaseClockProps<TView>> = Omit<TComponentProps, 'views' | 'openTo' | 'view' | 'onViewChange'> & {
10
10
  view: TView;
11
11
  onViewChange?: (view: TView) => void;
12
12
  views: readonly TView[];
13
13
  };
14
- export declare const renderTimeViewClock: <TDate extends PickerValidDate>({ view, onViewChange, focusedView, onFocusedViewChange, views, value, defaultValue, referenceDate, onChange, className, classes, disableFuture, disablePast, minTime, maxTime, shouldDisableTime, minutesStep, ampm, ampmInClock, slots, slotProps, readOnly, disabled, sx, autoFocus, showViewSwitcher, disableIgnoringDatePartForTimeValidation, timezone, }: TimeViewRendererProps<TimeView, TimeClockProps<TDate, TimeView>>) => React.JSX.Element;
15
- export declare const renderDigitalClockTimeView: <TDate extends PickerValidDate>({ view, onViewChange, focusedView, onFocusedViewChange, views, value, defaultValue, referenceDate, onChange, className, classes, disableFuture, disablePast, minTime, maxTime, shouldDisableTime, minutesStep, ampm, slots, slotProps, readOnly, disabled, sx, autoFocus, disableIgnoringDatePartForTimeValidation, timeSteps, skipDisabled, timezone, }: TimeViewRendererProps<Extract<TimeView, "hours">, Omit<DigitalClockProps<TDate>, "timeStep"> & Pick<TimePickerProps<TDate>, "timeSteps">>) => React.JSX.Element;
16
- export declare const renderMultiSectionDigitalClockTimeView: <TDate extends PickerValidDate>({ view, onViewChange, focusedView, onFocusedViewChange, views, value, defaultValue, referenceDate, onChange, className, classes, disableFuture, disablePast, minTime, maxTime, shouldDisableTime, minutesStep, ampm, slots, slotProps, readOnly, disabled, sx, autoFocus, disableIgnoringDatePartForTimeValidation, timeSteps, skipDisabled, timezone, }: TimeViewRendererProps<TimeViewWithMeridiem, MultiSectionDigitalClockProps<TDate>>) => React.JSX.Element;
14
+ export declare const renderTimeViewClock: ({ view, onViewChange, focusedView, onFocusedViewChange, views, value, defaultValue, referenceDate, onChange, className, classes, disableFuture, disablePast, minTime, maxTime, shouldDisableTime, minutesStep, ampm, ampmInClock, slots, slotProps, readOnly, disabled, sx, autoFocus, showViewSwitcher, disableIgnoringDatePartForTimeValidation, timezone, }: TimeViewRendererProps<TimeView, TimeClockProps<TimeView>>) => React.JSX.Element;
15
+ export declare const renderDigitalClockTimeView: ({ view, onViewChange, focusedView, onFocusedViewChange, views, value, defaultValue, referenceDate, onChange, className, classes, disableFuture, disablePast, minTime, maxTime, shouldDisableTime, minutesStep, ampm, slots, slotProps, readOnly, disabled, sx, autoFocus, disableIgnoringDatePartForTimeValidation, timeSteps, skipDisabled, timezone, }: TimeViewRendererProps<Extract<TimeView, "hours">, Omit<DigitalClockProps, "timeStep"> & Pick<TimePickerProps, "timeSteps">>) => React.JSX.Element;
16
+ export declare const renderMultiSectionDigitalClockTimeView: ({ view, onViewChange, focusedView, onFocusedViewChange, views, value, defaultValue, referenceDate, onChange, className, classes, disableFuture, disablePast, minTime, maxTime, shouldDisableTime, minutesStep, ampm, slots, slotProps, readOnly, disabled, sx, autoFocus, disableIgnoringDatePartForTimeValidation, timeSteps, skipDisabled, timezone, }: TimeViewRendererProps<TimeViewWithMeridiem, MultiSectionDigitalClockProps>) => React.JSX.Element;
@@ -1,11 +1,11 @@
1
1
  import { BaseDateValidationProps, BaseTimeValidationProps, DateTimeValidationProps, DayValidationProps, MonthValidationProps, TimeValidationProps, YearValidationProps } from '../internals/models/validation';
2
- export declare const DATE_VALIDATION_PROP_NAMES: (keyof BaseDateValidationProps<any> | keyof YearValidationProps<any> | keyof MonthValidationProps<any> | keyof DayValidationProps<any>)[];
3
- export declare const TIME_VALIDATION_PROP_NAMES: (keyof BaseTimeValidationProps | keyof TimeValidationProps<any> | 'ampm')[];
4
- export declare const DATE_TIME_VALIDATION_PROP_NAMES: (keyof DateTimeValidationProps<any>)[];
2
+ export declare const DATE_VALIDATION_PROP_NAMES: (keyof BaseDateValidationProps | keyof YearValidationProps | keyof MonthValidationProps | keyof DayValidationProps)[];
3
+ export declare const TIME_VALIDATION_PROP_NAMES: (keyof BaseTimeValidationProps | keyof TimeValidationProps | 'ampm')[];
4
+ export declare const DATE_TIME_VALIDATION_PROP_NAMES: (keyof DateTimeValidationProps)[];
5
5
  /**
6
6
  * Extract the validation props for the props received by a component.
7
7
  * Limit the risk of forgetting some of them and reduce the bundle size.
8
8
  */
9
9
  export declare const extractValidationProps: <Props extends {
10
10
  [key: string]: any;
11
- }>(props: Props) => Pick<Props, "minDate" | "maxDate" | "ampm" | "disableFuture" | "disablePast" | "minutesStep" | "shouldDisableDate" | "shouldDisableMonth" | "shouldDisableYear" | "minTime" | "maxTime" | "shouldDisableTime" | "disableIgnoringDatePartForTimeValidation" | "minDateTime" | "maxDateTime">;
11
+ }>(props: Props) => Pick<Props, "ampm" | "disableFuture" | "disablePast" | "maxDate" | "minDate" | "minutesStep" | "shouldDisableDate" | "shouldDisableMonth" | "shouldDisableYear" | "minTime" | "maxTime" | "shouldDisableTime" | "disableIgnoringDatePartForTimeValidation" | "minDateTime" | "maxDateTime">;
@@ -1,16 +1,16 @@
1
1
  import { MuiPickersAdapterContextValue } from '../LocalizationProvider/LocalizationProvider';
2
- import { OnErrorProps, PickersTimezone, PickerValidDate } from '../models';
2
+ import { OnErrorProps, PickersTimezone } from '../models';
3
3
  import type { PickerValueManager } from '../internals/hooks/usePicker';
4
- export type Validator<TValue, TDate extends PickerValidDate, TError, TValidationProps> = {
4
+ export type Validator<TValue, TError, TValidationProps> = {
5
5
  (params: {
6
- adapter: MuiPickersAdapterContextValue<TDate>;
6
+ adapter: MuiPickersAdapterContextValue;
7
7
  value: TValue;
8
8
  timezone: PickersTimezone;
9
9
  props: TValidationProps;
10
10
  }): TError;
11
- valueManager: PickerValueManager<TValue, TDate, any>;
11
+ valueManager: PickerValueManager<TValue, any>;
12
12
  };
13
- interface UseValidationOptions<TValue, TDate extends PickerValidDate, TError, TValidationProps extends {}> extends OnErrorProps<TValue, TError> {
13
+ interface UseValidationOptions<TValue, TError, TValidationProps extends {}> extends OnErrorProps<TValue, TError> {
14
14
  /**
15
15
  * The value to validate.
16
16
  */
@@ -25,7 +25,7 @@ interface UseValidationOptions<TValue, TDate extends PickerValidDate, TError, TV
25
25
  * It is recommended to only use the validator exported by the MUI X packages,
26
26
  * otherwise you may have inconsistent behaviors between the field and the views.
27
27
  */
28
- validator: Validator<TValue, TDate, TError, TValidationProps>;
28
+ validator: Validator<TValue, TError, TValidationProps>;
29
29
  /**
30
30
  * The validation props, they differ depending on the component.
31
31
  * For example, the `validateTime` function supports `minTime`, `maxTime`, etc.
@@ -54,15 +54,14 @@ interface UseValidationReturnValue<TValue, TError> {
54
54
  }
55
55
  /**
56
56
  * Utility hook to check if a given value is valid based on the provided validation props.
57
- * @template TDate
58
57
  * @template TValue The value type. It will be either the same type as `value` or `null`. It can be in `[start, end]` format in case of range value.
59
58
  * @template TError The validation error type. It will be either `string` or a `null`. It can be in `[start, end]` format in case of range value.
60
- * @param {UseValidationOptions<TValue, TDate, TError, TValidationProps>} options The options to configure the hook.
59
+ * @param {UseValidationOptions<TValue, TError, TValidationProps>} options The options to configure the hook.
61
60
  * @param {TValue} options.value The value to validate.
62
61
  * @param {PickersTimezone} options.timezone The timezone to use for the validation.
63
- * @param {Validator<TValue, TDate, TError, TValidationProps>} options.validator The validator function to use.
62
+ * @param {Validator<TValue, TError, TValidationProps>} options.validator The validator function to use.
64
63
  * @param {TValidationProps} options.props The validation props, they differ depending on the component.
65
64
  * @param {(error: TError, value: TValue) => void} options.onError Callback fired when the error associated with the current value changes.
66
65
  */
67
- export declare function useValidation<TValue, TDate extends PickerValidDate, TError, TValidationProps extends {}>(options: UseValidationOptions<TValue, TDate, TError, TValidationProps>): UseValidationReturnValue<TValue, TError>;
66
+ export declare function useValidation<TValue, TError, TValidationProps extends {}>(options: UseValidationOptions<TValue, TError, TValidationProps>): UseValidationReturnValue<TValue, TError>;
68
67
  export {};
@@ -5,13 +5,12 @@ import useEventCallback from '@mui/utils/useEventCallback';
5
5
  import { useLocalizationContext } from "../internals/hooks/useUtils.js";
6
6
  /**
7
7
  * Utility hook to check if a given value is valid based on the provided validation props.
8
- * @template TDate
9
8
  * @template TValue The value type. It will be either the same type as `value` or `null`. It can be in `[start, end]` format in case of range value.
10
9
  * @template TError The validation error type. It will be either `string` or a `null`. It can be in `[start, end]` format in case of range value.
11
- * @param {UseValidationOptions<TValue, TDate, TError, TValidationProps>} options The options to configure the hook.
10
+ * @param {UseValidationOptions<TValue, TError, TValidationProps>} options The options to configure the hook.
12
11
  * @param {TValue} options.value The value to validate.
13
12
  * @param {PickersTimezone} options.timezone The timezone to use for the validation.
14
- * @param {Validator<TValue, TDate, TError, TValidationProps>} options.validator The validator function to use.
13
+ * @param {Validator<TValue, TError, TValidationProps>} options.validator The validator function to use.
15
14
  * @param {TValidationProps} options.props The validation props, they differ depending on the component.
16
15
  * @param {(error: TError, value: TValue) => void} options.onError Callback fired when the error associated with the current value changes.
17
16
  */
@@ -1,6 +1,11 @@
1
1
  import { Validator } from './useValidation';
2
2
  import { BaseDateValidationProps, DayValidationProps, MonthValidationProps, YearValidationProps } from '../internals/models/validation';
3
3
  import { DateValidationError, PickerValidDate } from '../models';
4
- export interface ValidateDateProps<TDate extends PickerValidDate> extends DayValidationProps<TDate>, MonthValidationProps<TDate>, YearValidationProps<TDate>, Required<BaseDateValidationProps<TDate>> {
4
+ /**
5
+ * Validation props used by the Date Picker, Date Field and Date Calendar components.
6
+ */
7
+ export interface ExportedValidateDateProps extends DayValidationProps, MonthValidationProps, YearValidationProps, BaseDateValidationProps {
5
8
  }
6
- export declare const validateDate: Validator<any | null, any, DateValidationError, ValidateDateProps<any>>;
9
+ export interface ValidateDateProps extends DayValidationProps, MonthValidationProps, YearValidationProps, Required<BaseDateValidationProps> {
10
+ }
11
+ export declare const validateDate: Validator<PickerValidDate | null, DateValidationError, ValidateDateProps>;
@@ -1,5 +1,10 @@
1
1
  import { applyDefaultDate } from "../internals/utils/date-utils.js";
2
2
  import { singleItemValueManager } from "../internals/utils/valueManagers.js";
3
+
4
+ /**
5
+ * Validation props used by the Date Picker, Date Field and Date Calendar components.
6
+ */
7
+
3
8
  export const validateDate = ({
4
9
  props,
5
10
  value,
@@ -1,7 +1,13 @@
1
1
  import { Validator } from './useValidation';
2
- import { ValidateDateProps } from './validateDate';
3
- import { ValidateTimeProps } from './validateTime';
2
+ import { ExportedValidateDateProps, ValidateDateProps } from './validateDate';
3
+ import { ExportedValidateTimeProps, ValidateTimeProps } from './validateTime';
4
4
  import { DateTimeValidationError, PickerValidDate } from '../models';
5
- export interface ValidateDateTimeProps<TDate extends PickerValidDate> extends ValidateDateProps<TDate>, ValidateTimeProps<TDate> {
5
+ import { DateTimeValidationProps } from '../internals/models/validation';
6
+ /**
7
+ * Validation props used by the Date Time Picker and Date Time Field components.
8
+ */
9
+ export interface ExportedValidateDateTimeProps extends ExportedValidateDateProps, ExportedValidateTimeProps, DateTimeValidationProps {
6
10
  }
7
- export declare const validateDateTime: Validator<any | null, any, DateTimeValidationError, ValidateDateTimeProps<any>>;
11
+ export interface ValidateDateTimeProps extends ValidateDateProps, ValidateTimeProps {
12
+ }
13
+ export declare const validateDateTime: Validator<PickerValidDate | null, DateTimeValidationError, ValidateDateTimeProps>;
@@ -1,6 +1,11 @@
1
1
  import { validateDate } from "./validateDate.js";
2
2
  import { validateTime } from "./validateTime.js";
3
3
  import { singleItemValueManager } from "../internals/utils/valueManagers.js";
4
+
5
+ /**
6
+ * Validation props used by the Date Time Picker and Date Time Field components.
7
+ */
8
+
4
9
  export const validateDateTime = ({
5
10
  adapter,
6
11
  value,
@@ -1,6 +1,11 @@
1
1
  import { Validator } from './useValidation';
2
2
  import { BaseTimeValidationProps, TimeValidationProps } from '../internals/models/validation';
3
3
  import { PickerValidDate, TimeValidationError } from '../models';
4
- export interface ValidateTimeProps<TDate extends PickerValidDate> extends Required<BaseTimeValidationProps>, TimeValidationProps<TDate> {
4
+ /**
5
+ * Validation props used by the Time Picker, Time Field and Clock components.
6
+ */
7
+ export interface ExportedValidateTimeProps extends BaseTimeValidationProps, TimeValidationProps {
5
8
  }
6
- export declare const validateTime: Validator<any | null, any, TimeValidationError, ValidateTimeProps<any>>;
9
+ export interface ValidateTimeProps extends Required<BaseTimeValidationProps>, TimeValidationProps {
10
+ }
11
+ export declare const validateTime: Validator<PickerValidDate | null, TimeValidationError, ValidateTimeProps>;
@@ -1,5 +1,10 @@
1
1
  import { createIsAfterIgnoreDatePart } from "../internals/utils/time-utils.js";
2
2
  import { singleItemValueManager } from "../internals/utils/valueManagers.js";
3
+
4
+ /**
5
+ * Validation props used by the Time Picker, Time Field and Clock components.
6
+ */
7
+
3
8
  export const validateTime = ({
4
9
  adapter,
5
10
  value,
@@ -1,4 +0,0 @@
1
- /**
2
- * Returns the context passed by the picker that wraps the current component.
3
- */
4
- export declare const usePickersContext: () => import("../internals/components/PickersProvider").PickersContextValue;
@@ -1,15 +0,0 @@
1
- 'use client';
2
-
3
- import * as React from 'react';
4
- import { PickersContext } from "../internals/components/PickersProvider.js";
5
-
6
- /**
7
- * Returns the context passed by the picker that wraps the current component.
8
- */
9
- export const usePickersContext = () => {
10
- const value = React.useContext(PickersContext);
11
- if (value == null) {
12
- throw new Error(['MUI X: The `usePickersContext` can only be called in fields that are used as a slot of a picker component'].join('\n'));
13
- }
14
- return value;
15
- };
@@ -1,2 +0,0 @@
1
- import { PickerValidDate } from '../models';
2
- export declare const usePickersTranslations: <TDate extends PickerValidDate>() => import("..").PickersLocaleText<TDate>;
@@ -1,34 +0,0 @@
1
- import * as React from 'react';
2
- import { PickerValidDate } from '../../models';
3
- import { PickersInputLocaleText } from '../../locales';
4
- export declare const PickersContext: React.Context<PickersContextValue | null>;
5
- /**
6
- * Provides the context for the various parts of a picker component:
7
- * - contextValue: the context for the picker sub-components.
8
- * - localizationProvider: the translations passed through the props and through a parent LocalizationProvider.
9
- *
10
- * @ignore - do not document.
11
- */
12
- export declare function PickersProvider<TDate extends PickerValidDate>(props: PickersFieldProviderProps<TDate>): React.JSX.Element;
13
- interface PickersFieldProviderProps<TDate extends PickerValidDate> {
14
- contextValue: PickersContextValue;
15
- localeText: PickersInputLocaleText<TDate> | undefined;
16
- children: React.ReactNode;
17
- }
18
- export interface PickersContextValue {
19
- /**
20
- * Open the picker.
21
- * @param {React.UIEvent} event The DOM event that triggered the change.
22
- */
23
- onOpen: (event: React.UIEvent) => void;
24
- /**
25
- * Close the picker.
26
- * @param {React.UIEvent} event The DOM event that triggered the change.
27
- */
28
- onClose: (event: React.UIEvent) => void;
29
- /**
30
- * `true` if the picker is open, `false` otherwise.
31
- */
32
- open: boolean;
33
- }
34
- export {};
@@ -1,26 +0,0 @@
1
- import * as React from 'react';
2
- import { LocalizationProvider } from "../../LocalizationProvider/index.js";
3
- import { jsx as _jsx } from "react/jsx-runtime";
4
- export const PickersContext = /*#__PURE__*/React.createContext(null);
5
-
6
- /**
7
- * Provides the context for the various parts of a picker component:
8
- * - contextValue: the context for the picker sub-components.
9
- * - localizationProvider: the translations passed through the props and through a parent LocalizationProvider.
10
- *
11
- * @ignore - do not document.
12
- */
13
- export function PickersProvider(props) {
14
- const {
15
- contextValue,
16
- localeText,
17
- children
18
- } = props;
19
- return /*#__PURE__*/_jsx(PickersContext.Provider, {
20
- value: contextValue,
21
- children: /*#__PURE__*/_jsx(LocalizationProvider, {
22
- localeText: localeText,
23
- children: children
24
- })
25
- });
26
- }
@@ -1,9 +0,0 @@
1
- import { FieldSection, PickerOwnerState } from '../../../models';
2
- import type { UsePickerProps } from './usePicker.types';
3
- import { UsePickerValueResponse } from './usePickerValue.types';
4
- interface UsePickerOwnerStateParameters<TValue> {
5
- props: UsePickerProps<TValue, any, any, any, any, any>;
6
- pickerValueResponse: UsePickerValueResponse<TValue, FieldSection, any>;
7
- }
8
- export declare function usePickerOwnerState<TValue>(parameters: UsePickerOwnerStateParameters<TValue>): PickerOwnerState<TValue>;
9
- export {};
@@ -1,13 +0,0 @@
1
- import * as React from 'react';
2
- export function usePickerOwnerState(parameters) {
3
- const {
4
- props,
5
- pickerValueResponse
6
- } = parameters;
7
- return React.useMemo(() => ({
8
- value: pickerValueResponse.viewProps.value,
9
- open: pickerValueResponse.open,
10
- disabled: props.disabled ?? false,
11
- readOnly: props.readOnly ?? false
12
- }), [pickerValueResponse.viewProps.value, pickerValueResponse.open, props.disabled, props.readOnly]);
13
- }
@@ -1,15 +0,0 @@
1
- 'use client';
2
-
3
- import * as React from 'react';
4
- import { PickersContext } from "../internals/components/PickersProvider.js";
5
-
6
- /**
7
- * Returns the context passed by the picker that wraps the current component.
8
- */
9
- export const usePickersContext = () => {
10
- const value = React.useContext(PickersContext);
11
- if (value == null) {
12
- throw new Error(['MUI X: The `usePickersContext` can only be called in fields that are used as a slot of a picker component'].join('\n'));
13
- }
14
- return value;
15
- };
@@ -1,26 +0,0 @@
1
- import * as React from 'react';
2
- import { LocalizationProvider } from "../../LocalizationProvider/index.js";
3
- import { jsx as _jsx } from "react/jsx-runtime";
4
- export const PickersContext = /*#__PURE__*/React.createContext(null);
5
-
6
- /**
7
- * Provides the context for the various parts of a picker component:
8
- * - contextValue: the context for the picker sub-components.
9
- * - localizationProvider: the translations passed through the props and through a parent LocalizationProvider.
10
- *
11
- * @ignore - do not document.
12
- */
13
- export function PickersProvider(props) {
14
- const {
15
- contextValue,
16
- localeText,
17
- children
18
- } = props;
19
- return /*#__PURE__*/_jsx(PickersContext.Provider, {
20
- value: contextValue,
21
- children: /*#__PURE__*/_jsx(LocalizationProvider, {
22
- localeText: localeText,
23
- children: children
24
- })
25
- });
26
- }
@@ -1,13 +0,0 @@
1
- import * as React from 'react';
2
- export function usePickerOwnerState(parameters) {
3
- const {
4
- props,
5
- pickerValueResponse
6
- } = parameters;
7
- return React.useMemo(() => ({
8
- value: pickerValueResponse.viewProps.value,
9
- open: pickerValueResponse.open,
10
- disabled: props.disabled ?? false,
11
- readOnly: props.readOnly ?? false
12
- }), [pickerValueResponse.viewProps.value, pickerValueResponse.open, props.disabled, props.readOnly]);
13
- }
@@ -1,21 +0,0 @@
1
- "use strict";
2
- 'use client';
3
-
4
- var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
5
- Object.defineProperty(exports, "__esModule", {
6
- value: true
7
- });
8
- exports.usePickersContext = void 0;
9
- var React = _interopRequireWildcard(require("react"));
10
- var _PickersProvider = require("../internals/components/PickersProvider");
11
- /**
12
- * Returns the context passed by the picker that wraps the current component.
13
- */
14
- const usePickersContext = () => {
15
- const value = React.useContext(_PickersProvider.PickersContext);
16
- if (value == null) {
17
- throw new Error(['MUI X: The `usePickersContext` can only be called in fields that are used as a slot of a picker component'].join('\n'));
18
- }
19
- return value;
20
- };
21
- exports.usePickersContext = usePickersContext;