@mui/x-date-pickers 7.16.0 → 7.18.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 (390) hide show
  1. package/AdapterDateFns/AdapterDateFns.js +1 -1
  2. package/AdapterDateFnsV3/AdapterDateFnsV3.js +1 -1
  3. package/AdapterDayjs/AdapterDayjs.js +1 -1
  4. package/CHANGELOG.md +184 -4
  5. package/DateCalendar/DateCalendar.js +11 -1
  6. package/DateCalendar/useCalendarState.js +2 -0
  7. package/DateCalendar/useIsDateDisabled.d.ts +4 -3
  8. package/DateCalendar/useIsDateDisabled.js +5 -3
  9. package/DateField/DateField.js +2 -0
  10. package/DateField/DateField.types.d.ts +7 -2
  11. package/DateField/index.d.ts +1 -1
  12. package/DateField/useDateField.d.ts +1 -1
  13. package/DateField/useDateField.js +5 -3
  14. package/DatePicker/DatePicker.js +8 -0
  15. package/DatePicker/DatePicker.types.d.ts +5 -5
  16. package/DatePicker/DatePickerToolbar.js +2 -0
  17. package/DateTimeField/DateTimeField.js +2 -0
  18. package/DateTimeField/DateTimeField.types.d.ts +7 -2
  19. package/DateTimeField/index.d.ts +1 -1
  20. package/DateTimeField/useDateTimeField.d.ts +1 -1
  21. package/DateTimeField/useDateTimeField.js +5 -3
  22. package/DateTimePicker/DateTimePicker.js +8 -0
  23. package/DateTimePicker/DateTimePicker.types.d.ts +7 -6
  24. package/DateTimePicker/DateTimePickerTabs.js +2 -0
  25. package/DateTimePicker/DateTimePickerToolbar.js +2 -0
  26. package/DayCalendarSkeleton/DayCalendarSkeleton.js +2 -0
  27. package/DesktopDatePicker/DesktopDatePicker.js +16 -3
  28. package/DesktopDatePicker/DesktopDatePicker.types.d.ts +7 -6
  29. package/DesktopDateTimePicker/DesktopDateTimePicker.js +16 -3
  30. package/DesktopDateTimePicker/DesktopDateTimePicker.types.d.ts +11 -10
  31. package/DesktopTimePicker/DesktopTimePicker.js +10 -3
  32. package/DigitalClock/DigitalClock.js +2 -0
  33. package/LocalizationProvider/LocalizationProvider.js +2 -0
  34. package/MobileDatePicker/MobileDatePicker.js +16 -3
  35. package/MobileDatePicker/MobileDatePicker.types.d.ts +5 -0
  36. package/MobileDateTimePicker/MobileDateTimePicker.js +16 -3
  37. package/MobileTimePicker/MobileTimePicker.js +10 -3
  38. package/MonthCalendar/MonthCalendar.js +2 -0
  39. package/MonthCalendar/MonthCalendar.types.d.ts +1 -1
  40. package/MultiSectionDigitalClock/MultiSectionDigitalClock.js +2 -0
  41. package/PickersActionBar/PickersActionBar.js +2 -0
  42. package/PickersCalendarHeader/PickersCalendarHeader.js +2 -0
  43. package/PickersCalendarHeader/PickersCalendarHeader.types.d.ts +1 -1
  44. package/PickersDay/PickersDay.js +2 -0
  45. package/PickersLayout/PickersLayout.js +2 -0
  46. package/PickersLayout/usePickerLayout.js +2 -0
  47. package/PickersSectionList/PickersSectionList.js +2 -0
  48. package/PickersShortcuts/PickersShortcuts.js +2 -0
  49. package/PickersTextField/PickersTextField.js +2 -0
  50. package/StaticDatePicker/StaticDatePicker.js +10 -2
  51. package/StaticDatePicker/StaticDatePicker.types.d.ts +5 -0
  52. package/StaticDateTimePicker/StaticDateTimePicker.js +10 -2
  53. package/StaticDateTimePicker/StaticDateTimePicker.types.d.ts +5 -0
  54. package/StaticTimePicker/StaticTimePicker.js +3 -1
  55. package/TimeClock/Clock.js +1 -1
  56. package/TimeClock/TimeClock.js +2 -0
  57. package/TimeField/TimeField.js +2 -0
  58. package/TimeField/TimeField.types.d.ts +7 -2
  59. package/TimeField/index.d.ts +1 -1
  60. package/TimeField/useTimeField.d.ts +1 -1
  61. package/TimeField/useTimeField.js +5 -3
  62. package/TimePicker/TimePicker.js +2 -0
  63. package/TimePicker/TimePickerToolbar.js +2 -0
  64. package/YearCalendar/YearCalendar.js +21 -6
  65. package/YearCalendar/YearCalendar.types.d.ts +7 -1
  66. package/dateViewRenderers/dateViewRenderers.d.ts +1 -1
  67. package/dateViewRenderers/dateViewRenderers.js +2 -0
  68. package/hooks/index.d.ts +1 -0
  69. package/hooks/index.js +2 -1
  70. package/hooks/useClearableField.js +2 -0
  71. package/hooks/usePickersTranslations.js +2 -0
  72. package/hooks/useSplitFieldProps.d.ts +19 -0
  73. package/hooks/useSplitFieldProps.js +43 -0
  74. package/index.d.ts +1 -0
  75. package/index.js +3 -2
  76. package/internals/hooks/useDesktopPicker/useDesktopPicker.js +1 -3
  77. package/internals/hooks/useDesktopPicker/useDesktopPicker.types.d.ts +2 -2
  78. package/internals/hooks/useField/useField.js +11 -6
  79. package/internals/hooks/useField/useField.types.d.ts +4 -22
  80. package/internals/hooks/useField/useFieldState.js +2 -4
  81. package/internals/hooks/useMobilePicker/useMobilePicker.js +1 -3
  82. package/internals/hooks/useMobilePicker/useMobilePicker.types.d.ts +2 -2
  83. package/internals/hooks/usePicker/usePicker.d.ts +1 -2
  84. package/internals/hooks/usePicker/usePicker.js +1 -1
  85. package/internals/hooks/usePicker/usePickerValue.d.ts +1 -2
  86. package/internals/hooks/usePicker/usePickerValue.js +12 -16
  87. package/internals/hooks/usePicker/usePickerValue.types.d.ts +4 -15
  88. package/internals/index.d.ts +0 -8
  89. package/internals/index.js +0 -7
  90. package/locales/beBY.d.ts +3 -3
  91. package/locales/beBY.js +4 -4
  92. package/locales/caES.d.ts +3 -3
  93. package/locales/caES.js +3 -3
  94. package/locales/csCZ.d.ts +3 -3
  95. package/locales/csCZ.js +4 -4
  96. package/locales/daDK.d.ts +3 -3
  97. package/locales/daDK.js +3 -3
  98. package/locales/deDE.d.ts +3 -3
  99. package/locales/deDE.js +3 -3
  100. package/locales/elGR.d.ts +3 -3
  101. package/locales/elGR.js +4 -4
  102. package/locales/enUS.d.ts +3 -3
  103. package/locales/enUS.js +4 -4
  104. package/locales/esES.d.ts +3 -3
  105. package/locales/esES.js +3 -3
  106. package/locales/eu.d.ts +3 -3
  107. package/locales/eu.js +3 -3
  108. package/locales/faIR.d.ts +3 -3
  109. package/locales/faIR.js +3 -3
  110. package/locales/fiFI.d.ts +3 -3
  111. package/locales/fiFI.js +3 -3
  112. package/locales/frFR.d.ts +3 -3
  113. package/locales/frFR.js +3 -3
  114. package/locales/heIL.d.ts +3 -3
  115. package/locales/heIL.js +3 -3
  116. package/locales/huHU.d.ts +3 -3
  117. package/locales/huHU.js +3 -3
  118. package/locales/isIS.d.ts +3 -3
  119. package/locales/isIS.js +4 -4
  120. package/locales/itIT.d.ts +3 -3
  121. package/locales/itIT.js +3 -3
  122. package/locales/jaJP.d.ts +3 -3
  123. package/locales/jaJP.js +3 -3
  124. package/locales/koKR.d.ts +3 -3
  125. package/locales/koKR.js +3 -3
  126. package/locales/kzKZ.d.ts +3 -3
  127. package/locales/kzKZ.js +4 -4
  128. package/locales/mk.d.ts +3 -3
  129. package/locales/mk.js +3 -3
  130. package/locales/nbNO.d.ts +3 -3
  131. package/locales/nbNO.js +4 -4
  132. package/locales/nlNL.d.ts +3 -3
  133. package/locales/nlNL.js +3 -3
  134. package/locales/nnNO.d.ts +3 -3
  135. package/locales/nnNO.js +3 -3
  136. package/locales/plPL.d.ts +3 -3
  137. package/locales/plPL.js +4 -4
  138. package/locales/ptBR.d.ts +3 -3
  139. package/locales/ptBR.js +4 -4
  140. package/locales/roRO.d.ts +3 -3
  141. package/locales/roRO.js +3 -3
  142. package/locales/ruRU.d.ts +3 -3
  143. package/locales/ruRU.js +3 -3
  144. package/locales/skSK.d.ts +3 -3
  145. package/locales/skSK.js +4 -4
  146. package/locales/svSE.d.ts +3 -3
  147. package/locales/svSE.js +3 -3
  148. package/locales/trTR.d.ts +3 -3
  149. package/locales/trTR.js +4 -4
  150. package/locales/ukUA.d.ts +3 -3
  151. package/locales/ukUA.js +3 -3
  152. package/locales/urPK.d.ts +3 -3
  153. package/locales/urPK.js +4 -4
  154. package/locales/utils/getPickersLocalization.d.ts +10 -3
  155. package/locales/utils/getPickersLocalization.js +13 -0
  156. package/locales/utils/pickersLocaleTextApi.d.ts +27 -3
  157. package/locales/viVN.d.ts +3 -3
  158. package/locales/viVN.js +3 -3
  159. package/locales/zhCN.d.ts +3 -3
  160. package/locales/zhCN.js +3 -3
  161. package/locales/zhHK.d.ts +3 -3
  162. package/locales/zhHK.js +3 -3
  163. package/models/validation.d.ts +13 -0
  164. package/modern/AdapterDateFns/AdapterDateFns.js +1 -1
  165. package/modern/AdapterDateFnsV3/AdapterDateFnsV3.js +1 -1
  166. package/modern/AdapterDayjs/AdapterDayjs.js +1 -1
  167. package/modern/DateCalendar/DateCalendar.js +11 -1
  168. package/modern/DateCalendar/useCalendarState.js +2 -0
  169. package/modern/DateCalendar/useIsDateDisabled.js +5 -3
  170. package/modern/DateField/DateField.js +2 -0
  171. package/modern/DateField/useDateField.js +5 -3
  172. package/modern/DatePicker/DatePicker.js +8 -0
  173. package/modern/DatePicker/DatePickerToolbar.js +2 -0
  174. package/modern/DateTimeField/DateTimeField.js +2 -0
  175. package/modern/DateTimeField/useDateTimeField.js +5 -3
  176. package/modern/DateTimePicker/DateTimePicker.js +8 -0
  177. package/modern/DateTimePicker/DateTimePickerTabs.js +2 -0
  178. package/modern/DateTimePicker/DateTimePickerToolbar.js +2 -0
  179. package/modern/DayCalendarSkeleton/DayCalendarSkeleton.js +2 -0
  180. package/modern/DesktopDatePicker/DesktopDatePicker.js +16 -3
  181. package/modern/DesktopDateTimePicker/DesktopDateTimePicker.js +16 -3
  182. package/modern/DesktopTimePicker/DesktopTimePicker.js +10 -3
  183. package/modern/DigitalClock/DigitalClock.js +2 -0
  184. package/modern/LocalizationProvider/LocalizationProvider.js +2 -0
  185. package/modern/MobileDatePicker/MobileDatePicker.js +16 -3
  186. package/modern/MobileDateTimePicker/MobileDateTimePicker.js +16 -3
  187. package/modern/MobileTimePicker/MobileTimePicker.js +10 -3
  188. package/modern/MonthCalendar/MonthCalendar.js +2 -0
  189. package/modern/MultiSectionDigitalClock/MultiSectionDigitalClock.js +2 -0
  190. package/modern/PickersActionBar/PickersActionBar.js +2 -0
  191. package/modern/PickersCalendarHeader/PickersCalendarHeader.js +2 -0
  192. package/modern/PickersDay/PickersDay.js +2 -0
  193. package/modern/PickersLayout/PickersLayout.js +2 -0
  194. package/modern/PickersLayout/usePickerLayout.js +2 -0
  195. package/modern/PickersSectionList/PickersSectionList.js +2 -0
  196. package/modern/PickersShortcuts/PickersShortcuts.js +2 -0
  197. package/modern/PickersTextField/PickersTextField.js +2 -0
  198. package/modern/StaticDatePicker/StaticDatePicker.js +10 -2
  199. package/modern/StaticDateTimePicker/StaticDateTimePicker.js +10 -2
  200. package/modern/StaticTimePicker/StaticTimePicker.js +3 -1
  201. package/modern/TimeClock/Clock.js +1 -1
  202. package/modern/TimeClock/TimeClock.js +2 -0
  203. package/modern/TimeField/TimeField.js +2 -0
  204. package/modern/TimeField/useTimeField.js +5 -3
  205. package/modern/TimePicker/TimePicker.js +2 -0
  206. package/modern/TimePicker/TimePickerToolbar.js +2 -0
  207. package/modern/YearCalendar/YearCalendar.js +21 -6
  208. package/modern/dateViewRenderers/dateViewRenderers.js +2 -0
  209. package/modern/hooks/index.js +2 -1
  210. package/modern/hooks/useClearableField.js +2 -0
  211. package/modern/hooks/usePickersTranslations.js +2 -0
  212. package/modern/hooks/useSplitFieldProps.js +43 -0
  213. package/modern/index.js +3 -2
  214. package/modern/internals/hooks/useDesktopPicker/useDesktopPicker.js +1 -3
  215. package/modern/internals/hooks/useField/useField.js +11 -6
  216. package/modern/internals/hooks/useField/useFieldState.js +2 -4
  217. package/modern/internals/hooks/useMobilePicker/useMobilePicker.js +1 -3
  218. package/modern/internals/hooks/usePicker/usePicker.js +1 -1
  219. package/modern/internals/hooks/usePicker/usePickerValue.js +12 -16
  220. package/modern/internals/index.js +0 -7
  221. package/modern/locales/beBY.js +4 -4
  222. package/modern/locales/caES.js +3 -3
  223. package/modern/locales/csCZ.js +4 -4
  224. package/modern/locales/daDK.js +3 -3
  225. package/modern/locales/deDE.js +3 -3
  226. package/modern/locales/elGR.js +4 -4
  227. package/modern/locales/enUS.js +4 -4
  228. package/modern/locales/esES.js +3 -3
  229. package/modern/locales/eu.js +3 -3
  230. package/modern/locales/faIR.js +3 -3
  231. package/modern/locales/fiFI.js +3 -3
  232. package/modern/locales/frFR.js +3 -3
  233. package/modern/locales/heIL.js +3 -3
  234. package/modern/locales/huHU.js +3 -3
  235. package/modern/locales/isIS.js +4 -4
  236. package/modern/locales/itIT.js +3 -3
  237. package/modern/locales/jaJP.js +3 -3
  238. package/modern/locales/koKR.js +3 -3
  239. package/modern/locales/kzKZ.js +4 -4
  240. package/modern/locales/mk.js +3 -3
  241. package/modern/locales/nbNO.js +4 -4
  242. package/modern/locales/nlNL.js +3 -3
  243. package/modern/locales/nnNO.js +3 -3
  244. package/modern/locales/plPL.js +4 -4
  245. package/modern/locales/ptBR.js +4 -4
  246. package/modern/locales/roRO.js +3 -3
  247. package/modern/locales/ruRU.js +3 -3
  248. package/modern/locales/skSK.js +4 -4
  249. package/modern/locales/svSE.js +3 -3
  250. package/modern/locales/trTR.js +4 -4
  251. package/modern/locales/ukUA.js +3 -3
  252. package/modern/locales/urPK.js +4 -4
  253. package/modern/locales/utils/getPickersLocalization.js +13 -0
  254. package/modern/locales/viVN.js +3 -3
  255. package/modern/locales/zhCN.js +3 -3
  256. package/modern/locales/zhHK.js +3 -3
  257. package/modern/validation/index.js +5 -0
  258. package/modern/validation/useValidation.js +54 -0
  259. package/{internals/utils → modern}/validation/validateDate.js +6 -4
  260. package/modern/{internals/utils/validation → validation}/validateDateTime.js +8 -3
  261. package/{internals/utils → modern}/validation/validateTime.js +6 -4
  262. package/node/AdapterDateFns/AdapterDateFns.js +1 -1
  263. package/node/AdapterDateFnsV3/AdapterDateFnsV3.js +1 -1
  264. package/node/AdapterDayjs/AdapterDayjs.js +1 -1
  265. package/node/DateCalendar/DateCalendar.js +10 -1
  266. package/node/DateCalendar/useCalendarState.js +1 -0
  267. package/node/DateCalendar/useIsDateDisabled.js +5 -4
  268. package/node/DateField/DateField.js +1 -0
  269. package/node/DateField/useDateField.js +5 -4
  270. package/node/DatePicker/DatePicker.js +7 -0
  271. package/node/DatePicker/DatePickerToolbar.js +1 -0
  272. package/node/DateTimeField/DateTimeField.js +1 -0
  273. package/node/DateTimeField/useDateTimeField.js +5 -4
  274. package/node/DateTimePicker/DateTimePicker.js +7 -0
  275. package/node/DateTimePicker/DateTimePickerTabs.js +1 -0
  276. package/node/DateTimePicker/DateTimePickerToolbar.js +1 -0
  277. package/node/DayCalendarSkeleton/DayCalendarSkeleton.js +1 -0
  278. package/node/DesktopDatePicker/DesktopDatePicker.js +17 -5
  279. package/node/DesktopDateTimePicker/DesktopDateTimePicker.js +17 -5
  280. package/node/DesktopTimePicker/DesktopTimePicker.js +11 -5
  281. package/node/DigitalClock/DigitalClock.js +1 -0
  282. package/node/LocalizationProvider/LocalizationProvider.js +1 -0
  283. package/node/MobileDatePicker/MobileDatePicker.js +17 -5
  284. package/node/MobileDateTimePicker/MobileDateTimePicker.js +17 -5
  285. package/node/MobileTimePicker/MobileTimePicker.js +11 -5
  286. package/node/MonthCalendar/MonthCalendar.js +1 -0
  287. package/node/MultiSectionDigitalClock/MultiSectionDigitalClock.js +1 -0
  288. package/node/PickersActionBar/PickersActionBar.js +1 -0
  289. package/node/PickersCalendarHeader/PickersCalendarHeader.js +1 -0
  290. package/node/PickersDay/PickersDay.js +1 -0
  291. package/node/PickersLayout/PickersLayout.js +1 -0
  292. package/node/PickersLayout/usePickerLayout.js +1 -0
  293. package/node/PickersSectionList/PickersSectionList.js +1 -0
  294. package/node/PickersShortcuts/PickersShortcuts.js +1 -0
  295. package/node/PickersTextField/PickersTextField.js +1 -0
  296. package/node/StaticDatePicker/StaticDatePicker.js +10 -3
  297. package/node/StaticDateTimePicker/StaticDateTimePicker.js +10 -3
  298. package/node/StaticTimePicker/StaticTimePicker.js +3 -2
  299. package/node/TimeClock/Clock.js +1 -1
  300. package/node/TimeClock/TimeClock.js +1 -0
  301. package/node/TimeField/TimeField.js +1 -0
  302. package/node/TimeField/useTimeField.js +5 -4
  303. package/node/TimePicker/TimePicker.js +1 -0
  304. package/node/TimePicker/TimePickerToolbar.js +1 -0
  305. package/node/YearCalendar/YearCalendar.js +20 -6
  306. package/node/dateViewRenderers/dateViewRenderers.js +2 -0
  307. package/node/hooks/index.js +8 -1
  308. package/node/hooks/useClearableField.js +1 -0
  309. package/node/hooks/usePickersTranslations.js +1 -0
  310. package/node/hooks/useSplitFieldProps.js +51 -0
  311. package/node/index.js +13 -1
  312. package/node/internals/hooks/useDesktopPicker/useDesktopPicker.js +1 -3
  313. package/node/internals/hooks/useField/useField.js +11 -6
  314. package/node/internals/hooks/useField/useFieldState.js +2 -4
  315. package/node/internals/hooks/useMobilePicker/useMobilePicker.js +1 -3
  316. package/node/internals/hooks/usePicker/usePicker.js +1 -1
  317. package/node/internals/hooks/usePicker/usePickerValue.js +12 -16
  318. package/node/internals/index.js +0 -49
  319. package/node/locales/beBY.js +4 -4
  320. package/node/locales/caES.js +3 -3
  321. package/node/locales/csCZ.js +4 -4
  322. package/node/locales/daDK.js +3 -3
  323. package/node/locales/deDE.js +3 -3
  324. package/node/locales/elGR.js +4 -4
  325. package/node/locales/enUS.js +4 -4
  326. package/node/locales/esES.js +3 -3
  327. package/node/locales/eu.js +3 -3
  328. package/node/locales/faIR.js +3 -3
  329. package/node/locales/fiFI.js +3 -3
  330. package/node/locales/frFR.js +3 -3
  331. package/node/locales/heIL.js +3 -3
  332. package/node/locales/huHU.js +3 -3
  333. package/node/locales/isIS.js +4 -4
  334. package/node/locales/itIT.js +3 -3
  335. package/node/locales/jaJP.js +3 -3
  336. package/node/locales/koKR.js +3 -3
  337. package/node/locales/kzKZ.js +4 -4
  338. package/node/locales/mk.js +3 -3
  339. package/node/locales/nbNO.js +4 -4
  340. package/node/locales/nlNL.js +3 -3
  341. package/node/locales/nnNO.js +3 -3
  342. package/node/locales/plPL.js +4 -4
  343. package/node/locales/ptBR.js +4 -4
  344. package/node/locales/roRO.js +3 -3
  345. package/node/locales/ruRU.js +3 -3
  346. package/node/locales/skSK.js +4 -4
  347. package/node/locales/svSE.js +3 -3
  348. package/node/locales/trTR.js +4 -4
  349. package/node/locales/ukUA.js +3 -3
  350. package/node/locales/urPK.js +4 -4
  351. package/node/locales/utils/getPickersLocalization.js +16 -2
  352. package/node/locales/viVN.js +3 -3
  353. package/node/locales/zhCN.js +3 -3
  354. package/node/locales/zhHK.js +3 -3
  355. package/node/validation/index.js +40 -0
  356. package/node/validation/useValidation.js +61 -0
  357. package/node/{internals/utils/validation → validation}/validateDate.js +6 -4
  358. package/node/{internals/utils/validation → validation}/validateDateTime.js +8 -3
  359. package/node/{internals/utils/validation → validation}/validateTime.js +6 -4
  360. package/package.json +4 -4
  361. package/{internals/utils/validation → validation}/extractValidationProps.d.ts +1 -1
  362. package/validation/index.d.ts +9 -0
  363. package/validation/index.js +5 -0
  364. package/validation/package.json +6 -0
  365. package/validation/useValidation.d.ts +68 -0
  366. package/validation/useValidation.js +54 -0
  367. package/validation/validateDate.d.ts +6 -0
  368. package/{modern/internals/utils/validation → validation}/validateDate.js +6 -4
  369. package/validation/validateDateTime.d.ts +7 -0
  370. package/{internals/utils/validation → validation}/validateDateTime.js +8 -3
  371. package/validation/validateTime.d.ts +6 -0
  372. package/{modern/internals/utils/validation → validation}/validateTime.js +6 -4
  373. package/internals/hooks/useValidation.d.ts +0 -24
  374. package/internals/hooks/useValidation.js +0 -22
  375. package/internals/utils/fields.d.ts +0 -5
  376. package/internals/utils/fields.js +0 -28
  377. package/internals/utils/validation/validateDate.d.ts +0 -7
  378. package/internals/utils/validation/validateDateTime.d.ts +0 -7
  379. package/internals/utils/validation/validateTime.d.ts +0 -7
  380. package/internals/utils/warning.d.ts +0 -2
  381. package/internals/utils/warning.js +0 -21
  382. package/modern/internals/hooks/useValidation.js +0 -22
  383. package/modern/internals/utils/fields.js +0 -28
  384. package/modern/internals/utils/warning.js +0 -21
  385. package/node/internals/hooks/useValidation.js +0 -29
  386. package/node/internals/utils/fields.js +0 -36
  387. package/node/internals/utils/warning.js +0 -28
  388. /package/{internals/utils → modern}/validation/extractValidationProps.js +0 -0
  389. /package/node/{internals/utils/validation → validation}/extractValidationProps.js +0 -0
  390. /package/{modern/internals/utils/validation → validation}/extractValidationProps.js +0 -0
