@mui/x-date-pickers 8.0.0-alpha.1 → 8.0.0-alpha.11

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 (580) hide show
  1. package/AdapterDateFns/AdapterDateFns.d.ts +2 -4
  2. package/AdapterDateFns/AdapterDateFns.js +49 -47
  3. package/AdapterDateFnsBase/AdapterDateFnsBase.d.ts +1 -1
  4. package/AdapterDateFnsJalali/AdapterDateFnsJalali.d.ts +2 -4
  5. package/AdapterDateFnsJalali/AdapterDateFnsJalali.js +48 -46
  6. package/{AdapterDateFnsJalaliV3/AdapterDateFnsJalaliV3.d.ts → AdapterDateFnsJalaliV2/AdapterDateFnsJalaliV2.d.ts} +2 -2
  7. package/{AdapterDateFnsJalaliV3/AdapterDateFnsJalaliV3.js → AdapterDateFnsJalaliV2/AdapterDateFnsJalaliV2.js} +45 -52
  8. package/AdapterDateFnsJalaliV2/index.d.ts +1 -0
  9. package/AdapterDateFnsJalaliV2/index.js +1 -0
  10. package/{AdapterDateFnsJalaliV3 → AdapterDateFnsJalaliV2}/package.json +1 -1
  11. package/{AdapterDateFnsV3/AdapterDateFnsV3.d.ts → AdapterDateFnsV2/AdapterDateFnsV2.d.ts} +2 -2
  12. package/{AdapterDateFnsV3/AdapterDateFnsV3.js → AdapterDateFnsV2/AdapterDateFnsV2.js} +46 -54
  13. package/AdapterDateFnsV2/index.d.ts +1 -0
  14. package/AdapterDateFnsV2/index.js +1 -0
  15. package/{AdapterDateFnsV3 → AdapterDateFnsV2}/package.json +1 -1
  16. package/AdapterDayjs/AdapterDayjs.d.ts +1 -1
  17. package/AdapterLuxon/AdapterLuxon.d.ts +1 -1
  18. package/AdapterMoment/AdapterMoment.d.ts +1 -1
  19. package/AdapterMoment/AdapterMoment.js +10 -0
  20. package/CHANGELOG.md +2007 -230
  21. package/DateCalendar/DateCalendar.js +41 -22
  22. package/DateCalendar/DateCalendar.types.d.ts +2 -1
  23. package/DateCalendar/DayCalendar.d.ts +1 -2
  24. package/DateCalendar/DayCalendar.js +12 -36
  25. package/DateCalendar/PickersFadeTransitionGroup.d.ts +1 -1
  26. package/DateCalendar/PickersFadeTransitionGroup.js +4 -6
  27. package/DateCalendar/PickersSlideTransition.d.ts +1 -1
  28. package/DateCalendar/PickersSlideTransition.js +12 -5
  29. package/DateCalendar/useCalendarState.d.ts +13 -27
  30. package/DateCalendar/useCalendarState.js +65 -55
  31. package/DateField/DateField.js +29 -33
  32. package/DateField/DateField.types.d.ts +7 -15
  33. package/DateField/useDateField.d.ts +1 -1
  34. package/DateField/useDateField.js +14 -11
  35. package/DatePicker/DatePicker.js +1 -1
  36. package/DatePicker/DatePicker.types.d.ts +7 -3
  37. package/DatePicker/DatePickerToolbar.d.ts +1 -2
  38. package/DatePicker/DatePickerToolbar.js +17 -33
  39. package/DatePicker/shared.d.ts +6 -5
  40. package/DateTimeField/DateTimeField.js +29 -33
  41. package/DateTimeField/DateTimeField.types.d.ts +7 -16
  42. package/DateTimeField/useDateTimeField.d.ts +1 -1
  43. package/DateTimeField/useDateTimeField.js +14 -11
  44. package/DateTimePicker/DateTimePicker.js +2 -2
  45. package/DateTimePicker/DateTimePicker.types.d.ts +4 -5
  46. package/DateTimePicker/DateTimePickerTabs.d.ts +2 -5
  47. package/DateTimePicker/DateTimePickerTabs.js +15 -20
  48. package/DateTimePicker/DateTimePickerToolbar.d.ts +16 -5
  49. package/DateTimePicker/DateTimePickerToolbar.js +88 -80
  50. package/DateTimePicker/shared.d.ts +8 -8
  51. package/DayCalendarSkeleton/DayCalendarSkeleton.js +10 -19
  52. package/DesktopDatePicker/DesktopDatePicker.js +11 -17
  53. package/DesktopDatePicker/DesktopDatePicker.types.d.ts +7 -3
  54. package/DesktopDateTimePicker/DesktopDateTimePicker.js +17 -27
  55. package/DesktopDateTimePicker/DesktopDateTimePicker.types.d.ts +2 -2
  56. package/DesktopDateTimePicker/DesktopDateTimePickerLayout.d.ts +2 -2
  57. package/DesktopDateTimePicker/DesktopDateTimePickerLayout.js +9 -34
  58. package/DesktopTimePicker/DesktopTimePicker.js +6 -22
  59. package/DesktopTimePicker/DesktopTimePicker.types.d.ts +2 -2
  60. package/DigitalClock/DigitalClock.js +13 -11
  61. package/DigitalClock/DigitalClock.types.d.ts +8 -2
  62. package/MobileDatePicker/MobileDatePicker.js +4 -14
  63. package/MobileDatePicker/MobileDatePicker.types.d.ts +2 -3
  64. package/MobileDateTimePicker/MobileDateTimePicker.js +4 -14
  65. package/MobileDateTimePicker/MobileDateTimePicker.types.d.ts +4 -4
  66. package/MobileTimePicker/MobileTimePicker.js +4 -14
  67. package/MobileTimePicker/MobileTimePicker.types.d.ts +4 -4
  68. package/MonthCalendar/MonthCalendar.d.ts +1 -1
  69. package/MonthCalendar/MonthCalendar.js +31 -11
  70. package/MonthCalendar/MonthCalendar.types.d.ts +2 -2
  71. package/MonthCalendar/MonthCalendarButton.d.ts +24 -0
  72. package/{modern/MonthCalendar/PickersMonth.js → MonthCalendar/MonthCalendarButton.js} +20 -61
  73. package/MonthCalendar/index.d.ts +0 -3
  74. package/MonthCalendar/index.js +1 -2
  75. package/MonthCalendar/monthCalendarClasses.d.ts +7 -1
  76. package/MonthCalendar/monthCalendarClasses.js +1 -1
  77. package/MultiSectionDigitalClock/MultiSectionDigitalClock.js +11 -7
  78. package/MultiSectionDigitalClock/MultiSectionDigitalClock.types.d.ts +6 -6
  79. package/MultiSectionDigitalClock/MultiSectionDigitalClockSection.d.ts +4 -4
  80. package/MultiSectionDigitalClock/MultiSectionDigitalClockSection.js +14 -10
  81. package/PickersActionBar/PickersActionBar.d.ts +6 -7
  82. package/PickersActionBar/PickersActionBar.js +26 -17
  83. package/PickersCalendarHeader/PickersCalendarHeader.js +12 -9
  84. package/PickersCalendarHeader/PickersCalendarHeader.types.d.ts +4 -6
  85. package/PickersLayout/PickersLayout.d.ts +7 -5
  86. package/PickersLayout/PickersLayout.js +23 -42
  87. package/PickersLayout/PickersLayout.types.d.ts +20 -22
  88. package/PickersLayout/usePickerLayout.d.ts +5 -4
  89. package/PickersLayout/usePickerLayout.js +26 -53
  90. package/PickersSectionList/PickersSectionList.js +21 -16
  91. package/PickersSectionList/PickersSectionList.types.d.ts +13 -6
  92. package/PickersShortcuts/PickersShortcuts.d.ts +9 -11
  93. package/PickersShortcuts/PickersShortcuts.js +21 -11
  94. package/PickersShortcuts/index.d.ts +1 -1
  95. package/PickersTextField/PickersFilledInput/PickersFilledInput.d.ts +7 -0
  96. package/PickersTextField/PickersFilledInput/PickersFilledInput.js +34 -28
  97. package/PickersTextField/PickersFilledInput/pickersFilledInputClasses.d.ts +1 -1
  98. package/PickersTextField/PickersInput/PickersInput.js +20 -14
  99. package/PickersTextField/PickersInput/pickersInputClasses.d.ts +3 -2
  100. package/PickersTextField/PickersInput/pickersInputClasses.js +1 -1
  101. package/PickersTextField/PickersInputBase/PickersInputBase.d.ts +3 -6
  102. package/PickersTextField/PickersInputBase/PickersInputBase.js +45 -38
  103. package/PickersTextField/PickersInputBase/PickersInputBase.types.d.ts +1 -0
  104. package/PickersTextField/PickersOutlinedInput/Outline.d.ts +0 -1
  105. package/PickersTextField/PickersOutlinedInput/Outline.js +13 -10
  106. package/PickersTextField/PickersOutlinedInput/PickersOutlinedInput.js +8 -14
  107. package/PickersTextField/PickersTextField.js +75 -62
  108. package/PickersTextField/PickersTextField.types.d.ts +43 -4
  109. package/PickersTextField/usePickerTextFieldOwnerState.d.ts +4 -0
  110. package/PickersTextField/usePickerTextFieldOwnerState.js +11 -0
  111. package/README.md +8 -5
  112. package/StaticDatePicker/StaticDatePicker.js +2 -2
  113. package/StaticDatePicker/StaticDatePicker.types.d.ts +2 -3
  114. package/StaticDateTimePicker/StaticDateTimePicker.js +2 -2
  115. package/StaticDateTimePicker/StaticDateTimePicker.types.d.ts +2 -2
  116. package/StaticTimePicker/StaticTimePicker.js +2 -2
  117. package/StaticTimePicker/StaticTimePicker.types.d.ts +2 -2
  118. package/TimeClock/Clock.d.ts +4 -0
  119. package/TimeClock/Clock.js +27 -27
  120. package/TimeClock/ClockNumber.js +15 -11
  121. package/TimeClock/ClockPointer.d.ts +6 -1
  122. package/TimeClock/ClockPointer.js +16 -10
  123. package/TimeClock/TimeClock.js +30 -12
  124. package/TimeField/TimeField.js +28 -32
  125. package/TimeField/TimeField.types.d.ts +7 -16
  126. package/TimeField/useTimeField.d.ts +1 -1
  127. package/TimeField/useTimeField.js +14 -11
  128. package/TimePicker/TimePicker.js +2 -2
  129. package/TimePicker/TimePicker.types.d.ts +4 -5
  130. package/TimePicker/TimePickerToolbar.d.ts +1 -3
  131. package/TimePicker/TimePickerToolbar.js +36 -51
  132. package/TimePicker/shared.d.ts +6 -6
  133. package/YearCalendar/YearCalendar.js +46 -13
  134. package/YearCalendar/YearCalendar.types.d.ts +2 -2
  135. package/YearCalendar/YearCalendarButton.d.ts +23 -0
  136. package/{modern/YearCalendar/PickersYear.js → YearCalendar/YearCalendarButton.js} +20 -59
  137. package/YearCalendar/index.d.ts +0 -3
  138. package/YearCalendar/index.js +1 -2
  139. package/YearCalendar/yearCalendarClasses.d.ts +7 -1
  140. package/YearCalendar/yearCalendarClasses.js +1 -1
  141. package/hooks/index.d.ts +2 -0
  142. package/hooks/index.js +3 -1
  143. package/hooks/useClearableField.d.ts +5 -3
  144. package/hooks/useClearableField.js +4 -2
  145. package/hooks/useIsValidValue.d.ts +7 -0
  146. package/hooks/useIsValidValue.js +11 -0
  147. package/hooks/useParsedFormat.d.ts +9 -7
  148. package/hooks/useParsedFormat.js +11 -13
  149. package/hooks/usePickerActionsContext.d.ts +7 -0
  150. package/hooks/usePickerActionsContext.js +15 -0
  151. package/hooks/usePickerContext.d.ts +5 -1
  152. package/hooks/usePickerContext.js +2 -2
  153. package/hooks/useSplitFieldProps.d.ts +12 -3
  154. package/hooks/useSplitFieldProps.js +8 -3
  155. package/index.d.ts +1 -0
  156. package/index.js +3 -2
  157. package/internals/components/PickerFieldUI.d.ts +133 -0
  158. package/internals/components/PickerFieldUI.js +317 -0
  159. package/internals/components/{PickersPopper.d.ts → PickerPopper/PickerPopper.d.ts} +26 -25
  160. package/{modern/internals/components/PickersPopper.js → internals/components/PickerPopper/PickerPopper.js} +47 -47
  161. package/internals/components/PickerPopper/index.d.ts +4 -0
  162. package/internals/components/PickerPopper/index.js +2 -0
  163. package/internals/components/PickerPopper/pickerPopperClasses.d.ts +9 -0
  164. package/internals/components/PickerPopper/pickerPopperClasses.js +6 -0
  165. package/internals/components/PickerProvider.d.ts +86 -32
  166. package/internals/components/PickerProvider.js +25 -7
  167. package/internals/components/PickersArrowSwitcher/PickersArrowSwitcher.js +12 -11
  168. package/internals/components/PickersArrowSwitcher/PickersArrowSwitcher.types.d.ts +11 -8
  169. package/internals/components/PickersModalDialog.d.ts +1 -3
  170. package/internals/components/PickersModalDialog.js +9 -3
  171. package/internals/components/PickersToolbar.d.ts +2 -3
  172. package/internals/components/PickersToolbar.js +15 -12
  173. package/internals/components/PickersToolbarButton.js +4 -6
  174. package/internals/components/PickersToolbarText.js +11 -13
  175. package/internals/hooks/date-helpers-hooks.js +4 -3
  176. package/internals/hooks/useClockReferenceDate.d.ts +2 -1
  177. package/internals/hooks/useDesktopPicker/useDesktopPicker.d.ts +1 -1
  178. package/internals/hooks/useDesktopPicker/useDesktopPicker.js +35 -120
  179. package/internals/hooks/useDesktopPicker/useDesktopPicker.types.d.ts +16 -38
  180. package/internals/hooks/useField/buildSectionsFromFormat.js +1 -1
  181. package/internals/hooks/useField/index.d.ts +2 -0
  182. package/internals/hooks/useField/index.js +2 -1
  183. package/internals/hooks/useField/useField.d.ts +3 -3
  184. package/internals/hooks/useField/useField.js +17 -4
  185. package/internals/hooks/useField/useField.types.d.ts +55 -48
  186. package/internals/hooks/useField/useField.utils.d.ts +4 -3
  187. package/internals/hooks/useField/useField.utils.js +2 -2
  188. package/internals/hooks/useField/useFieldCharacterEditing.d.ts +6 -5
  189. package/internals/hooks/useField/useFieldInternalPropsWithDefaults.d.ts +15 -0
  190. package/internals/hooks/useField/useFieldInternalPropsWithDefaults.js +47 -0
  191. package/internals/hooks/useField/useFieldState.d.ts +9 -8
  192. package/internals/hooks/useField/useFieldState.js +2 -3
  193. package/internals/hooks/useField/useFieldV6TextField.d.ts +4 -3
  194. package/internals/hooks/useField/useFieldV6TextField.js +5 -2
  195. package/internals/hooks/useField/useFieldV7TextField.js +6 -3
  196. package/internals/hooks/useFieldOwnerState.d.ts +6 -0
  197. package/internals/hooks/useFieldOwnerState.js +16 -0
  198. package/internals/hooks/useMobilePicker/useMobilePicker.d.ts +1 -1
  199. package/internals/hooks/useMobilePicker/useMobilePicker.js +34 -68
  200. package/internals/hooks/useMobilePicker/useMobilePicker.types.d.ts +15 -22
  201. package/internals/hooks/useNullablePickerContext.d.ts +5 -0
  202. package/internals/hooks/useNullablePickerContext.js +10 -0
  203. package/internals/hooks/useOpenState.d.ts +3 -2
  204. package/internals/hooks/useOpenState.js +11 -9
  205. package/internals/hooks/usePicker/index.d.ts +1 -1
  206. package/internals/hooks/usePicker/usePicker.d.ts +3 -4
  207. package/internals/hooks/usePicker/usePicker.js +4 -20
  208. package/internals/hooks/usePicker/usePicker.types.d.ts +10 -10
  209. package/internals/hooks/usePicker/usePickerProvider.d.ts +45 -10
  210. package/internals/hooks/usePicker/usePickerProvider.js +50 -16
  211. package/internals/hooks/usePicker/usePickerValue.d.ts +3 -2
  212. package/internals/hooks/usePicker/usePickerValue.js +84 -214
  213. package/internals/hooks/usePicker/usePickerValue.types.d.ts +130 -75
  214. package/internals/hooks/usePicker/usePickerViews.d.ts +59 -41
  215. package/internals/hooks/usePicker/usePickerViews.js +31 -20
  216. package/internals/hooks/useReduceAnimations.d.ts +2 -0
  217. package/internals/hooks/{useDefaultReduceAnimations.js → useReduceAnimations.js} +5 -2
  218. package/internals/hooks/useStaticPicker/useStaticPicker.d.ts +1 -1
  219. package/internals/hooks/useStaticPicker/useStaticPicker.js +7 -12
  220. package/internals/hooks/useStaticPicker/useStaticPicker.types.d.ts +7 -13
  221. package/internals/hooks/useToolbarOwnerState.d.ts +10 -0
  222. package/internals/hooks/useToolbarOwnerState.js +13 -0
  223. package/internals/hooks/useUtils.d.ts +4 -3
  224. package/internals/hooks/useUtils.js +1 -1
  225. package/internals/hooks/useValueWithTimezone.d.ts +5 -4
  226. package/internals/hooks/useViews.d.ts +5 -5
  227. package/internals/index.d.ts +27 -18
  228. package/internals/index.js +13 -8
  229. package/internals/models/common.d.ts +1 -1
  230. package/internals/models/fields.d.ts +8 -24
  231. package/internals/models/index.d.ts +1 -0
  232. package/internals/models/index.js +2 -1
  233. package/internals/models/manager.d.ts +15 -0
  234. package/internals/models/manager.js +1 -0
  235. package/internals/models/pickers.d.ts +1 -0
  236. package/internals/models/pickers.js +1 -0
  237. package/internals/models/props/basePickerProps.d.ts +3 -33
  238. package/internals/models/props/tabs.d.ts +0 -13
  239. package/internals/models/props/time.d.ts +2 -1
  240. package/internals/models/props/toolbar.d.ts +1 -19
  241. package/internals/models/value.d.ts +9 -0
  242. package/internals/utils/date-utils.d.ts +1 -1
  243. package/internals/utils/date-utils.js +1 -1
  244. package/internals/utils/utils.d.ts +3 -0
  245. package/internals/utils/utils.js +11 -1
  246. package/internals/utils/valueManagers.d.ts +4 -3
  247. package/internals/utils/valueManagers.js +4 -4
  248. package/locales/index.d.ts +1 -0
  249. package/locales/index.js +1 -0
  250. package/locales/nbNO.js +15 -19
  251. package/locales/nlNL.js +7 -7
  252. package/locales/roRO.js +15 -18
  253. package/locales/utils/getPickersLocalization.d.ts +0 -7
  254. package/locales/utils/getPickersLocalization.js +0 -13
  255. package/locales/zhTW.d.ts +80 -0
  256. package/locales/zhTW.js +73 -0
  257. package/managers/index.d.ts +6 -0
  258. package/managers/index.js +3 -0
  259. package/managers/package.json +6 -0
  260. package/managers/useDateManager.d.ts +27 -0
  261. package/managers/useDateManager.js +55 -0
  262. package/managers/useDateTimeManager.d.ts +28 -0
  263. package/managers/useDateTimeManager.js +60 -0
  264. package/managers/useTimeManager.d.ts +28 -0
  265. package/managers/useTimeManager.js +51 -0
  266. package/models/adapters.d.ts +5 -5
  267. package/models/fields.d.ts +33 -9
  268. package/models/index.d.ts +1 -0
  269. package/models/index.js +1 -0
  270. package/models/manager.d.ts +87 -0
  271. package/models/manager.js +1 -0
  272. package/models/pickers.d.ts +7 -0
  273. package/models/validation.d.ts +2 -1
  274. package/modern/AdapterDateFns/AdapterDateFns.js +49 -47
  275. package/modern/AdapterDateFnsJalali/AdapterDateFnsJalali.js +48 -46
  276. package/modern/{AdapterDateFnsJalaliV3/AdapterDateFnsJalaliV3.js → AdapterDateFnsJalaliV2/AdapterDateFnsJalaliV2.js} +45 -52
  277. package/modern/AdapterDateFnsJalaliV2/index.js +1 -0
  278. package/modern/{AdapterDateFnsV3/AdapterDateFnsV3.js → AdapterDateFnsV2/AdapterDateFnsV2.js} +46 -54
  279. package/modern/AdapterDateFnsV2/index.js +1 -0
  280. package/modern/AdapterMoment/AdapterMoment.js +10 -0
  281. package/modern/DateCalendar/DateCalendar.js +41 -22
  282. package/modern/DateCalendar/DayCalendar.js +12 -36
  283. package/modern/DateCalendar/PickersFadeTransitionGroup.js +4 -6
  284. package/modern/DateCalendar/PickersSlideTransition.js +12 -5
  285. package/modern/DateCalendar/useCalendarState.js +65 -55
  286. package/modern/DateField/DateField.js +29 -33
  287. package/modern/DateField/useDateField.js +14 -11
  288. package/modern/DatePicker/DatePicker.js +1 -1
  289. package/modern/DatePicker/DatePickerToolbar.js +17 -33
  290. package/modern/DateTimeField/DateTimeField.js +29 -33
  291. package/modern/DateTimeField/useDateTimeField.js +14 -11
  292. package/modern/DateTimePicker/DateTimePicker.js +2 -2
  293. package/modern/DateTimePicker/DateTimePickerTabs.js +15 -20
  294. package/modern/DateTimePicker/DateTimePickerToolbar.js +88 -80
  295. package/modern/DayCalendarSkeleton/DayCalendarSkeleton.js +10 -19
  296. package/modern/DesktopDatePicker/DesktopDatePicker.js +11 -17
  297. package/modern/DesktopDateTimePicker/DesktopDateTimePicker.js +17 -27
  298. package/modern/DesktopDateTimePicker/DesktopDateTimePickerLayout.js +9 -34
  299. package/modern/DesktopTimePicker/DesktopTimePicker.js +6 -22
  300. package/modern/DigitalClock/DigitalClock.js +13 -11
  301. package/modern/MobileDatePicker/MobileDatePicker.js +4 -14
  302. package/modern/MobileDateTimePicker/MobileDateTimePicker.js +4 -14
  303. package/modern/MobileTimePicker/MobileTimePicker.js +4 -14
  304. package/modern/MonthCalendar/MonthCalendar.js +31 -11
  305. package/{MonthCalendar/PickersMonth.js → modern/MonthCalendar/MonthCalendarButton.js} +20 -61
  306. package/modern/MonthCalendar/index.js +1 -2
  307. package/modern/MonthCalendar/monthCalendarClasses.js +1 -1
  308. package/modern/MultiSectionDigitalClock/MultiSectionDigitalClock.js +11 -7
  309. package/modern/MultiSectionDigitalClock/MultiSectionDigitalClockSection.js +14 -10
  310. package/modern/PickersActionBar/PickersActionBar.js +26 -17
  311. package/modern/PickersCalendarHeader/PickersCalendarHeader.js +12 -9
  312. package/modern/PickersLayout/PickersLayout.js +23 -42
  313. package/modern/PickersLayout/usePickerLayout.js +26 -53
  314. package/modern/PickersSectionList/PickersSectionList.js +21 -16
  315. package/modern/PickersShortcuts/PickersShortcuts.js +21 -11
  316. package/modern/PickersTextField/PickersFilledInput/PickersFilledInput.js +34 -28
  317. package/modern/PickersTextField/PickersInput/PickersInput.js +20 -14
  318. package/modern/PickersTextField/PickersInput/pickersInputClasses.js +1 -1
  319. package/modern/PickersTextField/PickersInputBase/PickersInputBase.js +45 -38
  320. package/modern/PickersTextField/PickersOutlinedInput/Outline.js +13 -10
  321. package/modern/PickersTextField/PickersOutlinedInput/PickersOutlinedInput.js +8 -14
  322. package/modern/PickersTextField/PickersTextField.js +75 -62
  323. package/modern/PickersTextField/usePickerTextFieldOwnerState.js +11 -0
  324. package/modern/StaticDatePicker/StaticDatePicker.js +2 -2
  325. package/modern/StaticDateTimePicker/StaticDateTimePicker.js +2 -2
  326. package/modern/StaticTimePicker/StaticTimePicker.js +2 -2
  327. package/modern/TimeClock/Clock.js +27 -27
  328. package/modern/TimeClock/ClockNumber.js +15 -11
  329. package/modern/TimeClock/ClockPointer.js +16 -10
  330. package/modern/TimeClock/TimeClock.js +30 -12
  331. package/modern/TimeField/TimeField.js +28 -32
  332. package/modern/TimeField/useTimeField.js +14 -11
  333. package/modern/TimePicker/TimePicker.js +2 -2
  334. package/modern/TimePicker/TimePickerToolbar.js +36 -51
  335. package/modern/YearCalendar/YearCalendar.js +46 -13
  336. package/{YearCalendar/PickersYear.js → modern/YearCalendar/YearCalendarButton.js} +20 -59
  337. package/modern/YearCalendar/index.js +1 -2
  338. package/modern/YearCalendar/yearCalendarClasses.js +1 -1
  339. package/modern/hooks/index.js +3 -1
  340. package/modern/hooks/useClearableField.js +4 -2
  341. package/modern/hooks/useIsValidValue.js +11 -0
  342. package/modern/hooks/useParsedFormat.js +11 -13
  343. package/modern/hooks/usePickerActionsContext.js +15 -0
  344. package/modern/hooks/usePickerContext.js +2 -2
  345. package/modern/hooks/useSplitFieldProps.js +8 -3
  346. package/modern/index.js +3 -2
  347. package/modern/internals/components/PickerFieldUI.js +317 -0
  348. package/{internals/components/PickersPopper.js → modern/internals/components/PickerPopper/PickerPopper.js} +47 -47
  349. package/modern/internals/components/PickerPopper/index.js +2 -0
  350. package/modern/internals/components/PickerPopper/pickerPopperClasses.js +6 -0
  351. package/modern/internals/components/PickerProvider.js +25 -7
  352. package/modern/internals/components/PickersArrowSwitcher/PickersArrowSwitcher.js +12 -11
  353. package/modern/internals/components/PickersModalDialog.js +9 -3
  354. package/modern/internals/components/PickersToolbar.js +15 -12
  355. package/modern/internals/components/PickersToolbarButton.js +4 -6
  356. package/modern/internals/components/PickersToolbarText.js +11 -13
  357. package/modern/internals/hooks/date-helpers-hooks.js +4 -3
  358. package/modern/internals/hooks/useDesktopPicker/useDesktopPicker.js +35 -120
  359. package/modern/internals/hooks/useField/buildSectionsFromFormat.js +1 -1
  360. package/modern/internals/hooks/useField/index.js +2 -1
  361. package/modern/internals/hooks/useField/useField.js +17 -4
  362. package/modern/internals/hooks/useField/useField.utils.js +2 -2
  363. package/modern/internals/hooks/useField/useFieldInternalPropsWithDefaults.js +47 -0
  364. package/modern/internals/hooks/useField/useFieldState.js +2 -3
  365. package/modern/internals/hooks/useField/useFieldV6TextField.js +5 -2
  366. package/modern/internals/hooks/useField/useFieldV7TextField.js +6 -3
  367. package/modern/internals/hooks/useFieldOwnerState.js +16 -0
  368. package/modern/internals/hooks/useMobilePicker/useMobilePicker.js +34 -68
  369. package/modern/internals/hooks/useNullablePickerContext.js +10 -0
  370. package/modern/internals/hooks/useOpenState.js +11 -9
  371. package/modern/internals/hooks/usePicker/usePicker.js +4 -20
  372. package/modern/internals/hooks/usePicker/usePickerProvider.js +50 -16
  373. package/modern/internals/hooks/usePicker/usePickerValue.js +84 -214
  374. package/modern/internals/hooks/usePicker/usePickerViews.js +31 -20
  375. package/modern/internals/hooks/{useDefaultReduceAnimations.js → useReduceAnimations.js} +5 -2
  376. package/modern/internals/hooks/useStaticPicker/useStaticPicker.js +7 -12
  377. package/modern/internals/hooks/useToolbarOwnerState.js +13 -0
  378. package/modern/internals/hooks/useUtils.js +1 -1
  379. package/modern/internals/index.js +13 -8
  380. package/modern/internals/models/index.js +2 -1
  381. package/modern/internals/models/manager.js +1 -0
  382. package/modern/internals/models/pickers.js +1 -0
  383. package/modern/internals/utils/date-utils.js +1 -1
  384. package/modern/internals/utils/utils.js +11 -1
  385. package/modern/internals/utils/valueManagers.js +4 -4
  386. package/modern/locales/index.js +1 -0
  387. package/modern/locales/nbNO.js +15 -19
  388. package/modern/locales/nlNL.js +7 -7
  389. package/modern/locales/roRO.js +15 -18
  390. package/modern/locales/utils/getPickersLocalization.js +0 -13
  391. package/modern/locales/zhTW.js +73 -0
  392. package/modern/managers/index.js +3 -0
  393. package/modern/managers/useDateManager.js +55 -0
  394. package/modern/managers/useDateTimeManager.js +60 -0
  395. package/modern/managers/useTimeManager.js +51 -0
  396. package/modern/models/index.js +1 -0
  397. package/modern/models/manager.js +1 -0
  398. package/modern/validation/useValidation.js +1 -1
  399. package/modern/validation/validateDate.js +8 -0
  400. package/modern/validation/validateDateTime.js +8 -0
  401. package/modern/validation/validateTime.js +8 -0
  402. package/node/AdapterDateFns/AdapterDateFns.js +97 -97
  403. package/node/AdapterDateFnsJalali/AdapterDateFnsJalali.js +97 -96
  404. package/node/{AdapterDateFnsJalaliV3/AdapterDateFnsJalaliV3.js → AdapterDateFnsJalaliV2/AdapterDateFnsJalaliV2.js} +94 -101
  405. package/node/{AdapterDateFnsJalaliV3 → AdapterDateFnsJalaliV2}/index.js +1 -1
  406. package/node/AdapterDateFnsV2/AdapterDateFnsV2.js +291 -0
  407. package/node/{AdapterDateFnsV3 → AdapterDateFnsV2}/index.js +1 -1
  408. package/node/AdapterMoment/AdapterMoment.js +10 -0
  409. package/node/DateCalendar/DateCalendar.js +41 -22
  410. package/node/DateCalendar/DayCalendar.js +12 -37
  411. package/node/DateCalendar/PickersFadeTransitionGroup.js +4 -6
  412. package/node/DateCalendar/PickersSlideTransition.js +12 -5
  413. package/node/DateCalendar/useCalendarState.js +66 -57
  414. package/node/DateField/DateField.js +29 -33
  415. package/node/DateField/useDateField.js +13 -10
  416. package/node/DatePicker/DatePicker.js +1 -1
  417. package/node/DatePicker/DatePickerToolbar.js +17 -33
  418. package/node/DateTimeField/DateTimeField.js +29 -33
  419. package/node/DateTimeField/useDateTimeField.js +13 -10
  420. package/node/DateTimePicker/DateTimePicker.js +2 -2
  421. package/node/DateTimePicker/DateTimePickerTabs.js +15 -20
  422. package/node/DateTimePicker/DateTimePickerToolbar.js +89 -80
  423. package/node/DayCalendarSkeleton/DayCalendarSkeleton.js +10 -19
  424. package/node/DesktopDatePicker/DesktopDatePicker.js +11 -17
  425. package/node/DesktopDateTimePicker/DesktopDateTimePicker.js +17 -27
  426. package/node/DesktopDateTimePicker/DesktopDateTimePickerLayout.js +10 -35
  427. package/node/DesktopTimePicker/DesktopTimePicker.js +6 -22
  428. package/node/DigitalClock/DigitalClock.js +13 -11
  429. package/node/MobileDatePicker/MobileDatePicker.js +4 -14
  430. package/node/MobileDateTimePicker/MobileDateTimePicker.js +4 -14
  431. package/node/MobileTimePicker/MobileTimePicker.js +4 -14
  432. package/node/MonthCalendar/MonthCalendar.js +31 -11
  433. package/node/MonthCalendar/{PickersMonth.js → MonthCalendarButton.js} +20 -61
  434. package/node/MonthCalendar/index.js +1 -8
  435. package/node/MonthCalendar/monthCalendarClasses.js +1 -1
  436. package/node/MultiSectionDigitalClock/MultiSectionDigitalClock.js +11 -7
  437. package/node/MultiSectionDigitalClock/MultiSectionDigitalClockSection.js +13 -10
  438. package/node/PickersActionBar/PickersActionBar.js +28 -19
  439. package/node/PickersCalendarHeader/PickersCalendarHeader.js +12 -9
  440. package/node/PickersLayout/PickersLayout.js +23 -42
  441. package/node/PickersLayout/usePickerLayout.js +30 -57
  442. package/node/PickersSectionList/PickersSectionList.js +21 -16
  443. package/node/PickersShortcuts/PickersShortcuts.js +21 -11
  444. package/node/PickersTextField/PickersFilledInput/PickersFilledInput.js +34 -28
  445. package/node/PickersTextField/PickersInput/PickersInput.js +20 -14
  446. package/node/PickersTextField/PickersInput/pickersInputClasses.js +1 -1
  447. package/node/PickersTextField/PickersInputBase/PickersInputBase.js +45 -38
  448. package/node/PickersTextField/PickersOutlinedInput/Outline.js +13 -10
  449. package/node/PickersTextField/PickersOutlinedInput/PickersOutlinedInput.js +8 -14
  450. package/node/PickersTextField/PickersTextField.js +75 -62
  451. package/node/PickersTextField/usePickerTextFieldOwnerState.js +18 -0
  452. package/node/StaticDatePicker/StaticDatePicker.js +2 -2
  453. package/node/StaticDateTimePicker/StaticDateTimePicker.js +2 -2
  454. package/node/StaticTimePicker/StaticTimePicker.js +2 -2
  455. package/node/TimeClock/Clock.js +27 -27
  456. package/node/TimeClock/ClockNumber.js +15 -11
  457. package/node/TimeClock/ClockPointer.js +15 -10
  458. package/node/TimeClock/TimeClock.js +30 -12
  459. package/node/TimeField/TimeField.js +28 -32
  460. package/node/TimeField/useTimeField.js +13 -10
  461. package/node/TimePicker/TimePicker.js +2 -2
  462. package/node/TimePicker/TimePickerToolbar.js +36 -51
  463. package/node/YearCalendar/YearCalendar.js +45 -12
  464. package/node/YearCalendar/{PickersYear.js → YearCalendarButton.js} +20 -59
  465. package/node/YearCalendar/index.js +1 -8
  466. package/node/YearCalendar/yearCalendarClasses.js +1 -1
  467. package/node/hooks/index.js +15 -1
  468. package/node/hooks/useClearableField.js +4 -2
  469. package/node/hooks/useIsValidValue.js +18 -0
  470. package/node/hooks/useParsedFormat.js +11 -13
  471. package/node/hooks/usePickerActionsContext.js +22 -0
  472. package/node/hooks/usePickerContext.js +5 -4
  473. package/node/hooks/useSplitFieldProps.js +7 -2
  474. package/node/index.js +13 -1
  475. package/node/internals/components/PickerFieldUI.js +329 -0
  476. package/node/internals/components/{PickersPopper.js → PickerPopper/PickerPopper.js} +48 -48
  477. package/node/internals/components/PickerPopper/index.js +25 -0
  478. package/node/internals/components/PickerPopper/pickerPopperClasses.js +14 -0
  479. package/node/internals/components/PickerProvider.js +27 -9
  480. package/node/internals/components/PickersArrowSwitcher/PickersArrowSwitcher.js +12 -11
  481. package/node/internals/components/PickersModalDialog.js +9 -3
  482. package/node/internals/components/PickersToolbar.js +15 -12
  483. package/node/internals/components/PickersToolbarButton.js +4 -6
  484. package/node/internals/components/PickersToolbarText.js +10 -12
  485. package/node/internals/hooks/date-helpers-hooks.js +4 -3
  486. package/node/internals/hooks/useDesktopPicker/useDesktopPicker.js +37 -122
  487. package/node/internals/hooks/useField/buildSectionsFromFormat.js +1 -1
  488. package/node/internals/hooks/useField/index.js +8 -1
  489. package/node/internals/hooks/useField/useField.js +16 -3
  490. package/node/internals/hooks/useField/useField.utils.js +2 -2
  491. package/node/internals/hooks/useField/useFieldInternalPropsWithDefaults.js +56 -0
  492. package/node/internals/hooks/useField/useFieldState.js +2 -3
  493. package/node/internals/hooks/useField/useFieldV6TextField.js +5 -2
  494. package/node/internals/hooks/useField/useFieldV7TextField.js +6 -3
  495. package/node/internals/hooks/useFieldOwnerState.js +24 -0
  496. package/node/internals/hooks/useMobilePicker/useMobilePicker.js +35 -69
  497. package/node/internals/hooks/useNullablePickerContext.js +16 -0
  498. package/node/internals/hooks/useOpenState.js +12 -9
  499. package/node/internals/hooks/usePicker/usePicker.js +4 -20
  500. package/node/internals/hooks/usePicker/usePickerProvider.js +51 -17
  501. package/node/internals/hooks/usePicker/usePickerValue.js +84 -213
  502. package/node/internals/hooks/usePicker/usePickerViews.js +31 -21
  503. package/node/internals/hooks/{useDefaultReduceAnimations.js → useReduceAnimations.js} +7 -4
  504. package/node/internals/hooks/useStaticPicker/useStaticPicker.js +7 -12
  505. package/node/internals/hooks/useToolbarOwnerState.js +21 -0
  506. package/node/internals/hooks/useUtils.js +1 -1
  507. package/node/internals/index.js +87 -34
  508. package/node/internals/models/index.js +11 -0
  509. package/node/internals/models/manager.js +5 -0
  510. package/node/internals/models/pickers.js +5 -0
  511. package/node/internals/utils/date-utils.js +1 -1
  512. package/node/internals/utils/utils.js +14 -2
  513. package/node/internals/utils/valueManagers.js +4 -4
  514. package/node/locales/index.js +11 -0
  515. package/node/locales/nbNO.js +15 -19
  516. package/node/locales/nlNL.js +7 -7
  517. package/node/locales/roRO.js +15 -18
  518. package/node/locales/utils/getPickersLocalization.js +2 -16
  519. package/node/locales/zhTW.js +79 -0
  520. package/node/managers/index.js +26 -0
  521. package/node/managers/useDateManager.js +63 -0
  522. package/node/managers/useDateTimeManager.js +68 -0
  523. package/node/managers/useTimeManager.js +59 -0
  524. package/node/models/index.js +11 -0
  525. package/node/models/manager.js +5 -0
  526. package/node/validation/useValidation.js +1 -1
  527. package/node/validation/validateDate.js +8 -0
  528. package/node/validation/validateDateTime.js +8 -0
  529. package/node/validation/validateTime.js +8 -0
  530. package/package.json +5 -5
  531. package/themeAugmentation/components.d.ts +3 -11
  532. package/themeAugmentation/overrides.d.ts +5 -7
  533. package/themeAugmentation/props.d.ts +7 -9
  534. package/validation/extractValidationProps.d.ts +1 -1
  535. package/validation/useValidation.d.ts +7 -6
  536. package/validation/useValidation.js +1 -1
  537. package/validation/validateDate.d.ts +12 -3
  538. package/validation/validateDate.js +8 -0
  539. package/validation/validateDateTime.d.ts +12 -4
  540. package/validation/validateDateTime.js +8 -0
  541. package/validation/validateTime.d.ts +12 -3
  542. package/validation/validateTime.js +8 -0
  543. package/AdapterDateFnsJalaliV3/index.d.ts +0 -1
  544. package/AdapterDateFnsJalaliV3/index.js +0 -1
  545. package/AdapterDateFnsV3/index.d.ts +0 -1
  546. package/AdapterDateFnsV3/index.js +0 -1
  547. package/MonthCalendar/PickersMonth.d.ts +0 -28
  548. package/MonthCalendar/pickersMonthClasses.d.ts +0 -13
  549. package/MonthCalendar/pickersMonthClasses.js +0 -5
  550. package/YearCalendar/PickersYear.d.ts +0 -27
  551. package/YearCalendar/pickersYearClasses.d.ts +0 -13
  552. package/YearCalendar/pickersYearClasses.js +0 -5
  553. package/internals/components/pickersPopperClasses.d.ts +0 -9
  554. package/internals/components/pickersPopperClasses.js +0 -5
  555. package/internals/hooks/defaultizedFieldProps.d.ts +0 -18
  556. package/internals/hooks/defaultizedFieldProps.js +0 -40
  557. package/internals/hooks/useDefaultReduceAnimations.d.ts +0 -2
  558. package/internals/hooks/useIsLandscape.d.ts +0 -4
  559. package/internals/hooks/useIsLandscape.js +0 -35
  560. package/internals/hooks/usePicker/usePickerLayoutProps.d.ts +0 -32
  561. package/internals/hooks/usePicker/usePickerLayoutProps.js +0 -31
  562. package/internals/utils/convertFieldResponseIntoMuiTextFieldProps.d.ts +0 -3
  563. package/internals/utils/convertFieldResponseIntoMuiTextFieldProps.js +0 -44
  564. package/modern/AdapterDateFnsJalaliV3/index.js +0 -1
  565. package/modern/AdapterDateFnsV3/index.js +0 -1
  566. package/modern/MonthCalendar/pickersMonthClasses.js +0 -5
  567. package/modern/YearCalendar/pickersYearClasses.js +0 -5
  568. package/modern/internals/components/pickersPopperClasses.js +0 -5
  569. package/modern/internals/hooks/defaultizedFieldProps.js +0 -40
  570. package/modern/internals/hooks/useIsLandscape.js +0 -35
  571. package/modern/internals/hooks/usePicker/usePickerLayoutProps.js +0 -31
  572. package/modern/internals/utils/convertFieldResponseIntoMuiTextFieldProps.js +0 -44
  573. package/node/AdapterDateFnsV3/AdapterDateFnsV3.js +0 -299
  574. package/node/MonthCalendar/pickersMonthClasses.js +0 -12
  575. package/node/YearCalendar/pickersYearClasses.js +0 -12
  576. package/node/internals/components/pickersPopperClasses.js +0 -12
  577. package/node/internals/hooks/defaultizedFieldProps.js +0 -50
  578. package/node/internals/hooks/useIsLandscape.js +0 -43
  579. package/node/internals/hooks/usePicker/usePickerLayoutProps.js +0 -38
  580. package/node/internals/utils/convertFieldResponseIntoMuiTextFieldProps.js +0 -52
