@mui/x-date-pickers 6.2.1 → 6.3.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 (612) hide show
  1. package/AdapterDateFns/AdapterDateFns.d.ts +109 -0
  2. package/AdapterDateFns/AdapterDateFns.js +598 -0
  3. package/AdapterDateFns/index.d.ts +1 -13
  4. package/AdapterDateFns/index.js +1 -149
  5. package/AdapterDateFnsJalali/AdapterDateFnsJalali.d.ts +109 -0
  6. package/AdapterDateFnsJalali/AdapterDateFnsJalali.js +610 -0
  7. package/AdapterDateFnsJalali/index.d.ts +1 -13
  8. package/AdapterDateFnsJalali/index.js +1 -149
  9. package/AdapterDayjs/AdapterDayjs.d.ts +53 -53
  10. package/AdapterDayjs/AdapterDayjs.js +146 -111
  11. package/AdapterLuxon/AdapterLuxon.d.ts +108 -0
  12. package/AdapterLuxon/AdapterLuxon.js +513 -0
  13. package/AdapterLuxon/index.d.ts +1 -14
  14. package/AdapterLuxon/index.js +1 -111
  15. package/AdapterMoment/AdapterMoment.d.ts +110 -0
  16. package/AdapterMoment/AdapterMoment.js +416 -0
  17. package/AdapterMoment/index.d.ts +1 -21
  18. package/AdapterMoment/index.js +1 -99
  19. package/AdapterMomentHijri/AdapterMomentHijri.d.ts +67 -0
  20. package/AdapterMomentHijri/AdapterMomentHijri.js +269 -0
  21. package/AdapterMomentHijri/index.d.ts +1 -18
  22. package/AdapterMomentHijri/index.js +1 -74
  23. package/AdapterMomentJalaali/AdapterMomentJalaali.d.ts +74 -0
  24. package/AdapterMomentJalaali/AdapterMomentJalaali.js +276 -0
  25. package/AdapterMomentJalaali/index.d.ts +1 -22
  26. package/AdapterMomentJalaali/index.js +1 -87
  27. package/CHANGELOG.md +70 -1
  28. package/DateCalendar/DateCalendar.types.d.ts +1 -1
  29. package/DateCalendar/DayCalendar.d.ts +1 -1
  30. package/DateCalendar/DayCalendar.js +1 -1
  31. package/DateCalendar/PickersCalendarHeader.d.ts +1 -1
  32. package/DateCalendar/useCalendarState.js +1 -1
  33. package/DateCalendar/useIsDateDisabled.d.ts +2 -0
  34. package/DateCalendar/useIsDateDisabled.js +27 -0
  35. package/DateField/DateField.js +20 -3
  36. package/DateField/DateField.types.d.ts +2 -2
  37. package/DateField/useDateField.js +4 -2
  38. package/DatePicker/DatePickerToolbar.js +1 -1
  39. package/DateTimeField/DateTimeField.js +21 -3
  40. package/DateTimeField/DateTimeField.types.d.ts +3 -2
  41. package/DateTimeField/useDateTimeField.js +4 -2
  42. package/DateTimePicker/DateTimePicker.js +1 -0
  43. package/DateTimePicker/shared.d.ts +6 -5
  44. package/DesktopDatePicker/DesktopDatePicker.js +1 -1
  45. package/DesktopDateTimePicker/DesktopDateTimePicker.js +2 -1
  46. package/DesktopTimePicker/DesktopTimePicker.js +50 -8
  47. package/DesktopTimePicker/DesktopTimePicker.types.d.ts +12 -4
  48. package/DigitalClock/DigitalClock.d.ts +7 -0
  49. package/DigitalClock/DigitalClock.js +397 -0
  50. package/DigitalClock/DigitalClock.types.d.ts +47 -0
  51. package/DigitalClock/digitalClockClasses.d.ts +11 -0
  52. package/DigitalClock/digitalClockClasses.js +6 -0
  53. package/DigitalClock/index.d.ts +4 -0
  54. package/DigitalClock/index.js +2 -0
  55. package/DigitalClock/package.json +6 -0
  56. package/MobileDatePicker/MobileDatePicker.js +1 -1
  57. package/MobileDateTimePicker/MobileDateTimePicker.js +2 -1
  58. package/MobileTimePicker/MobileTimePicker.js +2 -1
  59. package/MobileTimePicker/MobileTimePicker.types.d.ts +8 -7
  60. package/MonthCalendar/MonthCalendar.types.d.ts +1 -1
  61. package/MultiSectionDigitalClock/MultiSectionDigitalClock.d.ts +7 -0
  62. package/MultiSectionDigitalClock/MultiSectionDigitalClock.js +479 -0
  63. package/MultiSectionDigitalClock/MultiSectionDigitalClock.types.d.ts +57 -0
  64. package/MultiSectionDigitalClock/MultiSectionDigitalClock.utils.d.ts +22 -0
  65. package/MultiSectionDigitalClock/MultiSectionDigitalClock.utils.js +65 -0
  66. package/MultiSectionDigitalClock/MultiSectionDigitalClockSection.d.ts +28 -0
  67. package/MultiSectionDigitalClock/MultiSectionDigitalClockSection.js +151 -0
  68. package/MultiSectionDigitalClock/index.d.ts +7 -0
  69. package/MultiSectionDigitalClock/index.js +3 -0
  70. package/MultiSectionDigitalClock/multiSectionDigitalClockClasses.d.ts +7 -0
  71. package/MultiSectionDigitalClock/multiSectionDigitalClockClasses.js +6 -0
  72. package/MultiSectionDigitalClock/multiSectionDigitalClockSectionClasses.d.ts +9 -0
  73. package/MultiSectionDigitalClock/multiSectionDigitalClockSectionClasses.js +6 -0
  74. package/MultiSectionDigitalClock/package.json +6 -0
  75. package/PickersDay/PickersDay.js +4 -1
  76. package/PickersLayout/PickersLayout.d.ts +2 -2
  77. package/PickersLayout/PickersLayout.js +2 -2
  78. package/PickersLayout/PickersLayout.types.d.ts +7 -8
  79. package/PickersLayout/usePickerLayout.d.ts +2 -2
  80. package/README.md +0 -9
  81. package/StaticDateTimePicker/StaticDateTimePicker.js +2 -1
  82. package/StaticTimePicker/StaticTimePicker.js +2 -1
  83. package/StaticTimePicker/StaticTimePicker.types.d.ts +1 -1
  84. package/TimeClock/TimeClock.js +35 -12
  85. package/TimeClock/TimeClock.types.d.ts +4 -67
  86. package/TimeField/TimeField.js +21 -3
  87. package/TimeField/TimeField.types.d.ts +3 -2
  88. package/TimeField/useTimeField.js +4 -2
  89. package/TimePicker/TimePicker.js +25 -2
  90. package/TimePicker/TimePicker.types.d.ts +4 -3
  91. package/TimePicker/TimePickerToolbar.d.ts +2 -2
  92. package/TimePicker/TimePickerToolbar.js +2 -2
  93. package/TimePicker/shared.d.ts +9 -7
  94. package/YearCalendar/YearCalendar.types.d.ts +1 -1
  95. package/dateViewRenderers/dateViewRenderers.d.ts +2 -2
  96. package/index.d.ts +2 -0
  97. package/index.js +4 -1
  98. package/internals/components/PickersToolbar.d.ts +3 -3
  99. package/internals/constants/dimensions.d.ts +1 -0
  100. package/internals/constants/dimensions.js +2 -1
  101. package/internals/demo/DemoContainer.js +4 -1
  102. package/internals/hooks/date-helpers-hooks.d.ts +3 -2
  103. package/internals/hooks/date-helpers-hooks.js +3 -3
  104. package/internals/hooks/useDesktopPicker/useDesktopPicker.d.ts +2 -2
  105. package/internals/hooks/useDesktopPicker/useDesktopPicker.js +2 -1
  106. package/internals/hooks/useDesktopPicker/useDesktopPicker.types.d.ts +7 -6
  107. package/internals/hooks/useField/useField.js +12 -11
  108. package/internals/hooks/useField/useField.types.d.ts +19 -4
  109. package/internals/hooks/useField/useField.utils.d.ts +8 -5
  110. package/internals/hooks/useField/useField.utils.js +60 -34
  111. package/internals/hooks/useField/useFieldCharacterEditing.js +18 -10
  112. package/internals/hooks/useField/useFieldState.js +4 -3
  113. package/internals/hooks/useIsLandscape.d.ts +2 -2
  114. package/internals/hooks/useMobilePicker/useMobilePicker.d.ts +2 -2
  115. package/internals/hooks/useMobilePicker/useMobilePicker.types.d.ts +7 -6
  116. package/internals/hooks/usePicker/usePicker.d.ts +4 -3
  117. package/internals/hooks/usePicker/usePicker.types.d.ts +6 -5
  118. package/internals/hooks/usePicker/usePickerLayoutProps.d.ts +5 -6
  119. package/internals/hooks/usePicker/usePickerValue.d.ts +1 -1
  120. package/internals/hooks/usePicker/usePickerValue.js +1 -1
  121. package/internals/hooks/usePicker/usePickerValue.types.d.ts +1 -1
  122. package/internals/hooks/usePicker/usePickerViews.d.ts +11 -11
  123. package/internals/hooks/useStaticPicker/useStaticPicker.d.ts +2 -2
  124. package/internals/hooks/useStaticPicker/useStaticPicker.types.d.ts +6 -5
  125. package/internals/hooks/{validation/useValidation.d.ts → useValidation.d.ts} +1 -1
  126. package/internals/hooks/{validation/useValidation.js → useValidation.js} +1 -1
  127. package/internals/hooks/useViews.d.ts +8 -6
  128. package/internals/hooks/useViews.js +29 -13
  129. package/internals/index.d.ts +7 -7
  130. package/internals/index.js +5 -5
  131. package/internals/models/common.d.ts +3 -0
  132. package/internals/models/index.d.ts +1 -0
  133. package/internals/models/index.js +2 -1
  134. package/internals/models/props/basePickerProps.d.ts +3 -3
  135. package/internals/models/props/clock.d.ts +88 -0
  136. package/internals/models/props/tabs.d.ts +2 -2
  137. package/internals/models/props/toolbar.d.ts +3 -3
  138. package/internals/{hooks/validation/models.d.ts → models/validation.d.ts} +2 -5
  139. package/internals/models/validation.js +1 -0
  140. package/internals/utils/time-utils.d.ts +7 -7
  141. package/internals/utils/time-utils.js +2 -1
  142. package/internals/{hooks/validation/useDateValidation.d.ts → utils/validation/validateDate.d.ts} +2 -3
  143. package/internals/{hooks/validation/useDateValidation.js → utils/validation/validateDate.js} +1 -27
  144. package/internals/{hooks/validation/useDateTimeValidation.d.ts → utils/validation/validateDateTime.d.ts} +3 -3
  145. package/{modern/internals/hooks/validation/useDateTimeValidation.js → internals/utils/validation/validateDateTime.js} +2 -2
  146. package/internals/{hooks/validation/useTimeValidation.d.ts → utils/validation/validateTime.d.ts} +2 -2
  147. package/{modern/internals/hooks/validation/useTimeValidation.js → internals/utils/validation/validateTime.js} +1 -1
  148. package/internals/utils/views.d.ts +3 -2
  149. package/legacy/AdapterDateFns/AdapterDateFns.js +606 -0
  150. package/legacy/AdapterDateFns/index.js +1 -165
  151. package/legacy/AdapterDateFnsJalali/AdapterDateFnsJalali.js +620 -0
  152. package/legacy/AdapterDateFnsJalali/index.js +1 -165
  153. package/legacy/AdapterDayjs/AdapterDayjs.js +146 -111
  154. package/legacy/AdapterLuxon/AdapterLuxon.js +524 -0
  155. package/legacy/AdapterLuxon/index.js +1 -127
  156. package/legacy/AdapterMoment/AdapterMoment.js +422 -0
  157. package/legacy/AdapterMoment/index.js +1 -115
  158. package/legacy/AdapterMomentHijri/AdapterMomentHijri.js +284 -0
  159. package/legacy/AdapterMomentHijri/index.js +1 -90
  160. package/legacy/AdapterMomentJalaali/AdapterMomentJalaali.js +291 -0
  161. package/legacy/AdapterMomentJalaali/index.js +1 -103
  162. package/legacy/DateCalendar/DayCalendar.js +1 -1
  163. package/legacy/DateCalendar/useCalendarState.js +1 -1
  164. package/legacy/DateCalendar/useIsDateDisabled.js +28 -0
  165. package/legacy/DateField/DateField.js +20 -3
  166. package/legacy/DateField/useDateField.js +4 -2
  167. package/legacy/DatePicker/DatePickerToolbar.js +1 -1
  168. package/legacy/DateTimeField/DateTimeField.js +21 -3
  169. package/legacy/DateTimeField/useDateTimeField.js +4 -2
  170. package/legacy/DateTimePicker/DateTimePicker.js +1 -0
  171. package/legacy/DesktopDatePicker/DesktopDatePicker.js +1 -1
  172. package/legacy/DesktopDateTimePicker/DesktopDateTimePicker.js +2 -1
  173. package/legacy/DesktopTimePicker/DesktopTimePicker.js +51 -8
  174. package/legacy/DigitalClock/DigitalClock.js +419 -0
  175. package/legacy/DigitalClock/DigitalClock.types.js +1 -0
  176. package/legacy/DigitalClock/digitalClockClasses.js +6 -0
  177. package/legacy/DigitalClock/index.js +2 -0
  178. package/legacy/MobileDatePicker/MobileDatePicker.js +1 -1
  179. package/legacy/MobileDateTimePicker/MobileDateTimePicker.js +2 -1
  180. package/legacy/MobileTimePicker/MobileTimePicker.js +2 -1
  181. package/legacy/MultiSectionDigitalClock/MultiSectionDigitalClock.js +508 -0
  182. package/legacy/MultiSectionDigitalClock/MultiSectionDigitalClock.types.js +1 -0
  183. package/legacy/MultiSectionDigitalClock/MultiSectionDigitalClock.utils.js +65 -0
  184. package/legacy/MultiSectionDigitalClock/MultiSectionDigitalClockSection.js +157 -0
  185. package/legacy/MultiSectionDigitalClock/index.js +3 -0
  186. package/legacy/MultiSectionDigitalClock/multiSectionDigitalClockClasses.js +6 -0
  187. package/legacy/MultiSectionDigitalClock/multiSectionDigitalClockSectionClasses.js +6 -0
  188. package/legacy/PickersDay/PickersDay.js +3 -1
  189. package/legacy/PickersLayout/PickersLayout.js +2 -2
  190. package/legacy/StaticDateTimePicker/StaticDateTimePicker.js +2 -1
  191. package/legacy/StaticTimePicker/StaticTimePicker.js +2 -1
  192. package/legacy/TimeClock/TimeClock.js +35 -12
  193. package/legacy/TimeField/TimeField.js +21 -3
  194. package/legacy/TimeField/useTimeField.js +4 -2
  195. package/legacy/TimePicker/TimePicker.js +25 -2
  196. package/legacy/TimePicker/TimePickerToolbar.js +2 -2
  197. package/legacy/index.js +4 -1
  198. package/legacy/internals/constants/dimensions.js +2 -1
  199. package/legacy/internals/demo/DemoContainer.js +4 -1
  200. package/legacy/internals/hooks/date-helpers-hooks.js +3 -3
  201. package/legacy/internals/hooks/useDesktopPicker/useDesktopPicker.js +2 -1
  202. package/legacy/internals/hooks/useField/useField.js +11 -10
  203. package/legacy/internals/hooks/useField/useField.utils.js +58 -34
  204. package/legacy/internals/hooks/useField/useFieldCharacterEditing.js +18 -10
  205. package/legacy/internals/hooks/useField/useFieldState.js +6 -4
  206. package/legacy/internals/hooks/usePicker/usePickerValue.js +1 -1
  207. package/legacy/internals/hooks/{validation/useValidation.js → useValidation.js} +1 -1
  208. package/legacy/internals/hooks/useViews.js +30 -14
  209. package/legacy/internals/index.js +5 -5
  210. package/legacy/internals/models/index.js +2 -1
  211. package/legacy/internals/models/props/clock.js +1 -0
  212. package/legacy/internals/models/validation.js +1 -0
  213. package/legacy/internals/utils/time-utils.js +2 -1
  214. package/legacy/internals/{hooks/validation/useDateValidation.js → utils/validation/validateDate.js} +1 -28
  215. package/legacy/internals/{hooks/validation/useDateTimeValidation.js → utils/validation/validateDateTime.js} +2 -2
  216. package/legacy/internals/{hooks/validation/useTimeValidation.js → utils/validation/validateTime.js} +1 -1
  217. package/legacy/locales/beBY.js +5 -3
  218. package/legacy/locales/caES.js +6 -1
  219. package/legacy/locales/csCZ.js +6 -4
  220. package/legacy/locales/daDK.js +6 -2
  221. package/legacy/locales/deDE.js +6 -2
  222. package/legacy/locales/enUS.js +4 -0
  223. package/legacy/locales/esES.js +6 -1
  224. package/legacy/locales/faIR.js +11 -1
  225. package/legacy/locales/fiFI.js +6 -1
  226. package/legacy/locales/frFR.js +6 -1
  227. package/legacy/locales/heIL.js +6 -1
  228. package/legacy/locales/huHU.js +6 -2
  229. package/legacy/locales/index.js +1 -0
  230. package/legacy/locales/isIS.js +11 -1
  231. package/legacy/locales/itIT.js +6 -1
  232. package/legacy/locales/jaJP.js +6 -2
  233. package/legacy/locales/koKR.js +6 -1
  234. package/legacy/locales/kzKZ.js +6 -2
  235. package/legacy/locales/nbNO.js +11 -1
  236. package/legacy/locales/nlNL.js +11 -1
  237. package/legacy/locales/plPL.js +11 -1
  238. package/legacy/locales/ptBR.js +11 -1
  239. package/legacy/locales/ruRU.js +6 -2
  240. package/legacy/locales/svSE.js +11 -1
  241. package/legacy/locales/trTR.js +22 -7
  242. package/legacy/locales/ukUA.js +11 -1
  243. package/legacy/locales/urPK.js +11 -1
  244. package/legacy/locales/zhCN.js +44 -23
  245. package/legacy/models/common.js +1 -0
  246. package/legacy/models/index.js +2 -1
  247. package/legacy/tests/describeAdapters/describeAdapters.js +1 -3
  248. package/legacy/tests/describeGregorianAdapter/describeGregorianAdapter.js +3 -1
  249. package/legacy/tests/describeGregorianAdapter/testCalculations.js +29 -26
  250. package/legacy/tests/describeGregorianAdapter/testLocalization.js +2 -2
  251. package/legacy/tests/describeHijriAdapter/describeHijriAdapter.js +23 -0
  252. package/legacy/tests/describeHijriAdapter/describeHijriAdapter.types.js +1 -0
  253. package/legacy/tests/describeHijriAdapter/index.js +1 -0
  254. package/legacy/tests/describeHijriAdapter/testCalculations.js +94 -0
  255. package/legacy/tests/describeHijriAdapter/testLocalization.js +12 -0
  256. package/legacy/tests/describeJalaliAdapter/describeJalaliAdapter.js +25 -0
  257. package/legacy/tests/describeJalaliAdapter/describeJalaliAdapter.types.js +1 -0
  258. package/legacy/tests/describeJalaliAdapter/index.js +1 -0
  259. package/legacy/tests/describeJalaliAdapter/testCalculations.js +82 -0
  260. package/legacy/tests/describeJalaliAdapter/testLocalization.js +12 -0
  261. package/legacy/tests/describePicker/describePicker.js +159 -0
  262. package/legacy/tests/describePicker/describePicker.types.js +1 -0
  263. package/legacy/tests/describePicker/index.js +1 -0
  264. package/legacy/tests/describeValue/describeValue.js +1 -1
  265. package/legacy/tests/describeValue/testControlledUnControlled.js +8 -9
  266. package/legacy/tests/describeValue/testPickerActionBar.js +46 -13
  267. package/legacy/tests/describeValue/testPickerOpenCloseLifeCycle.js +0 -5
  268. package/legacy/timeViewRenderers/index.js +1 -1
  269. package/legacy/timeViewRenderers/timeViewRenderers.js +132 -4
  270. package/locales/beBY.d.ts +4 -2
  271. package/locales/beBY.js +3 -3
  272. package/locales/caES.d.ts +4 -2
  273. package/locales/caES.js +4 -1
  274. package/locales/csCZ.d.ts +4 -2
  275. package/locales/csCZ.js +4 -4
  276. package/locales/daDK.d.ts +4 -2
  277. package/locales/daDK.js +4 -2
  278. package/locales/deDE.d.ts +4 -2
  279. package/locales/deDE.js +4 -2
  280. package/locales/enUS.d.ts +3 -2
  281. package/locales/enUS.js +2 -0
  282. package/locales/esES.d.ts +4 -2
  283. package/locales/esES.js +4 -1
  284. package/locales/faIR.d.ts +4 -2
  285. package/locales/faIR.js +9 -1
  286. package/locales/fiFI.d.ts +4 -2
  287. package/locales/fiFI.js +4 -1
  288. package/locales/frFR.d.ts +4 -2
  289. package/locales/frFR.js +4 -1
  290. package/locales/heIL.d.ts +4 -2
  291. package/locales/heIL.js +4 -1
  292. package/locales/huHU.d.ts +4 -2
  293. package/locales/huHU.js +4 -2
  294. package/locales/index.d.ts +1 -0
  295. package/locales/index.js +1 -0
  296. package/locales/isIS.d.ts +4 -2
  297. package/locales/isIS.js +9 -1
  298. package/locales/itIT.d.ts +4 -2
  299. package/locales/itIT.js +4 -1
  300. package/locales/jaJP.d.ts +4 -2
  301. package/locales/jaJP.js +4 -2
  302. package/locales/koKR.d.ts +4 -2
  303. package/locales/koKR.js +4 -1
  304. package/locales/kzKZ.d.ts +4 -2
  305. package/locales/kzKZ.js +4 -2
  306. package/locales/nbNO.d.ts +4 -2
  307. package/locales/nbNO.js +9 -1
  308. package/locales/nlNL.d.ts +8 -7
  309. package/locales/nlNL.js +9 -1
  310. package/locales/plPL.d.ts +4 -2
  311. package/locales/plPL.js +9 -1
  312. package/locales/ptBR.d.ts +4 -2
  313. package/locales/ptBR.js +9 -1
  314. package/locales/ruRU.d.ts +4 -2
  315. package/locales/ruRU.js +4 -2
  316. package/locales/svSE.d.ts +4 -2
  317. package/locales/svSE.js +9 -1
  318. package/locales/trTR.d.ts +4 -2
  319. package/locales/trTR.js +14 -7
  320. package/locales/ukUA.d.ts +4 -2
  321. package/locales/ukUA.js +9 -1
  322. package/locales/urPK.d.ts +4 -2
  323. package/locales/urPK.js +9 -1
  324. package/locales/utils/getPickersLocalization.d.ts +3 -2
  325. package/locales/utils/pickersLocaleTextApi.d.ts +5 -3
  326. package/locales/zhCN.d.ts +4 -2
  327. package/locales/zhCN.js +22 -23
  328. package/models/adapters.d.ts +7 -6
  329. package/models/common.d.ts +5 -0
  330. package/models/common.js +1 -0
  331. package/models/fields.d.ts +19 -2
  332. package/models/index.d.ts +1 -0
  333. package/models/index.js +2 -1
  334. package/modern/AdapterDateFns/AdapterDateFns.js +597 -0
  335. package/modern/AdapterDateFns/index.js +1 -149
  336. package/modern/AdapterDateFnsJalali/AdapterDateFnsJalali.js +608 -0
  337. package/modern/AdapterDateFnsJalali/index.js +1 -148
  338. package/modern/AdapterDayjs/AdapterDayjs.js +146 -111
  339. package/modern/AdapterLuxon/AdapterLuxon.js +512 -0
  340. package/modern/AdapterLuxon/index.js +1 -111
  341. package/modern/AdapterMoment/AdapterMoment.js +416 -0
  342. package/modern/AdapterMoment/index.js +1 -99
  343. package/modern/AdapterMomentHijri/AdapterMomentHijri.js +269 -0
  344. package/modern/AdapterMomentHijri/index.js +1 -74
  345. package/modern/AdapterMomentJalaali/AdapterMomentJalaali.js +276 -0
  346. package/modern/AdapterMomentJalaali/index.js +1 -87
  347. package/modern/DateCalendar/DayCalendar.js +1 -1
  348. package/modern/DateCalendar/useCalendarState.js +1 -1
  349. package/modern/DateCalendar/useIsDateDisabled.js +27 -0
  350. package/modern/DateField/DateField.js +20 -3
  351. package/modern/DateField/useDateField.js +4 -2
  352. package/modern/DatePicker/DatePickerToolbar.js +1 -1
  353. package/modern/DateTimeField/DateTimeField.js +21 -3
  354. package/modern/DateTimeField/useDateTimeField.js +4 -2
  355. package/modern/DateTimePicker/DateTimePicker.js +1 -0
  356. package/modern/DesktopDatePicker/DesktopDatePicker.js +1 -1
  357. package/modern/DesktopDateTimePicker/DesktopDateTimePicker.js +2 -1
  358. package/modern/DesktopTimePicker/DesktopTimePicker.js +49 -7
  359. package/modern/DigitalClock/DigitalClock.js +396 -0
  360. package/modern/DigitalClock/DigitalClock.types.js +1 -0
  361. package/modern/DigitalClock/digitalClockClasses.js +6 -0
  362. package/modern/DigitalClock/index.js +2 -0
  363. package/modern/MobileDatePicker/MobileDatePicker.js +1 -1
  364. package/modern/MobileDateTimePicker/MobileDateTimePicker.js +2 -1
  365. package/modern/MobileTimePicker/MobileTimePicker.js +2 -1
  366. package/modern/MultiSectionDigitalClock/MultiSectionDigitalClock.js +479 -0
  367. package/modern/MultiSectionDigitalClock/MultiSectionDigitalClock.types.js +1 -0
  368. package/modern/MultiSectionDigitalClock/MultiSectionDigitalClock.utils.js +65 -0
  369. package/modern/MultiSectionDigitalClock/MultiSectionDigitalClockSection.js +149 -0
  370. package/modern/MultiSectionDigitalClock/index.js +3 -0
  371. package/modern/MultiSectionDigitalClock/multiSectionDigitalClockClasses.js +6 -0
  372. package/modern/MultiSectionDigitalClock/multiSectionDigitalClockSectionClasses.js +6 -0
  373. package/modern/PickersDay/PickersDay.js +4 -1
  374. package/modern/PickersLayout/PickersLayout.js +2 -2
  375. package/modern/StaticDateTimePicker/StaticDateTimePicker.js +2 -1
  376. package/modern/StaticTimePicker/StaticTimePicker.js +2 -1
  377. package/modern/TimeClock/TimeClock.js +35 -12
  378. package/modern/TimeField/TimeField.js +21 -3
  379. package/modern/TimeField/useTimeField.js +4 -2
  380. package/modern/TimePicker/TimePicker.js +25 -2
  381. package/modern/TimePicker/TimePickerToolbar.js +2 -2
  382. package/modern/index.js +4 -1
  383. package/modern/internals/constants/dimensions.js +2 -1
  384. package/modern/internals/demo/DemoContainer.js +4 -1
  385. package/modern/internals/hooks/date-helpers-hooks.js +3 -3
  386. package/modern/internals/hooks/useDesktopPicker/useDesktopPicker.js +2 -1
  387. package/modern/internals/hooks/useField/useField.js +12 -11
  388. package/modern/internals/hooks/useField/useField.utils.js +60 -34
  389. package/modern/internals/hooks/useField/useFieldCharacterEditing.js +18 -10
  390. package/modern/internals/hooks/useField/useFieldState.js +4 -3
  391. package/modern/internals/hooks/usePicker/usePickerValue.js +1 -1
  392. package/modern/internals/hooks/{validation/useValidation.js → useValidation.js} +1 -1
  393. package/modern/internals/hooks/useViews.js +29 -13
  394. package/modern/internals/index.js +5 -5
  395. package/modern/internals/models/index.js +2 -1
  396. package/modern/internals/models/props/clock.js +1 -0
  397. package/modern/internals/models/validation.js +1 -0
  398. package/modern/internals/utils/time-utils.js +2 -1
  399. package/modern/internals/{hooks/validation/useDateValidation.js → utils/validation/validateDate.js} +1 -27
  400. package/{internals/hooks/validation/useDateTimeValidation.js → modern/internals/utils/validation/validateDateTime.js} +2 -2
  401. package/{internals/hooks/validation/useTimeValidation.js → modern/internals/utils/validation/validateTime.js} +1 -1
  402. package/modern/locales/beBY.js +3 -3
  403. package/modern/locales/caES.js +4 -1
  404. package/modern/locales/csCZ.js +4 -4
  405. package/modern/locales/daDK.js +4 -2
  406. package/modern/locales/deDE.js +4 -2
  407. package/modern/locales/enUS.js +2 -0
  408. package/modern/locales/esES.js +4 -1
  409. package/modern/locales/faIR.js +9 -1
  410. package/modern/locales/fiFI.js +4 -1
  411. package/modern/locales/frFR.js +4 -1
  412. package/modern/locales/heIL.js +4 -1
  413. package/modern/locales/huHU.js +4 -2
  414. package/modern/locales/index.js +1 -0
  415. package/modern/locales/isIS.js +9 -1
  416. package/modern/locales/itIT.js +4 -1
  417. package/modern/locales/jaJP.js +4 -2
  418. package/modern/locales/koKR.js +4 -1
  419. package/modern/locales/kzKZ.js +4 -2
  420. package/modern/locales/nbNO.js +9 -1
  421. package/modern/locales/nlNL.js +9 -1
  422. package/modern/locales/plPL.js +9 -1
  423. package/modern/locales/ptBR.js +9 -1
  424. package/modern/locales/ruRU.js +4 -2
  425. package/modern/locales/svSE.js +9 -1
  426. package/modern/locales/trTR.js +14 -7
  427. package/modern/locales/ukUA.js +9 -1
  428. package/modern/locales/urPK.js +9 -1
  429. package/modern/locales/zhCN.js +22 -23
  430. package/modern/models/common.js +1 -0
  431. package/modern/models/index.js +2 -1
  432. package/modern/tests/describeAdapters/describeAdapters.js +1 -3
  433. package/modern/tests/describeGregorianAdapter/describeGregorianAdapter.js +3 -1
  434. package/modern/tests/describeGregorianAdapter/testCalculations.js +29 -26
  435. package/modern/tests/describeGregorianAdapter/testLocalization.js +2 -2
  436. package/modern/tests/describeHijriAdapter/describeHijriAdapter.js +23 -0
  437. package/modern/tests/describeHijriAdapter/describeHijriAdapter.types.js +1 -0
  438. package/modern/tests/describeHijriAdapter/index.js +1 -0
  439. package/modern/tests/describeHijriAdapter/testCalculations.js +91 -0
  440. package/modern/tests/describeHijriAdapter/testLocalization.js +13 -0
  441. package/modern/tests/describeJalaliAdapter/describeJalaliAdapter.js +25 -0
  442. package/modern/tests/describeJalaliAdapter/describeJalaliAdapter.types.js +1 -0
  443. package/modern/tests/describeJalaliAdapter/index.js +1 -0
  444. package/modern/tests/describeJalaliAdapter/testCalculations.js +83 -0
  445. package/modern/tests/describeJalaliAdapter/testLocalization.js +13 -0
  446. package/modern/tests/describePicker/describePicker.js +162 -0
  447. package/modern/tests/describePicker/describePicker.types.js +1 -0
  448. package/modern/tests/describePicker/index.js +1 -0
  449. package/modern/tests/describeValue/describeValue.js +1 -1
  450. package/modern/tests/describeValue/testControlledUnControlled.js +8 -9
  451. package/modern/tests/describeValue/testPickerActionBar.js +46 -13
  452. package/modern/tests/describeValue/testPickerOpenCloseLifeCycle.js +0 -5
  453. package/modern/timeViewRenderers/index.js +1 -1
  454. package/modern/timeViewRenderers/timeViewRenderers.js +130 -2
  455. package/node/AdapterDateFns/AdapterDateFns.js +607 -0
  456. package/node/AdapterDateFns/index.js +6 -152
  457. package/node/AdapterDateFnsJalali/AdapterDateFnsJalali.js +618 -0
  458. package/node/AdapterDateFnsJalali/index.js +6 -151
  459. package/node/AdapterDayjs/AdapterDayjs.js +146 -111
  460. package/node/AdapterLuxon/AdapterLuxon.js +521 -0
  461. package/node/AdapterLuxon/index.js +6 -114
  462. package/node/AdapterMoment/AdapterMoment.js +425 -0
  463. package/node/AdapterMoment/index.js +6 -102
  464. package/node/AdapterMomentHijri/AdapterMomentHijri.js +278 -0
  465. package/node/AdapterMomentHijri/index.js +6 -77
  466. package/node/AdapterMomentJalaali/AdapterMomentJalaali.js +285 -0
  467. package/node/AdapterMomentJalaali/index.js +6 -90
  468. package/node/DateCalendar/DayCalendar.js +2 -2
  469. package/node/DateCalendar/useCalendarState.js +2 -2
  470. package/node/{internals/hooks/validation/useDateValidation.js → DateCalendar/useIsDateDisabled.js} +4 -37
  471. package/node/DateField/DateField.js +20 -3
  472. package/node/DateField/useDateField.js +5 -3
  473. package/node/DatePicker/DatePickerToolbar.js +1 -1
  474. package/node/DateTimeField/DateTimeField.js +21 -3
  475. package/node/DateTimeField/useDateTimeField.js +5 -3
  476. package/node/DateTimePicker/DateTimePicker.js +1 -0
  477. package/node/DesktopDatePicker/DesktopDatePicker.js +2 -2
  478. package/node/DesktopDateTimePicker/DesktopDateTimePicker.js +3 -2
  479. package/node/DesktopTimePicker/DesktopTimePicker.js +50 -8
  480. package/node/DigitalClock/DigitalClock.js +406 -0
  481. package/node/DigitalClock/digitalClockClasses.js +15 -0
  482. package/node/DigitalClock/index.js +25 -0
  483. package/node/MobileDatePicker/MobileDatePicker.js +2 -2
  484. package/node/MobileDateTimePicker/MobileDateTimePicker.js +3 -2
  485. package/node/MobileTimePicker/MobileTimePicker.js +3 -2
  486. package/node/MultiSectionDigitalClock/MultiSectionDigitalClock.js +489 -0
  487. package/node/MultiSectionDigitalClock/MultiSectionDigitalClock.types.js +5 -0
  488. package/node/MultiSectionDigitalClock/MultiSectionDigitalClock.utils.js +73 -0
  489. package/node/MultiSectionDigitalClock/MultiSectionDigitalClockSection.js +159 -0
  490. package/node/MultiSectionDigitalClock/index.js +32 -0
  491. package/node/MultiSectionDigitalClock/multiSectionDigitalClockClasses.js +15 -0
  492. package/node/MultiSectionDigitalClock/multiSectionDigitalClockSectionClasses.js +15 -0
  493. package/node/PickersDay/PickersDay.js +4 -1
  494. package/node/PickersLayout/PickersLayout.js +2 -2
  495. package/node/StaticDateTimePicker/StaticDateTimePicker.js +3 -2
  496. package/node/StaticTimePicker/StaticTimePicker.js +3 -2
  497. package/node/TimeClock/TimeClock.js +35 -12
  498. package/node/TimeField/TimeField.js +21 -3
  499. package/node/TimeField/useTimeField.js +5 -3
  500. package/node/TimePicker/TimePicker.js +25 -2
  501. package/node/TimePicker/TimePickerToolbar.js +2 -2
  502. package/node/index.js +25 -1
  503. package/node/internals/constants/dimensions.js +4 -2
  504. package/node/internals/demo/DemoContainer.js +4 -1
  505. package/node/internals/hooks/date-helpers-hooks.js +3 -3
  506. package/node/internals/hooks/useDesktopPicker/useDesktopPicker.js +2 -1
  507. package/node/internals/hooks/useField/useField.js +12 -11
  508. package/node/internals/hooks/useField/useField.utils.js +63 -36
  509. package/node/internals/hooks/useField/useFieldCharacterEditing.js +17 -9
  510. package/node/internals/hooks/useField/useFieldState.js +4 -3
  511. package/node/internals/hooks/usePicker/usePickerValue.js +1 -1
  512. package/node/internals/hooks/{validation/useValidation.js → useValidation.js} +1 -1
  513. package/node/internals/hooks/useViews.js +29 -13
  514. package/node/internals/index.js +9 -9
  515. package/node/internals/models/index.js +11 -0
  516. package/node/internals/models/props/clock.js +5 -0
  517. package/node/internals/models/validation.js +5 -0
  518. package/node/internals/utils/time-utils.js +2 -1
  519. package/node/internals/utils/validation/validateDate.js +40 -0
  520. package/node/internals/{hooks/validation/useDateTimeValidation.js → utils/validation/validateDateTime.js} +4 -4
  521. package/node/internals/{hooks/validation/useTimeValidation.js → utils/validation/validateTime.js} +1 -1
  522. package/node/locales/beBY.js +3 -3
  523. package/node/locales/caES.js +4 -1
  524. package/node/locales/csCZ.js +4 -2
  525. package/node/locales/daDK.js +4 -1
  526. package/node/locales/deDE.js +4 -1
  527. package/node/locales/enUS.js +2 -0
  528. package/node/locales/esES.js +4 -1
  529. package/node/locales/faIR.js +9 -1
  530. package/node/locales/fiFI.js +4 -1
  531. package/node/locales/frFR.js +4 -1
  532. package/node/locales/heIL.js +4 -1
  533. package/node/locales/huHU.js +4 -1
  534. package/node/locales/index.js +11 -0
  535. package/node/locales/isIS.js +9 -1
  536. package/node/locales/itIT.js +4 -1
  537. package/node/locales/jaJP.js +4 -1
  538. package/node/locales/koKR.js +4 -1
  539. package/node/locales/kzKZ.js +4 -1
  540. package/node/locales/nbNO.js +9 -1
  541. package/node/locales/nlNL.js +9 -1
  542. package/node/locales/plPL.js +9 -1
  543. package/node/locales/ptBR.js +9 -1
  544. package/node/locales/ruRU.js +4 -1
  545. package/node/locales/svSE.js +9 -1
  546. package/node/locales/trTR.js +14 -7
  547. package/node/locales/ukUA.js +9 -1
  548. package/node/locales/urPK.js +9 -1
  549. package/node/locales/zhCN.js +22 -23
  550. package/node/models/common.js +5 -0
  551. package/node/models/index.js +11 -0
  552. package/node/tests/describeAdapters/describeAdapters.js +1 -3
  553. package/node/tests/describeGregorianAdapter/describeGregorianAdapter.js +3 -1
  554. package/node/tests/describeGregorianAdapter/testCalculations.js +29 -26
  555. package/node/tests/describeGregorianAdapter/testLocalization.js +2 -2
  556. package/node/tests/describeHijriAdapter/describeHijriAdapter.js +31 -0
  557. package/node/tests/describeHijriAdapter/describeHijriAdapter.types.js +5 -0
  558. package/node/tests/describeHijriAdapter/index.js +12 -0
  559. package/node/tests/describeHijriAdapter/testCalculations.js +98 -0
  560. package/node/tests/describeHijriAdapter/testLocalization.js +20 -0
  561. package/node/tests/describeJalaliAdapter/describeJalaliAdapter.js +33 -0
  562. package/node/tests/describeJalaliAdapter/describeJalaliAdapter.types.js +5 -0
  563. package/node/tests/describeJalaliAdapter/index.js +12 -0
  564. package/node/tests/describeJalaliAdapter/testCalculations.js +90 -0
  565. package/node/tests/describeJalaliAdapter/testLocalization.js +20 -0
  566. package/node/tests/describePicker/describePicker.js +173 -0
  567. package/node/tests/describePicker/describePicker.types.js +5 -0
  568. package/node/tests/describePicker/index.js +12 -0
  569. package/node/tests/describeValue/describeValue.js +1 -1
  570. package/node/tests/describeValue/testControlledUnControlled.js +8 -9
  571. package/node/tests/describeValue/testPickerActionBar.js +46 -13
  572. package/node/tests/describeValue/testPickerOpenCloseLifeCycle.js +0 -5
  573. package/node/timeViewRenderers/index.js +12 -0
  574. package/node/timeViewRenderers/timeViewRenderers.js +134 -4
  575. package/package.json +3 -10
  576. package/tests/describeAdapters/describeAdapters.js +1 -3
  577. package/tests/describeGregorianAdapter/describeGregorianAdapter.js +3 -1
  578. package/tests/describeGregorianAdapter/testCalculations.js +29 -26
  579. package/tests/describeGregorianAdapter/testLocalization.js +2 -2
  580. package/tests/describeHijriAdapter/describeHijriAdapter.js +23 -0
  581. package/tests/describeHijriAdapter/describeHijriAdapter.types.js +1 -0
  582. package/tests/describeHijriAdapter/index.js +1 -0
  583. package/tests/describeHijriAdapter/testCalculations.js +91 -0
  584. package/tests/describeHijriAdapter/testLocalization.js +13 -0
  585. package/tests/describeJalaliAdapter/describeJalaliAdapter.js +25 -0
  586. package/tests/describeJalaliAdapter/describeJalaliAdapter.types.js +1 -0
  587. package/tests/describeJalaliAdapter/index.js +1 -0
  588. package/tests/describeJalaliAdapter/testCalculations.js +83 -0
  589. package/tests/describeJalaliAdapter/testLocalization.js +13 -0
  590. package/tests/describePicker/describePicker.js +162 -0
  591. package/tests/describePicker/describePicker.types.js +1 -0
  592. package/tests/describePicker/index.js +1 -0
  593. package/tests/describeValue/describeValue.js +1 -1
  594. package/tests/describeValue/testControlledUnControlled.js +8 -9
  595. package/tests/describeValue/testPickerActionBar.js +46 -13
  596. package/tests/describeValue/testPickerOpenCloseLifeCycle.js +0 -5
  597. package/themeAugmentation/components.d.ts +12 -0
  598. package/themeAugmentation/overrides.d.ts +8 -0
  599. package/themeAugmentation/props.d.ts +8 -0
  600. package/timeViewRenderers/index.d.ts +1 -1
  601. package/timeViewRenderers/index.js +1 -1
  602. package/timeViewRenderers/timeViewRenderers.d.ts +11 -4
  603. package/timeViewRenderers/timeViewRenderers.js +130 -2
  604. /package/{internals/hooks/validation/models.js → DigitalClock/DigitalClock.types.js} +0 -0
  605. /package/{legacy/internals/hooks/validation/models.js → MultiSectionDigitalClock/MultiSectionDigitalClock.types.js} +0 -0
  606. /package/{modern/internals/hooks/validation/models.js → internals/models/props/clock.js} +0 -0
  607. /package/internals/utils/{validation.d.ts → validation/extractValidationProps.d.ts} +0 -0
  608. /package/internals/utils/{validation.js → validation/extractValidationProps.js} +0 -0
  609. /package/legacy/internals/utils/{validation.js → validation/extractValidationProps.js} +0 -0
  610. /package/modern/internals/utils/{validation.js → validation/extractValidationProps.js} +0 -0
  611. /package/node/{internals/hooks/validation/models.js → DigitalClock/DigitalClock.types.js} +0 -0
  612. /package/node/internals/utils/{validation.js → validation/extractValidationProps.js} +0 -0
