@mui/x-date-pickers 7.0.0-beta.2 → 7.0.0-beta.4

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 (701) hide show
  1. package/AdapterDateFnsBase/AdapterDateFnsBase.d.ts +1 -0
  2. package/AdapterDateFnsBase/AdapterDateFnsBase.js +4 -0
  3. package/AdapterDateFnsJalali/AdapterDateFnsJalali.d.ts +1 -0
  4. package/AdapterDateFnsJalali/AdapterDateFnsJalali.js +4 -0
  5. package/AdapterDayjs/AdapterDayjs.d.ts +1 -0
  6. package/AdapterDayjs/AdapterDayjs.js +6 -0
  7. package/AdapterLuxon/AdapterLuxon.d.ts +1 -0
  8. package/AdapterLuxon/AdapterLuxon.js +6 -0
  9. package/AdapterMoment/AdapterMoment.d.ts +1 -0
  10. package/AdapterMoment/AdapterMoment.js +4 -0
  11. package/AdapterMomentHijri/AdapterMomentHijri.js +3 -0
  12. package/AdapterMomentJalaali/AdapterMomentJalaali.js +3 -0
  13. package/CHANGELOG.md +298 -23
  14. package/DateCalendar/DateCalendar.js +3 -1
  15. package/DateCalendar/DateCalendar.types.d.ts +3 -0
  16. package/DateCalendar/DayCalendar.d.ts +3 -1
  17. package/DateCalendar/DayCalendar.js +1 -1
  18. package/DateCalendar/PickersFadeTransitionGroup.d.ts +3 -0
  19. package/DateCalendar/PickersSlideTransition.d.ts +3 -0
  20. package/DateField/DateField.d.ts +1 -1
  21. package/DateField/DateField.js +11 -9
  22. package/DateField/DateField.types.d.ts +12 -15
  23. package/DateField/index.d.ts +1 -1
  24. package/DateField/useDateField.d.ts +2 -2
  25. package/DateField/useDateField.js +1 -15
  26. package/DatePicker/DatePicker.d.ts +1 -1
  27. package/DatePicker/DatePicker.js +9 -9
  28. package/DatePicker/DatePicker.types.d.ts +3 -3
  29. package/DatePicker/DatePickerToolbar.d.ts +5 -4
  30. package/DatePicker/DatePickerToolbar.js +11 -3
  31. package/DateTimeField/DateTimeField.d.ts +1 -1
  32. package/DateTimeField/DateTimeField.js +11 -9
  33. package/DateTimeField/DateTimeField.types.d.ts +12 -15
  34. package/DateTimeField/index.d.ts +1 -1
  35. package/DateTimeField/useDateTimeField.d.ts +2 -2
  36. package/DateTimeField/useDateTimeField.js +1 -20
  37. package/DateTimePicker/DateTimePicker.d.ts +1 -1
  38. package/DateTimePicker/DateTimePicker.js +9 -9
  39. package/DateTimePicker/DateTimePicker.types.d.ts +3 -3
  40. package/DateTimePicker/DateTimePickerTabs.d.ts +2 -2
  41. package/DateTimePicker/DateTimePickerTabs.js +7 -1
  42. package/DateTimePicker/DateTimePickerToolbar.d.ts +2 -2
  43. package/DateTimePicker/DateTimePickerToolbar.js +3 -0
  44. package/DesktopDatePicker/DesktopDatePicker.d.ts +1 -1
  45. package/DesktopDatePicker/DesktopDatePicker.js +9 -9
  46. package/DesktopDatePicker/DesktopDatePicker.types.d.ts +3 -3
  47. package/DesktopDateTimePicker/DesktopDateTimePicker.d.ts +1 -1
  48. package/DesktopDateTimePicker/DesktopDateTimePicker.js +9 -9
  49. package/DesktopDateTimePicker/DesktopDateTimePicker.types.d.ts +3 -3
  50. package/DesktopTimePicker/DesktopTimePicker.d.ts +1 -1
  51. package/DesktopTimePicker/DesktopTimePicker.js +9 -8
  52. package/DesktopTimePicker/DesktopTimePicker.types.d.ts +3 -3
  53. package/LocalizationProvider/LocalizationProvider.js +1 -0
  54. package/MobileDatePicker/MobileDatePicker.d.ts +1 -1
  55. package/MobileDatePicker/MobileDatePicker.js +9 -9
  56. package/MobileDatePicker/MobileDatePicker.types.d.ts +3 -3
  57. package/MobileDateTimePicker/MobileDateTimePicker.d.ts +2 -2
  58. package/MobileDateTimePicker/MobileDateTimePicker.js +9 -9
  59. package/MobileDateTimePicker/MobileDateTimePicker.types.d.ts +4 -4
  60. package/MobileTimePicker/MobileTimePicker.d.ts +2 -2
  61. package/MobileTimePicker/MobileTimePicker.js +9 -8
  62. package/MobileTimePicker/MobileTimePicker.types.d.ts +4 -4
  63. package/PickersLayout/PickersLayout.js +6 -0
  64. package/PickersLayout/PickersLayout.types.d.ts +6 -0
  65. package/PickersSectionList/PickersSectionList.d.ts +4 -4
  66. package/PickersSectionList/PickersSectionList.js +1 -2
  67. package/PickersTextField/PickersFilledInput/PickersFilledInput.js +3 -3
  68. package/PickersTextField/PickersInput/PickersInput.js +3 -3
  69. package/PickersTextField/PickersInputBase/PickersInputBase.d.ts +1 -1
  70. package/PickersTextField/PickersInputBase/PickersInputBase.js +11 -5
  71. package/PickersTextField/PickersInputBase/PickersInputBase.types.d.ts +1 -0
  72. package/PickersTextField/PickersOutlinedInput/PickersOutlinedInput.js +3 -3
  73. package/PickersTextField/PickersTextField.d.ts +1 -1
  74. package/PickersTextField/PickersTextField.js +9 -5
  75. package/StaticDatePicker/StaticDatePicker.js +0 -1
  76. package/StaticDateTimePicker/StaticDateTimePicker.js +0 -1
  77. package/TimeField/TimeField.d.ts +1 -1
  78. package/TimeField/TimeField.js +11 -9
  79. package/TimeField/TimeField.types.d.ts +12 -15
  80. package/TimeField/index.d.ts +1 -1
  81. package/TimeField/useTimeField.d.ts +2 -2
  82. package/TimeField/useTimeField.js +1 -13
  83. package/TimePicker/TimePicker.d.ts +1 -1
  84. package/TimePicker/TimePicker.js +9 -8
  85. package/TimePicker/TimePicker.types.d.ts +3 -3
  86. package/TimePicker/TimePickerToolbar.d.ts +5 -4
  87. package/TimePicker/TimePickerToolbar.js +11 -3
  88. package/hooks/index.d.ts +1 -1
  89. package/hooks/useClearableField.d.ts +10 -2
  90. package/index.js +1 -1
  91. package/internals/components/PickersArrowSwitcher/PickersArrowSwitcher.types.d.ts +3 -0
  92. package/internals/components/PickersPopper.d.ts +3 -0
  93. package/internals/components/PickersPopper.js +1 -2
  94. package/internals/demo/DemoContainer.js +6 -5
  95. package/internals/hooks/defaultizedFieldProps.d.ts +19 -0
  96. package/internals/hooks/defaultizedFieldProps.js +43 -0
  97. package/internals/hooks/useDesktopPicker/useDesktopPicker.d.ts +1 -1
  98. package/internals/hooks/useDesktopPicker/useDesktopPicker.js +13 -5
  99. package/internals/hooks/useDesktopPicker/useDesktopPicker.types.d.ts +14 -13
  100. package/internals/hooks/useField/buildSectionsFromFormat.d.ts +16 -0
  101. package/internals/hooks/useField/buildSectionsFromFormat.js +251 -0
  102. package/internals/hooks/useField/index.d.ts +2 -2
  103. package/internals/hooks/useField/index.js +1 -1
  104. package/internals/hooks/useField/useField.d.ts +4 -4
  105. package/internals/hooks/useField/useField.js +82 -309
  106. package/internals/hooks/useField/useField.types.d.ts +92 -56
  107. package/internals/hooks/useField/useField.utils.d.ts +10 -10
  108. package/internals/hooks/useField/useField.utils.js +78 -228
  109. package/internals/hooks/useField/useFieldCharacterEditing.d.ts +7 -6
  110. package/internals/hooks/useField/useFieldCharacterEditing.js +6 -6
  111. package/internals/hooks/useField/useFieldState.d.ts +13 -11
  112. package/internals/hooks/useField/useFieldState.js +45 -61
  113. package/internals/hooks/useField/useFieldV6TextField.d.ts +25 -0
  114. package/internals/hooks/useField/useFieldV6TextField.js +324 -0
  115. package/internals/hooks/useField/useFieldV7TextField.d.ts +2 -0
  116. package/internals/hooks/useField/useFieldV7TextField.js +402 -0
  117. package/internals/hooks/useMobilePicker/useMobilePicker.d.ts +1 -1
  118. package/internals/hooks/useMobilePicker/useMobilePicker.js +13 -5
  119. package/internals/hooks/useMobilePicker/useMobilePicker.types.d.ts +12 -12
  120. package/internals/hooks/usePicker/usePicker.d.ts +1 -1
  121. package/internals/hooks/usePicker/usePicker.js +3 -3
  122. package/internals/hooks/usePicker/usePicker.types.d.ts +2 -2
  123. package/internals/hooks/usePicker/usePickerValue.d.ts +1 -1
  124. package/internals/hooks/usePicker/usePickerValue.js +2 -18
  125. package/internals/hooks/usePicker/usePickerValue.types.d.ts +5 -6
  126. package/internals/hooks/usePicker/usePickerViews.d.ts +4 -4
  127. package/internals/hooks/usePicker/usePickerViews.js +5 -6
  128. package/internals/hooks/useStaticPicker/useStaticPicker.js +1 -0
  129. package/internals/hooks/useStaticPicker/useStaticPicker.types.d.ts +1 -0
  130. package/internals/index.d.ts +5 -4
  131. package/internals/index.js +2 -1
  132. package/internals/models/fields.d.ts +2 -4
  133. package/internals/models/helpers.d.ts +1 -0
  134. package/internals/models/props/basePickerProps.d.ts +2 -7
  135. package/internals/models/props/tabs.d.ts +6 -0
  136. package/internals/models/props/toolbar.d.ts +3 -0
  137. package/internals/utils/convertFieldResponseIntoMuiTextFieldProps.d.ts +1 -1
  138. package/internals/utils/convertFieldResponseIntoMuiTextFieldProps.js +21 -3
  139. package/internals/utils/fields.js +1 -1
  140. package/internals/utils/valueManagers.js +5 -4
  141. package/locales/beBY.d.ts +9 -0
  142. package/locales/beBY.js +13 -0
  143. package/locales/caES.d.ts +9 -0
  144. package/locales/caES.js +13 -0
  145. package/locales/csCZ.d.ts +9 -0
  146. package/locales/csCZ.js +13 -0
  147. package/locales/daDK.d.ts +9 -0
  148. package/locales/daDK.js +13 -0
  149. package/locales/deDE.d.ts +9 -0
  150. package/locales/deDE.js +13 -0
  151. package/locales/elGR.d.ts +9 -0
  152. package/locales/elGR.js +13 -0
  153. package/locales/enUS.d.ts +9 -0
  154. package/locales/enUS.js +12 -1
  155. package/locales/esES.d.ts +9 -0
  156. package/locales/esES.js +13 -0
  157. package/locales/eu.d.ts +9 -0
  158. package/locales/eu.js +13 -0
  159. package/locales/faIR.d.ts +9 -0
  160. package/locales/faIR.js +13 -0
  161. package/locales/fiFI.d.ts +9 -0
  162. package/locales/fiFI.js +13 -0
  163. package/locales/frFR.d.ts +9 -0
  164. package/locales/frFR.js +13 -0
  165. package/locales/heIL.d.ts +9 -0
  166. package/locales/heIL.js +13 -0
  167. package/locales/huHU.d.ts +9 -0
  168. package/locales/huHU.js +13 -0
  169. package/locales/isIS.d.ts +9 -0
  170. package/locales/isIS.js +13 -0
  171. package/locales/itIT.d.ts +9 -0
  172. package/locales/itIT.js +13 -0
  173. package/locales/jaJP.d.ts +9 -0
  174. package/locales/jaJP.js +13 -0
  175. package/locales/koKR.d.ts +9 -0
  176. package/locales/koKR.js +13 -0
  177. package/locales/kzKZ.d.ts +9 -0
  178. package/locales/kzKZ.js +13 -0
  179. package/locales/mk.d.ts +9 -0
  180. package/locales/mk.js +13 -0
  181. package/locales/nbNO.d.ts +9 -0
  182. package/locales/nbNO.js +13 -0
  183. package/locales/nlNL.d.ts +9 -0
  184. package/locales/nlNL.js +13 -0
  185. package/locales/plPL.d.ts +9 -0
  186. package/locales/plPL.js +13 -0
  187. package/locales/ptBR.d.ts +9 -0
  188. package/locales/ptBR.js +13 -0
  189. package/locales/roRO.d.ts +9 -0
  190. package/locales/roRO.js +13 -0
  191. package/locales/ruRU.d.ts +9 -0
  192. package/locales/ruRU.js +13 -0
  193. package/locales/skSK.d.ts +9 -0
  194. package/locales/skSK.js +13 -0
  195. package/locales/svSE.d.ts +9 -0
  196. package/locales/svSE.js +13 -0
  197. package/locales/trTR.d.ts +9 -0
  198. package/locales/trTR.js +13 -0
  199. package/locales/ukUA.d.ts +9 -0
  200. package/locales/ukUA.js +13 -0
  201. package/locales/urPK.d.ts +9 -0
  202. package/locales/urPK.js +13 -0
  203. package/locales/utils/getPickersLocalization.d.ts +9 -0
  204. package/locales/utils/pickersLocaleTextApi.d.ts +9 -0
  205. package/locales/viVN.d.ts +9 -0
  206. package/locales/viVN.js +13 -0
  207. package/locales/zhCN.d.ts +9 -0
  208. package/locales/zhCN.js +13 -0
  209. package/locales/zhHK.d.ts +9 -0
  210. package/locales/zhHK.js +13 -0
  211. package/models/adapters.d.ts +13 -0
  212. package/models/fields.d.ts +47 -32
  213. package/modern/AdapterDateFnsBase/AdapterDateFnsBase.js +4 -0
  214. package/modern/AdapterDateFnsJalali/AdapterDateFnsJalali.js +4 -0
  215. package/modern/AdapterDayjs/AdapterDayjs.js +6 -0
  216. package/modern/AdapterLuxon/AdapterLuxon.js +6 -0
  217. package/modern/AdapterMoment/AdapterMoment.js +4 -0
  218. package/modern/AdapterMomentHijri/AdapterMomentHijri.js +3 -0
  219. package/modern/AdapterMomentJalaali/AdapterMomentJalaali.js +3 -0
  220. package/modern/DateCalendar/DateCalendar.js +3 -1
  221. package/modern/DateCalendar/DayCalendar.js +1 -1
  222. package/modern/DateField/DateField.js +11 -9
  223. package/modern/DateField/useDateField.js +1 -14
  224. package/modern/DatePicker/DatePicker.js +9 -9
  225. package/modern/DatePicker/DatePickerToolbar.js +11 -3
  226. package/modern/DateTimeField/DateTimeField.js +11 -9
  227. package/modern/DateTimeField/useDateTimeField.js +1 -19
  228. package/modern/DateTimePicker/DateTimePicker.js +9 -9
  229. package/modern/DateTimePicker/DateTimePickerTabs.js +7 -1
  230. package/modern/DateTimePicker/DateTimePickerToolbar.js +3 -0
  231. package/modern/DesktopDatePicker/DesktopDatePicker.js +9 -9
  232. package/modern/DesktopDateTimePicker/DesktopDateTimePicker.js +9 -9
  233. package/modern/DesktopTimePicker/DesktopTimePicker.js +9 -8
  234. package/modern/LocalizationProvider/LocalizationProvider.js +1 -0
  235. package/modern/MobileDatePicker/MobileDatePicker.js +9 -9
  236. package/modern/MobileDateTimePicker/MobileDateTimePicker.js +9 -9
  237. package/modern/MobileTimePicker/MobileTimePicker.js +9 -8
  238. package/modern/PickersLayout/PickersLayout.js +6 -0
  239. package/modern/PickersSectionList/PickersSectionList.js +1 -2
  240. package/modern/PickersTextField/PickersFilledInput/PickersFilledInput.js +3 -3
  241. package/modern/PickersTextField/PickersInput/PickersInput.js +3 -3
  242. package/modern/PickersTextField/PickersInputBase/PickersInputBase.js +11 -5
  243. package/modern/PickersTextField/PickersOutlinedInput/PickersOutlinedInput.js +3 -3
  244. package/modern/PickersTextField/PickersTextField.js +9 -5
  245. package/modern/StaticDatePicker/StaticDatePicker.js +0 -1
  246. package/modern/StaticDateTimePicker/StaticDateTimePicker.js +0 -1
  247. package/modern/TimeField/TimeField.js +11 -9
  248. package/modern/TimeField/useTimeField.js +1 -12
  249. package/modern/TimePicker/TimePicker.js +9 -8
  250. package/modern/TimePicker/TimePickerToolbar.js +11 -3
  251. package/modern/index.js +1 -1
  252. package/modern/internals/components/PickersPopper.js +1 -2
  253. package/modern/internals/demo/DemoContainer.js +6 -5
  254. package/modern/internals/hooks/defaultizedFieldProps.js +40 -0
  255. package/modern/internals/hooks/useDesktopPicker/useDesktopPicker.js +13 -5
  256. package/modern/internals/hooks/useField/buildSectionsFromFormat.js +251 -0
  257. package/modern/internals/hooks/useField/index.js +1 -1
  258. package/modern/internals/hooks/useField/useField.js +82 -303
  259. package/modern/internals/hooks/useField/useField.utils.js +78 -228
  260. package/modern/internals/hooks/useField/useFieldCharacterEditing.js +6 -6
  261. package/modern/internals/hooks/useField/useFieldState.js +45 -61
  262. package/modern/internals/hooks/useField/useFieldV6TextField.js +318 -0
  263. package/modern/internals/hooks/useField/useFieldV7TextField.js +400 -0
  264. package/modern/internals/hooks/useMobilePicker/useMobilePicker.js +13 -5
  265. package/modern/internals/hooks/usePicker/usePicker.js +3 -3
  266. package/modern/internals/hooks/usePicker/usePickerValue.js +2 -18
  267. package/modern/internals/hooks/usePicker/usePickerViews.js +4 -6
  268. package/modern/internals/hooks/useStaticPicker/useStaticPicker.js +1 -0
  269. package/modern/internals/index.js +2 -1
  270. package/modern/internals/utils/convertFieldResponseIntoMuiTextFieldProps.js +21 -3
  271. package/modern/internals/utils/fields.js +1 -1
  272. package/modern/internals/utils/valueManagers.js +5 -4
  273. package/modern/locales/beBY.js +13 -0
  274. package/modern/locales/caES.js +13 -0
  275. package/modern/locales/csCZ.js +13 -0
  276. package/modern/locales/daDK.js +13 -0
  277. package/modern/locales/deDE.js +13 -0
  278. package/modern/locales/elGR.js +13 -0
  279. package/modern/locales/enUS.js +12 -1
  280. package/modern/locales/esES.js +13 -0
  281. package/modern/locales/eu.js +13 -0
  282. package/modern/locales/faIR.js +13 -0
  283. package/modern/locales/fiFI.js +13 -0
  284. package/modern/locales/frFR.js +13 -0
  285. package/modern/locales/heIL.js +13 -0
  286. package/modern/locales/huHU.js +13 -0
  287. package/modern/locales/isIS.js +13 -0
  288. package/modern/locales/itIT.js +13 -0
  289. package/modern/locales/jaJP.js +13 -0
  290. package/modern/locales/koKR.js +13 -0
  291. package/modern/locales/kzKZ.js +13 -0
  292. package/modern/locales/mk.js +13 -0
  293. package/modern/locales/nbNO.js +13 -0
  294. package/modern/locales/nlNL.js +13 -0
  295. package/modern/locales/plPL.js +13 -0
  296. package/modern/locales/ptBR.js +13 -0
  297. package/modern/locales/roRO.js +13 -0
  298. package/modern/locales/ruRU.js +13 -0
  299. package/modern/locales/skSK.js +13 -0
  300. package/modern/locales/svSE.js +13 -0
  301. package/modern/locales/trTR.js +13 -0
  302. package/modern/locales/ukUA.js +13 -0
  303. package/modern/locales/urPK.js +13 -0
  304. package/modern/locales/viVN.js +13 -0
  305. package/modern/locales/zhCN.js +13 -0
  306. package/modern/locales/zhHK.js +13 -0
  307. package/node/AdapterDateFnsBase/AdapterDateFnsBase.js +4 -0
  308. package/node/AdapterDateFnsJalali/AdapterDateFnsJalali.js +4 -0
  309. package/node/AdapterDayjs/AdapterDayjs.js +6 -0
  310. package/node/AdapterLuxon/AdapterLuxon.js +6 -0
  311. package/node/AdapterMoment/AdapterMoment.js +4 -0
  312. package/node/AdapterMomentHijri/AdapterMomentHijri.js +3 -0
  313. package/node/AdapterMomentJalaali/AdapterMomentJalaali.js +3 -0
  314. package/node/DateCalendar/DateCalendar.js +3 -1
  315. package/node/DateCalendar/DayCalendar.js +1 -1
  316. package/node/DateField/DateField.js +11 -9
  317. package/node/DateField/useDateField.js +2 -16
  318. package/node/DatePicker/DatePicker.js +9 -9
  319. package/node/DatePicker/DatePickerToolbar.js +11 -3
  320. package/node/DateTimeField/DateTimeField.js +11 -9
  321. package/node/DateTimeField/useDateTimeField.js +2 -21
  322. package/node/DateTimePicker/DateTimePicker.js +9 -9
  323. package/node/DateTimePicker/DateTimePickerTabs.js +7 -1
  324. package/node/DateTimePicker/DateTimePickerToolbar.js +3 -0
  325. package/node/DesktopDatePicker/DesktopDatePicker.js +9 -9
  326. package/node/DesktopDateTimePicker/DesktopDateTimePicker.js +9 -9
  327. package/node/DesktopTimePicker/DesktopTimePicker.js +9 -8
  328. package/node/LocalizationProvider/LocalizationProvider.js +1 -0
  329. package/node/MobileDatePicker/MobileDatePicker.js +9 -9
  330. package/node/MobileDateTimePicker/MobileDateTimePicker.js +9 -9
  331. package/node/MobileTimePicker/MobileTimePicker.js +9 -8
  332. package/node/PickersLayout/PickersLayout.js +6 -0
  333. package/node/PickersSectionList/PickersSectionList.js +4 -5
  334. package/node/PickersTextField/PickersFilledInput/PickersFilledInput.js +3 -3
  335. package/node/PickersTextField/PickersInput/PickersInput.js +3 -3
  336. package/node/PickersTextField/PickersInputBase/PickersInputBase.js +11 -5
  337. package/node/PickersTextField/PickersOutlinedInput/PickersOutlinedInput.js +3 -3
  338. package/node/PickersTextField/PickersTextField.js +9 -5
  339. package/node/StaticDatePicker/StaticDatePicker.js +0 -1
  340. package/node/StaticDateTimePicker/StaticDateTimePicker.js +0 -1
  341. package/node/TimeField/TimeField.js +11 -9
  342. package/node/TimeField/useTimeField.js +2 -14
  343. package/node/TimePicker/TimePicker.js +9 -8
  344. package/node/TimePicker/TimePickerToolbar.js +11 -3
  345. package/node/index.js +1 -1
  346. package/node/internals/components/PickersPopper.js +1 -2
  347. package/node/internals/demo/DemoContainer.js +6 -5
  348. package/node/internals/hooks/defaultizedFieldProps.js +50 -0
  349. package/node/internals/hooks/useDesktopPicker/useDesktopPicker.js +13 -5
  350. package/node/internals/hooks/useField/buildSectionsFromFormat.js +259 -0
  351. package/node/internals/hooks/useField/index.js +4 -10
  352. package/node/internals/hooks/useField/useField.js +81 -302
  353. package/node/internals/hooks/useField/useField.utils.js +86 -236
  354. package/node/internals/hooks/useField/useFieldCharacterEditing.js +6 -6
  355. package/node/internals/hooks/useField/useFieldState.js +44 -60
  356. package/node/internals/hooks/useField/useFieldV6TextField.js +329 -0
  357. package/node/internals/hooks/useField/useFieldV7TextField.js +410 -0
  358. package/node/internals/hooks/useMobilePicker/useMobilePicker.js +13 -5
  359. package/node/internals/hooks/usePicker/usePicker.js +3 -3
  360. package/node/internals/hooks/usePicker/usePickerValue.js +2 -18
  361. package/node/internals/hooks/usePicker/usePickerViews.js +4 -6
  362. package/node/internals/hooks/useStaticPicker/useStaticPicker.js +1 -0
  363. package/node/internals/index.js +27 -8
  364. package/node/internals/utils/convertFieldResponseIntoMuiTextFieldProps.js +21 -3
  365. package/node/internals/utils/fields.js +1 -1
  366. package/node/internals/utils/valueManagers.js +4 -3
  367. package/node/locales/beBY.js +13 -0
  368. package/node/locales/caES.js +13 -0
  369. package/node/locales/csCZ.js +13 -0
  370. package/node/locales/daDK.js +13 -0
  371. package/node/locales/deDE.js +13 -0
  372. package/node/locales/elGR.js +13 -0
  373. package/node/locales/enUS.js +12 -1
  374. package/node/locales/esES.js +13 -0
  375. package/node/locales/eu.js +13 -0
  376. package/node/locales/faIR.js +13 -0
  377. package/node/locales/fiFI.js +13 -0
  378. package/node/locales/frFR.js +13 -0
  379. package/node/locales/heIL.js +13 -0
  380. package/node/locales/huHU.js +13 -0
  381. package/node/locales/isIS.js +13 -0
  382. package/node/locales/itIT.js +13 -0
  383. package/node/locales/jaJP.js +13 -0
  384. package/node/locales/koKR.js +13 -0
  385. package/node/locales/kzKZ.js +13 -0
  386. package/node/locales/mk.js +13 -0
  387. package/node/locales/nbNO.js +13 -0
  388. package/node/locales/nlNL.js +13 -0
  389. package/node/locales/plPL.js +13 -0
  390. package/node/locales/ptBR.js +13 -0
  391. package/node/locales/roRO.js +13 -0
  392. package/node/locales/ruRU.js +13 -0
  393. package/node/locales/skSK.js +13 -0
  394. package/node/locales/svSE.js +13 -0
  395. package/node/locales/trTR.js +13 -0
  396. package/node/locales/ukUA.js +13 -0
  397. package/node/locales/urPK.js +13 -0
  398. package/node/locales/viVN.js +13 -0
  399. package/node/locales/zhCN.js +13 -0
  400. package/node/locales/zhHK.js +13 -0
  401. package/package.json +4 -4
  402. package/themeAugmentation/props.d.ts +3 -3
  403. package/timeViewRenderers/timeViewRenderers.d.ts +1 -1
  404. package/legacy/AdapterDateFns/AdapterDateFns.js +0 -298
  405. package/legacy/AdapterDateFns/index.js +0 -1
  406. package/legacy/AdapterDateFnsBase/AdapterDateFnsBase.js +0 -293
  407. package/legacy/AdapterDateFnsBase/index.js +0 -1
  408. package/legacy/AdapterDateFnsJalali/AdapterDateFnsJalali.js +0 -547
  409. package/legacy/AdapterDateFnsJalali/index.js +0 -1
  410. package/legacy/AdapterDateFnsV3/AdapterDateFnsV3.js +0 -306
  411. package/legacy/AdapterDateFnsV3/index.js +0 -1
  412. package/legacy/AdapterDayjs/AdapterDayjs.js +0 -568
  413. package/legacy/AdapterDayjs/index.js +0 -1
  414. package/legacy/AdapterLuxon/AdapterLuxon.js +0 -508
  415. package/legacy/AdapterLuxon/index.js +0 -1
  416. package/legacy/AdapterMoment/AdapterMoment.js +0 -481
  417. package/legacy/AdapterMoment/index.js +0 -1
  418. package/legacy/AdapterMomentHijri/AdapterMomentHijri.js +0 -238
  419. package/legacy/AdapterMomentHijri/index.js +0 -1
  420. package/legacy/AdapterMomentJalaali/AdapterMomentJalaali.js +0 -235
  421. package/legacy/AdapterMomentJalaali/index.js +0 -1
  422. package/legacy/DateCalendar/DateCalendar.js +0 -573
  423. package/legacy/DateCalendar/DateCalendar.types.js +0 -1
  424. package/legacy/DateCalendar/DayCalendar.js +0 -515
  425. package/legacy/DateCalendar/PickersFadeTransitionGroup.js +0 -58
  426. package/legacy/DateCalendar/PickersSlideTransition.js +0 -118
  427. package/legacy/DateCalendar/dateCalendarClasses.js +0 -5
  428. package/legacy/DateCalendar/dayCalendarClasses.js +0 -5
  429. package/legacy/DateCalendar/index.js +0 -5
  430. package/legacy/DateCalendar/pickersFadeTransitionGroupClasses.js +0 -5
  431. package/legacy/DateCalendar/pickersSlideTransitionClasses.js +0 -5
  432. package/legacy/DateCalendar/useCalendarState.js +0 -124
  433. package/legacy/DateCalendar/useIsDateDisabled.js +0 -30
  434. package/legacy/DateField/DateField.js +0 -319
  435. package/legacy/DateField/DateField.types.js +0 -1
  436. package/legacy/DateField/index.js +0 -2
  437. package/legacy/DateField/useDateField.js +0 -33
  438. package/legacy/DatePicker/DatePicker.js +0 -353
  439. package/legacy/DatePicker/DatePicker.types.js +0 -1
  440. package/legacy/DatePicker/DatePickerToolbar.js +0 -132
  441. package/legacy/DatePicker/datePickerToolbarClasses.js +0 -5
  442. package/legacy/DatePicker/index.js +0 -3
  443. package/legacy/DatePicker/shared.js +0 -41
  444. package/legacy/DateTimeField/DateTimeField.js +0 -360
  445. package/legacy/DateTimeField/DateTimeField.types.js +0 -1
  446. package/legacy/DateTimeField/index.js +0 -2
  447. package/legacy/DateTimeField/useDateTimeField.js +0 -38
  448. package/legacy/DateTimePicker/DateTimePicker.js +0 -424
  449. package/legacy/DateTimePicker/DateTimePicker.types.js +0 -1
  450. package/legacy/DateTimePicker/DateTimePickerTabs.js +0 -142
  451. package/legacy/DateTimePicker/DateTimePickerToolbar.js +0 -385
  452. package/legacy/DateTimePicker/dateTimePickerTabsClasses.js +0 -5
  453. package/legacy/DateTimePicker/dateTimePickerToolbarClasses.js +0 -5
  454. package/legacy/DateTimePicker/index.js +0 -5
  455. package/legacy/DateTimePicker/shared.js +0 -56
  456. package/legacy/DayCalendarSkeleton/DayCalendarSkeleton.js +0 -119
  457. package/legacy/DayCalendarSkeleton/dayCalendarSkeletonClasses.js +0 -5
  458. package/legacy/DayCalendarSkeleton/index.js +0 -2
  459. package/legacy/DesktopDatePicker/DesktopDatePicker.js +0 -372
  460. package/legacy/DesktopDatePicker/DesktopDatePicker.types.js +0 -1
  461. package/legacy/DesktopDatePicker/index.js +0 -1
  462. package/legacy/DesktopDateTimePicker/DesktopDateTimePicker.js +0 -480
  463. package/legacy/DesktopDateTimePicker/DesktopDateTimePicker.types.js +0 -1
  464. package/legacy/DesktopDateTimePicker/index.js +0 -1
  465. package/legacy/DesktopTimePicker/DesktopTimePicker.js +0 -355
  466. package/legacy/DesktopTimePicker/DesktopTimePicker.types.js +0 -1
  467. package/legacy/DesktopTimePicker/index.js +0 -1
  468. package/legacy/DigitalClock/DigitalClock.js +0 -443
  469. package/legacy/DigitalClock/DigitalClock.types.js +0 -1
  470. package/legacy/DigitalClock/digitalClockClasses.js +0 -6
  471. package/legacy/DigitalClock/index.js +0 -2
  472. package/legacy/LocalizationProvider/LocalizationProvider.js +0 -140
  473. package/legacy/LocalizationProvider/index.js +0 -1
  474. package/legacy/MobileDatePicker/MobileDatePicker.js +0 -369
  475. package/legacy/MobileDatePicker/MobileDatePicker.types.js +0 -1
  476. package/legacy/MobileDatePicker/index.js +0 -1
  477. package/legacy/MobileDateTimePicker/MobileDateTimePicker.js +0 -428
  478. package/legacy/MobileDateTimePicker/MobileDateTimePicker.types.js +0 -1
  479. package/legacy/MobileDateTimePicker/index.js +0 -1
  480. package/legacy/MobileTimePicker/MobileTimePicker.js +0 -311
  481. package/legacy/MobileTimePicker/MobileTimePicker.types.js +0 -1
  482. package/legacy/MobileTimePicker/index.js +0 -1
  483. package/legacy/MonthCalendar/MonthCalendar.js +0 -338
  484. package/legacy/MonthCalendar/MonthCalendar.types.js +0 -1
  485. package/legacy/MonthCalendar/PickersMonth.js +0 -135
  486. package/legacy/MonthCalendar/index.js +0 -3
  487. package/legacy/MonthCalendar/monthCalendarClasses.js +0 -5
  488. package/legacy/MonthCalendar/pickersMonthClasses.js +0 -5
  489. package/legacy/MultiSectionDigitalClock/MultiSectionDigitalClock.js +0 -521
  490. package/legacy/MultiSectionDigitalClock/MultiSectionDigitalClock.types.js +0 -1
  491. package/legacy/MultiSectionDigitalClock/MultiSectionDigitalClock.utils.js +0 -76
  492. package/legacy/MultiSectionDigitalClock/MultiSectionDigitalClockSection.js +0 -173
  493. package/legacy/MultiSectionDigitalClock/index.js +0 -3
  494. package/legacy/MultiSectionDigitalClock/multiSectionDigitalClockClasses.js +0 -6
  495. package/legacy/MultiSectionDigitalClock/multiSectionDigitalClockSectionClasses.js +0 -6
  496. package/legacy/PickersActionBar/PickersActionBar.js +0 -86
  497. package/legacy/PickersActionBar/index.js +0 -1
  498. package/legacy/PickersCalendarHeader/PickersCalendarHeader.js +0 -284
  499. package/legacy/PickersCalendarHeader/PickersCalendarHeader.types.js +0 -1
  500. package/legacy/PickersCalendarHeader/index.js +0 -2
  501. package/legacy/PickersCalendarHeader/pickersCalendarHeaderClasses.js +0 -5
  502. package/legacy/PickersDay/PickersDay.js +0 -367
  503. package/legacy/PickersDay/index.js +0 -2
  504. package/legacy/PickersDay/pickersDayClasses.js +0 -5
  505. package/legacy/PickersLayout/PickersLayout.js +0 -159
  506. package/legacy/PickersLayout/PickersLayout.types.js +0 -1
  507. package/legacy/PickersLayout/index.js +0 -3
  508. package/legacy/PickersLayout/pickersLayoutClasses.js +0 -6
  509. package/legacy/PickersLayout/usePickerLayout.js +0 -134
  510. package/legacy/PickersSectionList/PickersSectionList.js +0 -235
  511. package/legacy/PickersSectionList/PickersSectionList.types.js +0 -1
  512. package/legacy/PickersSectionList/index.js +0 -2
  513. package/legacy/PickersSectionList/pickersSectionListClasses.js +0 -6
  514. package/legacy/PickersShortcuts/PickersShortcuts.js +0 -110
  515. package/legacy/PickersShortcuts/index.js +0 -1
  516. package/legacy/PickersTextField/PickersFilledInput/PickersFilledInput.js +0 -234
  517. package/legacy/PickersTextField/PickersFilledInput/index.js +0 -2
  518. package/legacy/PickersTextField/PickersFilledInput/pickersFilledInputClasses.js +0 -8
  519. package/legacy/PickersTextField/PickersInput/PickersInput.js +0 -190
  520. package/legacy/PickersTextField/PickersInput/index.js +0 -2
  521. package/legacy/PickersTextField/PickersInput/pickersInputClasses.js +0 -8
  522. package/legacy/PickersTextField/PickersInputBase/PickersInputBase.js +0 -340
  523. package/legacy/PickersTextField/PickersInputBase/PickersInputBase.types.js +0 -1
  524. package/legacy/PickersTextField/PickersInputBase/index.js +0 -2
  525. package/legacy/PickersTextField/PickersInputBase/pickersInputBaseClasses.js +0 -6
  526. package/legacy/PickersTextField/PickersOutlinedInput/Outline.js +0 -121
  527. package/legacy/PickersTextField/PickersOutlinedInput/PickersOutlinedInput.js +0 -183
  528. package/legacy/PickersTextField/PickersOutlinedInput/index.js +0 -2
  529. package/legacy/PickersTextField/PickersOutlinedInput/pickersOutlinedInputClasses.js +0 -8
  530. package/legacy/PickersTextField/PickersTextField.js +0 -258
  531. package/legacy/PickersTextField/PickersTextField.types.js +0 -1
  532. package/legacy/PickersTextField/index.js +0 -6
  533. package/legacy/PickersTextField/pickersTextFieldClasses.js +0 -6
  534. package/legacy/StaticDatePicker/StaticDatePicker.js +0 -297
  535. package/legacy/StaticDatePicker/StaticDatePicker.types.js +0 -1
  536. package/legacy/StaticDatePicker/index.js +0 -1
  537. package/legacy/StaticDateTimePicker/StaticDateTimePicker.js +0 -356
  538. package/legacy/StaticDateTimePicker/StaticDateTimePicker.types.js +0 -1
  539. package/legacy/StaticDateTimePicker/index.js +0 -1
  540. package/legacy/StaticTimePicker/StaticTimePicker.js +0 -238
  541. package/legacy/StaticTimePicker/StaticTimePicker.types.js +0 -1
  542. package/legacy/StaticTimePicker/index.js +0 -1
  543. package/legacy/TimeClock/Clock.js +0 -358
  544. package/legacy/TimeClock/ClockNumber.js +0 -87
  545. package/legacy/TimeClock/ClockNumbers.js +0 -73
  546. package/legacy/TimeClock/ClockPointer.js +0 -106
  547. package/legacy/TimeClock/TimeClock.js +0 -481
  548. package/legacy/TimeClock/TimeClock.types.js +0 -1
  549. package/legacy/TimeClock/clockClasses.js +0 -5
  550. package/legacy/TimeClock/clockNumberClasses.js +0 -5
  551. package/legacy/TimeClock/clockPointerClasses.js +0 -5
  552. package/legacy/TimeClock/index.js +0 -5
  553. package/legacy/TimeClock/shared.js +0 -53
  554. package/legacy/TimeClock/timeClockClasses.js +0 -5
  555. package/legacy/TimeField/TimeField.js +0 -320
  556. package/legacy/TimeField/TimeField.types.js +0 -1
  557. package/legacy/TimeField/index.js +0 -2
  558. package/legacy/TimeField/useTimeField.js +0 -31
  559. package/legacy/TimePicker/TimePicker.js +0 -314
  560. package/legacy/TimePicker/TimePicker.types.js +0 -1
  561. package/legacy/TimePicker/TimePickerToolbar.js +0 -260
  562. package/legacy/TimePicker/index.js +0 -3
  563. package/legacy/TimePicker/shared.js +0 -45
  564. package/legacy/TimePicker/timePickerToolbarClasses.js +0 -5
  565. package/legacy/YearCalendar/PickersYear.js +0 -137
  566. package/legacy/YearCalendar/YearCalendar.js +0 -362
  567. package/legacy/YearCalendar/YearCalendar.types.js +0 -1
  568. package/legacy/YearCalendar/index.js +0 -3
  569. package/legacy/YearCalendar/pickersYearClasses.js +0 -5
  570. package/legacy/YearCalendar/yearCalendarClasses.js +0 -5
  571. package/legacy/dateTimeViewRenderers/dateTimeViewRenderers.js +0 -162
  572. package/legacy/dateTimeViewRenderers/index.js +0 -1
  573. package/legacy/dateViewRenderers/dateViewRenderers.js +0 -82
  574. package/legacy/dateViewRenderers/index.js +0 -1
  575. package/legacy/hooks/index.js +0 -1
  576. package/legacy/hooks/useClearableField.js +0 -76
  577. package/legacy/icons/index.js +0 -68
  578. package/legacy/index.js +0 -59
  579. package/legacy/internals/components/DateTimeViewWrapper/DateTimeViewWrapper.js +0 -5
  580. package/legacy/internals/components/DateTimeViewWrapper/index.js +0 -1
  581. package/legacy/internals/components/PickerViewRoot/PickerViewRoot.js +0 -10
  582. package/legacy/internals/components/PickerViewRoot/index.js +0 -1
  583. package/legacy/internals/components/PickersArrowSwitcher/PickersArrowSwitcher.js +0 -170
  584. package/legacy/internals/components/PickersArrowSwitcher/PickersArrowSwitcher.types.js +0 -1
  585. package/legacy/internals/components/PickersArrowSwitcher/index.js +0 -2
  586. package/legacy/internals/components/PickersArrowSwitcher/pickersArrowSwitcherClasses.js +0 -5
  587. package/legacy/internals/components/PickersModalDialog.js +0 -42
  588. package/legacy/internals/components/PickersPopper.js +0 -325
  589. package/legacy/internals/components/PickersToolbar.js +0 -92
  590. package/legacy/internals/components/PickersToolbarButton.js +0 -61
  591. package/legacy/internals/components/PickersToolbarText.js +0 -52
  592. package/legacy/internals/components/pickersPopperClasses.js +0 -5
  593. package/legacy/internals/components/pickersToolbarButtonClasses.js +0 -5
  594. package/legacy/internals/components/pickersToolbarClasses.js +0 -5
  595. package/legacy/internals/components/pickersToolbarTextClasses.js +0 -5
  596. package/legacy/internals/constants/dimensions.js +0 -7
  597. package/legacy/internals/demo/DemoContainer.js +0 -163
  598. package/legacy/internals/demo/index.js +0 -1
  599. package/legacy/internals/hooks/date-helpers-hooks.js +0 -37
  600. package/legacy/internals/hooks/useClockReferenceDate.js +0 -28
  601. package/legacy/internals/hooks/useDefaultReduceAnimations.js +0 -14
  602. package/legacy/internals/hooks/useDesktopPicker/index.js +0 -1
  603. package/legacy/internals/hooks/useDesktopPicker/useDesktopPicker.js +0 -174
  604. package/legacy/internals/hooks/useDesktopPicker/useDesktopPicker.types.js +0 -1
  605. package/legacy/internals/hooks/useField/index.js +0 -2
  606. package/legacy/internals/hooks/useField/useField.js +0 -470
  607. package/legacy/internals/hooks/useField/useField.types.js +0 -1
  608. package/legacy/internals/hooks/useField/useField.utils.js +0 -828
  609. package/legacy/internals/hooks/useField/useFieldCharacterEditing.js +0 -277
  610. package/legacy/internals/hooks/useField/useFieldState.js +0 -321
  611. package/legacy/internals/hooks/useIsLandscape.js +0 -39
  612. package/legacy/internals/hooks/useMobilePicker/index.js +0 -1
  613. package/legacy/internals/hooks/useMobilePicker/useMobilePicker.js +0 -126
  614. package/legacy/internals/hooks/useMobilePicker/useMobilePicker.types.js +0 -1
  615. package/legacy/internals/hooks/useOpenState.js +0 -38
  616. package/legacy/internals/hooks/usePicker/index.js +0 -1
  617. package/legacy/internals/hooks/usePicker/usePicker.js +0 -54
  618. package/legacy/internals/hooks/usePicker/usePicker.types.js +0 -1
  619. package/legacy/internals/hooks/usePicker/usePickerLayoutProps.js +0 -28
  620. package/legacy/internals/hooks/usePicker/usePickerValue.js +0 -365
  621. package/legacy/internals/hooks/usePicker/usePickerValue.types.js +0 -1
  622. package/legacy/internals/hooks/usePicker/usePickerViews.js +0 -172
  623. package/legacy/internals/hooks/useStaticPicker/index.js +0 -1
  624. package/legacy/internals/hooks/useStaticPicker/useStaticPicker.js +0 -66
  625. package/legacy/internals/hooks/useStaticPicker/useStaticPicker.types.js +0 -1
  626. package/legacy/internals/hooks/useUtils.js +0 -38
  627. package/legacy/internals/hooks/useValidation.js +0 -20
  628. package/legacy/internals/hooks/useValueWithTimezone.js +0 -81
  629. package/legacy/internals/hooks/useViews.js +0 -124
  630. package/legacy/internals/index.js +0 -35
  631. package/legacy/internals/models/common.js +0 -1
  632. package/legacy/internals/models/fields.js +0 -1
  633. package/legacy/internals/models/helpers.js +0 -1
  634. package/legacy/internals/models/index.js +0 -2
  635. package/legacy/internals/models/props/basePickerProps.js +0 -1
  636. package/legacy/internals/models/props/clock.js +0 -1
  637. package/legacy/internals/models/props/tabs.js +0 -1
  638. package/legacy/internals/models/props/toolbar.js +0 -1
  639. package/legacy/internals/models/validation.js +0 -1
  640. package/legacy/internals/utils/convertFieldResponseIntoMuiTextFieldProps.js +0 -24
  641. package/legacy/internals/utils/date-time-utils.js +0 -71
  642. package/legacy/internals/utils/date-utils.js +0 -129
  643. package/legacy/internals/utils/fields.js +0 -28
  644. package/legacy/internals/utils/getDefaultReferenceDate.js +0 -65
  645. package/legacy/internals/utils/time-utils.js +0 -63
  646. package/legacy/internals/utils/utils.js +0 -40
  647. package/legacy/internals/utils/validation/extractValidationProps.js +0 -16
  648. package/legacy/internals/utils/validation/validateDate.js +0 -38
  649. package/legacy/internals/utils/validation/validateDateTime.js +0 -20
  650. package/legacy/internals/utils/validation/validateTime.js +0 -42
  651. package/legacy/internals/utils/valueManagers.js +0 -67
  652. package/legacy/internals/utils/views.js +0 -29
  653. package/legacy/internals/utils/warning.js +0 -39
  654. package/legacy/locales/beBY.js +0 -99
  655. package/legacy/locales/caES.js +0 -100
  656. package/legacy/locales/csCZ.js +0 -100
  657. package/legacy/locales/daDK.js +0 -102
  658. package/legacy/locales/deDE.js +0 -101
  659. package/legacy/locales/elGR.js +0 -100
  660. package/legacy/locales/enUS.js +0 -96
  661. package/legacy/locales/esES.js +0 -99
  662. package/legacy/locales/eu.js +0 -99
  663. package/legacy/locales/faIR.js +0 -100
  664. package/legacy/locales/fiFI.js +0 -100
  665. package/legacy/locales/frFR.js +0 -98
  666. package/legacy/locales/heIL.js +0 -100
  667. package/legacy/locales/huHU.js +0 -99
  668. package/legacy/locales/index.js +0 -35
  669. package/legacy/locales/isIS.js +0 -100
  670. package/legacy/locales/itIT.js +0 -98
  671. package/legacy/locales/jaJP.js +0 -102
  672. package/legacy/locales/koKR.js +0 -98
  673. package/legacy/locales/kzKZ.js +0 -99
  674. package/legacy/locales/mk.js +0 -96
  675. package/legacy/locales/nbNO.js +0 -100
  676. package/legacy/locales/nlNL.js +0 -100
  677. package/legacy/locales/plPL.js +0 -85
  678. package/legacy/locales/ptBR.js +0 -100
  679. package/legacy/locales/roRO.js +0 -99
  680. package/legacy/locales/ruRU.js +0 -98
  681. package/legacy/locales/skSK.js +0 -100
  682. package/legacy/locales/svSE.js +0 -85
  683. package/legacy/locales/trTR.js +0 -100
  684. package/legacy/locales/ukUA.js +0 -100
  685. package/legacy/locales/urPK.js +0 -85
  686. package/legacy/locales/utils/getPickersLocalization.js +0 -12
  687. package/legacy/locales/utils/pickersLocaleTextApi.js +0 -1
  688. package/legacy/locales/viVN.js +0 -100
  689. package/legacy/locales/zhCN.js +0 -100
  690. package/legacy/locales/zhHK.js +0 -100
  691. package/legacy/models/adapters.js +0 -1
  692. package/legacy/models/common.js +0 -1
  693. package/legacy/models/fields.js +0 -1
  694. package/legacy/models/index.js +0 -7
  695. package/legacy/models/pickers.js +0 -1
  696. package/legacy/models/timezone.js +0 -1
  697. package/legacy/models/validation.js +0 -1
  698. package/legacy/models/views.js +0 -1
  699. package/legacy/themeAugmentation/index.js +0 -3
  700. package/legacy/timeViewRenderers/index.js +0 -1
  701. package/legacy/timeViewRenderers/timeViewRenderers.js +0 -186