@@ -5,6 +5,8 @@ import Fade from '@mui/material/Fade';
5
5
  import MuiDialog, { dialogClasses } from '@mui/material/Dialog';
6
6
  import { styled } from '@mui/material/styles';
7
7
  import { DIALOG_WIDTH } from "../constants/dimensions.js";
8
+ import { usePickerContext } from "../../hooks/index.js";
9
+ import { usePickerPrivateContext } from "../hooks/usePickerPrivateContext.js";
8
10
  import { jsx as _jsx } from "react/jsx-runtime";
9
11
  const PickersModalDialogRoot = styled(MuiDialog)({
10
12
  [`& .${dialogClasses.container}`]: {
@@ -23,16 +25,20 @@ const PickersModalDialogContent = styled(DialogContent)({
23
25
  export function PickersModalDialog(props) {
24
26
  const {
25
27
  children,
26
- onDismiss,
27
- open,
28
28
  slots,
29
29
  slotProps
30
30
  } = props;
31
+ const {
32
+ open
33
+ } = usePickerContext();
34
+ const {
35
+ dismissViews
36
+ } = usePickerPrivateContext();
31
37
  const Dialog = slots?.dialog ?? PickersModalDialogRoot;
32
38
  const Transition = slots?.mobileTransition ?? Fade;
33
39
  return /*#__PURE__*/_jsx(Dialog, _extends({
34
40
  open: open,
35
- onClose: onDismiss
41
+ onClose: dismissViews
36
42
  }, slotProps?.dialog, {
37
43
  TransitionComponent: Transition,
38
44
  TransitionProps: slotProps?.mobileTransition,
@@ -1,17 +1,16 @@
1
1
  import _extends from "@babel/runtime/helpers/esm/extends";
2
2
  import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/esm/objectWithoutPropertiesLoose";
3
- const _excluded = ["children", "className", "toolbarTitle", "hidden", "titleId", "isLandscape", "classes", "landscapeDirection"];
3
+ const _excluded = ["children", "className", "classes", "toolbarTitle", "hidden", "titleId", "classes", "landscapeDirection"];
4
4
  import * as React from 'react';
5
5
  import clsx from 'clsx';
6
6
  import Typography from '@mui/material/Typography';
7
7
  import { styled, useThemeProps } from '@mui/material/styles';
8
8
  import composeClasses from '@mui/utils/composeClasses';
9
+ import { shouldForwardProp } from '@mui/system/createStyled';
9
10
  import { getPickersToolbarUtilityClass } from "./pickersToolbarClasses.js";
11
+ import { useToolbarOwnerState } from "../hooks/useToolbarOwnerState.js";
10
12
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
11
- const useUtilityClasses = ownerState => {
12
- const {
13
- classes
14
- } = ownerState;
13
+ const useUtilityClasses = classes => {
15
14
  const slots = {
16
15
  root: ['root'],
17
16
  content: ['content']
@@ -32,7 +31,7 @@ const PickersToolbarRoot = styled('div', {
32
31
  padding: theme.spacing(2, 3),
33
32
  variants: [{
34
33
  props: {
35
- isLandscape: true
34
+ pickerOrientation: 'landscape'
36
35
  },
37
36
  style: {
38
37
  height: 'auto',
@@ -46,7 +45,8 @@ const PickersToolbarRoot = styled('div', {
46
45
  const PickersToolbarContent = styled('div', {
47
46
  name: 'MuiPickersToolbar',
48
47
  slot: 'Content',
49
- overridesResolver: (props, styles) => styles.content
48
+ overridesResolver: (props, styles) => styles.content,
49
+ shouldForwardProp: prop => shouldForwardProp(prop) && prop !== 'landscapeDirection'
50
50
  })({
51
51
  display: 'flex',
52
52
  flexWrap: 'wrap',
@@ -57,7 +57,7 @@ const PickersToolbarContent = styled('div', {
57
57
  flexDirection: 'row',
58
58
  variants: [{
59
59
  props: {
60
- isLandscape: true
60
+ pickerOrientation: 'landscape'
61
61
  },
62
62
  style: {
63
63
  justifyContent: 'flex-start',
@@ -66,7 +66,7 @@ const PickersToolbarContent = styled('div', {
66
66
  }
67
67
  }, {
68
68
  props: {
69
- isLandscape: true,
69
+ pickerOrientation: 'landscape',
70
70
  landscapeDirection: 'row'
71
71
  },
72
72
  style: {
@@ -82,13 +82,15 @@ export const PickersToolbar = /*#__PURE__*/React.forwardRef(function PickersTool
82
82
  const {
83
83
  children,
84
84
  className,
85
+ classes: classesProp,
85
86
  toolbarTitle,
86
87
  hidden,
87
- titleId
88
+ titleId,
89
+ landscapeDirection
88
90
  } = props,
89
91
  other = _objectWithoutPropertiesLoose(props, _excluded);
90
- const ownerState = props;
91
- const classes = useUtilityClasses(ownerState);
92
+ const ownerState = useToolbarOwnerState();
93
+ const classes = useUtilityClasses(classesProp);
92
94
  if (hidden) {
93
95
  return null;
94
96
  }
@@ -105,6 +107,7 @@ export const PickersToolbar = /*#__PURE__*/React.forwardRef(function PickersTool
105
107
  }), /*#__PURE__*/_jsx(PickersToolbarContent, {
106
108
  className: classes.content,
107
109
  ownerState: ownerState,
110
+ landscapeDirection: landscapeDirection,
108
111
  children: children
109
112
  })]
110
113
  }));
@@ -1,6 +1,6 @@
1
1
  import _extends from "@babel/runtime/helpers/esm/extends";
2
2
  import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/esm/objectWithoutPropertiesLoose";
3
- const _excluded = ["align", "className", "selected", "typographyClassName", "value", "variant", "width"];
3
+ const _excluded = ["align", "className", "classes", "selected", "typographyClassName", "value", "variant", "width"];
4
4
  import * as React from 'react';
5
5
  import clsx from 'clsx';
6
6
  import Button from '@mui/material/Button';
@@ -9,10 +9,7 @@ import composeClasses from '@mui/utils/composeClasses';
9
9
  import { PickersToolbarText } from "./PickersToolbarText.js";
10
10
  import { getPickersToolbarUtilityClass } from "./pickersToolbarClasses.js";
11
11
  import { jsx as _jsx } from "react/jsx-runtime";
12
- const useUtilityClasses = ownerState => {
13
- const {
14
- classes
15
- } = ownerState;
12
+ const useUtilityClasses = classes => {
16
13
  const slots = {
17
14
  root: ['root']
18
15
  };
@@ -35,6 +32,7 @@ export const PickersToolbarButton = /*#__PURE__*/React.forwardRef(function Picke
35
32
  const {
36
33
  align,
37
34
  className,
35
+ classes: classesProp,
38
36
  selected,
39
37
  typographyClassName,
40
38
  value,
@@ -42,7 +40,7 @@ export const PickersToolbarButton = /*#__PURE__*/React.forwardRef(function Picke
42
40
  width
43
41
  } = props,
44
42
  other = _objectWithoutPropertiesLoose(props, _excluded);
45
- const classes = useUtilityClasses(props);
43
+ const classes = useUtilityClasses(classesProp);
46
44
  return /*#__PURE__*/_jsx(PickersToolbarButtonRoot, _extends({
47
45
  variant: "text",
48
46
  ref: ref,
@@ -1,35 +1,29 @@
1
1
  import _extends from "@babel/runtime/helpers/esm/extends";
2
2
  import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/esm/objectWithoutPropertiesLoose";
3
- const _excluded = ["className", "selected", "value"];
3
+ const _excluded = ["className", "classes", "selected", "value"];
4
4
  import * as React from 'react';
5
5
  import clsx from 'clsx';
6
6
  import Typography from '@mui/material/Typography';
7
7
  import { styled, useThemeProps } from '@mui/material/styles';
8
8
  import composeClasses from '@mui/utils/composeClasses';
9
- import { getPickersToolbarTextUtilityClass, pickersToolbarTextClasses } from "./pickersToolbarTextClasses.js";
9
+ import { getPickersToolbarTextUtilityClass } from "./pickersToolbarTextClasses.js";
10
10
  import { jsx as _jsx } from "react/jsx-runtime";
11
- const useUtilityClasses = ownerState => {
12
- const {
13
- classes,
14
- selected
15
- } = ownerState;
11
+ const useUtilityClasses = classes => {
16
12
  const slots = {
17
- root: ['root', selected && 'selected']
13
+ root: ['root']
18
14
  };
19
15
  return composeClasses(slots, getPickersToolbarTextUtilityClass, classes);
20
16
  };
21
17
  const PickersToolbarTextRoot = styled(Typography, {
22
18
  name: 'MuiPickersToolbarText',
23
19
  slot: 'Root',
24
- overridesResolver: (_, styles) => [styles.root, {
25
- [`&.${pickersToolbarTextClasses.selected}`]: styles.selected
26
- }]
20
+ overridesResolver: (_, styles) => [styles.root]
27
21
  })(({
28
22
  theme
29
23
  }) => ({
30
24
  transition: theme.transitions.create('color'),
31
25
  color: (theme.vars || theme).palette.text.secondary,
32
- [`&.${pickersToolbarTextClasses.selected}`]: {
26
+ [`&[data-selected]`]: {
33
27
  color: (theme.vars || theme).palette.text.primary
34
28
  }
35
29
  }));
@@ -40,14 +34,18 @@ export const PickersToolbarText = /*#__PURE__*/React.forwardRef(function Pickers
40
34
  });
41
35
  const {
42
36
  className,
37
+ classes: classesProp,
38
+ selected,
43
39
  value
44
40
  } = props,
45
41
  other = _objectWithoutPropertiesLoose(props, _excluded);
46
- const classes = useUtilityClasses(props);
42
+ const classes = useUtilityClasses(classesProp);
47
43
  return /*#__PURE__*/_jsx(PickersToolbarTextRoot, _extends({
48
44
  ref: ref,
49
45
  className: clsx(classes.root, className),
50
46
  component: "span"
47
+ }, selected && {
48
+ 'data-selected': true
51
49
  }, other, {
52
50
  children: value
53
51
  }));
@@ -27,11 +27,12 @@ export function usePreviousMonthDisabled(month, {
27
27
  }
28
28
  export function useMeridiemMode(date, ampm, onChange, selectionState) {
29
29
  const utils = useUtils();
30
- const meridiemMode = getMeridiem(date, utils);
30
+ const cleanDate = React.useMemo(() => !utils.isValid(date) ? null : date, [utils, date]);
31
+ const meridiemMode = getMeridiem(cleanDate, utils);
31
32
  const handleMeridiemChange = React.useCallback(mode => {
32
- const timeWithMeridiem = date == null ? null : convertToMeridiem(date, mode, Boolean(ampm), utils);
33
+ const timeWithMeridiem = cleanDate == null ? null : convertToMeridiem(cleanDate, mode, Boolean(ampm), utils);
33
34
  onChange(timeWithMeridiem, selectionState ?? 'partial');
34
- }, [ampm, date, onChange, selectionState, utils]);
35
+ }, [ampm, cleanDate, onChange, selectionState, utils]);
35
36
  return {
36
37
  meridiemMode,
37
38
  handleMeridiemChange
@@ -1,18 +1,16 @@
1
1
  import _extends from "@babel/runtime/helpers/esm/extends";
2
2
  import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/esm/objectWithoutPropertiesLoose";
3
- const _excluded = ["props", "getOpenDialogAriaText"],
4
- _excluded2 = ["ownerState"],
5
- _excluded3 = ["ownerState"];
3
+ const _excluded = ["props"],
4
+ _excluded2 = ["ownerState"];
6
5
  import * as React from 'react';
7
6
  import useSlotProps from '@mui/utils/useSlotProps';
8
- import MuiInputAdornment from '@mui/material/InputAdornment';
9
- import IconButton from '@mui/material/IconButton';
10
7
  import useForkRef from '@mui/utils/useForkRef';
11
8
  import useId from '@mui/utils/useId';
12
- import { PickersPopper } from "../../components/PickersPopper.js";
9
+ import { PickerPopper } from "../../components/PickerPopper/PickerPopper.js";
13
10
  import { usePicker } from "../usePicker/index.js";
14
11
  import { PickersLayout } from "../../../PickersLayout/index.js";
15
12
  import { PickerProvider } from "../../components/PickerProvider.js";
13
+ import { PickerFieldUIContextProvider } from "../../components/PickerFieldUI.js";
16
14
 
17
15
  /**
18
16
  * Hook managing all the single-date desktop pickers:
@@ -23,130 +21,48 @@ import { PickerProvider } from "../../components/PickerProvider.js";
23
21
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
24
22
  export const useDesktopPicker = _ref => {
25
23
  let {
26
- props,
27
- getOpenDialogAriaText
24
+ props
28
25
  } = _ref,
29
26
  pickerParams = _objectWithoutPropertiesLoose(_ref, _excluded);
30
27
  const {
31
28
  slots,
32
29
  slotProps: innerSlotProps,
33
- className,
34
- sx,
35
- format,
36
- formatDensity,
37
- enableAccessibleFieldDOMStructure,
38
- selectedSections,
39
- onSelectedSectionsChange,
40
- timezone,
41
- name,
42
30
  label,
43
31
  inputRef,
44
32
  readOnly,
45
- disabled,
46
33
  autoFocus,
47
- localeText,
48
- reduceAnimations
34
+ localeText
49
35
  } = props;
50
- const containerRef = React.useRef(null);
51
36
  const fieldRef = React.useRef(null);
52
37
  const labelId = useId();
53
38
  const isToolbarHidden = innerSlotProps?.toolbar?.hidden ?? false;
54
39
  const {
55
- open,
56
- actions,
57
- hasUIView,
58
- layoutProps,
59
40
  providerProps,
60
41
  renderCurrentView,
61
- shouldRestoreFocus,
62
- fieldProps: pickerFieldProps,
63
42
  ownerState
64
43
  } = usePicker(_extends({}, pickerParams, {
65
44
  props,
66
45
  fieldRef,
67
46
  localeText,
68
47
  autoFocusView: true,
69
- additionalViewProps: {},
70
48
  variant: 'desktop'
71
49
  }));
72
- const InputAdornment = slots.inputAdornment ?? MuiInputAdornment;
50
+ const Field = slots.field;
73
51
  const _useSlotProps = useSlotProps({
74
- elementType: InputAdornment,
75
- externalSlotProps: innerSlotProps?.inputAdornment,
76
- additionalProps: {
77
- position: 'end'
78
- },
52
+ elementType: Field,
53
+ externalSlotProps: innerSlotProps?.field,
54
+ additionalProps: _extends({
55
+ // Internal props
56
+ readOnly,
57
+ autoFocus: autoFocus && !props.open,
58
+ // Forwarded props
59
+ focused: providerProps.contextValue.open ? true : undefined
60
+ }, isToolbarHidden && {
61
+ id: labelId
62
+ }),
79
63
  ownerState
80
64
  }),
81
- inputAdornmentProps = _objectWithoutPropertiesLoose(_useSlotProps, _excluded2);
82
- const OpenPickerButton = slots.openPickerButton ?? IconButton;
83
- const _useSlotProps2 = useSlotProps({
84
- elementType: OpenPickerButton,
85
- externalSlotProps: innerSlotProps?.openPickerButton,
86
- additionalProps: {
87
- disabled: disabled || readOnly,
88
- onClick: open ? actions.onClose : actions.onOpen,
89
- 'aria-label': getOpenDialogAriaText(pickerFieldProps.value),
90
- edge: inputAdornmentProps.position
91
- },
92
- ownerState
93
- }),
94
- openPickerButtonProps = _objectWithoutPropertiesLoose(_useSlotProps2, _excluded3);
95
- const OpenPickerIcon = slots.openPickerIcon;
96
- const openPickerIconProps = useSlotProps({
97
- elementType: OpenPickerIcon,
98
- externalSlotProps: innerSlotProps?.openPickerIcon,
99
- ownerState
100
- });
101
- const Field = slots.field;
102
- const fieldProps = useSlotProps({
103
- elementType: Field,
104
- externalSlotProps: innerSlotProps?.field,
105
- additionalProps: _extends({
106
- // Internal props
107
- readOnly,
108
- disabled,
109
- format,
110
- formatDensity,
111
- enableAccessibleFieldDOMStructure,
112
- selectedSections,
113
- onSelectedSectionsChange,
114
- timezone,
115
- autoFocus: autoFocus && !props.open
116
- }, pickerFieldProps, {
117
- // onChange and value
118
-
119
- // Forwarded props
120
- className,
121
- sx,
122
- label,
123
- name,
124
- focused: open ? true : undefined
125
- }, isToolbarHidden && {
126
- id: labelId
127
- }, !!inputRef && {
128
- inputRef
129
- }),
130
- ownerState
131
- });
132
-
133
- // TODO: Move to `useSlotProps` when https://github.com/mui/material-ui/pull/35088 will be merged
134
- if (hasUIView) {
135
- fieldProps.InputProps = _extends({}, fieldProps.InputProps, {
136
- ref: containerRef
137
- }, !props.disableOpenPicker && {
138
- [`${inputAdornmentProps.position}Adornment`]: /*#__PURE__*/_jsx(InputAdornment, _extends({}, inputAdornmentProps, {
139
- children: /*#__PURE__*/_jsx(OpenPickerButton, _extends({}, openPickerButtonProps, {
140
- children: /*#__PURE__*/_jsx(OpenPickerIcon, _extends({}, openPickerIconProps))
141
- }))
142
- }))
143
- });
144
- }
145
- const slotsForField = _extends({
146
- textField: slots.textField,
147
- clearIcon: slots.clearIcon,
148
- clearButton: slots.clearButton
149
- }, fieldProps.slots);
65
+ fieldProps = _objectWithoutPropertiesLoose(_useSlotProps, _excluded2);
150
66
  const Layout = slots.layout ?? PickersLayout;
151
67
  let labelledById = labelId;
152
68
  if (isToolbarHidden) {
@@ -164,28 +80,27 @@ export const useDesktopPicker = _ref => {
164
80
  'aria-labelledby': labelledById
165
81
  }, innerSlotProps?.popper)
166
82
  });
83
+
84
+ // TODO: This `as any` will go away once the field ref is handled by the context.
167
85
  const handleFieldRef = useForkRef(fieldRef, fieldProps.unstableFieldRef);
168
- const renderPicker = () => /*#__PURE__*/_jsxs(PickerProvider, _extends({}, providerProps, {
169
- children: [/*#__PURE__*/_jsx(Field, _extends({}, fieldProps, {
170
- slots: slotsForField,
171
- slotProps: slotProps,
172
- unstableFieldRef: handleFieldRef
173
- })), /*#__PURE__*/_jsx(PickersPopper, _extends({
174
- role: "dialog",
175
- placement: "bottom-start",
176
- anchorEl: containerRef.current
177
- }, actions, {
178
- open: open,
86
+ const renderPicker = () => /*#__PURE__*/_jsx(PickerProvider, _extends({}, providerProps, {
87
+ children: /*#__PURE__*/_jsxs(PickerFieldUIContextProvider, {
179
88
  slots: slots,
180
89
  slotProps: slotProps,
181
- shouldRestoreFocus: shouldRestoreFocus,
182
- reduceAnimations: reduceAnimations,
183
- children: /*#__PURE__*/_jsx(Layout, _extends({}, layoutProps, slotProps?.layout, {
90
+ inputRef: inputRef,
91
+ children: [/*#__PURE__*/_jsx(Field, _extends({}, fieldProps, {
92
+ unstableFieldRef: handleFieldRef
93
+ })), /*#__PURE__*/_jsx(PickerPopper, {
94
+ role: "dialog",
184
95
  slots: slots,
185
96
  slotProps: slotProps,
186
- children: renderCurrentView()
187
- }))
188
- }))]
97
+ children: /*#__PURE__*/_jsx(Layout, _extends({}, slotProps?.layout, {
98
+ slots: slots,
99
+ slotProps: slotProps,
100
+ children: renderCurrentView()
101
+ }))
102
+ })]
103
+ })
189
104
  }));
190
105
  return {
191
106
  renderPicker
@@ -113,7 +113,7 @@ const createSection = ({
113
113
  const sectionConfig = getDateSectionConfigFromFormatToken(utils, token);
114
114
  const hasLeadingZerosInFormat = doesSectionFormatHaveLeadingZeros(utils, sectionConfig.contentType, sectionConfig.type, token);
115
115
  const hasLeadingZerosInInput = shouldRespectLeadingZeros ? hasLeadingZerosInFormat : sectionConfig.contentType === 'digit';
116
- const isValidDate = date != null && utils.isValid(date);
116
+ const isValidDate = utils.isValid(date);
117
117
  let sectionValue = isValidDate ? utils.formatByString(date, token) : '';
118
118
  let maxLength = null;
119
119
  if (hasLeadingZerosInInput) {
@@ -1,2 +1,3 @@
1
1
  export { useField } from "./useField.js";
2
- export { createDateStrForV7HiddenInputFromSections, createDateStrForV6InputFromSections } from "./useField.utils.js";
2
+ export { createDateStrForV7HiddenInputFromSections, createDateStrForV6InputFromSections } from "./useField.utils.js";
3
+ export { useFieldInternalPropsWithDefaults } from "./useFieldInternalPropsWithDefaults.js";
@@ -4,7 +4,7 @@ import useEnhancedEffect from '@mui/utils/useEnhancedEffect';
4
4
  import useEventCallback from '@mui/utils/useEventCallback';
5
5
  import { useRtl } from '@mui/system/RtlProvider';
6
6
  import { useValidation } from "../../../validation/index.js";
7
- import { useUtils } from "../useUtils.js";
7
+ import { useLocalizationContext, useUtils } from "../useUtils.js";
8
8
  import { adjustSectionValue, getSectionOrder } from "./useField.utils.js";
9
9
  import { useFieldState } from "./useFieldState.js";
10
10
  import { useFieldCharacterEditing } from "./useFieldCharacterEditing.js";
@@ -19,7 +19,8 @@ export const useField = params => {
19
19
  minutesStep,
20
20
  enableAccessibleFieldDOMStructure = true,
21
21
  disabled = false,
22
- readOnly = false
22
+ readOnly = false,
23
+ autoFocus = false
23
24
  },
24
25
  forwardedProps: {
25
26
  onKeyDown,
@@ -29,7 +30,8 @@ export const useField = params => {
29
30
  },
30
31
  fieldValueManager,
31
32
  valueManager,
32
- validator
33
+ validator,
34
+ getOpenPickerButtonAriaLabel: getOpenDialogAriaText
33
35
  } = params;
34
36
  const isRtl = useRtl();
35
37
  const stateResponse = useFieldState(params);
@@ -141,6 +143,11 @@ export const useField = params => {
141
143
  if (readOnly || activeSectionIndex == null) {
142
144
  break;
143
145
  }
146
+
147
+ // if all sections are selected, mark the currently editing one as selected
148
+ if (parsedSelectedSections === 'all') {
149
+ setSelectedSections(activeSectionIndex);
150
+ }
144
151
  const activeSection = state.sections[activeSectionIndex];
145
152
  const activeDateManager = fieldValueManager.getActiveDateManager(utils, state, activeSection);
146
153
  const newSectionValue = adjustSectionValue(utils, timezone, activeSection, event.key, sectionsValueBoundaries, localizedDigits, activeDateManager.date, {
@@ -216,9 +223,15 @@ export const useField = params => {
216
223
  error: inputError,
217
224
  clearable: Boolean(clearable && !areAllSectionsEmpty && !readOnly && !disabled)
218
225
  };
226
+ const localizationContext = useLocalizationContext();
227
+ const openPickerAriaLabel = React.useMemo(() => getOpenDialogAriaText(_extends({}, localizationContext, {
228
+ value: state.value
229
+ })), [getOpenDialogAriaText, state.value, localizationContext]);
219
230
  const commonAdditionalProps = {
220
231
  disabled,
221
- readOnly
232
+ readOnly,
233
+ autoFocus,
234
+ openPickerAriaLabel
222
235
  };
223
236
  return _extends({}, params.forwardedProps, commonForwardedProps, commonAdditionalProps, returnedValue);
224
237
  };
@@ -361,7 +361,7 @@ export const getSectionsBoundaries = (utils, localizedDigits, timezone) => {
361
361
  currentDate
362
362
  }) => ({
363
363
  minimum: 1,
364
- maximum: currentDate != null && utils.isValid(currentDate) ? utils.getDaysInMonth(currentDate) : maxDaysInMonth,
364
+ maximum: utils.isValid(currentDate) ? utils.getDaysInMonth(currentDate) : maxDaysInMonth,
365
365
  longestMonth: longestMonth
366
366
  }),
367
367
  weekDay: ({
@@ -509,7 +509,7 @@ export const mergeDateIntoReferenceDate = (utils, dateToTransferFrom, sections,
509
509
  }, referenceDate);
510
510
  export const isAndroid = () => navigator.userAgent.toLowerCase().includes('android');
511
511
 
512
- // TODO v8: Remove if we drop the v6 TextField approach.
512
+ // TODO v9: Remove
513
513
  export const getSectionOrder = (sections, shouldApplyRTL) => {
514
514
  const neighbors = {};
515
515
  if (!shouldApplyRTL) {
@@ -0,0 +1,47 @@
1
+ import _extends from "@babel/runtime/helpers/esm/extends";
2
+ import * as React from 'react';
3
+ import { useLocalizationContext } from "../useUtils.js";
4
+ import { useNullablePickerContext } from "../useNullablePickerContext.js";
5
+ export const PickerFieldPrivateContext = /*#__PURE__*/React.createContext(null);
6
+
7
+ /**
8
+ * Applies the default values to the field internal props.
9
+ * This is a temporary hook that will be removed during a follow up when `useField` will receive the internal props without the defaults.
10
+ * It is only here to allow the migration to be done in smaller steps.
11
+ */
12
+ export function useFieldInternalPropsWithDefaults({
13
+ manager,
14
+ internalProps
15
+ }) {
16
+ const localizationContext = useLocalizationContext();
17
+ const pickerContext = useNullablePickerContext();
18
+ const fieldPrivateContext = React.useContext(PickerFieldPrivateContext);
19
+ const setValue = pickerContext?.setValue;
20
+ const handleChangeFromPicker = React.useCallback((newValue, ctx) => {
21
+ return setValue?.(newValue, {
22
+ validationError: ctx.validationError,
23
+ shouldClose: false
24
+ });
25
+ }, [setValue]);
26
+ return React.useMemo(() => {
27
+ let internalPropsWithDefaultsFromContext = internalProps;
28
+ // If one of the context is null,
29
+ // Then the field is used as a standalone component and the other context will be null as well.
30
+ if (fieldPrivateContext != null && pickerContext != null) {
31
+ internalPropsWithDefaultsFromContext = _extends({
32
+ value: pickerContext.value,
33
+ onChange: handleChangeFromPicker,
34
+ timezone: pickerContext.timezone,
35
+ disabled: pickerContext.disabled,
36
+ format: pickerContext.fieldFormat,
37
+ formatDensity: fieldPrivateContext.formatDensity,
38
+ enableAccessibleFieldDOMStructure: fieldPrivateContext.enableAccessibleFieldDOMStructure,
39
+ selectedSections: fieldPrivateContext.selectedSections,
40
+ onSelectedSectionsChange: fieldPrivateContext.onSelectedSectionsChange
41
+ }, internalProps);
42
+ }
43
+ return manager.internal_applyDefaultsToFieldInternalProps(_extends({}, localizationContext, {
44
+ internalProps: internalPropsWithDefaultsFromContext
45
+ }));
46
+ }, [manager, localizationContext, pickerContext, fieldPrivateContext, internalProps, handleChangeFromPicker]);
47
+ }
@@ -64,7 +64,6 @@ export const useFieldState = params => {
64
64
  const stateWithoutReferenceDate = {
65
65
  sections,
66
66
  value: valueFromTheOutside,
67
- referenceValue: valueManager.emptyValue,
68
67
  tempValueStrAndroid: null
69
68
  };
70
69
  const granularity = getSectionTypeGranularity(sections);
@@ -149,7 +148,7 @@ export const useFieldState = params => {
149
148
  const updateValueFromValueStr = valueStr => {
150
149
  const parseDateStr = (dateStr, referenceDate) => {
151
150
  const date = utils.parse(dateStr, format);
152
- if (date == null || !utils.isValid(date)) {
151
+ if (!utils.isValid(date)) {
153
152
  return null;
154
153
  }
155
154
  const sections = buildSectionsFromFormat({
@@ -200,7 +199,7 @@ export const useFieldState = params => {
200
199
  * Then we merge the value of the modified sections into the reference date.
201
200
  * This makes sure that we don't lose some information of the initial date (like the time on a date field).
202
201
  */
203
- if (newActiveDate != null && utils.isValid(newActiveDate)) {
202
+ if (utils.isValid(newActiveDate)) {
204
203
  const mergedDate = mergeDateIntoReferenceDate(utils, newActiveDate, newActiveDateSections, activeDateManager.referenceDate, true);
205
204
  values = activeDateManager.getNewValuesFromNewActiveDate(mergedDate);
206
205
  shouldPublish = true;
@@ -35,8 +35,8 @@ export const addPositionPropertiesToSections = (sections, localizedDigits, isRtl
35
35
  };
36
36
  export const useFieldV6TextField = params => {
37
37
  const isRtl = useRtl();
38
- const focusTimeoutRef = React.useRef();
39
- const selectionSyncTimeoutRef = React.useRef();
38
+ const focusTimeoutRef = React.useRef(undefined);
39
+ const selectionSyncTimeoutRef = React.useRef(undefined);
40
40
  const {
41
41
  forwardedProps: {
42
42
  onFocus,
@@ -237,6 +237,9 @@ export const useFieldV6TextField = params => {
237
237
  const shouldUseEventData = eventData && eventData.length > 1;
238
238
  const valueStr = shouldUseEventData ? eventData : targetValue;
239
239
  const cleanValueStr = cleanString(valueStr);
240
+ if (parsedSelectedSections === 'all') {
241
+ setSelectedSections(activeSectionIndex);
242
+ }
240
243
 
241
244
  // If no section is selected or eventData should be used, we just try to parse the new value
242
245
  // This line is mostly triggered by imperative code / application tests.
@@ -11,7 +11,8 @@ export const useFieldV7TextField = params => {
11
11
  const {
12
12
  internalProps: {
13
13
  disabled,
14
- readOnly = false
14
+ readOnly = false,
15
+ autoFocus = false
15
16
  },
16
17
  forwardedProps: {
17
18
  sectionListRef: inSectionListRef,
@@ -20,8 +21,7 @@ export const useFieldV7TextField = params => {
20
21
  onFocus,
21
22
  onInput,
22
23
  onPaste,
23
- focused: focusedProp,
24
- autoFocus = false
24
+ focused: focusedProp
25
25
  },
26
26
  fieldValueManager,
27
27
  applyCharacterEditing,
@@ -176,6 +176,9 @@ export const useFieldV7TextField = params => {
176
176
  } else if (keyPressed.length > 1) {
177
177
  updateValueFromValueStr(keyPressed);
178
178
  } else {
179
+ if (parsedSelectedSections === 'all') {
180
+ setSelectedSections(0);
181
+ }
179
182
  applyCharacterEditing({
180
183
  keyPressed,
181
184
  sectionIndex: 0