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

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 (710) 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 +429 -30
  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 +14 -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 +4 -4
  43. package/DateTimePicker/DateTimePickerToolbar.js +6 -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/MultiSectionDigitalClock/MultiSectionDigitalClock.js +4 -4
  64. package/MultiSectionDigitalClock/MultiSectionDigitalClockSection.js +6 -4
  65. package/PickersLayout/PickersLayout.js +6 -0
  66. package/PickersLayout/PickersLayout.types.d.ts +6 -0
  67. package/PickersSectionList/PickersSectionList.d.ts +4 -4
  68. package/PickersSectionList/PickersSectionList.js +1 -2
  69. package/PickersTextField/PickersFilledInput/PickersFilledInput.js +3 -3
  70. package/PickersTextField/PickersInput/PickersInput.js +3 -3
  71. package/PickersTextField/PickersInputBase/PickersInputBase.d.ts +1 -1
  72. package/PickersTextField/PickersInputBase/PickersInputBase.js +11 -5
  73. package/PickersTextField/PickersInputBase/PickersInputBase.types.d.ts +1 -0
  74. package/PickersTextField/PickersOutlinedInput/PickersOutlinedInput.js +3 -3
  75. package/PickersTextField/PickersTextField.d.ts +1 -1
  76. package/PickersTextField/PickersTextField.js +9 -5
  77. package/StaticDatePicker/StaticDatePicker.js +0 -1
  78. package/StaticDateTimePicker/StaticDateTimePicker.js +0 -1
  79. package/TimeField/TimeField.d.ts +1 -1
  80. package/TimeField/TimeField.js +11 -9
  81. package/TimeField/TimeField.types.d.ts +12 -15
  82. package/TimeField/index.d.ts +1 -1
  83. package/TimeField/useTimeField.d.ts +2 -2
  84. package/TimeField/useTimeField.js +1 -13
  85. package/TimePicker/TimePicker.d.ts +1 -1
  86. package/TimePicker/TimePicker.js +9 -8
  87. package/TimePicker/TimePicker.types.d.ts +3 -3
  88. package/TimePicker/TimePickerToolbar.d.ts +5 -4
  89. package/TimePicker/TimePickerToolbar.js +14 -3
  90. package/hooks/index.d.ts +1 -1
  91. package/hooks/useClearableField.d.ts +10 -2
  92. package/index.js +1 -1
  93. package/internals/components/PickersArrowSwitcher/PickersArrowSwitcher.types.d.ts +3 -0
  94. package/internals/components/PickersPopper.d.ts +3 -0
  95. package/internals/components/PickersPopper.js +1 -2
  96. package/internals/components/PickersToolbar.js +13 -9
  97. package/internals/demo/DemoContainer.js +6 -5
  98. package/internals/hooks/defaultizedFieldProps.d.ts +19 -0
  99. package/internals/hooks/defaultizedFieldProps.js +43 -0
  100. package/internals/hooks/useDesktopPicker/useDesktopPicker.d.ts +1 -1
  101. package/internals/hooks/useDesktopPicker/useDesktopPicker.js +13 -5
  102. package/internals/hooks/useDesktopPicker/useDesktopPicker.types.d.ts +14 -13
  103. package/internals/hooks/useField/buildSectionsFromFormat.d.ts +16 -0
  104. package/internals/hooks/useField/buildSectionsFromFormat.js +251 -0
  105. package/internals/hooks/useField/index.d.ts +2 -2
  106. package/internals/hooks/useField/index.js +1 -1
  107. package/internals/hooks/useField/useField.d.ts +4 -4
  108. package/internals/hooks/useField/useField.js +82 -309
  109. package/internals/hooks/useField/useField.types.d.ts +92 -56
  110. package/internals/hooks/useField/useField.utils.d.ts +10 -10
  111. package/internals/hooks/useField/useField.utils.js +78 -228
  112. package/internals/hooks/useField/useFieldCharacterEditing.d.ts +7 -6
  113. package/internals/hooks/useField/useFieldCharacterEditing.js +7 -7
  114. package/internals/hooks/useField/useFieldState.d.ts +13 -11
  115. package/internals/hooks/useField/useFieldState.js +45 -61
  116. package/internals/hooks/useField/useFieldV6TextField.d.ts +25 -0
  117. package/internals/hooks/useField/useFieldV6TextField.js +326 -0
  118. package/internals/hooks/useField/useFieldV7TextField.d.ts +2 -0
  119. package/internals/hooks/useField/useFieldV7TextField.js +402 -0
  120. package/internals/hooks/useMobilePicker/useMobilePicker.d.ts +1 -1
  121. package/internals/hooks/useMobilePicker/useMobilePicker.js +13 -5
  122. package/internals/hooks/useMobilePicker/useMobilePicker.types.d.ts +12 -12
  123. package/internals/hooks/usePicker/usePicker.d.ts +1 -1
  124. package/internals/hooks/usePicker/usePicker.js +3 -3
  125. package/internals/hooks/usePicker/usePicker.types.d.ts +2 -2
  126. package/internals/hooks/usePicker/usePickerValue.d.ts +1 -1
  127. package/internals/hooks/usePicker/usePickerValue.js +2 -18
  128. package/internals/hooks/usePicker/usePickerValue.types.d.ts +5 -6
  129. package/internals/hooks/usePicker/usePickerViews.d.ts +4 -4
  130. package/internals/hooks/usePicker/usePickerViews.js +5 -6
  131. package/internals/hooks/useStaticPicker/useStaticPicker.js +1 -0
  132. package/internals/hooks/useStaticPicker/useStaticPicker.types.d.ts +1 -0
  133. package/internals/index.d.ts +5 -4
  134. package/internals/index.js +2 -1
  135. package/internals/models/fields.d.ts +2 -4
  136. package/internals/models/helpers.d.ts +1 -0
  137. package/internals/models/props/basePickerProps.d.ts +2 -7
  138. package/internals/models/props/tabs.d.ts +6 -0
  139. package/internals/models/props/toolbar.d.ts +6 -0
  140. package/internals/utils/convertFieldResponseIntoMuiTextFieldProps.d.ts +1 -1
  141. package/internals/utils/convertFieldResponseIntoMuiTextFieldProps.js +21 -3
  142. package/internals/utils/fields.js +1 -1
  143. package/internals/utils/valueManagers.js +5 -4
  144. package/locales/beBY.d.ts +9 -0
  145. package/locales/beBY.js +13 -0
  146. package/locales/caES.d.ts +9 -0
  147. package/locales/caES.js +13 -0
  148. package/locales/csCZ.d.ts +9 -0
  149. package/locales/csCZ.js +13 -0
  150. package/locales/daDK.d.ts +9 -0
  151. package/locales/daDK.js +13 -0
  152. package/locales/deDE.d.ts +9 -0
  153. package/locales/deDE.js +13 -0
  154. package/locales/elGR.d.ts +9 -0
  155. package/locales/elGR.js +13 -0
  156. package/locales/enUS.d.ts +9 -0
  157. package/locales/enUS.js +12 -1
  158. package/locales/esES.d.ts +9 -0
  159. package/locales/esES.js +13 -0
  160. package/locales/eu.d.ts +9 -0
  161. package/locales/eu.js +13 -0
  162. package/locales/faIR.d.ts +9 -0
  163. package/locales/faIR.js +13 -0
  164. package/locales/fiFI.d.ts +9 -0
  165. package/locales/fiFI.js +13 -0
  166. package/locales/frFR.d.ts +9 -0
  167. package/locales/frFR.js +13 -0
  168. package/locales/heIL.d.ts +9 -0
  169. package/locales/heIL.js +13 -0
  170. package/locales/huHU.d.ts +9 -0
  171. package/locales/huHU.js +13 -0
  172. package/locales/isIS.d.ts +9 -0
  173. package/locales/isIS.js +13 -0
  174. package/locales/itIT.d.ts +9 -0
  175. package/locales/itIT.js +13 -0
  176. package/locales/jaJP.d.ts +9 -0
  177. package/locales/jaJP.js +13 -0
  178. package/locales/koKR.d.ts +9 -0
  179. package/locales/koKR.js +14 -2
  180. package/locales/kzKZ.d.ts +9 -0
  181. package/locales/kzKZ.js +13 -0
  182. package/locales/mk.d.ts +9 -0
  183. package/locales/mk.js +13 -0
  184. package/locales/nbNO.d.ts +9 -0
  185. package/locales/nbNO.js +13 -0
  186. package/locales/nlNL.d.ts +9 -0
  187. package/locales/nlNL.js +13 -0
  188. package/locales/plPL.d.ts +9 -0
  189. package/locales/plPL.js +13 -0
  190. package/locales/ptBR.d.ts +9 -0
  191. package/locales/ptBR.js +13 -0
  192. package/locales/roRO.d.ts +9 -0
  193. package/locales/roRO.js +13 -0
  194. package/locales/ruRU.d.ts +9 -0
  195. package/locales/ruRU.js +13 -0
  196. package/locales/skSK.d.ts +9 -0
  197. package/locales/skSK.js +13 -0
  198. package/locales/svSE.d.ts +9 -0
  199. package/locales/svSE.js +13 -0
  200. package/locales/trTR.d.ts +9 -0
  201. package/locales/trTR.js +13 -0
  202. package/locales/ukUA.d.ts +9 -0
  203. package/locales/ukUA.js +13 -0
  204. package/locales/urPK.d.ts +9 -0
  205. package/locales/urPK.js +13 -0
  206. package/locales/utils/getPickersLocalization.d.ts +9 -0
  207. package/locales/utils/pickersLocaleTextApi.d.ts +9 -0
  208. package/locales/viVN.d.ts +9 -0
  209. package/locales/viVN.js +13 -0
  210. package/locales/zhCN.d.ts +9 -0
  211. package/locales/zhCN.js +18 -9
  212. package/locales/zhHK.d.ts +9 -0
  213. package/locales/zhHK.js +13 -0
  214. package/models/adapters.d.ts +13 -0
  215. package/models/fields.d.ts +47 -32
  216. package/modern/AdapterDateFnsBase/AdapterDateFnsBase.js +4 -0
  217. package/modern/AdapterDateFnsJalali/AdapterDateFnsJalali.js +4 -0
  218. package/modern/AdapterDayjs/AdapterDayjs.js +6 -0
  219. package/modern/AdapterLuxon/AdapterLuxon.js +6 -0
  220. package/modern/AdapterMoment/AdapterMoment.js +4 -0
  221. package/modern/AdapterMomentHijri/AdapterMomentHijri.js +3 -0
  222. package/modern/AdapterMomentJalaali/AdapterMomentJalaali.js +3 -0
  223. package/modern/DateCalendar/DateCalendar.js +3 -1
  224. package/modern/DateCalendar/DayCalendar.js +1 -1
  225. package/modern/DateField/DateField.js +11 -9
  226. package/modern/DateField/useDateField.js +1 -14
  227. package/modern/DatePicker/DatePicker.js +9 -9
  228. package/modern/DatePicker/DatePickerToolbar.js +14 -3
  229. package/modern/DateTimeField/DateTimeField.js +11 -9
  230. package/modern/DateTimeField/useDateTimeField.js +1 -19
  231. package/modern/DateTimePicker/DateTimePicker.js +9 -9
  232. package/modern/DateTimePicker/DateTimePickerTabs.js +7 -1
  233. package/modern/DateTimePicker/DateTimePickerToolbar.js +6 -0
  234. package/modern/DesktopDatePicker/DesktopDatePicker.js +9 -9
  235. package/modern/DesktopDateTimePicker/DesktopDateTimePicker.js +9 -9
  236. package/modern/DesktopTimePicker/DesktopTimePicker.js +9 -8
  237. package/modern/LocalizationProvider/LocalizationProvider.js +1 -0
  238. package/modern/MobileDatePicker/MobileDatePicker.js +9 -9
  239. package/modern/MobileDateTimePicker/MobileDateTimePicker.js +9 -9
  240. package/modern/MobileTimePicker/MobileTimePicker.js +9 -8
  241. package/modern/MultiSectionDigitalClock/MultiSectionDigitalClock.js +4 -4
  242. package/modern/MultiSectionDigitalClock/MultiSectionDigitalClockSection.js +5 -3
  243. package/modern/PickersLayout/PickersLayout.js +6 -0
  244. package/modern/PickersSectionList/PickersSectionList.js +1 -2
  245. package/modern/PickersTextField/PickersFilledInput/PickersFilledInput.js +3 -3
  246. package/modern/PickersTextField/PickersInput/PickersInput.js +3 -3
  247. package/modern/PickersTextField/PickersInputBase/PickersInputBase.js +11 -5
  248. package/modern/PickersTextField/PickersOutlinedInput/PickersOutlinedInput.js +3 -3
  249. package/modern/PickersTextField/PickersTextField.js +9 -5
  250. package/modern/StaticDatePicker/StaticDatePicker.js +0 -1
  251. package/modern/StaticDateTimePicker/StaticDateTimePicker.js +0 -1
  252. package/modern/TimeField/TimeField.js +11 -9
  253. package/modern/TimeField/useTimeField.js +1 -12
  254. package/modern/TimePicker/TimePicker.js +9 -8
  255. package/modern/TimePicker/TimePickerToolbar.js +14 -3
  256. package/modern/index.js +1 -1
  257. package/modern/internals/components/PickersPopper.js +1 -2
  258. package/modern/internals/components/PickersToolbar.js +13 -9
  259. package/modern/internals/demo/DemoContainer.js +6 -5
  260. package/modern/internals/hooks/defaultizedFieldProps.js +40 -0
  261. package/modern/internals/hooks/useDesktopPicker/useDesktopPicker.js +13 -5
  262. package/modern/internals/hooks/useField/buildSectionsFromFormat.js +251 -0
  263. package/modern/internals/hooks/useField/index.js +1 -1
  264. package/modern/internals/hooks/useField/useField.js +82 -303
  265. package/modern/internals/hooks/useField/useField.utils.js +78 -228
  266. package/modern/internals/hooks/useField/useFieldCharacterEditing.js +7 -7
  267. package/modern/internals/hooks/useField/useFieldState.js +45 -61
  268. package/modern/internals/hooks/useField/useFieldV6TextField.js +320 -0
  269. package/modern/internals/hooks/useField/useFieldV7TextField.js +400 -0
  270. package/modern/internals/hooks/useMobilePicker/useMobilePicker.js +13 -5
  271. package/modern/internals/hooks/usePicker/usePicker.js +3 -3
  272. package/modern/internals/hooks/usePicker/usePickerValue.js +2 -18
  273. package/modern/internals/hooks/usePicker/usePickerViews.js +4 -6
  274. package/modern/internals/hooks/useStaticPicker/useStaticPicker.js +1 -0
  275. package/modern/internals/index.js +2 -1
  276. package/modern/internals/utils/convertFieldResponseIntoMuiTextFieldProps.js +21 -3
  277. package/modern/internals/utils/fields.js +1 -1
  278. package/modern/internals/utils/valueManagers.js +5 -4
  279. package/modern/locales/beBY.js +13 -0
  280. package/modern/locales/caES.js +13 -0
  281. package/modern/locales/csCZ.js +13 -0
  282. package/modern/locales/daDK.js +13 -0
  283. package/modern/locales/deDE.js +13 -0
  284. package/modern/locales/elGR.js +13 -0
  285. package/modern/locales/enUS.js +12 -1
  286. package/modern/locales/esES.js +13 -0
  287. package/modern/locales/eu.js +13 -0
  288. package/modern/locales/faIR.js +13 -0
  289. package/modern/locales/fiFI.js +13 -0
  290. package/modern/locales/frFR.js +13 -0
  291. package/modern/locales/heIL.js +13 -0
  292. package/modern/locales/huHU.js +13 -0
  293. package/modern/locales/isIS.js +13 -0
  294. package/modern/locales/itIT.js +13 -0
  295. package/modern/locales/jaJP.js +13 -0
  296. package/modern/locales/koKR.js +14 -2
  297. package/modern/locales/kzKZ.js +13 -0
  298. package/modern/locales/mk.js +13 -0
  299. package/modern/locales/nbNO.js +13 -0
  300. package/modern/locales/nlNL.js +13 -0
  301. package/modern/locales/plPL.js +13 -0
  302. package/modern/locales/ptBR.js +13 -0
  303. package/modern/locales/roRO.js +13 -0
  304. package/modern/locales/ruRU.js +13 -0
  305. package/modern/locales/skSK.js +13 -0
  306. package/modern/locales/svSE.js +13 -0
  307. package/modern/locales/trTR.js +13 -0
  308. package/modern/locales/ukUA.js +13 -0
  309. package/modern/locales/urPK.js +13 -0
  310. package/modern/locales/viVN.js +13 -0
  311. package/modern/locales/zhCN.js +18 -9
  312. package/modern/locales/zhHK.js +13 -0
  313. package/node/AdapterDateFnsBase/AdapterDateFnsBase.js +4 -0
  314. package/node/AdapterDateFnsJalali/AdapterDateFnsJalali.js +4 -0
  315. package/node/AdapterDayjs/AdapterDayjs.js +6 -0
  316. package/node/AdapterLuxon/AdapterLuxon.js +6 -0
  317. package/node/AdapterMoment/AdapterMoment.js +4 -0
  318. package/node/AdapterMomentHijri/AdapterMomentHijri.js +3 -0
  319. package/node/AdapterMomentJalaali/AdapterMomentJalaali.js +3 -0
  320. package/node/DateCalendar/DateCalendar.js +3 -1
  321. package/node/DateCalendar/DayCalendar.js +1 -1
  322. package/node/DateField/DateField.js +11 -9
  323. package/node/DateField/useDateField.js +2 -16
  324. package/node/DatePicker/DatePicker.js +9 -9
  325. package/node/DatePicker/DatePickerToolbar.js +14 -3
  326. package/node/DateTimeField/DateTimeField.js +11 -9
  327. package/node/DateTimeField/useDateTimeField.js +2 -21
  328. package/node/DateTimePicker/DateTimePicker.js +9 -9
  329. package/node/DateTimePicker/DateTimePickerTabs.js +7 -1
  330. package/node/DateTimePicker/DateTimePickerToolbar.js +6 -0
  331. package/node/DesktopDatePicker/DesktopDatePicker.js +9 -9
  332. package/node/DesktopDateTimePicker/DesktopDateTimePicker.js +9 -9
  333. package/node/DesktopTimePicker/DesktopTimePicker.js +9 -8
  334. package/node/LocalizationProvider/LocalizationProvider.js +1 -0
  335. package/node/MobileDatePicker/MobileDatePicker.js +9 -9
  336. package/node/MobileDateTimePicker/MobileDateTimePicker.js +9 -9
  337. package/node/MobileTimePicker/MobileTimePicker.js +9 -8
  338. package/node/MultiSectionDigitalClock/MultiSectionDigitalClock.js +4 -4
  339. package/node/MultiSectionDigitalClock/MultiSectionDigitalClockSection.js +5 -3
  340. package/node/PickersLayout/PickersLayout.js +6 -0
  341. package/node/PickersSectionList/PickersSectionList.js +4 -5
  342. package/node/PickersTextField/PickersFilledInput/PickersFilledInput.js +3 -3
  343. package/node/PickersTextField/PickersInput/PickersInput.js +3 -3
  344. package/node/PickersTextField/PickersInputBase/PickersInputBase.js +11 -5
  345. package/node/PickersTextField/PickersOutlinedInput/PickersOutlinedInput.js +3 -3
  346. package/node/PickersTextField/PickersTextField.js +9 -5
  347. package/node/StaticDatePicker/StaticDatePicker.js +0 -1
  348. package/node/StaticDateTimePicker/StaticDateTimePicker.js +0 -1
  349. package/node/TimeField/TimeField.js +11 -9
  350. package/node/TimeField/useTimeField.js +2 -14
  351. package/node/TimePicker/TimePicker.js +9 -8
  352. package/node/TimePicker/TimePickerToolbar.js +14 -3
  353. package/node/index.js +1 -1
  354. package/node/internals/components/PickersPopper.js +1 -2
  355. package/node/internals/components/PickersToolbar.js +13 -9
  356. package/node/internals/demo/DemoContainer.js +6 -5
  357. package/node/internals/hooks/defaultizedFieldProps.js +50 -0
  358. package/node/internals/hooks/useDesktopPicker/useDesktopPicker.js +13 -5
  359. package/node/internals/hooks/useField/buildSectionsFromFormat.js +259 -0
  360. package/node/internals/hooks/useField/index.js +4 -10
  361. package/node/internals/hooks/useField/useField.js +81 -302
  362. package/node/internals/hooks/useField/useField.utils.js +86 -236
  363. package/node/internals/hooks/useField/useFieldCharacterEditing.js +7 -7
  364. package/node/internals/hooks/useField/useFieldState.js +44 -60
  365. package/node/internals/hooks/useField/useFieldV6TextField.js +331 -0
  366. package/node/internals/hooks/useField/useFieldV7TextField.js +410 -0
  367. package/node/internals/hooks/useMobilePicker/useMobilePicker.js +13 -5
  368. package/node/internals/hooks/usePicker/usePicker.js +3 -3
  369. package/node/internals/hooks/usePicker/usePickerValue.js +2 -18
  370. package/node/internals/hooks/usePicker/usePickerViews.js +4 -6
  371. package/node/internals/hooks/useStaticPicker/useStaticPicker.js +1 -0
  372. package/node/internals/index.js +27 -8
  373. package/node/internals/utils/convertFieldResponseIntoMuiTextFieldProps.js +21 -3
  374. package/node/internals/utils/fields.js +1 -1
  375. package/node/internals/utils/valueManagers.js +4 -3
  376. package/node/locales/beBY.js +13 -0
  377. package/node/locales/caES.js +13 -0
  378. package/node/locales/csCZ.js +13 -0
  379. package/node/locales/daDK.js +13 -0
  380. package/node/locales/deDE.js +13 -0
  381. package/node/locales/elGR.js +13 -0
  382. package/node/locales/enUS.js +12 -1
  383. package/node/locales/esES.js +13 -0
  384. package/node/locales/eu.js +13 -0
  385. package/node/locales/faIR.js +13 -0
  386. package/node/locales/fiFI.js +13 -0
  387. package/node/locales/frFR.js +13 -0
  388. package/node/locales/heIL.js +13 -0
  389. package/node/locales/huHU.js +13 -0
  390. package/node/locales/isIS.js +13 -0
  391. package/node/locales/itIT.js +13 -0
  392. package/node/locales/jaJP.js +13 -0
  393. package/node/locales/koKR.js +14 -2
  394. package/node/locales/kzKZ.js +13 -0
  395. package/node/locales/mk.js +13 -0
  396. package/node/locales/nbNO.js +13 -0
  397. package/node/locales/nlNL.js +13 -0
  398. package/node/locales/plPL.js +13 -0
  399. package/node/locales/ptBR.js +13 -0
  400. package/node/locales/roRO.js +13 -0
  401. package/node/locales/ruRU.js +13 -0
  402. package/node/locales/skSK.js +13 -0
  403. package/node/locales/svSE.js +13 -0
  404. package/node/locales/trTR.js +13 -0
  405. package/node/locales/ukUA.js +13 -0
  406. package/node/locales/urPK.js +13 -0
  407. package/node/locales/viVN.js +13 -0
  408. package/node/locales/zhCN.js +18 -9
  409. package/node/locales/zhHK.js +13 -0
  410. package/package.json +4 -4
  411. package/themeAugmentation/props.d.ts +12 -13
  412. package/timeViewRenderers/timeViewRenderers.d.ts +1 -1
  413. package/legacy/AdapterDateFns/AdapterDateFns.js +0 -298
  414. package/legacy/AdapterDateFns/index.js +0 -1
  415. package/legacy/AdapterDateFnsBase/AdapterDateFnsBase.js +0 -293
  416. package/legacy/AdapterDateFnsBase/index.js +0 -1
  417. package/legacy/AdapterDateFnsJalali/AdapterDateFnsJalali.js +0 -547
  418. package/legacy/AdapterDateFnsJalali/index.js +0 -1
  419. package/legacy/AdapterDateFnsV3/AdapterDateFnsV3.js +0 -306
  420. package/legacy/AdapterDateFnsV3/index.js +0 -1
  421. package/legacy/AdapterDayjs/AdapterDayjs.js +0 -568
  422. package/legacy/AdapterDayjs/index.js +0 -1
  423. package/legacy/AdapterLuxon/AdapterLuxon.js +0 -508
  424. package/legacy/AdapterLuxon/index.js +0 -1
  425. package/legacy/AdapterMoment/AdapterMoment.js +0 -481
  426. package/legacy/AdapterMoment/index.js +0 -1
  427. package/legacy/AdapterMomentHijri/AdapterMomentHijri.js +0 -238
  428. package/legacy/AdapterMomentHijri/index.js +0 -1
  429. package/legacy/AdapterMomentJalaali/AdapterMomentJalaali.js +0 -235
  430. package/legacy/AdapterMomentJalaali/index.js +0 -1
  431. package/legacy/DateCalendar/DateCalendar.js +0 -573
  432. package/legacy/DateCalendar/DateCalendar.types.js +0 -1
  433. package/legacy/DateCalendar/DayCalendar.js +0 -515
  434. package/legacy/DateCalendar/PickersFadeTransitionGroup.js +0 -58
  435. package/legacy/DateCalendar/PickersSlideTransition.js +0 -118
  436. package/legacy/DateCalendar/dateCalendarClasses.js +0 -5
  437. package/legacy/DateCalendar/dayCalendarClasses.js +0 -5
  438. package/legacy/DateCalendar/index.js +0 -5
  439. package/legacy/DateCalendar/pickersFadeTransitionGroupClasses.js +0 -5
  440. package/legacy/DateCalendar/pickersSlideTransitionClasses.js +0 -5
  441. package/legacy/DateCalendar/useCalendarState.js +0 -124
  442. package/legacy/DateCalendar/useIsDateDisabled.js +0 -30
  443. package/legacy/DateField/DateField.js +0 -319
  444. package/legacy/DateField/DateField.types.js +0 -1
  445. package/legacy/DateField/index.js +0 -2
  446. package/legacy/DateField/useDateField.js +0 -33
  447. package/legacy/DatePicker/DatePicker.js +0 -353
  448. package/legacy/DatePicker/DatePicker.types.js +0 -1
  449. package/legacy/DatePicker/DatePickerToolbar.js +0 -132
  450. package/legacy/DatePicker/datePickerToolbarClasses.js +0 -5
  451. package/legacy/DatePicker/index.js +0 -3
  452. package/legacy/DatePicker/shared.js +0 -41
  453. package/legacy/DateTimeField/DateTimeField.js +0 -360
  454. package/legacy/DateTimeField/DateTimeField.types.js +0 -1
  455. package/legacy/DateTimeField/index.js +0 -2
  456. package/legacy/DateTimeField/useDateTimeField.js +0 -38
  457. package/legacy/DateTimePicker/DateTimePicker.js +0 -424
  458. package/legacy/DateTimePicker/DateTimePicker.types.js +0 -1
  459. package/legacy/DateTimePicker/DateTimePickerTabs.js +0 -142
  460. package/legacy/DateTimePicker/DateTimePickerToolbar.js +0 -385
  461. package/legacy/DateTimePicker/dateTimePickerTabsClasses.js +0 -5
  462. package/legacy/DateTimePicker/dateTimePickerToolbarClasses.js +0 -5
  463. package/legacy/DateTimePicker/index.js +0 -5
  464. package/legacy/DateTimePicker/shared.js +0 -56
  465. package/legacy/DayCalendarSkeleton/DayCalendarSkeleton.js +0 -119
  466. package/legacy/DayCalendarSkeleton/dayCalendarSkeletonClasses.js +0 -5
  467. package/legacy/DayCalendarSkeleton/index.js +0 -2
  468. package/legacy/DesktopDatePicker/DesktopDatePicker.js +0 -372
  469. package/legacy/DesktopDatePicker/DesktopDatePicker.types.js +0 -1
  470. package/legacy/DesktopDatePicker/index.js +0 -1
  471. package/legacy/DesktopDateTimePicker/DesktopDateTimePicker.js +0 -480
  472. package/legacy/DesktopDateTimePicker/DesktopDateTimePicker.types.js +0 -1
  473. package/legacy/DesktopDateTimePicker/index.js +0 -1
  474. package/legacy/DesktopTimePicker/DesktopTimePicker.js +0 -355
  475. package/legacy/DesktopTimePicker/DesktopTimePicker.types.js +0 -1
  476. package/legacy/DesktopTimePicker/index.js +0 -1
  477. package/legacy/DigitalClock/DigitalClock.js +0 -443
  478. package/legacy/DigitalClock/DigitalClock.types.js +0 -1
  479. package/legacy/DigitalClock/digitalClockClasses.js +0 -6
  480. package/legacy/DigitalClock/index.js +0 -2
  481. package/legacy/LocalizationProvider/LocalizationProvider.js +0 -140
  482. package/legacy/LocalizationProvider/index.js +0 -1
  483. package/legacy/MobileDatePicker/MobileDatePicker.js +0 -369
  484. package/legacy/MobileDatePicker/MobileDatePicker.types.js +0 -1
  485. package/legacy/MobileDatePicker/index.js +0 -1
  486. package/legacy/MobileDateTimePicker/MobileDateTimePicker.js +0 -428
  487. package/legacy/MobileDateTimePicker/MobileDateTimePicker.types.js +0 -1
  488. package/legacy/MobileDateTimePicker/index.js +0 -1
  489. package/legacy/MobileTimePicker/MobileTimePicker.js +0 -311
  490. package/legacy/MobileTimePicker/MobileTimePicker.types.js +0 -1
  491. package/legacy/MobileTimePicker/index.js +0 -1
  492. package/legacy/MonthCalendar/MonthCalendar.js +0 -338
  493. package/legacy/MonthCalendar/MonthCalendar.types.js +0 -1
  494. package/legacy/MonthCalendar/PickersMonth.js +0 -135
  495. package/legacy/MonthCalendar/index.js +0 -3
  496. package/legacy/MonthCalendar/monthCalendarClasses.js +0 -5
  497. package/legacy/MonthCalendar/pickersMonthClasses.js +0 -5
  498. package/legacy/MultiSectionDigitalClock/MultiSectionDigitalClock.js +0 -521
  499. package/legacy/MultiSectionDigitalClock/MultiSectionDigitalClock.types.js +0 -1
  500. package/legacy/MultiSectionDigitalClock/MultiSectionDigitalClock.utils.js +0 -76
  501. package/legacy/MultiSectionDigitalClock/MultiSectionDigitalClockSection.js +0 -173
  502. package/legacy/MultiSectionDigitalClock/index.js +0 -3
  503. package/legacy/MultiSectionDigitalClock/multiSectionDigitalClockClasses.js +0 -6
  504. package/legacy/MultiSectionDigitalClock/multiSectionDigitalClockSectionClasses.js +0 -6
  505. package/legacy/PickersActionBar/PickersActionBar.js +0 -86
  506. package/legacy/PickersActionBar/index.js +0 -1
  507. package/legacy/PickersCalendarHeader/PickersCalendarHeader.js +0 -284
  508. package/legacy/PickersCalendarHeader/PickersCalendarHeader.types.js +0 -1
  509. package/legacy/PickersCalendarHeader/index.js +0 -2
  510. package/legacy/PickersCalendarHeader/pickersCalendarHeaderClasses.js +0 -5
  511. package/legacy/PickersDay/PickersDay.js +0 -367
  512. package/legacy/PickersDay/index.js +0 -2
  513. package/legacy/PickersDay/pickersDayClasses.js +0 -5
  514. package/legacy/PickersLayout/PickersLayout.js +0 -159
  515. package/legacy/PickersLayout/PickersLayout.types.js +0 -1
  516. package/legacy/PickersLayout/index.js +0 -3
  517. package/legacy/PickersLayout/pickersLayoutClasses.js +0 -6
  518. package/legacy/PickersLayout/usePickerLayout.js +0 -134
  519. package/legacy/PickersSectionList/PickersSectionList.js +0 -235
  520. package/legacy/PickersSectionList/PickersSectionList.types.js +0 -1
  521. package/legacy/PickersSectionList/index.js +0 -2
  522. package/legacy/PickersSectionList/pickersSectionListClasses.js +0 -6
  523. package/legacy/PickersShortcuts/PickersShortcuts.js +0 -110
  524. package/legacy/PickersShortcuts/index.js +0 -1
  525. package/legacy/PickersTextField/PickersFilledInput/PickersFilledInput.js +0 -234
  526. package/legacy/PickersTextField/PickersFilledInput/index.js +0 -2
  527. package/legacy/PickersTextField/PickersFilledInput/pickersFilledInputClasses.js +0 -8
  528. package/legacy/PickersTextField/PickersInput/PickersInput.js +0 -190
  529. package/legacy/PickersTextField/PickersInput/index.js +0 -2
  530. package/legacy/PickersTextField/PickersInput/pickersInputClasses.js +0 -8
  531. package/legacy/PickersTextField/PickersInputBase/PickersInputBase.js +0 -340
  532. package/legacy/PickersTextField/PickersInputBase/PickersInputBase.types.js +0 -1
  533. package/legacy/PickersTextField/PickersInputBase/index.js +0 -2
  534. package/legacy/PickersTextField/PickersInputBase/pickersInputBaseClasses.js +0 -6
  535. package/legacy/PickersTextField/PickersOutlinedInput/Outline.js +0 -121
  536. package/legacy/PickersTextField/PickersOutlinedInput/PickersOutlinedInput.js +0 -183
  537. package/legacy/PickersTextField/PickersOutlinedInput/index.js +0 -2
  538. package/legacy/PickersTextField/PickersOutlinedInput/pickersOutlinedInputClasses.js +0 -8
  539. package/legacy/PickersTextField/PickersTextField.js +0 -258
  540. package/legacy/PickersTextField/PickersTextField.types.js +0 -1
  541. package/legacy/PickersTextField/index.js +0 -6
  542. package/legacy/PickersTextField/pickersTextFieldClasses.js +0 -6
  543. package/legacy/StaticDatePicker/StaticDatePicker.js +0 -297
  544. package/legacy/StaticDatePicker/StaticDatePicker.types.js +0 -1
  545. package/legacy/StaticDatePicker/index.js +0 -1
  546. package/legacy/StaticDateTimePicker/StaticDateTimePicker.js +0 -356
  547. package/legacy/StaticDateTimePicker/StaticDateTimePicker.types.js +0 -1
  548. package/legacy/StaticDateTimePicker/index.js +0 -1
  549. package/legacy/StaticTimePicker/StaticTimePicker.js +0 -238
  550. package/legacy/StaticTimePicker/StaticTimePicker.types.js +0 -1
  551. package/legacy/StaticTimePicker/index.js +0 -1
  552. package/legacy/TimeClock/Clock.js +0 -358
  553. package/legacy/TimeClock/ClockNumber.js +0 -87
  554. package/legacy/TimeClock/ClockNumbers.js +0 -73
  555. package/legacy/TimeClock/ClockPointer.js +0 -106
  556. package/legacy/TimeClock/TimeClock.js +0 -481
  557. package/legacy/TimeClock/TimeClock.types.js +0 -1
  558. package/legacy/TimeClock/clockClasses.js +0 -5
  559. package/legacy/TimeClock/clockNumberClasses.js +0 -5
  560. package/legacy/TimeClock/clockPointerClasses.js +0 -5
  561. package/legacy/TimeClock/index.js +0 -5
  562. package/legacy/TimeClock/shared.js +0 -53
  563. package/legacy/TimeClock/timeClockClasses.js +0 -5
  564. package/legacy/TimeField/TimeField.js +0 -320
  565. package/legacy/TimeField/TimeField.types.js +0 -1
  566. package/legacy/TimeField/index.js +0 -2
  567. package/legacy/TimeField/useTimeField.js +0 -31
  568. package/legacy/TimePicker/TimePicker.js +0 -314
  569. package/legacy/TimePicker/TimePicker.types.js +0 -1
  570. package/legacy/TimePicker/TimePickerToolbar.js +0 -260
  571. package/legacy/TimePicker/index.js +0 -3
  572. package/legacy/TimePicker/shared.js +0 -45
  573. package/legacy/TimePicker/timePickerToolbarClasses.js +0 -5
  574. package/legacy/YearCalendar/PickersYear.js +0 -137
  575. package/legacy/YearCalendar/YearCalendar.js +0 -362
  576. package/legacy/YearCalendar/YearCalendar.types.js +0 -1
  577. package/legacy/YearCalendar/index.js +0 -3
  578. package/legacy/YearCalendar/pickersYearClasses.js +0 -5
  579. package/legacy/YearCalendar/yearCalendarClasses.js +0 -5
  580. package/legacy/dateTimeViewRenderers/dateTimeViewRenderers.js +0 -162
  581. package/legacy/dateTimeViewRenderers/index.js +0 -1
  582. package/legacy/dateViewRenderers/dateViewRenderers.js +0 -82
  583. package/legacy/dateViewRenderers/index.js +0 -1
  584. package/legacy/hooks/index.js +0 -1
  585. package/legacy/hooks/useClearableField.js +0 -76
  586. package/legacy/icons/index.js +0 -68
  587. package/legacy/index.js +0 -59
  588. package/legacy/internals/components/DateTimeViewWrapper/DateTimeViewWrapper.js +0 -5
  589. package/legacy/internals/components/DateTimeViewWrapper/index.js +0 -1
  590. package/legacy/internals/components/PickerViewRoot/PickerViewRoot.js +0 -10
  591. package/legacy/internals/components/PickerViewRoot/index.js +0 -1
  592. package/legacy/internals/components/PickersArrowSwitcher/PickersArrowSwitcher.js +0 -170
  593. package/legacy/internals/components/PickersArrowSwitcher/PickersArrowSwitcher.types.js +0 -1
  594. package/legacy/internals/components/PickersArrowSwitcher/index.js +0 -2
  595. package/legacy/internals/components/PickersArrowSwitcher/pickersArrowSwitcherClasses.js +0 -5
  596. package/legacy/internals/components/PickersModalDialog.js +0 -42
  597. package/legacy/internals/components/PickersPopper.js +0 -325
  598. package/legacy/internals/components/PickersToolbar.js +0 -92
  599. package/legacy/internals/components/PickersToolbarButton.js +0 -61
  600. package/legacy/internals/components/PickersToolbarText.js +0 -52
  601. package/legacy/internals/components/pickersPopperClasses.js +0 -5
  602. package/legacy/internals/components/pickersToolbarButtonClasses.js +0 -5
  603. package/legacy/internals/components/pickersToolbarClasses.js +0 -5
  604. package/legacy/internals/components/pickersToolbarTextClasses.js +0 -5
  605. package/legacy/internals/constants/dimensions.js +0 -7
  606. package/legacy/internals/demo/DemoContainer.js +0 -163
  607. package/legacy/internals/demo/index.js +0 -1
  608. package/legacy/internals/hooks/date-helpers-hooks.js +0 -37
  609. package/legacy/internals/hooks/useClockReferenceDate.js +0 -28
  610. package/legacy/internals/hooks/useDefaultReduceAnimations.js +0 -14
  611. package/legacy/internals/hooks/useDesktopPicker/index.js +0 -1
  612. package/legacy/internals/hooks/useDesktopPicker/useDesktopPicker.js +0 -174
  613. package/legacy/internals/hooks/useDesktopPicker/useDesktopPicker.types.js +0 -1
  614. package/legacy/internals/hooks/useField/index.js +0 -2
  615. package/legacy/internals/hooks/useField/useField.js +0 -470
  616. package/legacy/internals/hooks/useField/useField.types.js +0 -1
  617. package/legacy/internals/hooks/useField/useField.utils.js +0 -828
  618. package/legacy/internals/hooks/useField/useFieldCharacterEditing.js +0 -277
  619. package/legacy/internals/hooks/useField/useFieldState.js +0 -321
  620. package/legacy/internals/hooks/useIsLandscape.js +0 -39
  621. package/legacy/internals/hooks/useMobilePicker/index.js +0 -1
  622. package/legacy/internals/hooks/useMobilePicker/useMobilePicker.js +0 -126
  623. package/legacy/internals/hooks/useMobilePicker/useMobilePicker.types.js +0 -1
  624. package/legacy/internals/hooks/useOpenState.js +0 -38
  625. package/legacy/internals/hooks/usePicker/index.js +0 -1
  626. package/legacy/internals/hooks/usePicker/usePicker.js +0 -54
  627. package/legacy/internals/hooks/usePicker/usePicker.types.js +0 -1
  628. package/legacy/internals/hooks/usePicker/usePickerLayoutProps.js +0 -28
  629. package/legacy/internals/hooks/usePicker/usePickerValue.js +0 -365
  630. package/legacy/internals/hooks/usePicker/usePickerValue.types.js +0 -1
  631. package/legacy/internals/hooks/usePicker/usePickerViews.js +0 -172
  632. package/legacy/internals/hooks/useStaticPicker/index.js +0 -1
  633. package/legacy/internals/hooks/useStaticPicker/useStaticPicker.js +0 -66
  634. package/legacy/internals/hooks/useStaticPicker/useStaticPicker.types.js +0 -1
  635. package/legacy/internals/hooks/useUtils.js +0 -38
  636. package/legacy/internals/hooks/useValidation.js +0 -20
  637. package/legacy/internals/hooks/useValueWithTimezone.js +0 -81
  638. package/legacy/internals/hooks/useViews.js +0 -124
  639. package/legacy/internals/index.js +0 -35
  640. package/legacy/internals/models/common.js +0 -1
  641. package/legacy/internals/models/fields.js +0 -1
  642. package/legacy/internals/models/helpers.js +0 -1
  643. package/legacy/internals/models/index.js +0 -2
  644. package/legacy/internals/models/props/basePickerProps.js +0 -1
  645. package/legacy/internals/models/props/clock.js +0 -1
  646. package/legacy/internals/models/props/tabs.js +0 -1
  647. package/legacy/internals/models/props/toolbar.js +0 -1
  648. package/legacy/internals/models/validation.js +0 -1
  649. package/legacy/internals/utils/convertFieldResponseIntoMuiTextFieldProps.js +0 -24
  650. package/legacy/internals/utils/date-time-utils.js +0 -71
  651. package/legacy/internals/utils/date-utils.js +0 -129
  652. package/legacy/internals/utils/fields.js +0 -28
  653. package/legacy/internals/utils/getDefaultReferenceDate.js +0 -65
  654. package/legacy/internals/utils/time-utils.js +0 -63
  655. package/legacy/internals/utils/utils.js +0 -40
  656. package/legacy/internals/utils/validation/extractValidationProps.js +0 -16
  657. package/legacy/internals/utils/validation/validateDate.js +0 -38
  658. package/legacy/internals/utils/validation/validateDateTime.js +0 -20
  659. package/legacy/internals/utils/validation/validateTime.js +0 -42
  660. package/legacy/internals/utils/valueManagers.js +0 -67
  661. package/legacy/internals/utils/views.js +0 -29
  662. package/legacy/internals/utils/warning.js +0 -39
  663. package/legacy/locales/beBY.js +0 -99
  664. package/legacy/locales/caES.js +0 -100
  665. package/legacy/locales/csCZ.js +0 -100
  666. package/legacy/locales/daDK.js +0 -102
  667. package/legacy/locales/deDE.js +0 -101
  668. package/legacy/locales/elGR.js +0 -100
  669. package/legacy/locales/enUS.js +0 -96
  670. package/legacy/locales/esES.js +0 -99
  671. package/legacy/locales/eu.js +0 -99
  672. package/legacy/locales/faIR.js +0 -100
  673. package/legacy/locales/fiFI.js +0 -100
  674. package/legacy/locales/frFR.js +0 -98
  675. package/legacy/locales/heIL.js +0 -100
  676. package/legacy/locales/huHU.js +0 -99
  677. package/legacy/locales/index.js +0 -35
  678. package/legacy/locales/isIS.js +0 -100
  679. package/legacy/locales/itIT.js +0 -98
  680. package/legacy/locales/jaJP.js +0 -102
  681. package/legacy/locales/koKR.js +0 -98
  682. package/legacy/locales/kzKZ.js +0 -99
  683. package/legacy/locales/mk.js +0 -96
  684. package/legacy/locales/nbNO.js +0 -100
  685. package/legacy/locales/nlNL.js +0 -100
  686. package/legacy/locales/plPL.js +0 -85
  687. package/legacy/locales/ptBR.js +0 -100
  688. package/legacy/locales/roRO.js +0 -99
  689. package/legacy/locales/ruRU.js +0 -98
  690. package/legacy/locales/skSK.js +0 -100
  691. package/legacy/locales/svSE.js +0 -85
  692. package/legacy/locales/trTR.js +0 -100
  693. package/legacy/locales/ukUA.js +0 -100
  694. package/legacy/locales/urPK.js +0 -85
  695. package/legacy/locales/utils/getPickersLocalization.js +0 -12
  696. package/legacy/locales/utils/pickersLocaleTextApi.js +0 -1
  697. package/legacy/locales/viVN.js +0 -100
  698. package/legacy/locales/zhCN.js +0 -100
  699. package/legacy/locales/zhHK.js +0 -100
  700. package/legacy/models/adapters.js +0 -1
  701. package/legacy/models/common.js +0 -1
  702. package/legacy/models/fields.js +0 -1
  703. package/legacy/models/index.js +0 -7
  704. package/legacy/models/pickers.js +0 -1
  705. package/legacy/models/timezone.js +0 -1
  706. package/legacy/models/validation.js +0 -1
  707. package/legacy/models/views.js +0 -1
  708. package/legacy/themeAugmentation/index.js +0 -3
  709. package/legacy/timeViewRenderers/index.js +0 -1
  710. package/legacy/timeViewRenderers/timeViewRenderers.js +0 -186