@@ -0,0 +1,329 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.useFieldV6TextField = exports.addPositionPropertiesToSections = void 0;
8
+ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
9
+ var React = _interopRequireWildcard(require("react"));
10
+ var _styles = require("@mui/material/styles");
11
+ var _useEventCallback = _interopRequireDefault(require("@mui/utils/useEventCallback"));
12
+ var _useForkRef = _interopRequireDefault(require("@mui/utils/useForkRef"));
13
+ var _utils = require("../../utils/utils");
14
+ var _useField = require("./useField.utils");
15
+ function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
16
+ function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
17
+ const cleanString = dirtyString => dirtyString.replace(/[\u2066\u2067\u2068\u2069]/g, '');
18
+ const addPositionPropertiesToSections = (sections, localizedDigits, isRTL) => {
19
+ let position = 0;
20
+ let positionInInput = isRTL ? 1 : 0;
21
+ const newSections = [];
22
+ for (let i = 0; i < sections.length; i += 1) {
23
+ const section = sections[i];
24
+ const renderedValue = (0, _useField.getSectionVisibleValue)(section, isRTL ? 'input-rtl' : 'input-ltr', localizedDigits);
25
+ const sectionStr = `${section.startSeparator}${renderedValue}${section.endSeparator}`;
26
+ const sectionLength = cleanString(sectionStr).length;
27
+ const sectionLengthInInput = sectionStr.length;
28
+
29
+ // The ...InInput values consider the unicode characters but do include them in their indexes
30
+ const cleanedValue = cleanString(renderedValue);
31
+ const startInInput = positionInInput + (cleanedValue === '' ? 0 : renderedValue.indexOf(cleanedValue[0])) + section.startSeparator.length;
32
+ const endInInput = startInInput + cleanedValue.length;
33
+ newSections.push((0, _extends2.default)({}, section, {
34
+ start: position,
35
+ end: position + sectionLength,
36
+ startInInput,
37
+ endInInput
38
+ }));
39
+ position += sectionLength;
40
+ // Move position to the end of string associated to the current section
41
+ positionInInput += sectionLengthInInput;
42
+ }
43
+ return newSections;
44
+ };
45
+ exports.addPositionPropertiesToSections = addPositionPropertiesToSections;
46
+ const useFieldV6TextField = params => {
47
+ const theme = (0, _styles.useTheme)();
48
+ const isRTL = theme.direction === 'rtl';
49
+ const focusTimeoutRef = React.useRef(undefined);
50
+ const {
51
+ forwardedProps: {
52
+ onFocus,
53
+ onClick,
54
+ onPaste,
55
+ onBlur,
56
+ inputRef: inputRefProp
57
+ },
58
+ internalProps: {
59
+ readOnly = false
60
+ },
61
+ parsedSelectedSections,
62
+ activeSectionIndex,
63
+ state,
64
+ fieldValueManager,
65
+ valueManager,
66
+ applyCharacterEditing,
67
+ resetCharacterQuery,
68
+ updateSectionValue,
69
+ updateValueFromValueStr,
70
+ clearActiveSection,
71
+ clearValue,
72
+ setTempAndroidValueStr,
73
+ setSelectedSections,
74
+ getSectionsFromValue,
75
+ areAllSectionsEmpty,
76
+ localizedDigits
77
+ } = params;
78
+ const inputRef = React.useRef(null);
79
+ const handleRef = (0, _useForkRef.default)(inputRefProp, inputRef);
80
+ const sections = React.useMemo(() => addPositionPropertiesToSections(state.sections, localizedDigits, isRTL), [state.sections, localizedDigits, isRTL]);
81
+ const interactions = React.useMemo(() => ({
82
+ syncSelectionToDOM: () => {
83
+ if (!inputRef.current) {
84
+ return;
85
+ }
86
+ if (parsedSelectedSections == null) {
87
+ if (inputRef.current.scrollLeft) {
88
+ // Ensure that input content is not marked as selected.
89
+ // setting selection range to 0 causes issues in Safari.
90
+ // https://bugs.webkit.org/show_bug.cgi?id=224425
91
+ inputRef.current.scrollLeft = 0;
92
+ }
93
+ return;
94
+ }
95
+
96
+ // On multi input range pickers we want to update selection range only for the active input
97
+ // This helps to avoid the focus jumping on Safari https://github.com/mui/mui-x/issues/9003
98
+ // because WebKit implements the `setSelectionRange` based on the spec: https://bugs.webkit.org/show_bug.cgi?id=224425
99
+ if (inputRef.current !== (0, _utils.getActiveElement)(document)) {
100
+ return;
101
+ }
102
+
103
+ // Fix scroll jumping on iOS browser: https://github.com/mui/mui-x/issues/8321
104
+ const currentScrollTop = inputRef.current.scrollTop;
105
+ if (parsedSelectedSections === 'all') {
106
+ inputRef.current.select();
107
+ } else {
108
+ const selectedSection = sections[parsedSelectedSections];
109
+ const selectionStart = selectedSection.type === 'empty' ? selectedSection.startInInput - selectedSection.startSeparator.length : selectedSection.startInInput;
110
+ const selectionEnd = selectedSection.type === 'empty' ? selectedSection.endInInput + selectedSection.endSeparator.length : selectedSection.endInInput;
111
+ if (selectionStart !== inputRef.current.selectionStart || selectionEnd !== inputRef.current.selectionEnd) {
112
+ if (inputRef.current === (0, _utils.getActiveElement)(document)) {
113
+ inputRef.current.setSelectionRange(selectionStart, selectionEnd);
114
+ }
115
+ }
116
+ }
117
+
118
+ // Even reading this variable seems to do the trick, but also setting it just to make use of it
119
+ inputRef.current.scrollTop = currentScrollTop;
120
+ },
121
+ getActiveSectionIndexFromDOM: () => {
122
+ const browserStartIndex = inputRef.current.selectionStart ?? 0;
123
+ const browserEndIndex = inputRef.current.selectionEnd ?? 0;
124
+ if (browserStartIndex === 0 && browserEndIndex === 0) {
125
+ return null;
126
+ }
127
+ const nextSectionIndex = browserStartIndex <= sections[0].startInInput ? 1 // Special case if browser index is in invisible characters at the beginning.
128
+ : sections.findIndex(section => section.startInInput - section.startSeparator.length > browserStartIndex);
129
+ return nextSectionIndex === -1 ? sections.length - 1 : nextSectionIndex - 1;
130
+ },
131
+ focusField: (newSelectedSection = 0) => {
132
+ inputRef.current?.focus();
133
+ setSelectedSections(newSelectedSection);
134
+ },
135
+ setSelectedSections: newSelectedSections => setSelectedSections(newSelectedSections),
136
+ isFieldFocused: () => inputRef.current === (0, _utils.getActiveElement)(document)
137
+ }), [inputRef, parsedSelectedSections, sections, setSelectedSections]);
138
+ const syncSelectionFromDOM = () => {
139
+ if (readOnly) {
140
+ setSelectedSections(null);
141
+ return;
142
+ }
143
+ const browserStartIndex = inputRef.current.selectionStart ?? 0;
144
+ let nextSectionIndex;
145
+ if (browserStartIndex <= sections[0].startInInput) {
146
+ // Special case if browser index is in invisible characters at the beginning
147
+ nextSectionIndex = 1;
148
+ } else if (browserStartIndex >= sections[sections.length - 1].endInInput) {
149
+ // If the click is after the last character of the input, then we want to select the 1st section.
150
+ nextSectionIndex = 1;
151
+ } else {
152
+ nextSectionIndex = sections.findIndex(section => section.startInInput - section.startSeparator.length > browserStartIndex);
153
+ }
154
+ const sectionIndex = nextSectionIndex === -1 ? sections.length - 1 : nextSectionIndex - 1;
155
+ setSelectedSections(sectionIndex);
156
+ };
157
+ const handleInputFocus = (0, _useEventCallback.default)((...args) => {
158
+ onFocus?.(...args);
159
+ // The ref is guaranteed to be resolved at this point.
160
+ const input = inputRef.current;
161
+ window.clearTimeout(focusTimeoutRef.current);
162
+ focusTimeoutRef.current = setTimeout(() => {
163
+ // The ref changed, the component got remounted, the focus event is no longer relevant.
164
+ if (!input || input !== inputRef.current) {
165
+ return;
166
+ }
167
+ if (activeSectionIndex != null || readOnly) {
168
+ return;
169
+ }
170
+ if (
171
+ // avoid selecting all sections when focusing empty field without value
172
+ input.value.length && Number(input.selectionEnd) - Number(input.selectionStart) === input.value.length) {
173
+ setSelectedSections('all');
174
+ } else {
175
+ syncSelectionFromDOM();
176
+ }
177
+ });
178
+ });
179
+ const handleInputClick = (0, _useEventCallback.default)((event, ...args) => {
180
+ // The click event on the clear button would propagate to the input, trigger this handler and result in a wrong section selection.
181
+ // We avoid this by checking if the call of `handleInputClick` is actually intended, or a side effect.
182
+ if (event.isDefaultPrevented()) {
183
+ return;
184
+ }
185
+ onClick?.(event, ...args);
186
+ syncSelectionFromDOM();
187
+ });
188
+ const handleInputPaste = (0, _useEventCallback.default)(event => {
189
+ onPaste?.(event);
190
+
191
+ // prevent default to avoid the input `onChange` handler being called
192
+ event.preventDefault();
193
+ if (readOnly) {
194
+ return;
195
+ }
196
+ const pastedValue = event.clipboardData.getData('text');
197
+ if (typeof parsedSelectedSections === 'number') {
198
+ const activeSection = state.sections[parsedSelectedSections];
199
+ const lettersOnly = /^[a-zA-Z]+$/.test(pastedValue);
200
+ const digitsOnly = /^[0-9]+$/.test(pastedValue);
201
+ const digitsAndLetterOnly = /^(([a-zA-Z]+)|)([0-9]+)(([a-zA-Z]+)|)$/.test(pastedValue);
202
+ const isValidPastedValue = activeSection.contentType === 'letter' && lettersOnly || activeSection.contentType === 'digit' && digitsOnly || activeSection.contentType === 'digit-with-letter' && digitsAndLetterOnly;
203
+ if (isValidPastedValue) {
204
+ resetCharacterQuery();
205
+ updateSectionValue({
206
+ activeSection,
207
+ newSectionValue: pastedValue,
208
+ shouldGoToNextSection: true
209
+ });
210
+ return;
211
+ }
212
+ if (lettersOnly || digitsOnly) {
213
+ // The pasted value corresponds to a single section, but not the expected type,
214
+ // skip the modification
215
+ return;
216
+ }
217
+ }
218
+ resetCharacterQuery();
219
+ updateValueFromValueStr(pastedValue);
220
+ });
221
+ const handleContainerBlur = (0, _useEventCallback.default)((...args) => {
222
+ onBlur?.(...args);
223
+ setSelectedSections(null);
224
+ });
225
+ const handleInputChange = (0, _useEventCallback.default)(event => {
226
+ if (readOnly) {
227
+ return;
228
+ }
229
+ const targetValue = event.target.value;
230
+ if (targetValue === '') {
231
+ resetCharacterQuery();
232
+ clearValue();
233
+ return;
234
+ }
235
+ const eventData = event.nativeEvent.data;
236
+ // Calling `.fill(04/11/2022)` in playwright will trigger a change event with the requested content to insert in `event.nativeEvent.data`
237
+ // usual changes have only the currently typed character in the `event.nativeEvent.data`
238
+ const shouldUseEventData = eventData && eventData.length > 1;
239
+ const valueStr = shouldUseEventData ? eventData : targetValue;
240
+ const cleanValueStr = cleanString(valueStr);
241
+
242
+ // If no section is selected or eventData should be used, we just try to parse the new value
243
+ // This line is mostly triggered by imperative code / application tests.
244
+ if (activeSectionIndex == null || shouldUseEventData) {
245
+ updateValueFromValueStr(shouldUseEventData ? eventData : cleanValueStr);
246
+ return;
247
+ }
248
+ let keyPressed;
249
+ if (parsedSelectedSections === 'all' && cleanValueStr.length === 1) {
250
+ keyPressed = cleanValueStr;
251
+ } else {
252
+ const prevValueStr = cleanString(fieldValueManager.getV6InputValueFromSections(sections, localizedDigits, isRTL));
253
+ let startOfDiffIndex = -1;
254
+ let endOfDiffIndex = -1;
255
+ for (let i = 0; i < prevValueStr.length; i += 1) {
256
+ if (startOfDiffIndex === -1 && prevValueStr[i] !== cleanValueStr[i]) {
257
+ startOfDiffIndex = i;
258
+ }
259
+ if (endOfDiffIndex === -1 && prevValueStr[prevValueStr.length - i - 1] !== cleanValueStr[cleanValueStr.length - i - 1]) {
260
+ endOfDiffIndex = i;
261
+ }
262
+ }
263
+ const activeSection = sections[activeSectionIndex];
264
+ const hasDiffOutsideOfActiveSection = startOfDiffIndex < activeSection.start || prevValueStr.length - endOfDiffIndex - 1 > activeSection.end;
265
+ if (hasDiffOutsideOfActiveSection) {
266
+ // TODO: Support if the new date is valid
267
+ return;
268
+ }
269
+
270
+ // The active section being selected, the browser has replaced its value with the key pressed by the user.
271
+ const activeSectionEndRelativeToNewValue = cleanValueStr.length - prevValueStr.length + activeSection.end - cleanString(activeSection.endSeparator || '').length;
272
+ keyPressed = cleanValueStr.slice(activeSection.start + cleanString(activeSection.startSeparator || '').length, activeSectionEndRelativeToNewValue);
273
+ }
274
+ if (keyPressed.length === 0) {
275
+ if ((0, _useField.isAndroid)()) {
276
+ setTempAndroidValueStr(valueStr);
277
+ } else {
278
+ resetCharacterQuery();
279
+ clearActiveSection();
280
+ }
281
+ return;
282
+ }
283
+ applyCharacterEditing({
284
+ keyPressed,
285
+ sectionIndex: activeSectionIndex
286
+ });
287
+ });
288
+ const placeholder = React.useMemo(() => fieldValueManager.getV6InputValueFromSections(getSectionsFromValue(valueManager.emptyValue), localizedDigits, isRTL), [fieldValueManager, getSectionsFromValue, valueManager.emptyValue, localizedDigits, isRTL]);
289
+ const valueStr = React.useMemo(() => state.tempValueStrAndroid ?? fieldValueManager.getV6InputValueFromSections(state.sections, localizedDigits, isRTL), [state.sections, fieldValueManager, state.tempValueStrAndroid, localizedDigits, isRTL]);
290
+ React.useEffect(() => {
291
+ // Select all the sections when focused on mount (`autoFocus = true` on the input)
292
+ if (inputRef.current && inputRef.current === (0, _utils.getActiveElement)(document)) {
293
+ setSelectedSections('all');
294
+ }
295
+ return () => window.clearTimeout(focusTimeoutRef.current);
296
+ }, []); // eslint-disable-line react-hooks/exhaustive-deps
297
+
298
+ const inputMode = React.useMemo(() => {
299
+ if (activeSectionIndex == null) {
300
+ return 'text';
301
+ }
302
+ if (state.sections[activeSectionIndex].contentType === 'letter') {
303
+ return 'text';
304
+ }
305
+ return 'numeric';
306
+ }, [activeSectionIndex, state.sections]);
307
+ const inputHasFocus = inputRef.current && inputRef.current === (0, _utils.getActiveElement)(document);
308
+ const shouldShowPlaceholder = !inputHasFocus && areAllSectionsEmpty;
309
+ return {
310
+ interactions,
311
+ returnedValue: {
312
+ // Forwarded
313
+ readOnly,
314
+ onBlur: handleContainerBlur,
315
+ onClick: handleInputClick,
316
+ onFocus: handleInputFocus,
317
+ onPaste: handleInputPaste,
318
+ inputRef: handleRef,
319
+ // Additional
320
+ enableAccessibleFieldDOMStructure: false,
321
+ placeholder,
322
+ inputMode,
323
+ autoComplete: 'off',
324
+ value: shouldShowPlaceholder ? '' : valueStr,
325
+ onChange: handleInputChange
326
+ }
327
+ };
328
+ };
329
+ exports.useFieldV6TextField = useFieldV6TextField;