@@ -0,0 +1,607 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.AdapterDateFns = void 0;
8
+ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
9
+ var _addDays = _interopRequireDefault(require("date-fns/addDays"));
10
+ var _addSeconds = _interopRequireDefault(require("date-fns/addSeconds"));
11
+ var _addMinutes = _interopRequireDefault(require("date-fns/addMinutes"));
12
+ var _addHours = _interopRequireDefault(require("date-fns/addHours"));
13
+ var _addWeeks = _interopRequireDefault(require("date-fns/addWeeks"));
14
+ var _addMonths = _interopRequireDefault(require("date-fns/addMonths"));
15
+ var _addYears = _interopRequireDefault(require("date-fns/addYears"));
16
+ var _differenceInYears = _interopRequireDefault(require("date-fns/differenceInYears"));
17
+ var _differenceInQuarters = _interopRequireDefault(require("date-fns/differenceInQuarters"));
18
+ var _differenceInMonths = _interopRequireDefault(require("date-fns/differenceInMonths"));
19
+ var _differenceInWeeks = _interopRequireDefault(require("date-fns/differenceInWeeks"));
20
+ var _differenceInDays = _interopRequireDefault(require("date-fns/differenceInDays"));
21
+ var _differenceInHours = _interopRequireDefault(require("date-fns/differenceInHours"));
22
+ var _differenceInMinutes = _interopRequireDefault(require("date-fns/differenceInMinutes"));
23
+ var _differenceInSeconds = _interopRequireDefault(require("date-fns/differenceInSeconds"));
24
+ var _differenceInMilliseconds = _interopRequireDefault(require("date-fns/differenceInMilliseconds"));
25
+ var _eachDayOfInterval = _interopRequireDefault(require("date-fns/eachDayOfInterval"));
26
+ var _endOfDay = _interopRequireDefault(require("date-fns/endOfDay"));
27
+ var _endOfWeek = _interopRequireDefault(require("date-fns/endOfWeek"));
28
+ var _endOfYear = _interopRequireDefault(require("date-fns/endOfYear"));
29
+ var _format = _interopRequireDefault(require("date-fns/format"));
30
+ var _getDate = _interopRequireDefault(require("date-fns/getDate"));
31
+ var _getDay = _interopRequireDefault(require("date-fns/getDay"));
32
+ var _getDaysInMonth = _interopRequireDefault(require("date-fns/getDaysInMonth"));
33
+ var _getHours = _interopRequireDefault(require("date-fns/getHours"));
34
+ var _getMinutes = _interopRequireDefault(require("date-fns/getMinutes"));
35
+ var _getMonth = _interopRequireDefault(require("date-fns/getMonth"));
36
+ var _getSeconds = _interopRequireDefault(require("date-fns/getSeconds"));
37
+ var _getWeek = _interopRequireDefault(require("date-fns/getWeek"));
38
+ var _getYear = _interopRequireDefault(require("date-fns/getYear"));
39
+ var _isAfter = _interopRequireDefault(require("date-fns/isAfter"));
40
+ var _isBefore = _interopRequireDefault(require("date-fns/isBefore"));
41
+ var _isEqual = _interopRequireDefault(require("date-fns/isEqual"));
42
+ var _isSameDay = _interopRequireDefault(require("date-fns/isSameDay"));
43
+ var _isSameYear = _interopRequireDefault(require("date-fns/isSameYear"));
44
+ var _isSameMonth = _interopRequireDefault(require("date-fns/isSameMonth"));
45
+ var _isSameHour = _interopRequireDefault(require("date-fns/isSameHour"));
46
+ var _isValid = _interopRequireDefault(require("date-fns/isValid"));
47
+ var _parse = _interopRequireDefault(require("date-fns/parse"));
48
+ var _setDate = _interopRequireDefault(require("date-fns/setDate"));
49
+ var _setHours = _interopRequireDefault(require("date-fns/setHours"));
50
+ var _setMinutes = _interopRequireDefault(require("date-fns/setMinutes"));
51
+ var _setMonth = _interopRequireDefault(require("date-fns/setMonth"));
52
+ var _setSeconds = _interopRequireDefault(require("date-fns/setSeconds"));
53
+ var _setYear = _interopRequireDefault(require("date-fns/setYear"));
54
+ var _startOfDay = _interopRequireDefault(require("date-fns/startOfDay"));
55
+ var _startOfMonth = _interopRequireDefault(require("date-fns/startOfMonth"));
56
+ var _endOfMonth = _interopRequireDefault(require("date-fns/endOfMonth"));
57
+ var _startOfWeek = _interopRequireDefault(require("date-fns/startOfWeek"));
58
+ var _startOfYear = _interopRequireDefault(require("date-fns/startOfYear"));
59
+ var _parseISO = _interopRequireDefault(require("date-fns/parseISO"));
60
+ var _formatISO = _interopRequireDefault(require("date-fns/formatISO"));
61
+ var _isWithinInterval = _interopRequireDefault(require("date-fns/isWithinInterval"));
62
+ var _enUS = _interopRequireDefault(require("date-fns/locale/en-US"));
63
+ var _longFormatters = _interopRequireDefault(require("date-fns/_lib/format/longFormatters"));
64
+ /* eslint-disable class-methods-use-this */
65
+
66
+ // @ts-ignore
67
+
68
+ const formatTokenMap = {
69
+ // Year
70
+ y: {
71
+ sectionType: 'year',
72
+ contentType: 'digit',
73
+ maxLength: 4
74
+ },
75
+ yy: 'year',
76
+ yyy: {
77
+ sectionType: 'year',
78
+ contentType: 'digit',
79
+ maxLength: 4
80
+ },
81
+ yyyy: 'year',
82
+ // Month
83
+ M: {
84
+ sectionType: 'month',
85
+ contentType: 'digit',
86
+ maxLength: 2
87
+ },
88
+ MM: 'month',
89
+ MMMM: {
90
+ sectionType: 'month',
91
+ contentType: 'letter'
92
+ },
93
+ MMM: {
94
+ sectionType: 'month',
95
+ contentType: 'letter'
96
+ },
97
+ L: {
98
+ sectionType: 'month',
99
+ contentType: 'digit',
100
+ maxLength: 2
101
+ },
102
+ LL: 'month',
103
+ LLL: {
104
+ sectionType: 'month',
105
+ contentType: 'letter'
106
+ },
107
+ LLLL: {
108
+ sectionType: 'month',
109
+ contentType: 'letter'
110
+ },
111
+ // Day of the month
112
+ d: {
113
+ sectionType: 'day',
114
+ contentType: 'digit',
115
+ maxLength: 2
116
+ },
117
+ dd: 'day',
118
+ do: {
119
+ sectionType: 'day',
120
+ contentType: 'digit-with-letter'
121
+ },
122
+ // Day of the week
123
+ E: {
124
+ sectionType: 'weekDay',
125
+ contentType: 'letter'
126
+ },
127
+ EE: {
128
+ sectionType: 'weekDay',
129
+ contentType: 'letter'
130
+ },
131
+ EEE: {
132
+ sectionType: 'weekDay',
133
+ contentType: 'letter'
134
+ },
135
+ EEEE: {
136
+ sectionType: 'weekDay',
137
+ contentType: 'letter'
138
+ },
139
+ EEEEE: {
140
+ sectionType: 'weekDay',
141
+ contentType: 'letter'
142
+ },
143
+ i: {
144
+ sectionType: 'weekDay',
145
+ contentType: 'digit',
146
+ maxLength: 1
147
+ },
148
+ ii: 'weekDay',
149
+ iii: {
150
+ sectionType: 'weekDay',
151
+ contentType: 'letter'
152
+ },
153
+ iiii: {
154
+ sectionType: 'weekDay',
155
+ contentType: 'letter'
156
+ },
157
+ e: {
158
+ sectionType: 'weekDay',
159
+ contentType: 'digit',
160
+ maxLength: 1
161
+ },
162
+ ee: 'weekDay',
163
+ eee: {
164
+ sectionType: 'weekDay',
165
+ contentType: 'letter'
166
+ },
167
+ eeee: {
168
+ sectionType: 'weekDay',
169
+ contentType: 'letter'
170
+ },
171
+ eeeee: {
172
+ sectionType: 'weekDay',
173
+ contentType: 'letter'
174
+ },
175
+ eeeeee: {
176
+ sectionType: 'weekDay',
177
+ contentType: 'letter'
178
+ },
179
+ c: {
180
+ sectionType: 'weekDay',
181
+ contentType: 'digit',
182
+ maxLength: 1
183
+ },
184
+ cc: 'weekDay',
185
+ ccc: {
186
+ sectionType: 'weekDay',
187
+ contentType: 'letter'
188
+ },
189
+ cccc: {
190
+ sectionType: 'weekDay',
191
+ contentType: 'letter'
192
+ },
193
+ ccccc: {
194
+ sectionType: 'weekDay',
195
+ contentType: 'letter'
196
+ },
197
+ cccccc: {
198
+ sectionType: 'weekDay',
199
+ contentType: 'letter'
200
+ },
201
+ // Meridiem
202
+ a: 'meridiem',
203
+ aa: 'meridiem',
204
+ aaa: 'meridiem',
205
+ // Hours
206
+ H: {
207
+ sectionType: 'hours',
208
+ contentType: 'digit',
209
+ maxLength: 2
210
+ },
211
+ HH: 'hours',
212
+ h: {
213
+ sectionType: 'hours',
214
+ contentType: 'digit',
215
+ maxLength: 2
216
+ },
217
+ hh: 'hours',
218
+ // Minutes
219
+ m: {
220
+ sectionType: 'minutes',
221
+ contentType: 'digit',
222
+ maxLength: 2
223
+ },
224
+ mm: 'minutes',
225
+ // Seconds
226
+ s: {
227
+ sectionType: 'seconds',
228
+ contentType: 'digit',
229
+ maxLength: 2
230
+ },
231
+ ss: 'seconds'
232
+ };
233
+ const defaultFormats = {
234
+ dayOfMonth: 'd',
235
+ fullDate: 'PP',
236
+ fullDateWithWeekday: 'PPPP',
237
+ fullDateTime: 'PP p',
238
+ fullDateTime12h: 'PP hh:mm aa',
239
+ fullDateTime24h: 'PP HH:mm',
240
+ fullTime: 'p',
241
+ fullTime12h: 'hh:mm aa',
242
+ fullTime24h: 'HH:mm',
243
+ hours12h: 'hh',
244
+ hours24h: 'HH',
245
+ keyboardDate: 'P',
246
+ keyboardDateTime: 'P p',
247
+ keyboardDateTime12h: 'P hh:mm aa',
248
+ keyboardDateTime24h: 'P HH:mm',
249
+ minutes: 'mm',
250
+ month: 'LLLL',
251
+ monthAndDate: 'MMMM d',
252
+ monthAndYear: 'LLLL yyyy',
253
+ monthShort: 'MMM',
254
+ weekday: 'EEEE',
255
+ weekdayShort: 'EEE',
256
+ normalDate: 'd MMMM',
257
+ normalDateWithWeekday: 'EEE, MMM d',
258
+ seconds: 'ss',
259
+ shortDate: 'MMM d',
260
+ year: 'yyyy'
261
+ };
262
+
263
+ /**
264
+ * Based on `@date-io/date-fns`
265
+ *
266
+ * MIT License
267
+ *
268
+ * Copyright (c) 2017 Dmitriy Kovalenko
269
+ *
270
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
271
+ * of this software and associated documentation files (the "Software"), to deal
272
+ * in the Software without restriction, including without limitation the rights
273
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
274
+ * copies of the Software, and to permit persons to whom the Software is
275
+ * furnished to do so, subject to the following conditions:
276
+ *
277
+ * The above copyright notice and this permission notice shall be included in all
278
+ * copies or substantial portions of the Software.
279
+ *
280
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
281
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
282
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
283
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
284
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
285
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
286
+ * SOFTWARE.
287
+ */
288
+ class AdapterDateFns {
289
+ constructor({
290
+ locale: _locale,
291
+ formats
292
+ } = {}) {
293
+ this.isMUIAdapter = true;
294
+ this.lib = 'date-fns';
295
+ this.locale = void 0;
296
+ this.formats = void 0;
297
+ this.formatTokenMap = formatTokenMap;
298
+ this.escapedCharacters = {
299
+ start: "'",
300
+ end: "'"
301
+ };
302
+ this.date = value => {
303
+ if (typeof value === 'undefined') {
304
+ return new Date();
305
+ }
306
+ if (value === null) {
307
+ return null;
308
+ }
309
+ return new Date(value);
310
+ };
311
+ this.toJsDate = value => {
312
+ return value;
313
+ };
314
+ this.parseISO = isoString => {
315
+ return (0, _parseISO.default)(isoString);
316
+ };
317
+ this.toISO = value => {
318
+ return (0, _formatISO.default)(value, {
319
+ format: 'extended'
320
+ });
321
+ };
322
+ this.parse = (value, format) => {
323
+ if (value === '') {
324
+ return null;
325
+ }
326
+ return (0, _parse.default)(value, format, new Date(), {
327
+ locale: this.locale
328
+ });
329
+ };
330
+ this.getCurrentLocaleCode = () => {
331
+ return this.locale?.code || 'en-US';
332
+ };
333
+ // Note: date-fns input types are more lenient than this adapter, so we need to expose our more
334
+ // strict signature and delegate to the more lenient signature. Otherwise, we have downstream type errors upon usage.
335
+ this.is12HourCycleInCurrentLocale = () => {
336
+ if (this.locale) {
337
+ return /a/.test(this.locale.formatLong.time());
338
+ }
339
+
340
+ // By default, date-fns is using en-US locale with am/pm enabled
341
+ return true;
342
+ };
343
+ this.expandFormat = format => {
344
+ const longFormatRegexp = /P+p+|P+|p+|''|'(''|[^'])+('|$)|./g;
345
+
346
+ // @see https://github.com/date-fns/date-fns/blob/master/src/format/index.js#L31
347
+ return format.match(longFormatRegexp).map(token => {
348
+ const firstCharacter = token[0];
349
+ if (firstCharacter === 'p' || firstCharacter === 'P') {
350
+ const longFormatter = _longFormatters.default[firstCharacter];
351
+ const locale = this.locale || _enUS.default;
352
+ return longFormatter(token, locale.formatLong, {});
353
+ }
354
+ return token;
355
+ }).join('');
356
+ };
357
+ this.getFormatHelperText = format => {
358
+ return this.expandFormat(format).replace(/(aaa|aa|a)/g, '(a|p)m').toLocaleLowerCase();
359
+ };
360
+ this.isNull = value => {
361
+ return value === null;
362
+ };
363
+ this.isValid = value => {
364
+ return (0, _isValid.default)(this.date(value));
365
+ };
366
+ this.format = (value, formatKey) => {
367
+ return this.formatByString(value, this.formats[formatKey]);
368
+ };
369
+ this.formatByString = (value, formatString) => {
370
+ return (0, _format.default)(value, formatString, {
371
+ locale: this.locale
372
+ });
373
+ };
374
+ this.formatNumber = numberToFormat => {
375
+ return numberToFormat;
376
+ };
377
+ this.getDiff = (value, comparing, unit) => {
378
+ switch (unit) {
379
+ case 'years':
380
+ return (0, _differenceInYears.default)(value, this.date(comparing));
381
+ case 'quarters':
382
+ return (0, _differenceInQuarters.default)(value, this.date(comparing));
383
+ case 'months':
384
+ return (0, _differenceInMonths.default)(value, this.date(comparing));
385
+ case 'weeks':
386
+ return (0, _differenceInWeeks.default)(value, this.date(comparing));
387
+ case 'days':
388
+ return (0, _differenceInDays.default)(value, this.date(comparing));
389
+ case 'hours':
390
+ return (0, _differenceInHours.default)(value, this.date(comparing));
391
+ case 'minutes':
392
+ return (0, _differenceInMinutes.default)(value, this.date(comparing));
393
+ case 'seconds':
394
+ return (0, _differenceInSeconds.default)(value, this.date(comparing));
395
+ default:
396
+ {
397
+ return (0, _differenceInMilliseconds.default)(value, this.date(comparing));
398
+ }
399
+ }
400
+ };
401
+ this.isEqual = (value, comparing) => {
402
+ if (value === null && comparing === null) {
403
+ return true;
404
+ }
405
+ return (0, _isEqual.default)(value, comparing);
406
+ };
407
+ this.isSameYear = (value, comparing) => {
408
+ return (0, _isSameYear.default)(value, comparing);
409
+ };
410
+ this.isSameMonth = (value, comparing) => {
411
+ return (0, _isSameMonth.default)(value, comparing);
412
+ };
413
+ this.isSameDay = (value, comparing) => {
414
+ return (0, _isSameDay.default)(value, comparing);
415
+ };
416
+ this.isSameHour = (value, comparing) => {
417
+ return (0, _isSameHour.default)(value, comparing);
418
+ };
419
+ this.isAfter = (value, comparing) => {
420
+ return (0, _isAfter.default)(value, comparing);
421
+ };
422
+ this.isAfterYear = (value, comparing) => {
423
+ return (0, _isAfter.default)(value, (0, _endOfYear.default)(comparing));
424
+ };
425
+ this.isAfterDay = (value, comparing) => {
426
+ return (0, _isAfter.default)(value, (0, _endOfDay.default)(comparing));
427
+ };
428
+ this.isBefore = (value, comparing) => {
429
+ return (0, _isBefore.default)(value, comparing);
430
+ };
431
+ this.isBeforeYear = (value, comparing) => {
432
+ return (0, _isBefore.default)(value, (0, _startOfYear.default)(comparing));
433
+ };
434
+ this.isBeforeDay = (value, comparing) => {
435
+ return (0, _isBefore.default)(value, (0, _startOfDay.default)(comparing));
436
+ };
437
+ this.isWithinRange = (value, [start, end]) => {
438
+ return (0, _isWithinInterval.default)(value, {
439
+ start,
440
+ end
441
+ });
442
+ };
443
+ this.startOfYear = value => {
444
+ return (0, _startOfYear.default)(value);
445
+ };
446
+ this.startOfMonth = value => {
447
+ return (0, _startOfMonth.default)(value);
448
+ };
449
+ this.startOfWeek = value => {
450
+ return (0, _startOfWeek.default)(value, {
451
+ locale: this.locale
452
+ });
453
+ };
454
+ this.startOfDay = value => {
455
+ return (0, _startOfDay.default)(value);
456
+ };
457
+ this.endOfYear = value => {
458
+ return (0, _endOfYear.default)(value);
459
+ };
460
+ this.endOfMonth = value => {
461
+ return (0, _endOfMonth.default)(value);
462
+ };
463
+ this.endOfWeek = value => {
464
+ return (0, _endOfWeek.default)(value, {
465
+ locale: this.locale
466
+ });
467
+ };
468
+ this.endOfDay = value => {
469
+ return (0, _endOfDay.default)(value);
470
+ };
471
+ this.addYears = (value, amount) => {
472
+ return (0, _addYears.default)(value, amount);
473
+ };
474
+ this.addMonths = (value, amount) => {
475
+ return (0, _addMonths.default)(value, amount);
476
+ };
477
+ this.addWeeks = (value, amount) => {
478
+ return (0, _addWeeks.default)(value, amount);
479
+ };
480
+ this.addDays = (value, amount) => {
481
+ return (0, _addDays.default)(value, amount);
482
+ };
483
+ this.addHours = (value, amount) => {
484
+ return (0, _addHours.default)(value, amount);
485
+ };
486
+ this.addMinutes = (value, amount) => {
487
+ return (0, _addMinutes.default)(value, amount);
488
+ };
489
+ this.addSeconds = (value, amount) => {
490
+ return (0, _addSeconds.default)(value, amount);
491
+ };
492
+ this.getYear = value => {
493
+ return (0, _getYear.default)(value);
494
+ };
495
+ this.getMonth = value => {
496
+ return (0, _getMonth.default)(value);
497
+ };
498
+ this.getDate = value => {
499
+ return (0, _getDate.default)(value);
500
+ };
501
+ this.getHours = value => {
502
+ return (0, _getHours.default)(value);
503
+ };
504
+ this.getMinutes = value => {
505
+ return (0, _getMinutes.default)(value);
506
+ };
507
+ this.getSeconds = value => {
508
+ return (0, _getSeconds.default)(value);
509
+ };
510
+ this.setYear = (value, year) => {
511
+ return (0, _setYear.default)(value, year);
512
+ };
513
+ this.setMonth = (value, month) => {
514
+ return (0, _setMonth.default)(value, month);
515
+ };
516
+ this.setDate = (value, date) => {
517
+ return (0, _setDate.default)(value, date);
518
+ };
519
+ this.setHours = (value, hours) => {
520
+ return (0, _setHours.default)(value, hours);
521
+ };
522
+ this.setMinutes = (value, minutes) => {
523
+ return (0, _setMinutes.default)(value, minutes);
524
+ };
525
+ this.setSeconds = (value, seconds) => {
526
+ return (0, _setSeconds.default)(value, seconds);
527
+ };
528
+ this.getDaysInMonth = value => {
529
+ return (0, _getDaysInMonth.default)(value);
530
+ };
531
+ this.getNextMonth = value => {
532
+ return (0, _addMonths.default)(value, 1);
533
+ };
534
+ this.getPreviousMonth = value => {
535
+ return (0, _addMonths.default)(value, -1);
536
+ };
537
+ this.getMonthArray = value => {
538
+ const firstMonth = (0, _startOfYear.default)(value);
539
+ const monthArray = [firstMonth];
540
+ while (monthArray.length < 12) {
541
+ const prevMonth = monthArray[monthArray.length - 1];
542
+ monthArray.push(this.getNextMonth(prevMonth));
543
+ }
544
+ return monthArray;
545
+ };
546
+ this.mergeDateAndTime = (dateParam, timeParam) => {
547
+ return this.setSeconds(this.setMinutes(this.setHours(dateParam, this.getHours(timeParam)), this.getMinutes(timeParam)), this.getSeconds(timeParam));
548
+ };
549
+ this.getWeekdays = () => {
550
+ const now = new Date();
551
+ return (0, _eachDayOfInterval.default)({
552
+ start: (0, _startOfWeek.default)(now, {
553
+ locale: this.locale
554
+ }),
555
+ end: (0, _endOfWeek.default)(now, {
556
+ locale: this.locale
557
+ })
558
+ }).map(day => this.formatByString(day, 'EEEEEE'));
559
+ };
560
+ this.getWeekArray = value => {
561
+ const start = (0, _startOfWeek.default)((0, _startOfMonth.default)(value), {
562
+ locale: this.locale
563
+ });
564
+ const end = (0, _endOfWeek.default)((0, _endOfMonth.default)(value), {
565
+ locale: this.locale
566
+ });
567
+ let count = 0;
568
+ let current = start;
569
+ const nestedWeeks = [];
570
+ let lastDay = null;
571
+ while ((0, _isBefore.default)(current, end)) {
572
+ const weekNumber = Math.floor(count / 7);
573
+ nestedWeeks[weekNumber] = nestedWeeks[weekNumber] || [];
574
+ const day = (0, _getDay.default)(current);
575
+ if (lastDay !== day) {
576
+ lastDay = day;
577
+ nestedWeeks[weekNumber].push(current);
578
+ count += 1;
579
+ }
580
+ current = (0, _addDays.default)(current, 1);
581
+ }
582
+ return nestedWeeks;
583
+ };
584
+ this.getWeekNumber = value => {
585
+ return (0, _getWeek.default)(value, {
586
+ locale: this.locale
587
+ });
588
+ };
589
+ this.getYearRange = (start, end) => {
590
+ const startDate = (0, _startOfYear.default)(start);
591
+ const endDate = (0, _endOfYear.default)(end);
592
+ const years = [];
593
+ let current = startDate;
594
+ while ((0, _isBefore.default)(current, endDate)) {
595
+ years.push(current);
596
+ current = (0, _addYears.default)(current, 1);
597
+ }
598
+ return years;
599
+ };
600
+ this.getMeridiemText = ampm => {
601
+ return ampm === 'am' ? 'AM' : 'PM';
602
+ };
603
+ this.locale = _locale;
604
+ this.formats = (0, _extends2.default)({}, defaultFormats, formats);
605
+ }
606
+ }
607
+ exports.AdapterDateFns = AdapterDateFns;