@mui/x-date-pickers 7.15.0 → 7.17.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (674) hide show
  1. package/AdapterDateFns/AdapterDateFns.js +1 -1
  2. package/AdapterDateFns/index.js +1 -1
  3. package/AdapterDateFnsBase/index.js +1 -1
  4. package/AdapterDateFnsJalali/AdapterDateFnsJalali.js +1 -1
  5. package/AdapterDateFnsJalali/index.js +1 -1
  6. package/AdapterDateFnsJalaliV3/AdapterDateFnsJalaliV3.js +1 -1
  7. package/AdapterDateFnsJalaliV3/index.js +1 -1
  8. package/AdapterDateFnsV3/AdapterDateFnsV3.js +1 -1
  9. package/AdapterDateFnsV3/index.js +1 -1
  10. package/AdapterDayjs/AdapterDayjs.js +5 -6
  11. package/AdapterDayjs/index.js +1 -1
  12. package/AdapterLuxon/AdapterLuxon.js +4 -5
  13. package/AdapterLuxon/index.js +1 -1
  14. package/AdapterMoment/AdapterMoment.js +4 -5
  15. package/AdapterMoment/index.js +1 -1
  16. package/AdapterMomentHijri/AdapterMomentHijri.js +1 -1
  17. package/AdapterMomentHijri/index.js +1 -1
  18. package/AdapterMomentJalaali/AdapterMomentJalaali.js +1 -1
  19. package/AdapterMomentJalaali/index.js +1 -1
  20. package/CHANGELOG.md +185 -1
  21. package/DateCalendar/DateCalendar.js +18 -16
  22. package/DateCalendar/DayCalendar.js +9 -10
  23. package/DateCalendar/PickersFadeTransitionGroup.js +1 -1
  24. package/DateCalendar/PickersSlideTransition.js +1 -1
  25. package/DateCalendar/index.js +5 -5
  26. package/DateCalendar/useCalendarState.js +6 -4
  27. package/DateCalendar/useIsDateDisabled.d.ts +4 -3
  28. package/DateCalendar/useIsDateDisabled.js +6 -4
  29. package/DateField/DateField.js +15 -11
  30. package/DateField/DateField.types.d.ts +7 -2
  31. package/DateField/index.d.ts +1 -1
  32. package/DateField/index.js +2 -2
  33. package/DateField/useDateField.d.ts +1 -1
  34. package/DateField/useDateField.js +8 -6
  35. package/DatePicker/DatePicker.js +16 -14
  36. package/DatePicker/DatePickerToolbar.js +7 -5
  37. package/DatePicker/index.js +3 -3
  38. package/DatePicker/shared.js +4 -4
  39. package/DateTimeField/DateTimeField.js +15 -11
  40. package/DateTimeField/DateTimeField.types.d.ts +7 -2
  41. package/DateTimeField/index.d.ts +1 -1
  42. package/DateTimeField/index.js +2 -2
  43. package/DateTimeField/useDateTimeField.d.ts +1 -1
  44. package/DateTimeField/useDateTimeField.js +8 -6
  45. package/DateTimePicker/DateTimePicker.js +16 -14
  46. package/DateTimePicker/DateTimePickerTabs.js +6 -4
  47. package/DateTimePicker/DateTimePickerToolbar.js +13 -11
  48. package/DateTimePicker/index.js +5 -5
  49. package/DateTimePicker/shared.js +5 -5
  50. package/DayCalendarSkeleton/DayCalendarSkeleton.js +4 -2
  51. package/DayCalendarSkeleton/index.js +2 -2
  52. package/DesktopDatePicker/DesktopDatePicker.js +30 -23
  53. package/DesktopDatePicker/index.js +1 -1
  54. package/DesktopDateTimePicker/DesktopDateTimePicker.js +37 -30
  55. package/DesktopDateTimePicker/DesktopDateTimePickerLayout.js +1 -1
  56. package/DesktopDateTimePicker/index.js +2 -2
  57. package/DesktopTimePicker/DesktopTimePicker.js +31 -24
  58. package/DesktopTimePicker/index.js +1 -1
  59. package/DigitalClock/DigitalClock.js +13 -11
  60. package/DigitalClock/index.js +2 -2
  61. package/LocalizationProvider/LocalizationProvider.js +2 -0
  62. package/LocalizationProvider/index.js +1 -1
  63. package/MobileDatePicker/MobileDatePicker.js +29 -22
  64. package/MobileDatePicker/index.js +1 -1
  65. package/MobileDateTimePicker/MobileDateTimePicker.js +30 -23
  66. package/MobileDateTimePicker/index.js +1 -1
  67. package/MobileTimePicker/MobileTimePicker.js +29 -22
  68. package/MobileTimePicker/index.js +1 -1
  69. package/MonthCalendar/MonthCalendar.js +10 -8
  70. package/MonthCalendar/PickersMonth.js +1 -1
  71. package/MonthCalendar/index.js +3 -3
  72. package/MultiSectionDigitalClock/MultiSectionDigitalClock.js +19 -17
  73. package/MultiSectionDigitalClock/MultiSectionDigitalClockSection.js +2 -2
  74. package/MultiSectionDigitalClock/index.js +3 -3
  75. package/PickersActionBar/PickersActionBar.js +3 -1
  76. package/PickersActionBar/index.js +1 -1
  77. package/PickersCalendarHeader/PickersCalendarHeader.js +9 -7
  78. package/PickersCalendarHeader/index.js +2 -2
  79. package/PickersDay/PickersDay.js +5 -3
  80. package/PickersDay/index.js +2 -2
  81. package/PickersLayout/PickersLayout.js +4 -2
  82. package/PickersLayout/index.js +3 -3
  83. package/PickersLayout/usePickerLayout.js +5 -3
  84. package/PickersSectionList/PickersSectionList.js +3 -1
  85. package/PickersSectionList/index.js +2 -2
  86. package/PickersShortcuts/PickersShortcuts.js +3 -1
  87. package/PickersShortcuts/index.js +1 -1
  88. package/PickersTextField/PickersFilledInput/PickersFilledInput.js +3 -3
  89. package/PickersTextField/PickersFilledInput/index.js +2 -2
  90. package/PickersTextField/PickersFilledInput/pickersFilledInputClasses.js +1 -1
  91. package/PickersTextField/PickersInput/PickersInput.js +3 -3
  92. package/PickersTextField/PickersInput/index.js +2 -2
  93. package/PickersTextField/PickersInput/pickersInputClasses.js +1 -1
  94. package/PickersTextField/PickersInputBase/PickersInputBase.js +2 -2
  95. package/PickersTextField/PickersInputBase/index.js +2 -2
  96. package/PickersTextField/PickersOutlinedInput/PickersOutlinedInput.js +4 -4
  97. package/PickersTextField/PickersOutlinedInput/index.js +2 -2
  98. package/PickersTextField/PickersOutlinedInput/pickersOutlinedInputClasses.js +1 -1
  99. package/PickersTextField/PickersTextField.js +6 -4
  100. package/PickersTextField/index.js +6 -6
  101. package/StaticDatePicker/StaticDatePicker.js +18 -16
  102. package/StaticDatePicker/index.js +1 -1
  103. package/StaticDateTimePicker/StaticDateTimePicker.js +19 -17
  104. package/StaticDateTimePicker/index.js +1 -1
  105. package/StaticTimePicker/StaticTimePicker.js +18 -16
  106. package/StaticTimePicker/index.js +1 -1
  107. package/TimeClock/Clock.js +7 -7
  108. package/TimeClock/ClockNumber.js +2 -2
  109. package/TimeClock/ClockNumbers.js +2 -2
  110. package/TimeClock/ClockPointer.js +2 -2
  111. package/TimeClock/TimeClock.js +16 -14
  112. package/TimeClock/index.js +5 -5
  113. package/TimeField/TimeField.js +15 -11
  114. package/TimeField/TimeField.types.d.ts +7 -2
  115. package/TimeField/index.d.ts +1 -1
  116. package/TimeField/index.js +2 -2
  117. package/TimeField/useTimeField.d.ts +1 -1
  118. package/TimeField/useTimeField.js +8 -6
  119. package/TimePicker/TimePicker.js +16 -14
  120. package/TimePicker/TimePickerToolbar.js +11 -9
  121. package/TimePicker/index.js +3 -3
  122. package/TimePicker/shared.js +3 -3
  123. package/YearCalendar/PickersYear.js +1 -1
  124. package/YearCalendar/YearCalendar.js +10 -8
  125. package/YearCalendar/index.js +3 -3
  126. package/dateViewRenderers/dateViewRenderers.js +2 -2
  127. package/dateViewRenderers/index.js +1 -1
  128. package/hooks/index.d.ts +1 -0
  129. package/hooks/index.js +3 -2
  130. package/hooks/useClearableField.js +4 -2
  131. package/hooks/usePickersTranslations.js +3 -1
  132. package/hooks/useSplitFieldProps.d.ts +19 -0
  133. package/hooks/useSplitFieldProps.js +43 -0
  134. package/icons/index.js +8 -8
  135. package/index.d.ts +1 -0
  136. package/index.js +39 -38
  137. package/internals/components/PickerViewRoot/PickerViewRoot.js +1 -1
  138. package/internals/components/PickerViewRoot/index.js +1 -1
  139. package/internals/components/PickersArrowSwitcher/PickersArrowSwitcher.js +2 -2
  140. package/internals/components/PickersArrowSwitcher/index.js +2 -2
  141. package/internals/components/PickersModalDialog.js +1 -1
  142. package/internals/components/PickersPopper.js +3 -3
  143. package/internals/components/PickersToolbar.js +1 -1
  144. package/internals/components/PickersToolbarButton.js +2 -2
  145. package/internals/components/PickersToolbarText.js +1 -1
  146. package/internals/demo/DemoContainer.js +3 -3
  147. package/internals/demo/index.js +1 -1
  148. package/internals/hooks/date-helpers-hooks.js +2 -2
  149. package/internals/hooks/defaultizedFieldProps.js +2 -2
  150. package/internals/hooks/useClockReferenceDate.js +3 -3
  151. package/internals/hooks/useDesktopPicker/index.js +1 -1
  152. package/internals/hooks/useDesktopPicker/useDesktopPicker.js +16 -8
  153. package/internals/hooks/useDesktopPicker/useDesktopPicker.types.d.ts +6 -3
  154. package/internals/hooks/useField/buildSectionsFromFormat.js +1 -1
  155. package/internals/hooks/useField/index.js +2 -2
  156. package/internals/hooks/useField/useField.js +17 -12
  157. package/internals/hooks/useField/useField.types.d.ts +6 -22
  158. package/internals/hooks/useField/useField.utils.js +1 -1
  159. package/internals/hooks/useField/useFieldCharacterEditing.js +2 -2
  160. package/internals/hooks/useField/useFieldState.js +8 -10
  161. package/internals/hooks/useField/useFieldV6TextField.js +2 -2
  162. package/internals/hooks/useField/useFieldV7TextField.js +4 -4
  163. package/internals/hooks/useIsLandscape.js +1 -1
  164. package/internals/hooks/useMobilePicker/index.js +1 -1
  165. package/internals/hooks/useMobilePicker/useMobilePicker.js +6 -8
  166. package/internals/hooks/useMobilePicker/useMobilePicker.types.d.ts +2 -2
  167. package/internals/hooks/usePicker/index.js +1 -1
  168. package/internals/hooks/usePicker/usePicker.d.ts +1 -2
  169. package/internals/hooks/usePicker/usePicker.js +4 -4
  170. package/internals/hooks/usePicker/usePickerLayoutProps.js +1 -1
  171. package/internals/hooks/usePicker/usePickerValue.d.ts +1 -2
  172. package/internals/hooks/usePicker/usePickerValue.js +15 -19
  173. package/internals/hooks/usePicker/usePickerValue.types.d.ts +8 -19
  174. package/internals/hooks/usePicker/usePickerViews.js +2 -2
  175. package/internals/hooks/useStaticPicker/index.js +1 -1
  176. package/internals/hooks/useStaticPicker/useStaticPicker.js +4 -4
  177. package/internals/hooks/useUtils.js +2 -2
  178. package/internals/hooks/useValueWithTimezone.js +1 -1
  179. package/internals/hooks/useViews.d.ts +1 -1
  180. package/internals/index.d.ts +0 -8
  181. package/internals/index.js +29 -36
  182. package/internals/models/index.js +2 -2
  183. package/internals/utils/date-time-utils.js +2 -2
  184. package/internals/utils/date-utils.js +1 -1
  185. package/internals/utils/getDefaultReferenceDate.js +2 -2
  186. package/internals/utils/time-utils.js +1 -1
  187. package/internals/utils/valueManagers.js +3 -3
  188. package/locales/beBY.d.ts +3 -3
  189. package/locales/beBY.js +5 -5
  190. package/locales/caES.d.ts +3 -3
  191. package/locales/caES.js +4 -4
  192. package/locales/csCZ.d.ts +3 -3
  193. package/locales/csCZ.js +5 -5
  194. package/locales/daDK.d.ts +3 -3
  195. package/locales/daDK.js +4 -4
  196. package/locales/deDE.d.ts +3 -3
  197. package/locales/deDE.js +4 -4
  198. package/locales/elGR.d.ts +3 -3
  199. package/locales/elGR.js +5 -5
  200. package/locales/enUS.d.ts +3 -3
  201. package/locales/enUS.js +5 -5
  202. package/locales/esES.d.ts +3 -3
  203. package/locales/esES.js +4 -4
  204. package/locales/eu.d.ts +3 -3
  205. package/locales/eu.js +4 -4
  206. package/locales/faIR.d.ts +3 -3
  207. package/locales/faIR.js +4 -4
  208. package/locales/fiFI.d.ts +3 -3
  209. package/locales/fiFI.js +4 -4
  210. package/locales/frFR.d.ts +3 -3
  211. package/locales/frFR.js +4 -4
  212. package/locales/heIL.d.ts +3 -3
  213. package/locales/heIL.js +4 -4
  214. package/locales/huHU.d.ts +3 -3
  215. package/locales/huHU.js +4 -4
  216. package/locales/index.js +36 -36
  217. package/locales/isIS.d.ts +3 -3
  218. package/locales/isIS.js +5 -5
  219. package/locales/itIT.d.ts +3 -3
  220. package/locales/itIT.js +4 -4
  221. package/locales/jaJP.d.ts +3 -3
  222. package/locales/jaJP.js +4 -4
  223. package/locales/koKR.d.ts +3 -3
  224. package/locales/koKR.js +4 -4
  225. package/locales/kzKZ.d.ts +3 -3
  226. package/locales/kzKZ.js +5 -5
  227. package/locales/mk.d.ts +3 -3
  228. package/locales/mk.js +4 -4
  229. package/locales/nbNO.d.ts +3 -3
  230. package/locales/nbNO.js +5 -5
  231. package/locales/nlNL.d.ts +3 -3
  232. package/locales/nlNL.js +4 -4
  233. package/locales/nnNO.d.ts +3 -3
  234. package/locales/nnNO.js +4 -4
  235. package/locales/plPL.d.ts +3 -3
  236. package/locales/plPL.js +5 -5
  237. package/locales/ptBR.d.ts +3 -3
  238. package/locales/ptBR.js +5 -5
  239. package/locales/roRO.d.ts +3 -3
  240. package/locales/roRO.js +4 -4
  241. package/locales/ruRU.d.ts +3 -3
  242. package/locales/ruRU.js +4 -4
  243. package/locales/skSK.d.ts +3 -3
  244. package/locales/skSK.js +5 -5
  245. package/locales/svSE.d.ts +3 -3
  246. package/locales/svSE.js +4 -4
  247. package/locales/trTR.d.ts +3 -3
  248. package/locales/trTR.js +5 -5
  249. package/locales/ukUA.d.ts +3 -3
  250. package/locales/ukUA.js +4 -4
  251. package/locales/urPK.d.ts +3 -3
  252. package/locales/urPK.js +5 -5
  253. package/locales/utils/getPickersLocalization.d.ts +10 -3
  254. package/locales/utils/getPickersLocalization.js +13 -0
  255. package/locales/utils/pickersLocaleTextApi.d.ts +27 -3
  256. package/locales/viVN.d.ts +3 -3
  257. package/locales/viVN.js +4 -4
  258. package/locales/zhCN.d.ts +3 -3
  259. package/locales/zhCN.js +4 -4
  260. package/locales/zhHK.d.ts +3 -3
  261. package/locales/zhHK.js +4 -4
  262. package/models/index.d.ts +1 -0
  263. package/models/index.js +10 -7
  264. package/models/validation.d.ts +13 -0
  265. package/modern/AdapterDateFns/AdapterDateFns.js +1 -1
  266. package/modern/AdapterDateFns/index.js +1 -1
  267. package/modern/AdapterDateFnsBase/index.js +1 -1
  268. package/modern/AdapterDateFnsJalali/AdapterDateFnsJalali.js +1 -1
  269. package/modern/AdapterDateFnsJalali/index.js +1 -1
  270. package/modern/AdapterDateFnsJalaliV3/AdapterDateFnsJalaliV3.js +1 -1
  271. package/modern/AdapterDateFnsJalaliV3/index.js +1 -1
  272. package/modern/AdapterDateFnsV3/AdapterDateFnsV3.js +1 -1
  273. package/modern/AdapterDateFnsV3/index.js +1 -1
  274. package/modern/AdapterDayjs/AdapterDayjs.js +5 -6
  275. package/modern/AdapterDayjs/index.js +1 -1
  276. package/modern/AdapterLuxon/AdapterLuxon.js +4 -5
  277. package/modern/AdapterLuxon/index.js +1 -1
  278. package/modern/AdapterMoment/AdapterMoment.js +4 -5
  279. package/modern/AdapterMoment/index.js +1 -1
  280. package/modern/AdapterMomentHijri/AdapterMomentHijri.js +1 -1
  281. package/modern/AdapterMomentHijri/index.js +1 -1
  282. package/modern/AdapterMomentJalaali/AdapterMomentJalaali.js +1 -1
  283. package/modern/AdapterMomentJalaali/index.js +1 -1
  284. package/modern/DateCalendar/DateCalendar.js +18 -16
  285. package/modern/DateCalendar/DayCalendar.js +9 -10
  286. package/modern/DateCalendar/PickersFadeTransitionGroup.js +1 -1
  287. package/modern/DateCalendar/PickersSlideTransition.js +1 -1
  288. package/modern/DateCalendar/index.js +5 -5
  289. package/modern/DateCalendar/useCalendarState.js +6 -4
  290. package/modern/DateCalendar/useIsDateDisabled.js +6 -4
  291. package/modern/DateField/DateField.js +15 -11
  292. package/modern/DateField/index.js +2 -2
  293. package/modern/DateField/useDateField.js +8 -6
  294. package/modern/DatePicker/DatePicker.js +16 -14
  295. package/modern/DatePicker/DatePickerToolbar.js +7 -5
  296. package/modern/DatePicker/index.js +3 -3
  297. package/modern/DatePicker/shared.js +4 -4
  298. package/modern/DateTimeField/DateTimeField.js +15 -11
  299. package/modern/DateTimeField/index.js +2 -2
  300. package/modern/DateTimeField/useDateTimeField.js +8 -6
  301. package/modern/DateTimePicker/DateTimePicker.js +16 -14
  302. package/modern/DateTimePicker/DateTimePickerTabs.js +6 -4
  303. package/modern/DateTimePicker/DateTimePickerToolbar.js +13 -11
  304. package/modern/DateTimePicker/index.js +5 -5
  305. package/modern/DateTimePicker/shared.js +5 -5
  306. package/modern/DayCalendarSkeleton/DayCalendarSkeleton.js +4 -2
  307. package/modern/DayCalendarSkeleton/index.js +2 -2
  308. package/modern/DesktopDatePicker/DesktopDatePicker.js +30 -23
  309. package/modern/DesktopDatePicker/index.js +1 -1
  310. package/modern/DesktopDateTimePicker/DesktopDateTimePicker.js +37 -30
  311. package/modern/DesktopDateTimePicker/DesktopDateTimePickerLayout.js +1 -1
  312. package/modern/DesktopDateTimePicker/index.js +2 -2
  313. package/modern/DesktopTimePicker/DesktopTimePicker.js +31 -24
  314. package/modern/DesktopTimePicker/index.js +1 -1
  315. package/modern/DigitalClock/DigitalClock.js +13 -11
  316. package/modern/DigitalClock/index.js +2 -2
  317. package/modern/LocalizationProvider/LocalizationProvider.js +2 -0
  318. package/modern/LocalizationProvider/index.js +1 -1
  319. package/modern/MobileDatePicker/MobileDatePicker.js +29 -22
  320. package/modern/MobileDatePicker/index.js +1 -1
  321. package/modern/MobileDateTimePicker/MobileDateTimePicker.js +30 -23
  322. package/modern/MobileDateTimePicker/index.js +1 -1
  323. package/modern/MobileTimePicker/MobileTimePicker.js +29 -22
  324. package/modern/MobileTimePicker/index.js +1 -1
  325. package/modern/MonthCalendar/MonthCalendar.js +10 -8
  326. package/modern/MonthCalendar/PickersMonth.js +1 -1
  327. package/modern/MonthCalendar/index.js +3 -3
  328. package/modern/MultiSectionDigitalClock/MultiSectionDigitalClock.js +19 -17
  329. package/modern/MultiSectionDigitalClock/MultiSectionDigitalClockSection.js +2 -2
  330. package/modern/MultiSectionDigitalClock/index.js +3 -3
  331. package/modern/PickersActionBar/PickersActionBar.js +3 -1
  332. package/modern/PickersActionBar/index.js +1 -1
  333. package/modern/PickersCalendarHeader/PickersCalendarHeader.js +9 -7
  334. package/modern/PickersCalendarHeader/index.js +2 -2
  335. package/modern/PickersDay/PickersDay.js +5 -3
  336. package/modern/PickersDay/index.js +2 -2
  337. package/modern/PickersLayout/PickersLayout.js +4 -2
  338. package/modern/PickersLayout/index.js +3 -3
  339. package/modern/PickersLayout/usePickerLayout.js +5 -3
  340. package/modern/PickersSectionList/PickersSectionList.js +3 -1
  341. package/modern/PickersSectionList/index.js +2 -2
  342. package/modern/PickersShortcuts/PickersShortcuts.js +3 -1
  343. package/modern/PickersShortcuts/index.js +1 -1
  344. package/modern/PickersTextField/PickersFilledInput/PickersFilledInput.js +3 -3
  345. package/modern/PickersTextField/PickersFilledInput/index.js +2 -2
  346. package/modern/PickersTextField/PickersFilledInput/pickersFilledInputClasses.js +1 -1
  347. package/modern/PickersTextField/PickersInput/PickersInput.js +3 -3
  348. package/modern/PickersTextField/PickersInput/index.js +2 -2
  349. package/modern/PickersTextField/PickersInput/pickersInputClasses.js +1 -1
  350. package/modern/PickersTextField/PickersInputBase/PickersInputBase.js +2 -2
  351. package/modern/PickersTextField/PickersInputBase/index.js +2 -2
  352. package/modern/PickersTextField/PickersOutlinedInput/PickersOutlinedInput.js +4 -4
  353. package/modern/PickersTextField/PickersOutlinedInput/index.js +2 -2
  354. package/modern/PickersTextField/PickersOutlinedInput/pickersOutlinedInputClasses.js +1 -1
  355. package/modern/PickersTextField/PickersTextField.js +6 -4
  356. package/modern/PickersTextField/index.js +6 -6
  357. package/modern/StaticDatePicker/StaticDatePicker.js +18 -16
  358. package/modern/StaticDatePicker/index.js +1 -1
  359. package/modern/StaticDateTimePicker/StaticDateTimePicker.js +19 -17
  360. package/modern/StaticDateTimePicker/index.js +1 -1
  361. package/modern/StaticTimePicker/StaticTimePicker.js +18 -16
  362. package/modern/StaticTimePicker/index.js +1 -1
  363. package/modern/TimeClock/Clock.js +7 -7
  364. package/modern/TimeClock/ClockNumber.js +2 -2
  365. package/modern/TimeClock/ClockNumbers.js +2 -2
  366. package/modern/TimeClock/ClockPointer.js +2 -2
  367. package/modern/TimeClock/TimeClock.js +16 -14
  368. package/modern/TimeClock/index.js +5 -5
  369. package/modern/TimeField/TimeField.js +15 -11
  370. package/modern/TimeField/index.js +2 -2
  371. package/modern/TimeField/useTimeField.js +8 -6
  372. package/modern/TimePicker/TimePicker.js +16 -14
  373. package/modern/TimePicker/TimePickerToolbar.js +11 -9
  374. package/modern/TimePicker/index.js +3 -3
  375. package/modern/TimePicker/shared.js +3 -3
  376. package/modern/YearCalendar/PickersYear.js +1 -1
  377. package/modern/YearCalendar/YearCalendar.js +10 -8
  378. package/modern/YearCalendar/index.js +3 -3
  379. package/modern/dateViewRenderers/dateViewRenderers.js +2 -2
  380. package/modern/dateViewRenderers/index.js +1 -1
  381. package/modern/hooks/index.js +3 -2
  382. package/modern/hooks/useClearableField.js +4 -2
  383. package/modern/hooks/usePickersTranslations.js +3 -1
  384. package/modern/hooks/useSplitFieldProps.js +43 -0
  385. package/modern/icons/index.js +8 -8
  386. package/modern/index.js +39 -38
  387. package/modern/internals/components/PickerViewRoot/PickerViewRoot.js +1 -1
  388. package/modern/internals/components/PickerViewRoot/index.js +1 -1
  389. package/modern/internals/components/PickersArrowSwitcher/PickersArrowSwitcher.js +2 -2
  390. package/modern/internals/components/PickersArrowSwitcher/index.js +2 -2
  391. package/modern/internals/components/PickersModalDialog.js +1 -1
  392. package/modern/internals/components/PickersPopper.js +3 -3
  393. package/modern/internals/components/PickersToolbar.js +1 -1
  394. package/modern/internals/components/PickersToolbarButton.js +2 -2
  395. package/modern/internals/components/PickersToolbarText.js +1 -1
  396. package/modern/internals/demo/DemoContainer.js +3 -3
  397. package/modern/internals/demo/index.js +1 -1
  398. package/modern/internals/hooks/date-helpers-hooks.js +2 -2
  399. package/modern/internals/hooks/defaultizedFieldProps.js +2 -2
  400. package/modern/internals/hooks/useClockReferenceDate.js +3 -3
  401. package/modern/internals/hooks/useDesktopPicker/index.js +1 -1
  402. package/modern/internals/hooks/useDesktopPicker/useDesktopPicker.js +16 -8
  403. package/modern/internals/hooks/useField/buildSectionsFromFormat.js +1 -1
  404. package/modern/internals/hooks/useField/index.js +2 -2
  405. package/modern/internals/hooks/useField/useField.js +17 -12
  406. package/modern/internals/hooks/useField/useField.utils.js +1 -1
  407. package/modern/internals/hooks/useField/useFieldCharacterEditing.js +2 -2
  408. package/modern/internals/hooks/useField/useFieldState.js +8 -10
  409. package/modern/internals/hooks/useField/useFieldV6TextField.js +2 -2
  410. package/modern/internals/hooks/useField/useFieldV7TextField.js +4 -4
  411. package/modern/internals/hooks/useIsLandscape.js +1 -1
  412. package/modern/internals/hooks/useMobilePicker/index.js +1 -1
  413. package/modern/internals/hooks/useMobilePicker/useMobilePicker.js +6 -8
  414. package/modern/internals/hooks/usePicker/index.js +1 -1
  415. package/modern/internals/hooks/usePicker/usePicker.js +4 -4
  416. package/modern/internals/hooks/usePicker/usePickerLayoutProps.js +1 -1
  417. package/modern/internals/hooks/usePicker/usePickerValue.js +15 -19
  418. package/modern/internals/hooks/usePicker/usePickerViews.js +2 -2
  419. package/modern/internals/hooks/useStaticPicker/index.js +1 -1
  420. package/modern/internals/hooks/useStaticPicker/useStaticPicker.js +4 -4
  421. package/modern/internals/hooks/useUtils.js +2 -2
  422. package/modern/internals/hooks/useValueWithTimezone.js +1 -1
  423. package/modern/internals/index.js +29 -36
  424. package/modern/internals/models/index.js +2 -2
  425. package/modern/internals/utils/date-time-utils.js +2 -2
  426. package/modern/internals/utils/date-utils.js +1 -1
  427. package/modern/internals/utils/getDefaultReferenceDate.js +2 -2
  428. package/modern/internals/utils/time-utils.js +1 -1
  429. package/modern/internals/utils/valueManagers.js +3 -3
  430. package/modern/locales/beBY.js +5 -5
  431. package/modern/locales/caES.js +4 -4
  432. package/modern/locales/csCZ.js +5 -5
  433. package/modern/locales/daDK.js +4 -4
  434. package/modern/locales/deDE.js +4 -4
  435. package/modern/locales/elGR.js +5 -5
  436. package/modern/locales/enUS.js +5 -5
  437. package/modern/locales/esES.js +4 -4
  438. package/modern/locales/eu.js +4 -4
  439. package/modern/locales/faIR.js +4 -4
  440. package/modern/locales/fiFI.js +4 -4
  441. package/modern/locales/frFR.js +4 -4
  442. package/modern/locales/heIL.js +4 -4
  443. package/modern/locales/huHU.js +4 -4
  444. package/modern/locales/index.js +36 -36
  445. package/modern/locales/isIS.js +5 -5
  446. package/modern/locales/itIT.js +4 -4
  447. package/modern/locales/jaJP.js +4 -4
  448. package/modern/locales/koKR.js +4 -4
  449. package/modern/locales/kzKZ.js +5 -5
  450. package/modern/locales/mk.js +4 -4
  451. package/modern/locales/nbNO.js +5 -5
  452. package/modern/locales/nlNL.js +4 -4
  453. package/modern/locales/nnNO.js +4 -4
  454. package/modern/locales/plPL.js +5 -5
  455. package/modern/locales/ptBR.js +5 -5
  456. package/modern/locales/roRO.js +4 -4
  457. package/modern/locales/ruRU.js +4 -4
  458. package/modern/locales/skSK.js +5 -5
  459. package/modern/locales/svSE.js +4 -4
  460. package/modern/locales/trTR.js +5 -5
  461. package/modern/locales/ukUA.js +4 -4
  462. package/modern/locales/urPK.js +5 -5
  463. package/modern/locales/utils/getPickersLocalization.js +13 -0
  464. package/modern/locales/viVN.js +4 -4
  465. package/modern/locales/zhCN.js +4 -4
  466. package/modern/locales/zhHK.js +4 -4
  467. package/modern/models/index.js +10 -7
  468. package/modern/themeAugmentation/index.js +0 -3
  469. package/modern/timeViewRenderers/index.js +1 -1
  470. package/modern/timeViewRenderers/timeViewRenderers.js +4 -4
  471. package/modern/validation/index.js +5 -0
  472. package/modern/validation/useValidation.js +54 -0
  473. package/modern/{internals/utils/validation → validation}/validateDate.js +6 -4
  474. package/modern/validation/validateDateTime.js +26 -0
  475. package/{internals/utils → modern}/validation/validateTime.js +6 -4
  476. package/node/AdapterDateFns/AdapterDateFns.js +1 -1
  477. package/node/AdapterDateFnsBase/AdapterDateFnsBase.js +1 -1
  478. package/node/AdapterDateFnsJalali/AdapterDateFnsJalali.js +1 -1
  479. package/node/AdapterDateFnsJalaliV3/AdapterDateFnsJalaliV3.js +1 -1
  480. package/node/AdapterDayjs/AdapterDayjs.js +6 -7
  481. package/node/AdapterLuxon/AdapterLuxon.js +5 -6
  482. package/node/AdapterMoment/AdapterMoment.js +5 -6
  483. package/node/AdapterMomentHijri/AdapterMomentHijri.js +1 -1
  484. package/node/AdapterMomentJalaali/AdapterMomentJalaali.js +1 -1
  485. package/node/DateCalendar/DateCalendar.js +4 -4
  486. package/node/DateCalendar/DayCalendar.js +3 -5
  487. package/node/DateCalendar/PickersFadeTransitionGroup.js +2 -3
  488. package/node/DateCalendar/PickersSlideTransition.js +2 -3
  489. package/node/DateCalendar/useCalendarState.js +3 -3
  490. package/node/DateCalendar/useIsDateDisabled.js +6 -6
  491. package/node/DateField/DateField.js +12 -10
  492. package/node/DateField/useDateField.js +5 -4
  493. package/node/DatePicker/DatePicker.js +14 -14
  494. package/node/DatePicker/DatePickerToolbar.js +3 -3
  495. package/node/DatePicker/shared.js +2 -3
  496. package/node/DateTimeField/DateTimeField.js +12 -10
  497. package/node/DateTimeField/useDateTimeField.js +5 -4
  498. package/node/DateTimePicker/DateTimePicker.js +14 -14
  499. package/node/DateTimePicker/DateTimePickerTabs.js +3 -3
  500. package/node/DateTimePicker/DateTimePickerToolbar.js +3 -3
  501. package/node/DateTimePicker/shared.js +2 -3
  502. package/node/DayCalendarSkeleton/DayCalendarSkeleton.js +3 -3
  503. package/node/DesktopDatePicker/DesktopDatePicker.js +24 -19
  504. package/node/DesktopDateTimePicker/DesktopDateTimePicker.js +24 -19
  505. package/node/DesktopDateTimePicker/DesktopDateTimePickerLayout.js +2 -3
  506. package/node/DesktopTimePicker/DesktopTimePicker.js +24 -19
  507. package/node/DigitalClock/DigitalClock.js +4 -4
  508. package/node/DigitalClock/digitalClockClasses.js +1 -1
  509. package/node/LocalizationProvider/LocalizationProvider.js +3 -3
  510. package/node/MobileDatePicker/MobileDatePicker.js +24 -19
  511. package/node/MobileDateTimePicker/MobileDateTimePicker.js +24 -19
  512. package/node/MobileTimePicker/MobileTimePicker.js +24 -19
  513. package/node/MonthCalendar/MonthCalendar.js +3 -3
  514. package/node/MonthCalendar/PickersMonth.js +2 -3
  515. package/node/MultiSectionDigitalClock/MultiSectionDigitalClock.js +7 -7
  516. package/node/MultiSectionDigitalClock/MultiSectionDigitalClockSection.js +2 -3
  517. package/node/MultiSectionDigitalClock/multiSectionDigitalClockClasses.js +1 -1
  518. package/node/MultiSectionDigitalClock/multiSectionDigitalClockSectionClasses.js +1 -1
  519. package/node/PickersActionBar/PickersActionBar.js +3 -3
  520. package/node/PickersCalendarHeader/PickersCalendarHeader.js +3 -3
  521. package/node/PickersDay/PickersDay.js +3 -3
  522. package/node/PickersLayout/PickersLayout.js +3 -3
  523. package/node/PickersLayout/index.js +1 -1
  524. package/node/PickersLayout/pickersLayoutClasses.js +1 -1
  525. package/node/PickersLayout/usePickerLayout.js +3 -3
  526. package/node/PickersSectionList/PickersSectionList.js +3 -3
  527. package/node/PickersSectionList/pickersSectionListClasses.js +1 -1
  528. package/node/PickersShortcuts/PickersShortcuts.js +3 -3
  529. package/node/PickersTextField/PickersFilledInput/PickersFilledInput.js +2 -3
  530. package/node/PickersTextField/PickersFilledInput/pickersFilledInputClasses.js +1 -1
  531. package/node/PickersTextField/PickersInput/PickersInput.js +2 -3
  532. package/node/PickersTextField/PickersInput/pickersInputClasses.js +1 -1
  533. package/node/PickersTextField/PickersInputBase/PickersInputBase.js +2 -3
  534. package/node/PickersTextField/PickersInputBase/pickersInputBaseClasses.js +1 -1
  535. package/node/PickersTextField/PickersOutlinedInput/Outline.js +2 -3
  536. package/node/PickersTextField/PickersOutlinedInput/PickersOutlinedInput.js +2 -3
  537. package/node/PickersTextField/PickersOutlinedInput/pickersOutlinedInputClasses.js +1 -1
  538. package/node/PickersTextField/PickersTextField.js +3 -3
  539. package/node/PickersTextField/pickersTextFieldClasses.js +1 -1
  540. package/node/StaticDatePicker/StaticDatePicker.js +16 -16
  541. package/node/StaticDateTimePicker/StaticDateTimePicker.js +16 -16
  542. package/node/StaticTimePicker/StaticTimePicker.js +16 -16
  543. package/node/TimeClock/Clock.js +3 -4
  544. package/node/TimeClock/ClockNumber.js +2 -3
  545. package/node/TimeClock/ClockNumbers.js +2 -3
  546. package/node/TimeClock/ClockPointer.js +2 -3
  547. package/node/TimeClock/TimeClock.js +4 -4
  548. package/node/TimeField/TimeField.js +12 -10
  549. package/node/TimeField/useTimeField.js +5 -4
  550. package/node/TimePicker/TimePicker.js +14 -14
  551. package/node/TimePicker/TimePickerToolbar.js +3 -3
  552. package/node/TimePicker/shared.js +2 -3
  553. package/node/YearCalendar/PickersYear.js +2 -3
  554. package/node/YearCalendar/YearCalendar.js +3 -3
  555. package/node/dateViewRenderers/dateViewRenderers.js +1 -2
  556. package/node/hooks/index.js +8 -1
  557. package/node/hooks/useClearableField.js +3 -3
  558. package/node/hooks/usePickersTranslations.js +1 -0
  559. package/node/hooks/useSplitFieldProps.js +51 -0
  560. package/node/icons/index.js +9 -10
  561. package/node/index.js +13 -1
  562. package/node/internals/components/PickersArrowSwitcher/PickersArrowSwitcher.js +2 -3
  563. package/node/internals/components/PickersModalDialog.js +2 -3
  564. package/node/internals/components/PickersPopper.js +2 -3
  565. package/node/internals/components/PickersToolbar.js +2 -3
  566. package/node/internals/components/PickersToolbarButton.js +2 -3
  567. package/node/internals/components/PickersToolbarText.js +2 -3
  568. package/node/internals/demo/DemoContainer.js +4 -5
  569. package/node/internals/hooks/date-helpers-hooks.js +1 -2
  570. package/node/internals/hooks/defaultizedFieldProps.js +1 -1
  571. package/node/internals/hooks/useClockReferenceDate.js +1 -2
  572. package/node/internals/hooks/useDefaultReduceAnimations.js +1 -1
  573. package/node/internals/hooks/useDesktopPicker/useDesktopPicker.js +14 -7
  574. package/node/internals/hooks/useField/buildSectionsFromFormat.js +1 -1
  575. package/node/internals/hooks/useField/useField.js +13 -9
  576. package/node/internals/hooks/useField/useFieldCharacterEditing.js +2 -3
  577. package/node/internals/hooks/useField/useFieldState.js +4 -7
  578. package/node/internals/hooks/useField/useFieldV6TextField.js +2 -3
  579. package/node/internals/hooks/useField/useFieldV7TextField.js +2 -3
  580. package/node/internals/hooks/useIsLandscape.js +1 -2
  581. package/node/internals/hooks/useMobilePicker/useMobilePicker.js +3 -6
  582. package/node/internals/hooks/useOpenState.js +1 -2
  583. package/node/internals/hooks/usePicker/usePicker.js +1 -1
  584. package/node/internals/hooks/usePicker/usePickerLayoutProps.js +1 -1
  585. package/node/internals/hooks/usePicker/usePickerValue.js +14 -19
  586. package/node/internals/hooks/usePicker/usePickerViews.js +2 -3
  587. package/node/internals/hooks/useStaticPicker/useStaticPicker.js +2 -3
  588. package/node/internals/hooks/useUtils.js +2 -3
  589. package/node/internals/hooks/useValueWithTimezone.js +2 -3
  590. package/node/internals/hooks/useViews.js +2 -3
  591. package/node/internals/index.js +0 -49
  592. package/node/internals/utils/convertFieldResponseIntoMuiTextFieldProps.js +1 -1
  593. package/node/internals/utils/date-time-utils.js +1 -1
  594. package/node/internals/utils/valueManagers.js +1 -1
  595. package/node/locales/beBY.js +4 -4
  596. package/node/locales/caES.js +3 -3
  597. package/node/locales/csCZ.js +4 -4
  598. package/node/locales/daDK.js +3 -3
  599. package/node/locales/deDE.js +3 -3
  600. package/node/locales/elGR.js +4 -4
  601. package/node/locales/enUS.js +4 -4
  602. package/node/locales/esES.js +3 -3
  603. package/node/locales/eu.js +3 -3
  604. package/node/locales/faIR.js +3 -3
  605. package/node/locales/fiFI.js +3 -3
  606. package/node/locales/frFR.js +3 -3
  607. package/node/locales/heIL.js +3 -3
  608. package/node/locales/huHU.js +3 -3
  609. package/node/locales/isIS.js +4 -4
  610. package/node/locales/itIT.js +3 -3
  611. package/node/locales/jaJP.js +3 -3
  612. package/node/locales/koKR.js +3 -3
  613. package/node/locales/kzKZ.js +4 -4
  614. package/node/locales/mk.js +3 -3
  615. package/node/locales/nbNO.js +4 -4
  616. package/node/locales/nlNL.js +3 -3
  617. package/node/locales/nnNO.js +3 -3
  618. package/node/locales/plPL.js +4 -4
  619. package/node/locales/ptBR.js +4 -4
  620. package/node/locales/roRO.js +3 -3
  621. package/node/locales/ruRU.js +3 -3
  622. package/node/locales/skSK.js +4 -4
  623. package/node/locales/svSE.js +3 -3
  624. package/node/locales/trTR.js +4 -4
  625. package/node/locales/ukUA.js +3 -3
  626. package/node/locales/urPK.js +4 -4
  627. package/node/locales/utils/getPickersLocalization.js +17 -3
  628. package/node/locales/viVN.js +3 -3
  629. package/node/locales/zhCN.js +3 -3
  630. package/node/locales/zhHK.js +3 -3
  631. package/node/themeAugmentation/index.js +1 -38
  632. package/node/timeViewRenderers/timeViewRenderers.js +1 -2
  633. package/node/validation/index.js +40 -0
  634. package/node/validation/useValidation.js +61 -0
  635. package/node/{internals/utils/validation → validation}/validateDate.js +6 -4
  636. package/node/{internals/utils/validation → validation}/validateDateTime.js +8 -3
  637. package/node/{internals/utils/validation → validation}/validateTime.js +6 -4
  638. package/package.json +4 -3
  639. package/themeAugmentation/index.d.ts +3 -3
  640. package/themeAugmentation/index.js +0 -3
  641. package/timeViewRenderers/index.js +1 -1
  642. package/timeViewRenderers/timeViewRenderers.js +4 -4
  643. package/{internals/utils/validation → validation}/extractValidationProps.d.ts +1 -1
  644. package/validation/index.d.ts +9 -0
  645. package/validation/index.js +5 -0
  646. package/validation/package.json +6 -0
  647. package/validation/useValidation.d.ts +68 -0
  648. package/validation/useValidation.js +54 -0
  649. package/validation/validateDate.d.ts +6 -0
  650. package/{internals/utils/validation → validation}/validateDate.js +6 -4
  651. package/validation/validateDateTime.d.ts +7 -0
  652. package/validation/validateDateTime.js +26 -0
  653. package/validation/validateTime.d.ts +6 -0
  654. package/{modern/internals/utils/validation → validation}/validateTime.js +6 -4
  655. package/internals/hooks/useValidation.d.ts +0 -24
  656. package/internals/hooks/useValidation.js +0 -22
  657. package/internals/utils/fields.d.ts +0 -5
  658. package/internals/utils/fields.js +0 -28
  659. package/internals/utils/validation/validateDate.d.ts +0 -7
  660. package/internals/utils/validation/validateDateTime.d.ts +0 -7
  661. package/internals/utils/validation/validateDateTime.js +0 -21
  662. package/internals/utils/validation/validateTime.d.ts +0 -7
  663. package/internals/utils/warning.d.ts +0 -2
  664. package/internals/utils/warning.js +0 -21
  665. package/modern/internals/hooks/useValidation.js +0 -22
  666. package/modern/internals/utils/fields.js +0 -28
  667. package/modern/internals/utils/validation/validateDateTime.js +0 -21
  668. package/modern/internals/utils/warning.js +0 -21
  669. package/node/internals/hooks/useValidation.js +0 -30
  670. package/node/internals/utils/fields.js +0 -36
  671. package/node/internals/utils/warning.js +0 -28
  672. /package/{internals/utils → modern}/validation/extractValidationProps.js +0 -0
  673. /package/node/{internals/utils/validation → validation}/extractValidationProps.js +0 -0
  674. /package/{modern/internals/utils/validation → validation}/extractValidationProps.js +0 -0