@@ -11,7 +11,7 @@ var React = _interopRequireWildcard(require("react"));
11
11
  var _useEnhancedEffect = _interopRequireDefault(require("@mui/utils/useEnhancedEffect"));
12
12
  var _useEventCallback = _interopRequireDefault(require("@mui/utils/useEventCallback"));
13
13
  var _RtlProvider = require("@mui/system/RtlProvider");
14
- var _useValidation = require("../useValidation");
14
+ var _validation = require("../../../validation");
15
15
  var _useUtils = require("../useUtils");
16
16
  var _useField = require("./useField.utils");
17
17
  var _useFieldState = require("./useFieldState");
@@ -166,18 +166,23 @@ const useField = params => {
166
166
  (0, _useEnhancedEffect.default)(() => {
167
167
  interactions.syncSelectionToDOM();
168
168
  });
169
- const validationError = (0, _useValidation.useValidation)((0, _extends2.default)({}, internalProps, {
169
+ const {
170
+ hasValidationError
171
+ } = (0, _validation.useValidation)({
172
+ props: internalProps,
173
+ validator,
174
+ timezone,
170
175
  value: state.value,
171
- timezone
172
- }), validator, valueManager.isSameError, valueManager.defaultErrorState);
176
+ onError: internalProps.onError
177
+ });
173
178
  const inputError = React.useMemo(() => {
174
179
  // only override when `error` is undefined.
175
180
  // in case of multi input fields, the `error` value is provided externally and will always be defined.
176
181
  if (error !== undefined) {
177
182
  return error;
178
183
  }
179
- return valueManager.hasError(validationError);
180
- }, [valueManager, validationError, error]);
184
+ return hasValidationError;
185
+ }, [hasValidationError, error]);
181
186
  React.useEffect(() => {
182
187
  if (!inputError && activeSectionIndex == null) {
183
188
  resetCharacterQuery();
@@ -118,10 +118,8 @@ const useFieldState = params => {
118
118
  validationError: validator({
119
119
  adapter,
120
120
  value,
121
- props: (0, _extends2.default)({}, internalProps, {
122
- value,
123
- timezone
124
- })
121
+ timezone,
122
+ props: internalProps
125
123
  })
126
124
  };
127
125
  handleValueChange(value, context);
@@ -15,7 +15,6 @@ var _useId = _interopRequireDefault(require("@mui/utils/useId"));
15
15
  var _PickersModalDialog = require("../../components/PickersModalDialog");
16
16
  var _usePicker = require("../usePicker");
17
17
  var _utils = require("../../utils/utils");
18
- var _useUtils = require("../useUtils");
19
18
  var _LocalizationProvider = require("../../../LocalizationProvider");
20
19
  var _PickersLayout = require("../../../PickersLayout");
21
20
  var _jsxRuntime = require("react/jsx-runtime");
@@ -50,7 +49,6 @@ const useMobilePicker = _ref => {
50
49
  disabled,
51
50
  localeText
52
51
  } = props;
53
- const utils = (0, _useUtils.useUtils)();
54
52
  const fieldRef = React.useRef(null);
55
53
  const labelId = (0, _useId.default)();
56
54
  const isToolbarHidden = innerSlotProps?.toolbar?.hidden ?? false;
@@ -97,7 +95,7 @@ const useMobilePicker = _ref => {
97
95
 
98
96
  // TODO: Move to `useSlotProps` when https://github.com/mui/material-ui/pull/35088 will be merged
99
97
  fieldProps.inputProps = (0, _extends2.default)({}, fieldProps.inputProps, {
100
- 'aria-label': getOpenDialogAriaText(pickerFieldProps.value, utils)
98
+ 'aria-label': getOpenDialogAriaText(pickerFieldProps.value)
101
99
  });
102
100
  const slotsForField = (0, _extends2.default)({
103
101
  textField: slots.textField
@@ -4,10 +4,10 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.usePicker = void 0;
7
+ var _warning = require("@mui/x-internals/warning");
7
8
  var _usePickerValue = require("./usePickerValue");
8
9
  var _usePickerViews = require("./usePickerViews");
9
10
  var _usePickerLayoutProps = require("./usePickerLayoutProps");
10
- var _warning = require("../../utils/warning");
11
11
  const usePicker = ({
12
12
  props,
13
13
  valueManager,
@@ -11,7 +11,7 @@ var React = _interopRequireWildcard(require("react"));
11
11
  var _useEventCallback = _interopRequireDefault(require("@mui/utils/useEventCallback"));
12
12
  var _useOpenState = require("../useOpenState");
13
13
  var _useUtils = require("../useUtils");
14
- var _useValidation = require("../useValidation");
14
+ var _validation = require("../../../validation");
15
15
  var _useValueWithTimezone = require("../useValueWithTimezone");
16
16
  /**
17
17
  * Decide if the new value should be published
@@ -187,10 +187,15 @@ const usePickerValue = ({
187
187
  hasBeenModifiedSinceMount: false
188
188
  };
189
189
  });
190
- (0, _useValidation.useValidation)((0, _extends2.default)({}, props, {
190
+ const {
191
+ getValidationErrorForNewValue
192
+ } = (0, _validation.useValidation)({
193
+ props,
194
+ validator,
195
+ timezone,
191
196
  value: dateState.draft,
192
- timezone
193
- }), validator, valueManager.isSameError, valueManager.defaultErrorState);
197
+ onError: props.onError
198
+ });
194
199
  const updateDate = (0, _useEventCallback.default)(action => {
195
200
  const updaterParams = {
196
201
  action,
@@ -211,14 +216,7 @@ const usePickerValue = ({
211
216
  let cachedContext = null;
212
217
  const getContext = () => {
213
218
  if (!cachedContext) {
214
- const validationError = action.name === 'setValueFromField' ? action.context.validationError : validator({
215
- adapter,
216
- value: action.value,
217
- props: (0, _extends2.default)({}, props, {
218
- value: action.value,
219
- timezone
220
- })
221
- });
219
+ const validationError = action.name === 'setValueFromField' ? action.context.validationError : getValidationErrorForNewValue(action.value);
222
220
  cachedContext = {
223
221
  validationError
224
222
  };
@@ -332,10 +330,8 @@ const usePickerValue = ({
332
330
  const error = validator({
333
331
  adapter,
334
332
  value: testedValue,
335
- props: (0, _extends2.default)({}, props, {
336
- value: testedValue,
337
- timezone
338
- })
333
+ timezone,
334
+ props
339
335
  });
340
336
  return !valueManager.hasError(error);
341
337
  };
@@ -105,12 +105,6 @@ Object.defineProperty(exports, "executeInTheNextEventLoopTick", {
105
105
  return _utils.executeInTheNextEventLoopTick;
106
106
  }
107
107
  });
108
- Object.defineProperty(exports, "extractValidationProps", {
109
- enumerable: true,
110
- get: function () {
111
- return _extractValidationProps.extractValidationProps;
112
- }
113
- });
114
108
  Object.defineProperty(exports, "formatMeridiem", {
115
109
  enumerable: true,
116
110
  get: function () {
@@ -213,12 +207,6 @@ Object.defineProperty(exports, "resolveTimeViewsResponse", {
213
207
  return _dateTimeUtils.resolveTimeViewsResponse;
214
208
  }
215
209
  });
216
- Object.defineProperty(exports, "splitFieldInternalAndForwardedProps", {
217
- enumerable: true,
218
- get: function () {
219
- return _fields.splitFieldInternalAndForwardedProps;
220
- }
221
- });
222
210
  Object.defineProperty(exports, "useCalendarState", {
223
211
  enumerable: true,
224
212
  get: function () {
@@ -309,42 +297,12 @@ Object.defineProperty(exports, "useUtils", {
309
297
  return _useUtils.useUtils;
310
298
  }
311
299
  });
312
- Object.defineProperty(exports, "useValidation", {
313
- enumerable: true,
314
- get: function () {
315
- return _useValidation.useValidation;
316
- }
317
- });
318
300
  Object.defineProperty(exports, "useViews", {
319
301
  enumerable: true,
320
302
  get: function () {
321
303
  return _useViews.useViews;
322
304
  }
323
305
  });
324
- Object.defineProperty(exports, "validateDate", {
325
- enumerable: true,
326
- get: function () {
327
- return _validateDate.validateDate;
328
- }
329
- });
330
- Object.defineProperty(exports, "validateDateTime", {
331
- enumerable: true,
332
- get: function () {
333
- return _validateDateTime.validateDateTime;
334
- }
335
- });
336
- Object.defineProperty(exports, "validateTime", {
337
- enumerable: true,
338
- get: function () {
339
- return _validateTime.validateTime;
340
- }
341
- });
342
- Object.defineProperty(exports, "warnOnce", {
343
- enumerable: true,
344
- get: function () {
345
- return _warning.warnOnce;
346
- }
347
- });
348
306
  var _PickersArrowSwitcher = require("./components/PickersArrowSwitcher/PickersArrowSwitcher");
349
307
  var _PickersModalDialog = require("./components/PickersModalDialog");
350
308
  var _PickersPopper = require("./components/PickersPopper");
@@ -362,22 +320,15 @@ var _usePicker = require("./hooks/usePicker");
362
320
  var _useStaticPicker = require("./hooks/useStaticPicker");
363
321
  var _useUtils = require("./hooks/useUtils");
364
322
  var _useViews = require("./hooks/useViews");
365
- var _useValidation = require("./hooks/useValidation");
366
323
  var _dateHelpersHooks = require("./hooks/date-helpers-hooks");
367
324
  var _convertFieldResponseIntoMuiTextFieldProps = require("./utils/convertFieldResponseIntoMuiTextFieldProps");
368
325
  var _dateUtils = require("./utils/date-utils");
369
326
  var _dateTimeUtils = require("./utils/date-time-utils");
370
- var _fields = require("./utils/fields");
371
327
  var _getDefaultReferenceDate = require("./utils/getDefaultReferenceDate");
372
328
  var _utils = require("./utils/utils");
373
329
  var _defaultizedFieldProps = require("./hooks/defaultizedFieldProps");
374
330
  var _useDefaultReduceAnimations = require("./hooks/useDefaultReduceAnimations");
375
- var _extractValidationProps = require("./utils/validation/extractValidationProps");
376
- var _validateDate = require("./utils/validation/validateDate");
377
- var _validateDateTime = require("./utils/validation/validateDateTime");
378
- var _validateTime = require("./utils/validation/validateTime");
379
331
  var _views = require("./utils/views");
380
- var _warning = require("./utils/warning");
381
332
  var _DayCalendar = require("../DateCalendar/DayCalendar");
382
333
  var _useCalendarState = require("../DateCalendar/useCalendarState");
383
334
  var _timeUtils = require("./utils/time-utils");
@@ -39,7 +39,7 @@ const beBYPickers = {
39
39
  timePickerToolbarTitle: 'Абраць час',
40
40
  dateRangePickerToolbarTitle: 'Абраць каляндарны перыяд',
41
41
  // Clock labels
42
- clockLabelText: (view, time, adapter) => `Абярыце ${views[view]}. ${time === null ? 'Час не абраны' : `Абраны час ${adapter.format(time, 'fullTime')}`}`,
42
+ clockLabelText: (view, time, utils, formattedTime) => `Абярыце ${views[view]}. ${!formattedTime && (time === null || !utils.isValid(time)) ? 'Час не абраны' : `Абраны час ${formattedTime ?? utils.format(time, 'fullTime')}`}`,
43
43
  hoursClockNumberText: hours => `${hours} гадзін`,
44
44
  minutesClockNumberText: minutes => `${minutes} хвілін`,
45
45
  secondsClockNumberText: seconds => `${seconds} секунд`,
@@ -51,9 +51,9 @@ const beBYPickers = {
51
51
  calendarWeekNumberAriaLabelText: weekNumber => `Тыдзень ${weekNumber}`,
52
52
  calendarWeekNumberText: weekNumber => `${weekNumber}`,
53
53
  // Open picker labels
54
- openDatePickerDialogue: (value, utils) => value !== null && utils.isValid(value) ? `Абраць дату, абрана дата ${utils.format(value, 'fullDate')}` : 'Абраць дату',
55
- openTimePickerDialogue: (value, utils) => value !== null && utils.isValid(value) ? `Абраць час, абрыны час ${utils.format(value, 'fullTime')}` : 'Абраць час',
56
- // fieldClearLabel: 'Clear value',
54
+ openDatePickerDialogue: (value, utils, formattedDate) => formattedDate || value !== null && utils.isValid(value) ? `Абраць дату, абрана дата ${formattedDate ?? utils.format(value, 'fullDate')}` : 'Абраць дату',
55
+ openTimePickerDialogue: (value, utils, formattedTime) => formattedTime || value !== null && utils.isValid(value) ? `Абраць час, абрыны час ${formattedTime ?? utils.format(value, 'fullTime')}` : 'Абраць час',
56
+ // fieldClearLabel: 'Clear',
57
57
 
58
58
  // Table labels
59
59
  timeTableLabel: 'абраць час',
@@ -37,7 +37,7 @@ const caESPickers = {
37
37
  timePickerToolbarTitle: 'Seleccionar hora',
38
38
  dateRangePickerToolbarTitle: 'Seleccionar rang de dates',
39
39
  // Clock labels
40
- clockLabelText: (view, time, adapter) => `Selecciona ${views[view]}. ${time === null ? 'Hora no seleccionada' : `L'hora seleccionada és ${adapter.format(time, 'fullTime')}`}`,
40
+ clockLabelText: (view, time, utils, formattedTime) => `Selecciona ${views[view]}. ${!formattedTime && (time === null || !utils.isValid(time)) ? 'Hora no seleccionada' : `L'hora seleccionada és ${formattedTime ?? utils.format(time, 'fullTime')}`}`,
41
41
  hoursClockNumberText: hours => `${hours} hores`,
42
42
  minutesClockNumberText: minutes => `${minutes} minuts`,
43
43
  secondsClockNumberText: seconds => `${seconds} segons`,
@@ -49,8 +49,8 @@ const caESPickers = {
49
49
  calendarWeekNumberAriaLabelText: weekNumber => `Setmana ${weekNumber}`,
50
50
  calendarWeekNumberText: weekNumber => `${weekNumber}`,
51
51
  // Open picker labels
52
- openDatePickerDialogue: (value, utils) => value !== null && utils.isValid(value) ? `Tria la data, la data triada és ${utils.format(value, 'fullDate')}` : 'Tria la data',
53
- openTimePickerDialogue: (value, utils) => value !== null && utils.isValid(value) ? `Tria l'hora, l'hora triada és ${utils.format(value, 'fullTime')}` : "Tria l'hora",
52
+ openDatePickerDialogue: (value, utils, formattedDate) => formattedDate || value !== null && utils.isValid(value) ? `Tria la data, la data triada és ${formattedDate ?? utils.format(value, 'fullDate')}` : 'Tria la data',
53
+ openTimePickerDialogue: (value, utils, formattedTime) => formattedTime || value !== null && utils.isValid(value) ? `Tria l'hora, l'hora triada és ${formattedTime ?? utils.format(value, 'fullTime')}` : "Tria l'hora",
54
54
  fieldClearLabel: 'Netega el valor',
55
55
  // Table labels
56
56
  timeTableLabel: 'tria la data',
@@ -39,7 +39,7 @@ const csCZPickers = {
39
39
  timePickerToolbarTitle: 'Vyberte čas',
40
40
  dateRangePickerToolbarTitle: 'Vyberete rozmezí dat',
41
41
  // Clock labels
42
- clockLabelText: (view, time, adapter) => `${timeViews[view] ?? view} vybrány. ${time === null ? 'Není vybrán čas' : `Vybraný čas je ${adapter.format(time, 'fullTime')}`}`,
42
+ clockLabelText: (view, time, utils, formattedTime) => `${timeViews[view] ?? view} vybrány. ${!formattedTime && (time === null || !utils.isValid(time)) ? 'Není vybrán čas' : `Vybraný čas je ${formattedTime ?? utils.format(time, 'fullTime')}`}`,
43
43
  hoursClockNumberText: hours => `${hours} hodin`,
44
44
  minutesClockNumberText: minutes => `${minutes} minut`,
45
45
  secondsClockNumberText: seconds => `${seconds} sekund`,
@@ -51,9 +51,9 @@ const csCZPickers = {
51
51
  calendarWeekNumberAriaLabelText: weekNumber => `${weekNumber} týden v roce`,
52
52
  calendarWeekNumberText: weekNumber => `${weekNumber}`,
53
53
  // Open picker labels
54
- openDatePickerDialogue: (value, utils) => value !== null && utils.isValid(value) ? `Vyberte datum, vybrané datum je ${utils.format(value, 'fullDate')}` : 'Vyberte datum',
55
- openTimePickerDialogue: (value, utils) => value !== null && utils.isValid(value) ? `Vyberte čas, vybraný čas je ${utils.format(value, 'fullTime')}` : 'Vyberte čas',
56
- // fieldClearLabel: 'Clear value',
54
+ openDatePickerDialogue: (value, utils, formattedDate) => formattedDate || value !== null && utils.isValid(value) ? `Vyberte datum, vybrané datum je ${formattedDate ?? utils.format(value, 'fullDate')}` : 'Vyberte datum',
55
+ openTimePickerDialogue: (value, utils, formattedTime) => formattedTime || value !== null && utils.isValid(value) ? `Vyberte čas, vybraný čas je ${formattedTime ?? utils.format(value, 'fullTime')}` : 'Vyberte čas',
56
+ // fieldClearLabel: 'Clear',
57
57
 
58
58
  // Table labels
59
59
  timeTableLabel: 'vyberte čas',
@@ -38,7 +38,7 @@ const daDKPickers = {
38
38
  timePickerToolbarTitle: 'Vælg tidspunkt',
39
39
  dateRangePickerToolbarTitle: 'Vælg datointerval',
40
40
  // Clock labels
41
- clockLabelText: (view, time, adapter) => `Vælg ${timeViews[view] ?? view}. ${time === null ? 'Intet tidspunkt valgt' : `Valgte tidspunkt er ${adapter.format(time, 'fullTime')}`}`,
41
+ clockLabelText: (view, time, utils, formattedTime) => `Vælg ${timeViews[view] ?? view}. ${!formattedTime && (time === null || !utils.isValid(time)) ? 'Intet tidspunkt valgt' : `Valgte tidspunkt er ${formattedTime ?? utils.format(time, 'fullTime')}`}`,
42
42
  hoursClockNumberText: hours => `${hours} timer`,
43
43
  minutesClockNumberText: minutes => `${minutes} minutter`,
44
44
  secondsClockNumberText: seconds => `${seconds} sekunder`,
@@ -50,8 +50,8 @@ const daDKPickers = {
50
50
  calendarWeekNumberAriaLabelText: weekNumber => `Uge ${weekNumber}`,
51
51
  calendarWeekNumberText: weekNumber => `${weekNumber}`,
52
52
  // Open picker labels
53
- openDatePickerDialogue: (value, utils) => value !== null && utils.isValid(value) ? `Vælg dato, valgte dato er ${utils.format(value, 'fullDate')}` : 'Vælg dato',
54
- openTimePickerDialogue: (value, utils) => value !== null && utils.isValid(value) ? `Vælg tidspunkt, valgte tidspunkt er ${utils.format(value, 'fullTime')}` : 'Vælg tidspunkt',
53
+ openDatePickerDialogue: (value, utils, formattedDate) => formattedDate || value !== null && utils.isValid(value) ? `Vælg dato, valgte dato er ${formattedDate ?? utils.format(value, 'fullDate')}` : 'Vælg dato',
54
+ openTimePickerDialogue: (value, utils, formattedTime) => formattedTime || value !== null && utils.isValid(value) ? `Vælg tidspunkt, valgte tidspunkt er ${formattedTime ?? utils.format(value, 'fullTime')}` : 'Vælg tidspunkt',
55
55
  fieldClearLabel: 'ryd felt',
56
56
  // Table labels
57
57
  timeTableLabel: 'vælg tidspunkt',
@@ -38,7 +38,7 @@ const deDEPickers = {
38
38
  timePickerToolbarTitle: 'Uhrzeit auswählen',
39
39
  dateRangePickerToolbarTitle: 'Datumsbereich auswählen',
40
40
  // Clock labels
41
- clockLabelText: (view, time, adapter) => `${timeViews[view] ?? view} auswählen. ${time === null ? 'Keine Uhrzeit ausgewählt' : `Gewählte Uhrzeit ist ${adapter.format(time, 'fullTime')}`}`,
41
+ clockLabelText: (view, time, utils, formattedTime) => `${timeViews[view] ?? view} auswählen. ${!formattedTime && (time === null || !utils.isValid(time)) ? 'Keine Uhrzeit ausgewählt' : `Gewählte Uhrzeit ist ${formattedTime ?? utils.format(time, 'fullTime')}`}`,
42
42
  hoursClockNumberText: hours => `${hours} ${timeViews.hours}`,
43
43
  minutesClockNumberText: minutes => `${minutes} ${timeViews.minutes}`,
44
44
  secondsClockNumberText: seconds => `${seconds} ${timeViews.seconds}`,
@@ -50,8 +50,8 @@ const deDEPickers = {
50
50
  calendarWeekNumberAriaLabelText: weekNumber => `Woche ${weekNumber}`,
51
51
  calendarWeekNumberText: weekNumber => `${weekNumber}`,
52
52
  // Open picker labels
53
- openDatePickerDialogue: (value, utils) => value !== null && utils.isValid(value) ? `Datum auswählen, gewähltes Datum ist ${utils.format(value, 'fullDate')}` : 'Datum auswählen',
54
- openTimePickerDialogue: (value, utils) => value !== null && utils.isValid(value) ? `Uhrzeit auswählen, gewählte Uhrzeit ist ${utils.format(value, 'fullTime')}` : 'Uhrzeit auswählen',
53
+ openDatePickerDialogue: (value, utils, formattedDate) => formattedDate || value !== null && utils.isValid(value) ? `Datum auswählen, gewähltes Datum ist ${formattedDate ?? utils.format(value, 'fullDate')}` : 'Datum auswählen',
54
+ openTimePickerDialogue: (value, utils, formattedTime) => formattedTime || value !== null && utils.isValid(value) ? `Uhrzeit auswählen, gewählte Uhrzeit ist ${formattedTime ?? utils.format(value, 'fullTime')}` : 'Uhrzeit auswählen',
55
55
  fieldClearLabel: 'Wert leeren',
56
56
  // Table labels
57
57
  timeTableLabel: 'Uhrzeit auswählen',
@@ -38,7 +38,7 @@ const elGRPickers = {
38
38
  timePickerToolbarTitle: 'Επιλέξτε ώρα',
39
39
  dateRangePickerToolbarTitle: 'Επιλέξτε εύρος ημερομηνιών',
40
40
  // Clock labels
41
- clockLabelText: (view, time, adapter) => `Επιλέξτε ${views[view]}. ${time === null ? 'Δεν έχει επιλεγεί ώρα' : `Η επιλεγμένη ώρα είναι ${adapter.format(time, 'fullTime')}`}`,
41
+ clockLabelText: (view, time, utils, formattedTime) => `Επιλέξτε ${views[view]}. ${!formattedTime && (time === null || !utils.isValid(time)) ? 'Δεν έχει επιλεγεί ώρα' : `Η επιλεγμένη ώρα είναι ${formattedTime ?? utils.format(time, 'fullTime')}`}`,
42
42
  hoursClockNumberText: hours => `${hours} ώρες`,
43
43
  minutesClockNumberText: minutes => `${minutes} λεπτά`,
44
44
  secondsClockNumberText: seconds => `${seconds} δευτερόλεπτα`,
@@ -50,9 +50,9 @@ const elGRPickers = {
50
50
  calendarWeekNumberAriaLabelText: weekNumber => `Εβδομάδα ${weekNumber}`,
51
51
  calendarWeekNumberText: weekNumber => `${weekNumber}`,
52
52
  // Open picker labels
53
- openDatePickerDialogue: (value, utils) => value !== null && utils.isValid(value) ? `Επιλέξτε ημερομηνία, η επιλεγμένη ημερομηνία είναι ${utils.format(value, 'fullDate')}` : 'Επιλέξτε ημερομηνία',
54
- openTimePickerDialogue: (value, utils) => value !== null && utils.isValid(value) ? `Επιλέξτε ώρα, η επιλεγμένη ώρα είναι ${utils.format(value, 'fullTime')}` : 'Επιλέξτε ώρα',
55
- // fieldClearLabel: 'Clear value',
53
+ openDatePickerDialogue: (value, utils, formattedDate) => formattedDate || value !== null && utils.isValid(value) ? `Επιλέξτε ημερομηνία, η επιλεγμένη ημερομηνία είναι ${formattedDate ?? utils.format(value, 'fullDate')}` : 'Επιλέξτε ημερομηνία',
54
+ openTimePickerDialogue: (value, utils, formattedTime) => formattedTime || value !== null && utils.isValid(value) ? `Επιλέξτε ώρα, η επιλεγμένη ώρα είναι ${formattedTime ?? utils.format(value, 'fullTime')}` : 'Επιλέξτε ώρα',
55
+ // fieldClearLabel: 'Clear',
56
56
 
57
57
  // Table labels
58
58
  timeTableLabel: 'επιλέξτε ώρα',
@@ -33,7 +33,7 @@ const enUSPickers = {
33
33
  timePickerToolbarTitle: 'Select time',
34
34
  dateRangePickerToolbarTitle: 'Select date range',
35
35
  // Clock labels
36
- clockLabelText: (view, time, adapter) => `Select ${view}. ${time === null ? 'No time selected' : `Selected time is ${adapter.format(time, 'fullTime')}`}`,
36
+ clockLabelText: (view, time, utils, formattedTime) => `Select ${view}. ${!formattedTime && (time === null || !utils.isValid(time)) ? 'No time selected' : `Selected time is ${formattedTime ?? utils.format(time, 'fullTime')}`}`,
37
37
  hoursClockNumberText: hours => `${hours} hours`,
38
38
  minutesClockNumberText: minutes => `${minutes} minutes`,
39
39
  secondsClockNumberText: seconds => `${seconds} seconds`,
@@ -45,9 +45,9 @@ const enUSPickers = {
45
45
  calendarWeekNumberAriaLabelText: weekNumber => `Week ${weekNumber}`,
46
46
  calendarWeekNumberText: weekNumber => `${weekNumber}`,
47
47
  // Open picker labels
48
- openDatePickerDialogue: (value, utils) => value !== null && utils.isValid(value) ? `Choose date, selected date is ${utils.format(value, 'fullDate')}` : 'Choose date',
49
- openTimePickerDialogue: (value, utils) => value !== null && utils.isValid(value) ? `Choose time, selected time is ${utils.format(value, 'fullTime')}` : 'Choose time',
50
- fieldClearLabel: 'Clear value',
48
+ openDatePickerDialogue: (value, utils, formattedDate) => formattedDate || value !== null && utils.isValid(value) ? `Choose date, selected date is ${formattedDate ?? utils.format(value, 'fullDate')}` : 'Choose date',
49
+ openTimePickerDialogue: (value, utils, formattedTime) => formattedTime || value !== null && utils.isValid(value) ? `Choose time, selected time is ${formattedTime ?? utils.format(value, 'fullTime')}` : 'Choose time',
50
+ fieldClearLabel: 'Clear',
51
51
  // Table labels
52
52
  timeTableLabel: 'pick time',
53
53
  dateTableLabel: 'pick date',
@@ -37,7 +37,7 @@ const esESPickers = {
37
37
  timePickerToolbarTitle: 'Seleccionar hora',
38
38
  dateRangePickerToolbarTitle: 'Seleccionar rango de fecha',
39
39
  // Clock labels
40
- clockLabelText: (view, time, adapter) => `Seleccione ${views[view]}. ${time === null ? 'No hay hora seleccionada' : `La hora seleccionada es ${adapter.format(time, 'fullTime')}`}`,
40
+ clockLabelText: (view, time, utils, formattedTime) => `Seleccione ${views[view]}. ${!formattedTime && (time === null || !utils.isValid(time)) ? 'No hay hora seleccionada' : `La hora seleccionada es ${formattedTime ?? utils.format(time, 'fullTime')}`}`,
41
41
  hoursClockNumberText: hours => `${hours} horas`,
42
42
  minutesClockNumberText: minutes => `${minutes} minutos`,
43
43
  secondsClockNumberText: seconds => `${seconds} segundos`,
@@ -49,8 +49,8 @@ const esESPickers = {
49
49
  calendarWeekNumberAriaLabelText: weekNumber => `Semana ${weekNumber}`,
50
50
  calendarWeekNumberText: weekNumber => `${weekNumber}`,
51
51
  // Open picker labels
52
- openDatePickerDialogue: (value, utils) => value !== null && utils.isValid(value) ? `Elige fecha, la fecha elegida es ${utils.format(value, 'fullDate')}` : 'Elige fecha',
53
- openTimePickerDialogue: (value, utils) => value !== null && utils.isValid(value) ? `Elige hora, la hora elegida es ${utils.format(value, 'fullTime')}` : 'Elige hora',
52
+ openDatePickerDialogue: (value, utils, formattedDate) => formattedDate || value !== null && utils.isValid(value) ? `Elige fecha, la fecha elegida es ${formattedDate ?? utils.format(value, 'fullDate')}` : 'Elige fecha',
53
+ openTimePickerDialogue: (value, utils, formattedTime) => formattedTime || value !== null && utils.isValid(value) ? `Elige hora, la hora elegida es ${formattedTime ?? utils.format(value, 'fullTime')}` : 'Elige hora',
54
54
  fieldClearLabel: 'Limpiar valor',
55
55
  // Table labels
56
56
  timeTableLabel: 'elige hora',
@@ -38,7 +38,7 @@ const euPickers = {
38
38
  timePickerToolbarTitle: 'Ordua aukeratu',
39
39
  dateRangePickerToolbarTitle: 'Data tartea aukeratu',
40
40
  // Clock labels
41
- clockLabelText: (view, time, adapter) => `Aukeratu ${views[view]}. ${time === null ? 'Ez da ordurik aukertau' : `Aukeratutako ordua ${adapter.format(time, 'fullTime')} da`}`,
41
+ clockLabelText: (view, time, utils, formattedTime) => `Aukeratu ${views[view]}. ${!formattedTime && (time === null || !utils.isValid(time)) ? 'Ez da ordurik aukertau' : `Aukeratutako ordua ${formattedTime ?? utils.format(time, 'fullTime')} da`}`,
42
42
  hoursClockNumberText: hours => `${hours} ordu`,
43
43
  minutesClockNumberText: minutes => `${minutes} minutu`,
44
44
  secondsClockNumberText: seconds => `${seconds} segundu`,
@@ -50,8 +50,8 @@ const euPickers = {
50
50
  calendarWeekNumberAriaLabelText: weekNumber => `${weekNumber} astea`,
51
51
  calendarWeekNumberText: weekNumber => `${weekNumber}`,
52
52
  // Open picker labels
53
- openDatePickerDialogue: (value, utils) => value !== null && utils.isValid(value) ? `Data aukeratu, aukeratutako data ${utils.format(value, 'fullDate')} da` : 'Data aukeratu',
54
- openTimePickerDialogue: (value, utils) => value !== null && utils.isValid(value) ? `Ordua aukeratu, aukeratutako ordua ${utils.format(value, 'fullTime')} da` : 'Ordua aukeratu',
53
+ openDatePickerDialogue: (value, utils, formattedDate) => formattedDate || value !== null && utils.isValid(value) ? `Data aukeratu, aukeratutako data ${formattedDate ?? utils.format(value, 'fullDate')} da` : 'Data aukeratu',
54
+ openTimePickerDialogue: (value, utils, formattedTime) => formattedTime || value !== null && utils.isValid(value) ? `Ordua aukeratu, aukeratutako ordua ${formattedTime ?? utils.format(value, 'fullTime')} da` : 'Ordua aukeratu',
55
55
  fieldClearLabel: 'Balioa garbitu',
56
56
  // Table labels
57
57
  timeTableLabel: 'ordua aukeratu',
@@ -37,7 +37,7 @@ const faIRPickers = {
37
37
  timePickerToolbarTitle: 'ساعت را انتخاب کنید',
38
38
  dateRangePickerToolbarTitle: 'محدوده تاریخ را انتخاب کنید',
39
39
  // Clock labels
40
- clockLabelText: (view, time, adapter) => ` را انتخاب کنید ${timeViews[view]}. ${time === null ? 'هیچ ساعتی انتخاب نشده است' : `ساعت انتخاب ${adapter.format(time, 'fullTime')} می باشد`}`,
40
+ clockLabelText: (view, time, utils, formattedTime) => ` را انتخاب کنید ${timeViews[view]}. ${!formattedTime && (time === null || !utils.isValid(time)) ? 'هیچ ساعتی انتخاب نشده است' : `ساعت انتخاب ${formattedTime ?? utils.format(time, 'fullTime')} می باشد`}`,
41
41
  hoursClockNumberText: hours => `${hours} ساعت‌ها`,
42
42
  minutesClockNumberText: minutes => `${minutes} دقیقه‌ها`,
43
43
  secondsClockNumberText: seconds => `${seconds} ثانیه‌ها`,
@@ -49,8 +49,8 @@ const faIRPickers = {
49
49
  calendarWeekNumberAriaLabelText: weekNumber => `هفته ${weekNumber}`,
50
50
  calendarWeekNumberText: weekNumber => `${weekNumber}`,
51
51
  // Open picker labels
52
- openDatePickerDialogue: (value, utils) => value !== null && utils.isValid(value) ? `تاریخ را انتخاب کنید، تاریخ انتخاب شده ${utils.format(value, 'fullDate')} می‌باشد` : 'تاریخ را انتخاب کنید',
53
- openTimePickerDialogue: (value, utils) => value !== null && utils.isValid(value) ? `ساعت را انتخاب کنید، ساعت انتخاب شده ${utils.format(value, 'fullTime')} می‌باشد` : 'ساعت را انتخاب کنید',
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')} می‌باشد` : 'ساعت را انتخاب کنید',
54
54
  fieldClearLabel: 'پاک کردن مقدار',
55
55
  // Table labels
56
56
  timeTableLabel: 'انتخاب تاریخ',
@@ -37,7 +37,7 @@ const fiFIPickers = {
37
37
  timePickerToolbarTitle: 'Valitse aika',
38
38
  dateRangePickerToolbarTitle: 'Valitse aikaväli',
39
39
  // Clock labels
40
- clockLabelText: (view, time, adapter) => `Valitse ${views[view]}. ${time === null ? 'Ei aikaa valittuna' : `Valittu aika on ${adapter.format(time, 'fullTime')}`}`,
40
+ clockLabelText: (view, time, utils, formattedTime) => `Valitse ${views[view]}. ${!formattedTime && (time === null || !utils.isValid(time)) ? 'Ei aikaa valittuna' : `Valittu aika on ${formattedTime ?? utils.format(time, 'fullTime')}`}`,
41
41
  hoursClockNumberText: hours => `${hours} tuntia`,
42
42
  minutesClockNumberText: minutes => `${minutes} minuuttia`,
43
43
  secondsClockNumberText: seconds => `${seconds} sekuntia`,
@@ -49,8 +49,8 @@ const fiFIPickers = {
49
49
  calendarWeekNumberAriaLabelText: weekNumber => `Viikko ${weekNumber}`,
50
50
  calendarWeekNumberText: weekNumber => `${weekNumber}`,
51
51
  // Open picker labels
52
- openDatePickerDialogue: (value, utils) => value !== null && utils.isValid(value) ? `Valitse päivä, valittu päivä on ${utils.format(value, 'fullDate')}` : 'Valitse päivä',
53
- openTimePickerDialogue: (value, utils) => value !== null && utils.isValid(value) ? `Valitse aika, valittu aika on ${utils.format(value, 'fullTime')}` : 'Valitse aika',
52
+ openDatePickerDialogue: (value, utils, formattedDate) => formattedDate || value !== null && utils.isValid(value) ? `Valitse päivä, valittu päivä on ${formattedDate ?? utils.format(value, 'fullDate')}` : 'Valitse päivä',
53
+ openTimePickerDialogue: (value, utils, formattedTime) => formattedTime || value !== null && utils.isValid(value) ? `Valitse aika, valittu aika on ${formattedTime ?? utils.format(value, 'fullTime')}` : 'Valitse aika',
54
54
  fieldClearLabel: 'Tyhjennä arvo',
55
55
  // Table labels
56
56
  timeTableLabel: 'valitse aika',
@@ -37,7 +37,7 @@ const frFRPickers = {
37
37
  timePickerToolbarTitle: "Choisir l'heure",
38
38
  dateRangePickerToolbarTitle: 'Choisir la plage de dates',
39
39
  // Clock labels
40
- clockLabelText: (view, time, adapter) => `Choix des ${views[view]}. ${time === null ? 'Aucune heure choisie' : `L'heure choisie est ${adapter.format(time, 'fullTime')}`}`,
40
+ clockLabelText: (view, time, utils, formattedTime) => `Choix des ${views[view]}. ${!formattedTime && (time === null || !utils.isValid(time)) ? 'Aucune heure choisie' : `L'heure choisie est ${formattedTime ?? utils.format(time, 'fullTime')}`}`,
41
41
  hoursClockNumberText: hours => `${hours} heures`,
42
42
  minutesClockNumberText: minutes => `${minutes} minutes`,
43
43
  secondsClockNumberText: seconds => `${seconds} secondes`,
@@ -49,8 +49,8 @@ const frFRPickers = {
49
49
  calendarWeekNumberAriaLabelText: weekNumber => `Semaine ${weekNumber}`,
50
50
  calendarWeekNumberText: weekNumber => `${weekNumber}`,
51
51
  // Open picker labels
52
- openDatePickerDialogue: (value, utils) => value !== null && utils.isValid(value) ? `Choisir la date, la date sélectionnée est ${utils.format(value, 'fullDate')}` : 'Choisir la date',
53
- openTimePickerDialogue: (value, utils) => value !== null && utils.isValid(value) ? `Choisir l'heure, l'heure sélectionnée est ${utils.format(value, 'fullTime')}` : "Choisir l'heure",
52
+ openDatePickerDialogue: (value, utils, formattedDate) => formattedDate || value !== null && utils.isValid(value) ? `Choisir la date, la date sélectionnée est ${formattedDate ?? utils.format(value, 'fullDate')}` : 'Choisir la date',
53
+ openTimePickerDialogue: (value, utils, formattedTime) => formattedTime ? `Choisir l'heure, l'heure sélectionnée est ${formattedTime ?? utils.format(value, 'fullTime')}` : "Choisir l'heure",
54
54
  fieldClearLabel: 'Effacer la valeur',
55
55
  // Table labels
56
56
  timeTableLabel: "choix de l'heure",
@@ -37,7 +37,7 @@ const heILPickers = {
37
37
  timePickerToolbarTitle: 'בחירת שעה',
38
38
  dateRangePickerToolbarTitle: 'בחירת טווח תאריכים',
39
39
  // Clock labels
40
- clockLabelText: (view, time, adapter) => `בחירת ${views[view]}. ${time === null ? 'לא נבחרה שעה' : `השעה הנבחרת היא ${adapter.format(time, 'fullTime')}`}`,
40
+ clockLabelText: (view, time, utils, formattedTime) => `בחירת ${views[view]}. ${!formattedTime && (time === null || !utils.isValid(time)) ? 'לא נבחרה שעה' : `השעה הנבחרת היא ${formattedTime ?? utils.format(time, 'fullTime')}`}`,
41
41
  hoursClockNumberText: hours => `${hours} שעות`,
42
42
  minutesClockNumberText: minutes => `${minutes} דקות`,
43
43
  secondsClockNumberText: seconds => `${seconds} שניות`,
@@ -49,8 +49,8 @@ const heILPickers = {
49
49
  calendarWeekNumberAriaLabelText: weekNumber => `שבוע ${weekNumber}`,
50
50
  calendarWeekNumberText: weekNumber => `${weekNumber}`,
51
51
  // Open picker labels
52
- openDatePickerDialogue: (value, utils) => value !== null && utils.isValid(value) ? `בחירת תאריך, התאריך שנבחר הוא ${utils.format(value, 'fullDate')}` : 'בחירת תאריך',
53
- openTimePickerDialogue: (value, utils) => value !== null && utils.isValid(value) ? `בחירת שעה, השעה שנבחרה היא ${utils.format(value, 'fullTime')}` : 'בחירת שעה',
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')}` : 'בחירת שעה',
54
54
  fieldClearLabel: 'נקה ערך',
55
55
  // Table labels
56
56
  timeTableLabel: 'בחירת שעה',
@@ -38,7 +38,7 @@ const huHUPickers = {
38
38
  timePickerToolbarTitle: 'Idő kiválasztása',
39
39
  dateRangePickerToolbarTitle: 'Dátumhatárok kiválasztása',
40
40
  // Clock labels
41
- clockLabelText: (view, time, adapter) => `${timeViews[view] ?? view} kiválasztása. ${time === null ? 'Nincs kiválasztva idő' : `A kiválasztott idő ${adapter.format(time, 'fullTime')}`}`,
41
+ clockLabelText: (view, time, utils, formattedTime) => `${timeViews[view] ?? view} kiválasztása. ${!formattedTime && (time === null || !utils.isValid(time)) ? 'Nincs kiválasztva idő' : `A kiválasztott idő ${formattedTime ?? utils.format(time, 'fullTime')}`}`,
42
42
  hoursClockNumberText: hours => `${hours} ${timeViews.hours.toLowerCase()}`,
43
43
  minutesClockNumberText: minutes => `${minutes} ${timeViews.minutes.toLowerCase()}`,
44
44
  secondsClockNumberText: seconds => `${seconds} ${timeViews.seconds.toLowerCase()}`,
@@ -50,8 +50,8 @@ const huHUPickers = {
50
50
  calendarWeekNumberAriaLabelText: weekNumber => `${weekNumber}. hét`,
51
51
  calendarWeekNumberText: weekNumber => `${weekNumber}`,
52
52
  // Open picker labels
53
- openDatePickerDialogue: (value, utils) => value !== null && utils.isValid(value) ? `Válasszon dátumot, a kiválasztott dátum: ${utils.format(value, 'fullDate')}` : 'Válasszon dátumot',
54
- openTimePickerDialogue: (value, utils) => value !== null && utils.isValid(value) ? `Válasszon időt, a kiválasztott idő: ${utils.format(value, 'fullTime')}` : 'Válasszon időt',
53
+ openDatePickerDialogue: (value, utils, formattedDate) => formattedDate || value !== null && utils.isValid(value) ? `Válasszon dátumot, a kiválasztott dátum: ${formattedDate ?? utils.format(value, 'fullDate')}` : 'Válasszon dátumot',
54
+ openTimePickerDialogue: (value, utils, formattedTime) => formattedTime || value !== null && utils.isValid(value) ? `Válasszon időt, a kiválasztott idő: ${formattedTime ?? utils.format(value, 'fullTime')}` : 'Válasszon időt',
55
55
  fieldClearLabel: 'Tartalom ürítése',
56
56
  // Table labels
57
57
  timeTableLabel: 'válasszon időt',
@@ -38,7 +38,7 @@ const isISPickers = {
38
38
  timePickerToolbarTitle: 'Velja tíma',
39
39
  dateRangePickerToolbarTitle: 'Velja tímabil',
40
40
  // Clock labels
41
- clockLabelText: (view, time, adapter) => `Velja ${timeViews[view]}. ${time === null ? 'Enginn tími valinn' : `Valinn tími er ${adapter.format(time, 'fullTime')}`}`,
41
+ clockLabelText: (view, time, utils, formattedTime) => `Velja ${timeViews[view]}. ${!formattedTime && (time === null || !utils.isValid(time)) ? 'Enginn tími valinn' : `Valinn tími er ${formattedTime ?? utils.format(time, 'fullTime')}`}`,
42
42
  hoursClockNumberText: hours => `${hours} klukkustundir`,
43
43
  minutesClockNumberText: minutes => `${minutes} mínútur`,
44
44
  secondsClockNumberText: seconds => `${seconds} sekúndur`,
@@ -50,9 +50,9 @@ const isISPickers = {
50
50
  calendarWeekNumberAriaLabelText: weekNumber => `Vika ${weekNumber}`,
51
51
  calendarWeekNumberText: weekNumber => `${weekNumber}`,
52
52
  // Open picker labels
53
- openDatePickerDialogue: (value, utils) => value !== null && utils.isValid(value) ? `Velja dagsetningu, valin dagsetning er ${utils.format(value, 'fullDate')}` : 'Velja dagsetningu',
54
- openTimePickerDialogue: (value, utils) => value !== null && utils.isValid(value) ? `Velja tíma, valinn tími er ${utils.format(value, 'fullTime')}` : 'Velja tíma',
55
- // fieldClearLabel: 'Clear value',
53
+ openDatePickerDialogue: (value, utils, formattedDate) => formattedDate || value !== null && utils.isValid(value) ? `Velja dagsetningu, valin dagsetning er ${formattedDate ?? utils.format(value, 'fullDate')}` : 'Velja dagsetningu',
54
+ openTimePickerDialogue: (value, utils, formattedTime) => formattedTime || value !== null && utils.isValid(value) ? `Velja tíma, valinn tími er ${formattedTime ?? utils.format(value, 'fullTime')}` : 'Velja tíma',
55
+ // fieldClearLabel: 'Clear',
56
56
 
57
57
  // Table labels
58
58
  timeTableLabel: 'velja tíma',
@@ -37,7 +37,7 @@ const itITPickers = {
37
37
  timePickerToolbarTitle: 'Seleziona orario',
38
38
  dateRangePickerToolbarTitle: 'Seleziona intervallo di date',
39
39
  // Clock labels
40
- clockLabelText: (view, time, adapter) => `Seleziona ${views[view]}. ${time === null ? 'Nessun orario selezionato' : `L'ora selezionata è ${adapter.format(time, 'fullTime')}`}`,
40
+ clockLabelText: (view, time, utils, formattedTime) => `Seleziona ${views[view]}. ${!formattedTime && (time === null || !utils.isValid(time)) ? 'Nessun orario selezionato' : `L'ora selezionata è ${formattedTime ?? utils.format(time, 'fullTime')}`}`,
41
41
  hoursClockNumberText: hours => `${hours} ore`,
42
42
  minutesClockNumberText: minutes => `${minutes} minuti`,
43
43
  secondsClockNumberText: seconds => `${seconds} secondi`,
@@ -49,8 +49,8 @@ const itITPickers = {
49
49
  calendarWeekNumberAriaLabelText: weekNumber => `Settimana ${weekNumber}`,
50
50
  calendarWeekNumberText: weekNumber => `${weekNumber}`,
51
51
  // Open picker labels
52
- openDatePickerDialogue: (value, utils) => value !== null && utils.isValid(value) ? `Scegli la data, la data selezionata è ${utils.format(value, 'fullDate')}` : 'Scegli la data',
53
- openTimePickerDialogue: (value, utils) => value !== null && utils.isValid(value) ? `Scegli l'ora, l'ora selezionata è ${utils.format(value, 'fullTime')}` : "Scegli l'ora",
52
+ openDatePickerDialogue: (value, utils, formattedDate) => formattedDate || value !== null && utils.isValid(value) ? `Scegli la data, la data selezionata è ${formattedDate ?? utils.format(value, 'fullDate')}` : 'Scegli la data',
53
+ openTimePickerDialogue: (value, utils, formattedTime) => formattedTime || value !== null && utils.isValid(value) ? `Scegli l'ora, l'ora selezionata è ${formattedTime ?? utils.format(value, 'fullTime')}` : "Scegli l'ora",
54
54
  fieldClearLabel: 'Cancella valore',
55
55
  // Table labels
56
56
  timeTableLabel: "scegli un'ora",