@@ -3,6 +3,7 @@ import * as React from 'react';
3
3
  import Stack, { stackClasses } from '@mui/material/Stack';
4
4
  import Typography from '@mui/material/Typography';
5
5
  import { textFieldClasses } from '@mui/material/TextField';
6
+ import { pickersTextFieldClasses } from '@mui/x-date-pickers/PickersTextField';
6
7
  import { jsx as _jsx } from "react/jsx-runtime";
7
8
  import { jsxs as _jsxs } from "react/jsx-runtime";
8
9
  const getChildTypeFromChildName = childName => {
@@ -123,13 +124,13 @@ export function DemoContainer(props) {
123
124
  } else if (childrenTypes.has('single-input-range-field')) {
124
125
  if (!childrenSupportedSections.has('date-time')) {
125
126
  extraSx = {
126
- [`& > .${textFieldClasses.root}`]: {
127
+ [`& > .${textFieldClasses.root}, & > .${pickersTextFieldClasses.root}`]: {
127
128
  minWidth: 300
128
129
  }
129
130
  };
130
131
  } else {
131
132
  extraSx = {
132
- [`& > .${textFieldClasses.root}`]: {
133
+ [`& > .${textFieldClasses.root}, & > .${pickersTextFieldClasses.root}`]: {
133
134
  minWidth: {
134
135
  xs: 300,
135
136
  // If demo also contains MultiInputDateTimeRangeField, increase width to avoid cutting off the value.
@@ -140,21 +141,21 @@ export function DemoContainer(props) {
140
141
  }
141
142
  } else if (childrenSupportedSections.has('date-time')) {
142
143
  extraSx = {
143
- [`& > .${textFieldClasses.root}`]: {
144
+ [`& > .${textFieldClasses.root}, & > .${pickersTextFieldClasses.root}`]: {
144
145
  minWidth: 270
145
146
  }
146
147
  };
147
148
  if (childrenTypes.has('multi-input-range-field')) {
148
149
  // increase width for the multi input date time range fields
149
150
  demoItemSx = {
150
- [`& > .${stackClasses.root} > .${textFieldClasses.root}`]: {
151
+ [`& > .${stackClasses.root} > .${textFieldClasses.root}, & > .${stackClasses.root} > .${pickersTextFieldClasses.root}`]: {
151
152
  minWidth: 210
152
153
  }
153
154
  };
154
155
  }
155
156
  } else {
156
157
  extraSx = {
157
- [`& > .${textFieldClasses.root}`]: {
158
+ [`& > .${textFieldClasses.root}, & > .${pickersTextFieldClasses.root}`]: {
158
159
  minWidth: 200
159
160
  }
160
161
  };
@@ -0,0 +1,19 @@
1
+ import { BaseDateValidationProps, BaseTimeValidationProps, DateTimeValidationProps, TimeValidationProps } from '../models/validation';
2
+ import { DefaultizedProps } from '../models/helpers';
3
+ import { PickerValidDate } from '../../models';
4
+ export interface UseDefaultizedDateFieldBaseProps<TDate extends PickerValidDate> extends BaseDateValidationProps<TDate> {
5
+ format?: string;
6
+ }
7
+ export declare const useDefaultizedDateField: <TDate extends PickerValidDate, TKnownProps extends UseDefaultizedDateFieldBaseProps<TDate>, TAllProps extends {}>(props: TKnownProps & TAllProps) => TAllProps & Omit<TKnownProps, keyof UseDefaultizedDateFieldBaseProps<any>> & Required<Pick<TKnownProps, keyof UseDefaultizedDateFieldBaseProps<any>>>;
8
+ export interface UseDefaultizedTimeFieldBaseProps extends BaseTimeValidationProps {
9
+ format?: string;
10
+ }
11
+ export declare const useDefaultizedTimeField: <TDate extends PickerValidDate, TKnownProps extends UseDefaultizedTimeFieldBaseProps & {
12
+ ampm?: boolean | undefined;
13
+ }, TAllProps extends {}>(props: TKnownProps & TAllProps) => TAllProps & Omit<TKnownProps, keyof UseDefaultizedTimeFieldBaseProps> & Required<Pick<TKnownProps, keyof UseDefaultizedTimeFieldBaseProps>>;
14
+ export interface UseDefaultizedDateTimeFieldBaseProps<TDate extends PickerValidDate> extends BaseDateValidationProps<TDate>, BaseTimeValidationProps {
15
+ format?: string;
16
+ }
17
+ export declare const useDefaultizedDateTimeField: <TDate extends PickerValidDate, TKnownProps extends UseDefaultizedDateTimeFieldBaseProps<TDate> & DateTimeValidationProps<TDate> & TimeValidationProps<TDate> & {
18
+ ampm?: boolean | undefined;
19
+ }, TAllProps extends {}>(props: TKnownProps & TAllProps) => TAllProps & Omit<TKnownProps, keyof UseDefaultizedDateTimeFieldBaseProps<any>> & Required<Pick<TKnownProps, keyof UseDefaultizedDateTimeFieldBaseProps<any>>>;
@@ -0,0 +1,43 @@
1
+ import _extends from "@babel/runtime/helpers/esm/extends";
2
+ import { applyDefaultDate } from '../utils/date-utils';
3
+ import { useUtils, useDefaultDates } from './useUtils';
4
+ export const useDefaultizedDateField = props => {
5
+ var _props$disablePast, _props$disableFuture, _props$format;
6
+ const utils = useUtils();
7
+ const defaultDates = useDefaultDates();
8
+ return _extends({}, props, {
9
+ disablePast: (_props$disablePast = props.disablePast) != null ? _props$disablePast : false,
10
+ disableFuture: (_props$disableFuture = props.disableFuture) != null ? _props$disableFuture : false,
11
+ format: (_props$format = props.format) != null ? _props$format : utils.formats.keyboardDate,
12
+ minDate: applyDefaultDate(utils, props.minDate, defaultDates.minDate),
13
+ maxDate: applyDefaultDate(utils, props.maxDate, defaultDates.maxDate)
14
+ });
15
+ };
16
+ export const useDefaultizedTimeField = props => {
17
+ var _props$ampm, _props$disablePast2, _props$disableFuture2, _props$format2;
18
+ const utils = useUtils();
19
+ const ampm = (_props$ampm = props.ampm) != null ? _props$ampm : utils.is12HourCycleInCurrentLocale();
20
+ const defaultFormat = ampm ? utils.formats.fullTime12h : utils.formats.fullTime24h;
21
+ return _extends({}, props, {
22
+ disablePast: (_props$disablePast2 = props.disablePast) != null ? _props$disablePast2 : false,
23
+ disableFuture: (_props$disableFuture2 = props.disableFuture) != null ? _props$disableFuture2 : false,
24
+ format: (_props$format2 = props.format) != null ? _props$format2 : defaultFormat
25
+ });
26
+ };
27
+ export const useDefaultizedDateTimeField = props => {
28
+ var _props$ampm2, _props$disablePast3, _props$disableFuture3, _props$format3, _props$minDateTime, _props$maxDateTime, _props$minDateTime2, _props$maxDateTime2;
29
+ const utils = useUtils();
30
+ const defaultDates = useDefaultDates();
31
+ const ampm = (_props$ampm2 = props.ampm) != null ? _props$ampm2 : utils.is12HourCycleInCurrentLocale();
32
+ const defaultFormat = ampm ? utils.formats.keyboardDateTime12h : utils.formats.keyboardDateTime24h;
33
+ return _extends({}, props, {
34
+ disablePast: (_props$disablePast3 = props.disablePast) != null ? _props$disablePast3 : false,
35
+ disableFuture: (_props$disableFuture3 = props.disableFuture) != null ? _props$disableFuture3 : false,
36
+ format: (_props$format3 = props.format) != null ? _props$format3 : defaultFormat,
37
+ disableIgnoringDatePartForTimeValidation: Boolean(props.minDateTime || props.maxDateTime),
38
+ minDate: applyDefaultDate(utils, (_props$minDateTime = props.minDateTime) != null ? _props$minDateTime : props.minDate, defaultDates.minDate),
39
+ maxDate: applyDefaultDate(utils, (_props$maxDateTime = props.maxDateTime) != null ? _props$maxDateTime : props.maxDate, defaultDates.maxDate),
40
+ minTime: (_props$minDateTime2 = props.minDateTime) != null ? _props$minDateTime2 : props.minTime,
41
+ maxTime: (_props$maxDateTime2 = props.maxDateTime) != null ? _props$maxDateTime2 : props.maxTime
42
+ });
43
+ };
@@ -8,6 +8,6 @@ import { DateOrTimeViewWithMeridiem } from '../../models';
8
8
  * - DesktopDateTimePicker
9
9
  * - DesktopTimePicker
10
10
  */
11
- export declare const useDesktopPicker: <TDate extends PickerValidDate, TView extends DateOrTimeViewWithMeridiem, TExternalProps extends UseDesktopPickerProps<TDate, TView, any, TExternalProps>>({ props, getOpenDialogAriaText, ...pickerParams }: UseDesktopPickerParams<TDate, TView, TExternalProps>) => {
11
+ export declare const useDesktopPicker: <TDate extends PickerValidDate, TView extends DateOrTimeViewWithMeridiem, TEnableAccessibleFieldDOMStructure extends boolean, TExternalProps extends UseDesktopPickerProps<TDate, TView, TEnableAccessibleFieldDOMStructure, any, TExternalProps>>({ props, getOpenDialogAriaText, ...pickerParams }: UseDesktopPickerParams<TDate, TView, TEnableAccessibleFieldDOMStructure, TExternalProps>) => {
12
12
  renderPicker: () => React.JSX.Element;
13
13
  };
@@ -36,6 +36,9 @@ export const useDesktopPicker = _ref => {
36
36
  sx,
37
37
  format,
38
38
  formatDensity,
39
+ enableAccessibleFieldDOMStructure,
40
+ selectedSections,
41
+ onSelectedSectionsChange,
39
42
  timezone,
40
43
  name,
41
44
  label,
@@ -47,8 +50,8 @@ export const useDesktopPicker = _ref => {
47
50
  reduceAnimations
48
51
  } = props;
49
52
  const utils = useUtils();
50
- const internalInputRef = React.useRef(null);
51
53
  const containerRef = React.useRef(null);
54
+ const fieldRef = React.useRef(null);
52
55
  const labelId = useId();
53
56
  const isToolbarHidden = (_innerSlotProps$toolb = innerSlotProps == null || (_innerSlotProps$toolb2 = innerSlotProps.toolbar) == null ? void 0 : _innerSlotProps$toolb2.hidden) != null ? _innerSlotProps$toolb : false;
54
57
  const {
@@ -61,7 +64,7 @@ export const useDesktopPicker = _ref => {
61
64
  fieldProps: pickerFieldProps
62
65
  } = usePicker(_extends({}, pickerParams, {
63
66
  props,
64
- inputRef: internalInputRef,
67
+ fieldRef,
65
68
  autoFocusView: true,
66
69
  additionalViewProps: {},
67
70
  wrapperVariant: 'desktop'
@@ -103,12 +106,17 @@ export const useDesktopPicker = _ref => {
103
106
  sx,
104
107
  format,
105
108
  formatDensity,
109
+ enableAccessibleFieldDOMStructure,
110
+ selectedSections,
111
+ onSelectedSectionsChange,
106
112
  timezone,
107
113
  label,
108
114
  name,
109
115
  autoFocus: autoFocus && !props.open,
110
116
  focused: open ? true : undefined
111
- }),
117
+ }, inputRef ? {
118
+ inputRef
119
+ } : {}),
112
120
  ownerState: props
113
121
  });
114
122
 
@@ -129,7 +137,6 @@ export const useDesktopPicker = _ref => {
129
137
  clearButton: slots.clearButton
130
138
  }, fieldProps.slots);
131
139
  const Layout = (_slots$layout = slots.layout) != null ? _slots$layout : PickersLayout;
132
- const handleInputRef = useForkRef(internalInputRef, fieldProps.inputRef, inputRef);
133
140
  let labelledById = labelId;
134
141
  if (isToolbarHidden) {
135
142
  if (label) {
@@ -146,12 +153,13 @@ export const useDesktopPicker = _ref => {
146
153
  'aria-labelledby': labelledById
147
154
  }, innerSlotProps == null ? void 0 : innerSlotProps.popper)
148
155
  });
156
+ const handleFieldRef = useForkRef(fieldRef, fieldProps.unstableFieldRef);
149
157
  const renderPicker = () => /*#__PURE__*/_jsxs(LocalizationProvider, {
150
158
  localeText: localeText,
151
159
  children: [/*#__PURE__*/_jsx(Field, _extends({}, fieldProps, {
152
160
  slots: slotsForField,
153
161
  slotProps: slotProps,
154
- inputRef: handleInputRef
162
+ unstableFieldRef: handleFieldRef
155
163
  })), /*#__PURE__*/_jsx(PickersPopper, _extends({
156
164
  role: "dialog",
157
165
  placement: "bottom-start",
@@ -1,7 +1,7 @@
1
1
  import * as React from 'react';
2
2
  import IconButton, { IconButtonProps } from '@mui/material/IconButton';
3
3
  import { InputAdornmentProps } from '@mui/material/InputAdornment';
4
- import TextField, { TextFieldProps } from '@mui/material/TextField';
4
+ import TextField from '@mui/material/TextField';
5
5
  import { SlotComponentProps } from '@mui/base/utils';
6
6
  import { BaseNonStaticPickerProps, BasePickerProps, BaseNonRangeNonStaticPickerProps } from '../../models/props/basePickerProps';
7
7
  import { PickersPopperSlots, PickersPopperSlotProps } from '../../components/PickersPopper';
@@ -12,17 +12,17 @@ import { UsePickerValueNonStaticProps } from '../usePicker/usePickerValue.types'
12
12
  import { UsePickerViewsNonStaticProps, UsePickerViewsProps } from '../usePicker/usePickerViews';
13
13
  import { DateOrTimeViewWithMeridiem } from '../../models';
14
14
  import { UseClearableFieldSlots, UseClearableFieldSlotProps } from '../../../hooks/useClearableField';
15
+ import { SlotComponentPropsFromProps } from '../../models/helpers';
15
16
  export interface UseDesktopPickerSlots<TDate extends PickerValidDate, TView extends DateOrTimeViewWithMeridiem> extends Pick<PickersPopperSlots, 'desktopPaper' | 'desktopTransition' | 'desktopTrapFocus' | 'popper'>, ExportedPickersLayoutSlots<TDate | null, TDate, TView>, UseClearableFieldSlots {
16
17
  /**
17
18
  * Component used to enter the date with the keyboard.
18
19
  */
19
- field: React.ElementType<BaseSingleInputFieldProps<TDate | null, TDate, FieldSection, any>>;
20
+ field: React.ElementType;
20
21
  /**
21
22
  * Form control with an input to render the value inside the default field.
22
- * Receives the same props as `@mui/material/TextField`.
23
- * @default TextField from '@mui/material'
23
+ * @default TextField from '@mui/material' or PickersTextField if `enableAccessibleFieldDOMStructure` is `true`.
24
24
  */
25
- textField?: React.ElementType<TextFieldProps>;
25
+ textField?: React.ElementType;
26
26
  /**
27
27
  * Component displayed on the start or end input adornment used to open the picker on desktop.
28
28
  * @default InputAdornment
@@ -38,22 +38,23 @@ export interface UseDesktopPickerSlots<TDate extends PickerValidDate, TView exte
38
38
  */
39
39
  openPickerIcon: React.ElementType;
40
40
  }
41
- export interface UseDesktopPickerSlotProps<TDate extends PickerValidDate, TView extends DateOrTimeViewWithMeridiem> extends ExportedUseDesktopPickerSlotProps<TDate, TView>, Pick<PickersLayoutSlotProps<TDate | null, TDate, TView>, 'toolbar'> {
41
+ export interface UseDesktopPickerSlotProps<TDate extends PickerValidDate, TView extends DateOrTimeViewWithMeridiem, TEnableAccessibleFieldDOMStructure extends boolean> extends ExportedUseDesktopPickerSlotProps<TDate, TView, TEnableAccessibleFieldDOMStructure>, Pick<PickersLayoutSlotProps<TDate | null, TDate, TView>, 'toolbar'> {
42
42
  }
43
- export interface ExportedUseDesktopPickerSlotProps<TDate extends PickerValidDate, TView extends DateOrTimeViewWithMeridiem> extends PickersPopperSlotProps, ExportedPickersLayoutSlotProps<TDate | null, TDate, TView>, UseClearableFieldSlotProps {
44
- field?: SlotComponentProps<React.ElementType<BaseSingleInputFieldProps<TDate | null, TDate, FieldSection, unknown>>, {}, UsePickerProps<TDate | null, TDate, any, FieldSection, any, any, any>>;
43
+ export interface ExportedUseDesktopPickerSlotProps<TDate extends PickerValidDate, TView extends DateOrTimeViewWithMeridiem, TEnableAccessibleFieldDOMStructure extends boolean> extends PickersPopperSlotProps, ExportedPickersLayoutSlotProps<TDate | null, TDate, TView>, UseClearableFieldSlotProps {
44
+ field?: SlotComponentPropsFromProps<BaseSingleInputFieldProps<TDate | null, TDate, FieldSection, TEnableAccessibleFieldDOMStructure, unknown>, {}, UsePickerProps<TDate | null, TDate, any, any, any, any>>;
45
45
  textField?: SlotComponentProps<typeof TextField, {}, Record<string, any>>;
46
46
  inputAdornment?: Partial<InputAdornmentProps>;
47
- openPickerButton?: SlotComponentProps<typeof IconButton, {}, UseDesktopPickerProps<TDate, any, any, any>>;
47
+ openPickerButton?: SlotComponentProps<typeof IconButton, {}, UseDesktopPickerProps<TDate, any, TEnableAccessibleFieldDOMStructure, any, any>>;
48
48
  openPickerIcon?: Record<string, any>;
49
49
  }
50
- export interface DesktopOnlyPickerProps<TDate extends PickerValidDate> extends BaseNonStaticPickerProps, BaseNonRangeNonStaticPickerProps, UsePickerValueNonStaticProps<TDate | null, FieldSection>, UsePickerViewsNonStaticProps {
50
+ export interface DesktopOnlyPickerProps extends BaseNonStaticPickerProps, BaseNonRangeNonStaticPickerProps, UsePickerValueNonStaticProps, UsePickerViewsNonStaticProps {
51
51
  /**
52
52
  * If `true`, the `input` element is focused during the first mount.
53
+ * @default false
53
54
  */
54
55
  autoFocus?: boolean;
55
56
  }
56
- export interface UseDesktopPickerProps<TDate extends PickerValidDate, TView extends DateOrTimeViewWithMeridiem, TError, TExternalProps extends UsePickerViewsProps<any, any, TView, any, any>> extends BasePickerProps<TDate | null, TDate, TView, TError, TExternalProps, {}>, DesktopOnlyPickerProps<TDate> {
57
+ export interface UseDesktopPickerProps<TDate extends PickerValidDate, TView extends DateOrTimeViewWithMeridiem, TEnableAccessibleFieldDOMStructure extends boolean, TError, TExternalProps extends UsePickerViewsProps<any, any, TView, any, any>> extends BasePickerProps<TDate | null, TDate, TView, TError, TExternalProps, {}>, DesktopOnlyPickerProps {
57
58
  /**
58
59
  * Overridable component slots.
59
60
  * @default {}
@@ -63,9 +64,9 @@ export interface UseDesktopPickerProps<TDate extends PickerValidDate, TView exte
63
64
  * The props used for each component slot.
64
65
  * @default {}
65
66
  */
66
- slotProps?: UseDesktopPickerSlotProps<TDate, TView>;
67
+ slotProps?: UseDesktopPickerSlotProps<TDate, TView, TEnableAccessibleFieldDOMStructure>;
67
68
  }
68
- export interface UseDesktopPickerParams<TDate extends PickerValidDate, TView extends DateOrTimeViewWithMeridiem, TExternalProps extends UseDesktopPickerProps<TDate, TView, any, TExternalProps>> extends Pick<UsePickerParams<TDate | null, TDate, TView, FieldSection, TExternalProps, {}>, 'valueManager' | 'valueType' | 'validator'> {
69
+ export interface UseDesktopPickerParams<TDate extends PickerValidDate, TView extends DateOrTimeViewWithMeridiem, TEnableAccessibleFieldDOMStructure extends boolean, TExternalProps extends UseDesktopPickerProps<TDate, TView, TEnableAccessibleFieldDOMStructure, any, TExternalProps>> extends Pick<UsePickerParams<TDate | null, TDate, TView, FieldSection, TExternalProps, {}>, 'valueManager' | 'valueType' | 'validator'> {
69
70
  props: TExternalProps;
70
71
  getOpenDialogAriaText: (date: TDate | null, utils: MuiPickersAdapter<TDate>) => string;
71
72
  }
@@ -0,0 +1,16 @@
1
+ import { FieldSection, MuiPickersAdapter, PickersTimezone, PickerValidDate } from '../../../models';
2
+ import { PickersLocaleText } from '../../../locales';
3
+ interface BuildSectionsFromFormatParams<TDate extends PickerValidDate> {
4
+ utils: MuiPickersAdapter<TDate>;
5
+ format: string;
6
+ formatDensity: 'dense' | 'spacious';
7
+ isRTL: boolean;
8
+ timezone: PickersTimezone;
9
+ shouldRespectLeadingZeros: boolean;
10
+ localeText: PickersLocaleText<TDate>;
11
+ localizedDigits: string[];
12
+ date: TDate | null;
13
+ enableAccessibleFieldDOMStructure: boolean;
14
+ }
15
+ export declare const buildSectionsFromFormat: <TDate extends PickerValidDate>(params: BuildSectionsFromFormatParams<TDate>) => FieldSection[];
16
+ export {};
@@ -0,0 +1,251 @@
1
+ import _extends from "@babel/runtime/helpers/esm/extends";
2
+ import { applyLocalizedDigits, cleanLeadingZeros, doesSectionFormatHaveLeadingZeros, getDateSectionConfigFromFormatToken, removeLocalizedDigits } from './useField.utils';
3
+ const expandFormat = ({
4
+ utils,
5
+ format
6
+ }) => {
7
+ // Expand the provided format
8
+ let formatExpansionOverflow = 10;
9
+ let prevFormat = format;
10
+ let nextFormat = utils.expandFormat(format);
11
+ while (nextFormat !== prevFormat) {
12
+ prevFormat = nextFormat;
13
+ nextFormat = utils.expandFormat(prevFormat);
14
+ formatExpansionOverflow -= 1;
15
+ if (formatExpansionOverflow < 0) {
16
+ throw new Error('MUI X: The format expansion seems to be in an infinite loop. Please open an issue with the format passed to the picker component.');
17
+ }
18
+ }
19
+ return nextFormat;
20
+ };
21
+ const getEscapedPartsFromFormat = ({
22
+ utils,
23
+ expandedFormat
24
+ }) => {
25
+ const escapedParts = [];
26
+ const {
27
+ start: startChar,
28
+ end: endChar
29
+ } = utils.escapedCharacters;
30
+ const regExp = new RegExp(`(\\${startChar}[^\\${endChar}]*\\${endChar})+`, 'g');
31
+ let match = null;
32
+ // eslint-disable-next-line no-cond-assign
33
+ while (match = regExp.exec(expandedFormat)) {
34
+ escapedParts.push({
35
+ start: match.index,
36
+ end: regExp.lastIndex - 1
37
+ });
38
+ }
39
+ return escapedParts;
40
+ };
41
+ const getSectionPlaceholder = (utils, timezone, localeText, sectionConfig, sectionFormat) => {
42
+ switch (sectionConfig.type) {
43
+ case 'year':
44
+ {
45
+ return localeText.fieldYearPlaceholder({
46
+ digitAmount: utils.formatByString(utils.date(undefined, timezone), sectionFormat).length,
47
+ format: sectionFormat
48
+ });
49
+ }
50
+ case 'month':
51
+ {
52
+ return localeText.fieldMonthPlaceholder({
53
+ contentType: sectionConfig.contentType,
54
+ format: sectionFormat
55
+ });
56
+ }
57
+ case 'day':
58
+ {
59
+ return localeText.fieldDayPlaceholder({
60
+ format: sectionFormat
61
+ });
62
+ }
63
+ case 'weekDay':
64
+ {
65
+ return localeText.fieldWeekDayPlaceholder({
66
+ contentType: sectionConfig.contentType,
67
+ format: sectionFormat
68
+ });
69
+ }
70
+ case 'hours':
71
+ {
72
+ return localeText.fieldHoursPlaceholder({
73
+ format: sectionFormat
74
+ });
75
+ }
76
+ case 'minutes':
77
+ {
78
+ return localeText.fieldMinutesPlaceholder({
79
+ format: sectionFormat
80
+ });
81
+ }
82
+ case 'seconds':
83
+ {
84
+ return localeText.fieldSecondsPlaceholder({
85
+ format: sectionFormat
86
+ });
87
+ }
88
+ case 'meridiem':
89
+ {
90
+ return localeText.fieldMeridiemPlaceholder({
91
+ format: sectionFormat
92
+ });
93
+ }
94
+ default:
95
+ {
96
+ return sectionFormat;
97
+ }
98
+ }
99
+ };
100
+ const createSection = ({
101
+ utils,
102
+ timezone,
103
+ date,
104
+ shouldRespectLeadingZeros,
105
+ localeText,
106
+ localizedDigits,
107
+ now,
108
+ token,
109
+ startSeparator
110
+ }) => {
111
+ if (token === '') {
112
+ throw new Error('MUI X: Should not call `commitToken` with an empty token');
113
+ }
114
+ const sectionConfig = getDateSectionConfigFromFormatToken(utils, token);
115
+ const hasLeadingZerosInFormat = doesSectionFormatHaveLeadingZeros(utils, timezone, sectionConfig.contentType, sectionConfig.type, token);
116
+ const hasLeadingZerosInInput = shouldRespectLeadingZeros ? hasLeadingZerosInFormat : sectionConfig.contentType === 'digit';
117
+ const isValidDate = date != null && utils.isValid(date);
118
+ let sectionValue = isValidDate ? utils.formatByString(date, token) : '';
119
+ let maxLength = null;
120
+ if (hasLeadingZerosInInput) {
121
+ if (hasLeadingZerosInFormat) {
122
+ maxLength = sectionValue === '' ? utils.formatByString(now, token).length : sectionValue.length;
123
+ } else {
124
+ if (sectionConfig.maxLength == null) {
125
+ throw new Error(`MUI X: The token ${token} should have a 'maxDigitNumber' property on it's adapter`);
126
+ }
127
+ maxLength = sectionConfig.maxLength;
128
+ if (isValidDate) {
129
+ sectionValue = applyLocalizedDigits(cleanLeadingZeros(removeLocalizedDigits(sectionValue, localizedDigits), maxLength), localizedDigits);
130
+ }
131
+ }
132
+ }
133
+ return _extends({}, sectionConfig, {
134
+ format: token,
135
+ maxLength,
136
+ value: sectionValue,
137
+ placeholder: getSectionPlaceholder(utils, timezone, localeText, sectionConfig, token),
138
+ hasLeadingZerosInFormat,
139
+ hasLeadingZerosInInput,
140
+ startSeparator,
141
+ endSeparator: '',
142
+ modified: false
143
+ });
144
+ };
145
+ const buildSections = params => {
146
+ const {
147
+ utils,
148
+ expandedFormat,
149
+ escapedParts
150
+ } = params;
151
+ const now = utils.date(undefined);
152
+ const sections = [];
153
+ let startSeparator = '';
154
+
155
+ // This RegExp test if the beginning of a string corresponds to a supported token
156
+ const isTokenStartRegExp = new RegExp(`^(${Object.keys(utils.formatTokenMap).sort((a, b) => b.length - a.length) // Sort to put longest word first
157
+ .join('|')})`, 'g') // used to get access to lastIndex state
158
+ ;
159
+ let currentTokenValue = '';
160
+ for (let i = 0; i < expandedFormat.length; i += 1) {
161
+ const escapedPartOfCurrentChar = escapedParts.find(escapeIndex => escapeIndex.start <= i && escapeIndex.end >= i);
162
+ const char = expandedFormat[i];
163
+ const isEscapedChar = escapedPartOfCurrentChar != null;
164
+ const potentialToken = `${currentTokenValue}${expandedFormat.slice(i)}`;
165
+ const regExpMatch = isTokenStartRegExp.test(potentialToken);
166
+ if (!isEscapedChar && char.match(/([A-Za-z]+)/) && regExpMatch) {
167
+ currentTokenValue = potentialToken.slice(0, isTokenStartRegExp.lastIndex);
168
+ i += isTokenStartRegExp.lastIndex - 1;
169
+ } else {
170
+ // If we are on the opening or closing character of an escaped part of the format,
171
+ // Then we ignore this character.
172
+ const isEscapeBoundary = isEscapedChar && (escapedPartOfCurrentChar == null ? void 0 : escapedPartOfCurrentChar.start) === i || (escapedPartOfCurrentChar == null ? void 0 : escapedPartOfCurrentChar.end) === i;
173
+ if (!isEscapeBoundary) {
174
+ if (currentTokenValue !== '') {
175
+ sections.push(createSection(_extends({}, params, {
176
+ now,
177
+ token: currentTokenValue,
178
+ startSeparator
179
+ })));
180
+ currentTokenValue = '';
181
+ }
182
+ if (sections.length === 0) {
183
+ startSeparator += char;
184
+ } else {
185
+ startSeparator = '';
186
+ sections[sections.length - 1].endSeparator += char;
187
+ }
188
+ }
189
+ }
190
+ }
191
+ if (currentTokenValue !== '') {
192
+ sections.push(createSection(_extends({}, params, {
193
+ now,
194
+ token: currentTokenValue,
195
+ startSeparator
196
+ })));
197
+ }
198
+ if (sections.length === 0 && startSeparator.length > 0) {
199
+ sections.push({
200
+ type: 'empty',
201
+ contentType: 'letter',
202
+ maxLength: null,
203
+ format: '',
204
+ value: '',
205
+ placeholder: '',
206
+ hasLeadingZerosInFormat: false,
207
+ hasLeadingZerosInInput: false,
208
+ startSeparator,
209
+ endSeparator: '',
210
+ modified: false
211
+ });
212
+ }
213
+ return sections;
214
+ };
215
+ const postProcessSections = ({
216
+ isRTL,
217
+ formatDensity,
218
+ sections
219
+ }) => {
220
+ return sections.map(section => {
221
+ const cleanSeparator = separator => {
222
+ let cleanedSeparator = separator;
223
+ if (isRTL && cleanedSeparator !== null && cleanedSeparator.includes(' ')) {
224
+ cleanedSeparator = `\u2069${cleanedSeparator}\u2066`;
225
+ }
226
+ if (formatDensity === 'spacious' && ['/', '.', '-'].includes(cleanedSeparator)) {
227
+ cleanedSeparator = ` ${cleanedSeparator} `;
228
+ }
229
+ return cleanedSeparator;
230
+ };
231
+ section.startSeparator = cleanSeparator(section.startSeparator);
232
+ section.endSeparator = cleanSeparator(section.endSeparator);
233
+ return section;
234
+ });
235
+ };
236
+ export const buildSectionsFromFormat = params => {
237
+ let expandedFormat = expandFormat(params);
238
+ if (params.isRTL && params.enableAccessibleFieldDOMStructure) {
239
+ expandedFormat = expandedFormat.split(' ').reverse().join(' ');
240
+ }
241
+ const escapedParts = getEscapedPartsFromFormat(_extends({}, params, {
242
+ expandedFormat
243
+ }));
244
+ const sections = buildSections(_extends({}, params, {
245
+ expandedFormat,
246
+ escapedParts
247
+ }));
248
+ return postProcessSections(_extends({}, params, {
249
+ sections
250
+ }));
251
+ };
@@ -1,3 +1,3 @@
1
1
  export { useField } from './useField';
2
- export type { FieldValueManager, UseFieldInternalProps, UseFieldForwardedProps, UseFieldParams, UseFieldResponse, FieldChangeHandler, FieldChangeHandlerContext, FieldRef, } from './useField.types';
3
- export { splitFormatIntoSections, addPositionPropertiesToSections, createDateStrForInputFromSections, } from './useField.utils';
2
+ export type { FieldValueManager, UseFieldInternalProps, UseFieldParams, UseFieldResponse, FieldChangeHandler, FieldChangeHandlerContext, } from './useField.types';
3
+ export { createDateStrForV7HiddenInputFromSections, createDateStrForV6InputFromSections, } from './useField.utils';
@@ -1,2 +1,2 @@
1
1
  export { useField } from './useField';
2
- export { splitFormatIntoSections, addPositionPropertiesToSections, createDateStrForInputFromSections } from './useField.utils';
2
+ export { createDateStrForV7HiddenInputFromSections, createDateStrForV6InputFromSections } from './useField.utils';
@@ -1,5 +1,5 @@
1
- import { UseFieldParams, UseFieldResponse, UseFieldForwardedProps, UseFieldInternalProps } from './useField.types';
2
- import { FieldSection, PickerValidDate } from '../../../models';
3
- export declare const useField: <TValue, TDate extends PickerValidDate, TSection extends FieldSection, TForwardedProps extends UseFieldForwardedProps, TInternalProps extends UseFieldInternalProps<any, any, any, any> & {
1
+ import { UseFieldParams, UseFieldResponse, UseFieldCommonForwardedProps, UseFieldInternalProps } from './useField.types';
2
+ import { PickerValidDate, FieldSection } from '../../../models';
3
+ export declare const useField: <TValue, TDate extends PickerValidDate, TSection extends FieldSection, TEnableAccessibleFieldDOMStructure extends boolean, TForwardedProps extends UseFieldCommonForwardedProps & (TEnableAccessibleFieldDOMStructure extends false ? import("./useField.types").UseFieldV6ForwardedProps : import("./useField.types").UseFieldV7ForwardedProps), TInternalProps extends UseFieldInternalProps<any, any, any, TEnableAccessibleFieldDOMStructure, any> & {
4
4
  minutesStep?: number | undefined;
5
- }>(params: UseFieldParams<TValue, TDate, TSection, TForwardedProps, TInternalProps>) => UseFieldResponse<TForwardedProps>;
5
+ }>(params: UseFieldParams<TValue, TDate, TSection, TEnableAccessibleFieldDOMStructure, TForwardedProps, TInternalProps>) => UseFieldResponse<TEnableAccessibleFieldDOMStructure, TForwardedProps>;