package/locales/zhCN.d.ts CHANGED
@@ -23,13 +23,13 @@ export declare const zhCN: {
23
23
  clearButtonLabel?: string | undefined;
24
24
  okButtonLabel?: string | undefined;
25
25
  todayButtonLabel?: string | undefined;
26
- clockLabelText?: ((view: import("@mui/x-date-pickers/models").TimeView, time: any, adapter: import("@mui/x-date-pickers/models").MuiPickersAdapter<any, any>) => string) | undefined;
26
+ clockLabelText?: ((view: import("@mui/x-date-pickers/models").TimeView, time: any, utils: import("@mui/x-date-pickers/models").MuiPickersAdapter<any, any>, formattedTime?: string | null) => string) | undefined;
27
27
  hoursClockNumberText?: ((hours: string) => string) | undefined;
28
28
  minutesClockNumberText?: ((minutes: string) => string) | undefined;
29
29
  secondsClockNumberText?: ((seconds: string) => string) | undefined;
30
30
  selectViewText?: ((view: TimeViewWithMeridiem) => string) | undefined;
31
- openDatePickerDialogue?: ((date: any, utils: import("@mui/x-date-pickers/models").MuiPickersAdapter<any, any>) => string) | undefined;
32
- openTimePickerDialogue?: ((date: any, utils: import("@mui/x-date-pickers/models").MuiPickersAdapter<any, any>) => string) | undefined;
31
+ openDatePickerDialogue?: ((date: any, utils: import("@mui/x-date-pickers/models").MuiPickersAdapter<any, any>, formattedDate: string | null) => string) | undefined;
32
+ openTimePickerDialogue?: ((date: any, utils: import("@mui/x-date-pickers/models").MuiPickersAdapter<any, any>, formattedTime: string | null) => string) | undefined;
33
33
  fieldClearLabel?: string | undefined;
34
34
  timeTableLabel?: string | undefined;
35
35
  dateTableLabel?: string | undefined;
package/locales/zhCN.js CHANGED
@@ -1,4 +1,4 @@
1
- import { getPickersLocalization } from './utils/getPickersLocalization';
1
+ import { getPickersLocalization } from "./utils/getPickersLocalization.js";
2
2
  const views = {
3
3
  hours: '小时',
4
4
  minutes: '分钟',
@@ -31,7 +31,7 @@ const zhCNPickers = {
31
31
  timePickerToolbarTitle: '选择时间',
32
32
  dateRangePickerToolbarTitle: '选择时间范围',
33
33
  // Clock labels
34
- clockLabelText: (view, time, adapter) => `选择 ${views[view]}. ${time === null ? '未选择时间' : `已选择${adapter.format(time, 'fullTime')}`}`,
34
+ clockLabelText: (view, time, utils, formattedTime) => `选择 ${views[view]}. ${!formattedTime && (time === null || !utils.isValid(time)) ? '未选择时间' : `已选择${formattedTime ?? utils.format(time, 'fullTime')}`}`,
35
35
  hoursClockNumberText: hours => `${hours}小时`,
36
36
  minutesClockNumberText: minutes => `${minutes}分钟`,
37
37
  secondsClockNumberText: seconds => `${seconds}秒`,
@@ -43,8 +43,8 @@ const zhCNPickers = {
43
43
  calendarWeekNumberAriaLabelText: weekNumber => `第${weekNumber}周`,
44
44
  calendarWeekNumberText: weekNumber => `${weekNumber}`,
45
45
  // Open picker labels
46
- openDatePickerDialogue: (value, utils) => value !== null && utils.isValid(value) ? `选择日期,已选择${utils.format(value, 'fullDate')}` : '选择日期',
47
- openTimePickerDialogue: (value, utils) => value !== null && utils.isValid(value) ? `选择时间,已选择${utils.format(value, 'fullTime')}` : '选择时间',
46
+ openDatePickerDialogue: (value, utils, formattedDate) => formattedDate || value !== null && utils.isValid(value) ? `选择日期,已选择${formattedDate ?? utils.format(value, 'fullDate')}` : '选择日期',
47
+ openTimePickerDialogue: (value, utils, formattedTime) => formattedTime || value !== null && utils.isValid(value) ? `选择时间,已选择${formattedTime ?? utils.format(value, 'fullTime')}` : '选择时间',
48
48
  fieldClearLabel: '清除',
49
49
  // Table labels
50
50
  timeTableLabel: '选择时间',
package/locales/zhHK.d.ts CHANGED
@@ -23,13 +23,13 @@ export declare const zhHK: {
23
23
  clearButtonLabel?: string | undefined;
24
24
  okButtonLabel?: string | undefined;
25
25
  todayButtonLabel?: string | undefined;
26
- clockLabelText?: ((view: import("@mui/x-date-pickers/models").TimeView, time: any, adapter: import("@mui/x-date-pickers/models").MuiPickersAdapter<any, any>) => string) | undefined;
26
+ clockLabelText?: ((view: import("@mui/x-date-pickers/models").TimeView, time: any, utils: import("@mui/x-date-pickers/models").MuiPickersAdapter<any, any>, formattedTime?: string | null) => string) | undefined;
27
27
  hoursClockNumberText?: ((hours: string) => string) | undefined;
28
28
  minutesClockNumberText?: ((minutes: string) => string) | undefined;
29
29
  secondsClockNumberText?: ((seconds: string) => string) | undefined;
30
30
  selectViewText?: ((view: TimeViewWithMeridiem) => string) | undefined;
31
- openDatePickerDialogue?: ((date: any, utils: import("@mui/x-date-pickers/models").MuiPickersAdapter<any, any>) => string) | undefined;
32
- openTimePickerDialogue?: ((date: any, utils: import("@mui/x-date-pickers/models").MuiPickersAdapter<any, any>) => string) | undefined;
31
+ openDatePickerDialogue?: ((date: any, utils: import("@mui/x-date-pickers/models").MuiPickersAdapter<any, any>, formattedDate: string | null) => string) | undefined;
32
+ openTimePickerDialogue?: ((date: any, utils: import("@mui/x-date-pickers/models").MuiPickersAdapter<any, any>, formattedTime: string | null) => string) | undefined;
33
33
  fieldClearLabel?: string | undefined;
34
34
  timeTableLabel?: string | undefined;
35
35
  dateTableLabel?: string | undefined;
package/locales/zhHK.js CHANGED
@@ -1,4 +1,4 @@
1
- import { getPickersLocalization } from './utils/getPickersLocalization';
1
+ import { getPickersLocalization } from "./utils/getPickersLocalization.js";
2
2
  const views = {
3
3
  hours: '小時',
4
4
  minutes: '分鐘',
@@ -31,7 +31,7 @@ const zhHKPickers = {
31
31
  timePickerToolbarTitle: '選擇時間',
32
32
  dateRangePickerToolbarTitle: '選擇時間範圍',
33
33
  // Clock labels
34
- clockLabelText: (view, time, adapter) => `選擇 ${views[view]}. ${time === null ? '未選擇時間' : `已選擇${adapter.format(time, 'fullTime')}`}`,
34
+ clockLabelText: (view, time, utils, formattedTime) => `選擇 ${views[view]}. ${!formattedTime && (time === null || !utils.isValid(time)) ? '未選擇時間' : `已選擇${formattedTime ?? utils.format(time, 'fullTime')}`}`,
35
35
  hoursClockNumberText: hours => `${hours}小時`,
36
36
  minutesClockNumberText: minutes => `${minutes}分鐘`,
37
37
  secondsClockNumberText: seconds => `${seconds}秒`,
@@ -43,8 +43,8 @@ const zhHKPickers = {
43
43
  calendarWeekNumberAriaLabelText: weekNumber => `第${weekNumber}週`,
44
44
  calendarWeekNumberText: weekNumber => `${weekNumber}`,
45
45
  // Open picker labels
46
- openDatePickerDialogue: (value, utils) => value !== null && utils.isValid(value) ? `選擇日期,已選擇${utils.format(value, 'fullDate')}` : '選擇日期',
47
- openTimePickerDialogue: (value, utils) => value !== null && utils.isValid(value) ? `選擇時間,已選擇${utils.format(value, 'fullTime')}` : '選擇時間',
46
+ openDatePickerDialogue: (value, utils, formattedDate) => formattedDate || value !== null && utils.isValid(value) ? `選擇日期,已選擇${formattedDate ?? utils.format(value, 'fullDate')}` : '選擇日期',
47
+ openTimePickerDialogue: (value, utils, formattedTime) => formattedTime || value !== null && utils.isValid(value) ? `選擇時間,已選擇${formattedTime ?? utils.format(value, 'fullTime')}` : '選擇時間',
48
48
  fieldClearLabel: '清除',
49
49
  // Table labels
50
50
  timeTableLabel: '選擇時間',
package/models/index.d.ts CHANGED
@@ -5,3 +5,4 @@ export * from './views';
5
5
  export * from './adapters';
6
6
  export * from './common';
7
7
  export * from './pickers';
8
+ export type { PropsFromSlot } from '@mui/x-internals/slots';
package/models/index.js CHANGED
@@ -1,7 +1,10 @@
1
- export * from './fields';
2
- export * from './timezone';
3
- export * from './validation';
4
- export * from './views';
5
- export * from './adapters';
6
- export * from './common';
7
- export * from './pickers';
1
+ export * from "./fields.js";
2
+ export * from "./timezone.js";
3
+ export * from "./validation.js";
4
+ export * from "./views.js";
5
+ export * from "./adapters.js";
6
+ export * from "./common.js";
7
+ export * from "./pickers.js";
8
+
9
+ // Utils shared across the X packages
10
+ export {};
@@ -5,4 +5,17 @@ type CommonDateTimeValidationError = 'invalidDate' | 'disableFuture' | 'disableP
5
5
  export type DateValidationError = CommonDateTimeValidationError | 'shouldDisableDate' | 'shouldDisableMonth' | 'shouldDisableYear' | 'minDate' | 'maxDate';
6
6
  export type TimeValidationError = CommonDateTimeValidationError | 'minutesStep' | 'minTime' | 'maxTime' | 'shouldDisableTime-hours' | 'shouldDisableTime-minutes' | 'shouldDisableTime-seconds';
7
7
  export type DateTimeValidationError = DateValidationError | TimeValidationError;
8
+ export interface OnErrorProps<TValue, TError> {
9
+ /**
10
+ * Callback fired when the error associated with the current value changes.
11
+ * When a validation error is detected, the `error` parameter contains a non-null value.
12
+ * This can be used to render an appropriate form error.
13
+ * @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.
14
+ * @template TValue The value type. It will be the same type as `value` or `null`. It can be in `[start, end]` format in case of range value.
15
+ * @param {TError} error The reason why the current value is not valid.
16
+ * @param {TValue} value The value associated with the error.
17
+ */
18
+ onError?: (error: TError, value: TValue) => void;
19
+ }
20
+ export type InferError<TProps> = TProps extends Pick<OnErrorProps<any, any>, 'onError'> ? Parameters<Exclude<TProps['onError'], undefined>>[0] : never;
8
21
  export {};
@@ -44,7 +44,7 @@ import isWithinInterval from 'date-fns/isWithinInterval';
44
44
  import defaultLocale from 'date-fns/locale/en-US';
45
45
  // @ts-ignore
46
46
  import longFormatters from 'date-fns/_lib/format/longFormatters';
47
- import { AdapterDateFnsBase } from '../AdapterDateFnsBase';
47
+ import { AdapterDateFnsBase } from "../AdapterDateFnsBase/index.js";
48
48
  /**
49
49
  * Based on `@date-io/date-fns`
50
50
  *
@@ -1 +1 @@
1
- export { AdapterDateFns } from './AdapterDateFns';
1
+ export { AdapterDateFns } from "./AdapterDateFns.js";
@@ -1 +1 @@
1
- export { AdapterDateFnsBase } from './AdapterDateFnsBase';
1
+ export { AdapterDateFnsBase } from "./AdapterDateFnsBase.js";
@@ -45,7 +45,7 @@ import isWithinInterval from 'date-fns-jalali/isWithinInterval';
45
45
  import defaultLocale from 'date-fns-jalali/locale/fa-IR';
46
46
  // @ts-ignore
47
47
  import longFormatters from 'date-fns-jalali/_lib/format/longFormatters';
48
- import { AdapterDateFnsBase } from '../AdapterDateFnsBase';
48
+ import { AdapterDateFnsBase } from "../AdapterDateFnsBase/index.js";
49
49
  const defaultFormats = {
50
50
  year: 'yyyy',
51
51
  month: 'LLLL',
@@ -1 +1 @@
1
- export { AdapterDateFnsJalali } from './AdapterDateFnsJalali';
1
+ export { AdapterDateFnsJalali } from "./AdapterDateFnsJalali.js";
@@ -48,7 +48,7 @@ import { faIR as defaultLocale } from 'date-fns-jalali/locale/fa-IR';
48
48
  // date-fns-jalali v2 does not export types
49
49
  // @ts-ignore TODO remove when date-fns-jalali-v3 is the default
50
50
 
51
- import { AdapterDateFnsBase } from '../AdapterDateFnsBase';
51
+ import { AdapterDateFnsBase } from "../AdapterDateFnsBase/index.js";
52
52
  const defaultFormats = {
53
53
  year: 'yyyy',
54
54
  month: 'LLLL',
@@ -1 +1 @@
1
- export { AdapterDateFnsJalali } from './AdapterDateFnsJalaliV3';
1
+ export { AdapterDateFnsJalali } from "./AdapterDateFnsJalaliV3.js";
@@ -48,7 +48,7 @@ import { enUS } from 'date-fns/locale/en-US';
48
48
  // date-fns v2 does not export types
49
49
  // @ts-ignore TODO remove when date-fns-v3 is the default
50
50
 
51
- import { AdapterDateFnsBase } from '../AdapterDateFnsBase';
51
+ import { AdapterDateFnsBase } from "../AdapterDateFnsBase/index.js";
52
52
  /**
53
53
  * Based on `@date-io/date-fns`
54
54
  *
@@ -1 +1 @@
1
- export { AdapterDateFns } from './AdapterDateFnsV3';
1
+ export { AdapterDateFns } from "./AdapterDateFnsV3.js";
@@ -6,7 +6,7 @@ import customParseFormatPlugin from 'dayjs/plugin/customParseFormat';
6
6
  import localizedFormatPlugin from 'dayjs/plugin/localizedFormat';
7
7
  import isBetweenPlugin from 'dayjs/plugin/isBetween';
8
8
  import advancedFormatPlugin from 'dayjs/plugin/advancedFormat';
9
- import { warnOnce } from '../internals/utils/warning';
9
+ import { warnOnce } from '@mui/x-internals/warning';
10
10
  defaultDayjs.extend(localizedFormatPlugin);
11
11
  defaultDayjs.extend(weekOfYearPlugin);
12
12
  defaultDayjs.extend(isBetweenPlugin);
@@ -427,7 +427,7 @@ export class AdapterDayjs {
427
427
  return this.adjustOffset(value.startOf('month'));
428
428
  };
429
429
  this.startOfWeek = value => {
430
- return this.adjustOffset(value.startOf('week'));
430
+ return this.adjustOffset(this.setLocaleToValue(value).startOf('week'));
431
431
  };
432
432
  this.startOfDay = value => {
433
433
  return this.adjustOffset(value.startOf('day'));
@@ -439,7 +439,7 @@ export class AdapterDayjs {
439
439
  return this.adjustOffset(value.endOf('month'));
440
440
  };
441
441
  this.endOfWeek = value => {
442
- return this.adjustOffset(value.endOf('week'));
442
+ return this.adjustOffset(this.setLocaleToValue(value).endOf('week'));
443
443
  };
444
444
  this.endOfDay = value => {
445
445
  return this.adjustOffset(value.endOf('day'));
@@ -511,9 +511,8 @@ export class AdapterDayjs {
511
511
  return value.daysInMonth();
512
512
  };
513
513
  this.getWeekArray = value => {
514
- const cleanValue = this.setLocaleToValue(value);
515
- const start = this.startOfWeek(this.startOfMonth(cleanValue));
516
- const end = this.endOfWeek(this.endOfMonth(cleanValue));
514
+ const start = this.startOfWeek(this.startOfMonth(value));
515
+ const end = this.endOfWeek(this.endOfMonth(value));
517
516
  let count = 0;
518
517
  let current = start;
519
518
  const nestedWeeks = [];
@@ -1 +1 @@
1
- export { AdapterDayjs } from './AdapterDayjs';
1
+ export { AdapterDayjs } from "./AdapterDayjs.js";
@@ -344,7 +344,7 @@ export class AdapterLuxon {
344
344
  return value.startOf('month');
345
345
  };
346
346
  this.startOfWeek = value => {
347
- return value.startOf('week', {
347
+ return this.setLocaleToValue(value).startOf('week', {
348
348
  useLocaleWeeks: true
349
349
  });
350
350
  };
@@ -358,7 +358,7 @@ export class AdapterLuxon {
358
358
  return value.endOf('month');
359
359
  };
360
360
  this.endOfWeek = value => {
361
- return value.endOf('week', {
361
+ return this.setLocaleToValue(value).endOf('week', {
362
362
  useLocaleWeeks: true
363
363
  });
364
364
  };
@@ -461,9 +461,8 @@ export class AdapterLuxon {
461
461
  return value.daysInMonth;
462
462
  };
463
463
  this.getWeekArray = value => {
464
- const cleanValue = this.setLocaleToValue(value);
465
- const firstDay = this.startOfWeek(this.startOfMonth(cleanValue));
466
- const lastDay = this.endOfWeek(this.endOfMonth(cleanValue));
464
+ const firstDay = this.startOfWeek(this.startOfMonth(value));
465
+ const lastDay = this.endOfWeek(this.endOfMonth(value));
467
466
  const {
468
467
  days
469
468
  } = lastDay.diff(firstDay, 'days').toObject();
@@ -1 +1 @@
1
- export { AdapterLuxon } from './AdapterLuxon';
1
+ export { AdapterLuxon } from "./AdapterLuxon.js";
@@ -341,7 +341,7 @@ export class AdapterMoment {
341
341
  return value.clone().startOf('month');
342
342
  };
343
343
  this.startOfWeek = value => {
344
- return value.clone().startOf('week');
344
+ return this.setLocaleToValue(value.clone()).startOf('week');
345
345
  };
346
346
  this.startOfDay = value => {
347
347
  return value.clone().startOf('day');
@@ -353,7 +353,7 @@ export class AdapterMoment {
353
353
  return value.clone().endOf('month');
354
354
  };
355
355
  this.endOfWeek = value => {
356
- return value.clone().endOf('week');
356
+ return this.setLocaleToValue(value.clone()).endOf('week');
357
357
  };
358
358
  this.endOfDay = value => {
359
359
  return value.clone().endOf('day');
@@ -425,9 +425,8 @@ export class AdapterMoment {
425
425
  return value.daysInMonth();
426
426
  };
427
427
  this.getWeekArray = value => {
428
- const cleanValue = this.setLocaleToValue(value);
429
- const start = this.startOfWeek(this.startOfMonth(cleanValue));
430
- const end = this.endOfWeek(this.endOfMonth(cleanValue));
428
+ const start = this.startOfWeek(this.startOfMonth(value));
429
+ const end = this.endOfWeek(this.endOfMonth(value));
431
430
  let count = 0;
432
431
  let current = start;
433
432
  const nestedWeeks = [];
@@ -1 +1 @@
1
- export { AdapterMoment } from './AdapterMoment';
1
+ export { AdapterMoment } from "./AdapterMoment.js";
@@ -1,7 +1,7 @@
1
1
  import _extends from "@babel/runtime/helpers/esm/extends";
2
2
  /* eslint-disable class-methods-use-this */
3
3
  import defaultHMoment from 'moment-hijri';
4
- import { AdapterMoment } from '../AdapterMoment';
4
+ import { AdapterMoment } from "../AdapterMoment/index.js";
5
5
  // From https://momentjs.com/docs/#/displaying/format/
6
6
  const formatTokenMap = {
7
7
  // Year
@@ -1 +1 @@
1
- export { AdapterMomentHijri } from './AdapterMomentHijri';
1
+ export { AdapterMomentHijri } from "./AdapterMomentHijri.js";
@@ -1,7 +1,7 @@
1
1
  import _extends from "@babel/runtime/helpers/esm/extends";
2
2
  /* eslint-disable class-methods-use-this */
3
3
  import defaultJMoment from 'moment-jalaali';
4
- import { AdapterMoment } from '../AdapterMoment';
4
+ import { AdapterMoment } from "../AdapterMoment/index.js";
5
5
  // From https://momentjs.com/docs/#/displaying/format/
6
6
  const formatTokenMap = {
7
7
  // Year
@@ -1 +1 @@
1
- export { AdapterMomentJalaali } from './AdapterMomentJalaali';
1
+ export { AdapterMomentJalaali } from "./AdapterMomentJalaali.js";
@@ -1,3 +1,5 @@
1
+ 'use client';
2
+
1
3
  import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/esm/objectWithoutPropertiesLoose";
2
4
  import _extends from "@babel/runtime/helpers/esm/extends";
3
5
  const _excluded = ["autoFocus", "onViewChange", "value", "defaultValue", "referenceDate", "disableFuture", "disablePast", "onChange", "onYearChange", "onMonthChange", "reduceAnimations", "shouldDisableDate", "shouldDisableMonth", "shouldDisableYear", "view", "views", "openTo", "className", "disabled", "readOnly", "minDate", "maxDate", "disableHighlightToday", "focusedView", "onFocusedViewChange", "showDaysOutsideCurrentMonth", "fixedWeekNumber", "dayOfWeekFormatter", "slots", "slotProps", "loading", "renderLoading", "displayWeekNumber", "yearsPerRow", "monthsPerRow", "timezone"];
@@ -7,21 +9,21 @@ import clsx from 'clsx';
7
9
  import useSlotProps from '@mui/utils/useSlotProps';
8
10
  import { styled, useThemeProps } from '@mui/material/styles';
9
11
  import { unstable_composeClasses as composeClasses, unstable_useId as useId, unstable_useEventCallback as useEventCallback } from '@mui/utils';
10
- import { useCalendarState } from './useCalendarState';
11
- import { useDefaultDates, useUtils } from '../internals/hooks/useUtils';
12
- import { PickersFadeTransitionGroup } from './PickersFadeTransitionGroup';
13
- import { DayCalendar } from './DayCalendar';
14
- import { MonthCalendar } from '../MonthCalendar';
15
- import { YearCalendar } from '../YearCalendar';
16
- import { useViews } from '../internals/hooks/useViews';
17
- import { PickersCalendarHeader } from '../PickersCalendarHeader';
18
- import { findClosestEnabledDate, applyDefaultDate, mergeDateAndTime } from '../internals/utils/date-utils';
19
- import { PickerViewRoot } from '../internals/components/PickerViewRoot';
20
- import { useDefaultReduceAnimations } from '../internals/hooks/useDefaultReduceAnimations';
21
- import { getDateCalendarUtilityClass } from './dateCalendarClasses';
22
- import { useControlledValueWithTimezone } from '../internals/hooks/useValueWithTimezone';
23
- import { singleItemValueManager } from '../internals/utils/valueManagers';
24
- import { VIEW_HEIGHT } from '../internals/constants/dimensions';
12
+ import { useCalendarState } from "./useCalendarState.js";
13
+ import { useDefaultDates, useUtils } from "../internals/hooks/useUtils.js";
14
+ import { PickersFadeTransitionGroup } from "./PickersFadeTransitionGroup.js";
15
+ import { DayCalendar } from "./DayCalendar.js";
16
+ import { MonthCalendar } from "../MonthCalendar/index.js";
17
+ import { YearCalendar } from "../YearCalendar/index.js";
18
+ import { useViews } from "../internals/hooks/useViews.js";
19
+ import { PickersCalendarHeader } from "../PickersCalendarHeader/index.js";
20
+ import { findClosestEnabledDate, applyDefaultDate, mergeDateAndTime } from "../internals/utils/date-utils.js";
21
+ import { PickerViewRoot } from "../internals/components/PickerViewRoot/index.js";
22
+ import { useDefaultReduceAnimations } from "../internals/hooks/useDefaultReduceAnimations.js";
23
+ import { getDateCalendarUtilityClass } from "./dateCalendarClasses.js";
24
+ import { useControlledValueWithTimezone } from "../internals/hooks/useValueWithTimezone.js";
25
+ import { singleItemValueManager } from "../internals/utils/valueManagers.js";
26
+ import { VIEW_HEIGHT } from "../internals/constants/dimensions.js";
25
27
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
26
28
  const useUtilityClasses = ownerState => {
27
29
  const {
@@ -427,7 +429,7 @@ process.env.NODE_ENV !== "production" ? DateCalendar.propTypes = {
427
429
  monthsPerRow: PropTypes.oneOf([3, 4]),
428
430
  /**
429
431
  * Callback fired when the value changes.
430
- * @template TValue The value type. Will be either the same type as `value` or `null`. Can be in `[start, end]` format in case of range value.
432
+ * @template TValue The value type. It will be the same type as `value` or `null`. It can be in `[start, end]` format in case of range value.
431
433
  * @template TView The view type. Will be one of date or time views.
432
434
  * @param {TValue} value The new value.
433
435
  * @param {PickerSelectionState | undefined} selectionState Indicates if the date selection is complete.
@@ -10,14 +10,14 @@ import { useRtl } from '@mui/system/RtlProvider';
10
10
  import { styled, useThemeProps } from '@mui/material/styles';
11
11
  import { unstable_composeClasses as composeClasses, unstable_useControlled as useControlled } from '@mui/utils';
12
12
  import clsx from 'clsx';
13
- import { PickersDay } from '../PickersDay/PickersDay';
14
- import { usePickersTranslations } from '../hooks/usePickersTranslations';
15
- import { useUtils, useNow } from '../internals/hooks/useUtils';
16
- import { DAY_SIZE, DAY_MARGIN } from '../internals/constants/dimensions';
17
- import { PickersSlideTransition } from './PickersSlideTransition';
18
- import { useIsDateDisabled } from './useIsDateDisabled';
19
- import { findClosestEnabledDate, getWeekdays } from '../internals/utils/date-utils';
20
- import { getDayCalendarUtilityClass } from './dayCalendarClasses';
13
+ import { PickersDay } from "../PickersDay/PickersDay.js";
14
+ import { usePickersTranslations } from "../hooks/usePickersTranslations.js";
15
+ import { useUtils, useNow } from "../internals/hooks/useUtils.js";
16
+ import { DAY_SIZE, DAY_MARGIN } from "../internals/constants/dimensions.js";
17
+ import { PickersSlideTransition } from "./PickersSlideTransition.js";
18
+ import { useIsDateDisabled } from "./useIsDateDisabled.js";
19
+ import { findClosestEnabledDate, getWeekdays } from "../internals/utils/date-utils.js";
20
+ import { getDayCalendarUtilityClass } from "./dayCalendarClasses.js";
21
21
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
22
22
  const useUtilityClasses = ownerState => {
23
23
  const {
@@ -360,7 +360,6 @@ export function DayCalendar(inProps) {
360
360
  const transitionKey = `${currentYearNumber}-${currentMonthNumber}`;
361
361
  // eslint-disable-next-line react-hooks/exhaustive-deps
362
362
  const slideNodeRef = React.useMemo(() => /*#__PURE__*/React.createRef(), [transitionKey]);
363
- const startOfCurrentWeek = utils.startOfWeek(now);
364
363
  const focusableDay = React.useMemo(() => {
365
364
  const startOfMonth = utils.startOfMonth(currentMonth);
366
365
  const endOfMonth = utils.endOfMonth(currentMonth);
@@ -410,7 +409,7 @@ export function DayCalendar(inProps) {
410
409
  }), getWeekdays(utils, now).map((weekday, i) => /*#__PURE__*/_jsx(PickersCalendarWeekDayLabel, {
411
410
  variant: "caption",
412
411
  role: "columnheader",
413
- "aria-label": utils.format(utils.addDays(startOfCurrentWeek, i), 'weekday'),
412
+ "aria-label": utils.format(weekday, 'weekday'),
414
413
  className: classes.weekDayLabel,
415
414
  children: dayOfWeekFormatter(weekday)
416
415
  }, i.toString()))]
@@ -4,7 +4,7 @@ import { TransitionGroup } from 'react-transition-group';
4
4
  import Fade from '@mui/material/Fade';
5
5
  import { styled, useTheme, useThemeProps } from '@mui/material/styles';
6
6
  import composeClasses from '@mui/utils/composeClasses';
7
- import { getPickersFadeTransitionGroupUtilityClass } from './pickersFadeTransitionGroupClasses';
7
+ import { getPickersFadeTransitionGroupUtilityClass } from "./pickersFadeTransitionGroupClasses.js";
8
8
  import { jsx as _jsx } from "react/jsx-runtime";
9
9
  const useUtilityClasses = ownerState => {
10
10
  const {
@@ -6,7 +6,7 @@ import clsx from 'clsx';
6
6
  import { styled, useTheme, useThemeProps } from '@mui/material/styles';
7
7
  import composeClasses from '@mui/utils/composeClasses';
8
8
  import { CSSTransition, TransitionGroup } from 'react-transition-group';
9
- import { getPickersSlideTransitionUtilityClass, pickersSlideTransitionClasses } from './pickersSlideTransitionClasses';
9
+ import { getPickersSlideTransitionUtilityClass, pickersSlideTransitionClasses } from "./pickersSlideTransitionClasses.js";
10
10
  import { jsx as _jsx } from "react/jsx-runtime";
11
11
  const useUtilityClasses = ownerState => {
12
12
  const {
@@ -1,5 +1,5 @@
1
- export { DateCalendar } from './DateCalendar';
2
- export { getDateCalendarUtilityClass, dateCalendarClasses } from './dateCalendarClasses';
3
- export { dayCalendarClasses } from './dayCalendarClasses';
4
- export { pickersFadeTransitionGroupClasses } from './pickersFadeTransitionGroupClasses';
5
- export { pickersSlideTransitionClasses } from './pickersSlideTransitionClasses';
1
+ export { DateCalendar } from "./DateCalendar.js";
2
+ export { getDateCalendarUtilityClass, dateCalendarClasses } from "./dateCalendarClasses.js";
3
+ export { dayCalendarClasses } from "./dayCalendarClasses.js";
4
+ export { pickersFadeTransitionGroupClasses } from "./pickersFadeTransitionGroupClasses.js";
5
+ export { pickersSlideTransitionClasses } from "./pickersSlideTransitionClasses.js";
@@ -1,10 +1,12 @@
1
+ 'use client';
2
+
1
3
  import _extends from "@babel/runtime/helpers/esm/extends";
2
4
  import * as React from 'react';
3
5
  import useEventCallback from '@mui/utils/useEventCallback';
4
- import { useIsDateDisabled } from './useIsDateDisabled';
5
- import { useUtils } from '../internals/hooks/useUtils';
6
- import { singleItemValueManager } from '../internals/utils/valueManagers';
7
- import { SECTION_TYPE_GRANULARITY } from '../internals/utils/getDefaultReferenceDate';
6
+ import { useIsDateDisabled } from "./useIsDateDisabled.js";
7
+ import { useUtils } from "../internals/hooks/useUtils.js";
8
+ import { singleItemValueManager } from "../internals/utils/valueManagers.js";
9
+ import { SECTION_TYPE_GRANULARITY } from "../internals/utils/getDefaultReferenceDate.js";
8
10
  export const createCalendarStateReducer = (reduceAnimations, disableSwitchToMonthOnDayFocus, utils) => (state, action) => {
9
11
  switch (action.type) {
10
12
  case 'changeMonth':
@@ -1,6 +1,8 @@
1
+ 'use client';
2
+
1
3
  import * as React from 'react';
2
- import { validateDate } from '../internals/utils/validation/validateDate';
3
- import { useLocalizationContext } from '../internals/hooks/useUtils';
4
+ import { validateDate } from "../validation/index.js";
5
+ import { useLocalizationContext } from "../internals/hooks/useUtils.js";
4
6
  export const useIsDateDisabled = ({
5
7
  shouldDisableDate,
6
8
  shouldDisableMonth,
@@ -15,6 +17,7 @@ export const useIsDateDisabled = ({
15
17
  return React.useCallback(day => validateDate({
16
18
  adapter,
17
19
  value: day,
20
+ timezone,
18
21
  props: {
19
22
  shouldDisableDate,
20
23
  shouldDisableMonth,
@@ -22,8 +25,7 @@ export const useIsDateDisabled = ({
22
25
  minDate,
23
26
  maxDate,
24
27
  disableFuture,
25
- disablePast,
26
- timezone
28
+ disablePast
27
29
  }
28
30
  }) !== null, [adapter, shouldDisableDate, shouldDisableMonth, shouldDisableYear, minDate, maxDate, disableFuture, disablePast, timezone]);
29
31
  };
@@ -1,3 +1,5 @@
1
+ 'use client';
2
+
1
3
  import _extends from "@babel/runtime/helpers/esm/extends";
2
4
  import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/esm/objectWithoutPropertiesLoose";
3
5
  const _excluded = ["slots", "slotProps", "InputProps", "inputProps"];
@@ -7,10 +9,10 @@ import MuiTextField from '@mui/material/TextField';
7
9
  import { useThemeProps } from '@mui/material/styles';
8
10
  import useSlotProps from '@mui/utils/useSlotProps';
9
11
  import { refType } from '@mui/utils';
10
- import { useDateField } from './useDateField';
11
- import { useClearableField } from '../hooks';
12
- import { PickersTextField } from '../PickersTextField';
13
- import { convertFieldResponseIntoMuiTextFieldProps } from '../internals/utils/convertFieldResponseIntoMuiTextFieldProps';
12
+ import { useDateField } from "./useDateField.js";
13
+ import { useClearableField } from "../hooks/index.js";
14
+ import { PickersTextField } from "../PickersTextField/index.js";
15
+ import { convertFieldResponseIntoMuiTextFieldProps } from "../internals/utils/convertFieldResponseIntoMuiTextFieldProps.js";
14
16
  import { jsx as _jsx } from "react/jsx-runtime";
15
17
  /**
16
18
  * Demos:
@@ -189,8 +191,8 @@ process.env.NODE_ENV !== "production" ? DateField.propTypes = {
189
191
  onBlur: PropTypes.func,
190
192
  /**
191
193
  * Callback fired when the value changes.
192
- * @template TValue The value type. Will be either the same type as `value` or `null`. Can be in `[start, end]` format in case of range value.
193
- * @template TError The validation error type. Will be either `string` or a `null`. Can be in `[start, end]` format in case of range value.
194
+ * @template TValue The value type. It will be the same type as `value` or `null`. It can be in `[start, end]` format in case of range value.
195
+ * @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.
194
196
  * @param {TValue} value The new value.
195
197
  * @param {FieldChangeHandlerContext<TError>} context The context containing the validation result of the current value.
196
198
  */
@@ -200,11 +202,13 @@ process.env.NODE_ENV !== "production" ? DateField.propTypes = {
200
202
  */
201
203
  onClear: PropTypes.func,
202
204
  /**
203
- * Callback fired when the error associated to the current value changes.
204
- * @template TValue The value type. Will be either the same type as `value` or `null`. Can be in `[start, end]` format in case of range value.
205
- * @template TError The validation error type. Will be either `string` or a `null`. Can be in `[start, end]` format in case of range value.
206
- * @param {TError} error The new error.
207
- * @param {TValue} value The value associated to the error.
205
+ * Callback fired when the error associated with the current value changes.
206
+ * When a validation error is detected, the `error` parameter contains a non-null value.
207
+ * This can be used to render an appropriate form error.
208
+ * @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.
209
+ * @template TValue The value type. It will be the same type as `value` or `null`. It can be in `[start, end]` format in case of range value.
210
+ * @param {TError} error The reason why the current value is not valid.
211
+ * @param {TValue} value The value associated with the error.
208
212
  */
209
213
  onError: PropTypes.func,
210
214
  onFocus: PropTypes.func,
@@ -1,2 +1,2 @@
1
- export { DateField } from './DateField';
2
- export { useDateField as unstable_useDateField } from './useDateField';
1
+ export { DateField } from "./DateField.js";
2
+ export { useDateField as unstable_useDateField } from "./useDateField.js";
@@ -1,14 +1,16 @@
1
- import { singleItemFieldValueManager, singleItemValueManager } from '../internals/utils/valueManagers';
2
- import { useField } from '../internals/hooks/useField';
3
- import { validateDate } from '../internals/utils/validation/validateDate';
4
- import { splitFieldInternalAndForwardedProps } from '../internals/utils/fields';
5
- import { useDefaultizedDateField } from '../internals/hooks/defaultizedFieldProps';
1
+ 'use client';
2
+
3
+ import { singleItemFieldValueManager, singleItemValueManager } from "../internals/utils/valueManagers.js";
4
+ import { useField } from "../internals/hooks/useField/index.js";
5
+ import { validateDate } from "../validation/index.js";
6
+ import { useSplitFieldProps } from "../hooks/index.js";
7
+ import { useDefaultizedDateField } from "../internals/hooks/defaultizedFieldProps.js";
6
8
  export const useDateField = inProps => {
7
9
  const props = useDefaultizedDateField(inProps);
8
10
  const {
9
11
  forwardedProps,
10
12
  internalProps
11
- } = splitFieldInternalAndForwardedProps(props, 'date');
13
+ } = useSplitFieldProps(props, 'date');
12
14
  return useField({
13
15
  forwardedProps,
14
16
  internalProps,