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

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 (576) 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 +1903 -231
  21. package/DateCalendar/DateCalendar.js +4 -4
  22. package/DateCalendar/DateCalendar.types.d.ts +2 -1
  23. package/DateCalendar/DayCalendar.js +2 -0
  24. package/DateCalendar/PickersFadeTransitionGroup.d.ts +1 -1
  25. package/DateCalendar/PickersFadeTransitionGroup.js +4 -6
  26. package/DateCalendar/PickersSlideTransition.d.ts +1 -1
  27. package/DateCalendar/PickersSlideTransition.js +12 -5
  28. package/DateCalendar/useCalendarState.d.ts +6 -4
  29. package/DateField/DateField.js +29 -33
  30. package/DateField/DateField.types.d.ts +7 -15
  31. package/DateField/useDateField.d.ts +1 -1
  32. package/DateField/useDateField.js +14 -11
  33. package/DatePicker/DatePicker.js +1 -1
  34. package/DatePicker/DatePicker.types.d.ts +7 -3
  35. package/DatePicker/DatePickerToolbar.d.ts +1 -2
  36. package/DatePicker/DatePickerToolbar.js +17 -33
  37. package/DatePicker/shared.d.ts +6 -5
  38. package/DateTimeField/DateTimeField.js +29 -33
  39. package/DateTimeField/DateTimeField.types.d.ts +7 -16
  40. package/DateTimeField/useDateTimeField.d.ts +1 -1
  41. package/DateTimeField/useDateTimeField.js +14 -11
  42. package/DateTimePicker/DateTimePicker.js +2 -2
  43. package/DateTimePicker/DateTimePicker.types.d.ts +4 -5
  44. package/DateTimePicker/DateTimePickerTabs.d.ts +2 -5
  45. package/DateTimePicker/DateTimePickerTabs.js +15 -20
  46. package/DateTimePicker/DateTimePickerToolbar.d.ts +16 -5
  47. package/DateTimePicker/DateTimePickerToolbar.js +88 -80
  48. package/DateTimePicker/shared.d.ts +8 -8
  49. package/DayCalendarSkeleton/DayCalendarSkeleton.js +10 -19
  50. package/DesktopDatePicker/DesktopDatePicker.js +11 -17
  51. package/DesktopDatePicker/DesktopDatePicker.types.d.ts +7 -3
  52. package/DesktopDateTimePicker/DesktopDateTimePicker.js +17 -27
  53. package/DesktopDateTimePicker/DesktopDateTimePicker.types.d.ts +2 -2
  54. package/DesktopDateTimePicker/DesktopDateTimePickerLayout.d.ts +2 -2
  55. package/DesktopDateTimePicker/DesktopDateTimePickerLayout.js +9 -34
  56. package/DesktopTimePicker/DesktopTimePicker.js +6 -22
  57. package/DesktopTimePicker/DesktopTimePicker.types.d.ts +2 -2
  58. package/DigitalClock/DigitalClock.js +13 -11
  59. package/DigitalClock/DigitalClock.types.d.ts +8 -2
  60. package/MobileDatePicker/MobileDatePicker.js +4 -14
  61. package/MobileDatePicker/MobileDatePicker.types.d.ts +2 -3
  62. package/MobileDateTimePicker/MobileDateTimePicker.js +4 -14
  63. package/MobileDateTimePicker/MobileDateTimePicker.types.d.ts +4 -4
  64. package/MobileTimePicker/MobileTimePicker.js +4 -14
  65. package/MobileTimePicker/MobileTimePicker.types.d.ts +4 -4
  66. package/MonthCalendar/MonthCalendar.d.ts +1 -1
  67. package/MonthCalendar/MonthCalendar.js +31 -11
  68. package/MonthCalendar/MonthCalendar.types.d.ts +2 -2
  69. package/MonthCalendar/MonthCalendarButton.d.ts +24 -0
  70. package/{modern/MonthCalendar/PickersMonth.js → MonthCalendar/MonthCalendarButton.js} +20 -61
  71. package/MonthCalendar/index.d.ts +0 -3
  72. package/MonthCalendar/index.js +1 -2
  73. package/MonthCalendar/monthCalendarClasses.d.ts +7 -1
  74. package/MonthCalendar/monthCalendarClasses.js +1 -1
  75. package/MultiSectionDigitalClock/MultiSectionDigitalClock.js +11 -7
  76. package/MultiSectionDigitalClock/MultiSectionDigitalClock.types.d.ts +6 -6
  77. package/MultiSectionDigitalClock/MultiSectionDigitalClockSection.d.ts +4 -4
  78. package/MultiSectionDigitalClock/MultiSectionDigitalClockSection.js +14 -10
  79. package/PickersActionBar/PickersActionBar.d.ts +6 -7
  80. package/PickersActionBar/PickersActionBar.js +26 -17
  81. package/PickersCalendarHeader/PickersCalendarHeader.js +10 -7
  82. package/PickersCalendarHeader/PickersCalendarHeader.types.d.ts +3 -4
  83. package/PickersLayout/PickersLayout.d.ts +7 -5
  84. package/PickersLayout/PickersLayout.js +23 -42
  85. package/PickersLayout/PickersLayout.types.d.ts +20 -22
  86. package/PickersLayout/usePickerLayout.d.ts +5 -4
  87. package/PickersLayout/usePickerLayout.js +26 -53
  88. package/PickersSectionList/PickersSectionList.js +21 -16
  89. package/PickersSectionList/PickersSectionList.types.d.ts +13 -6
  90. package/PickersShortcuts/PickersShortcuts.d.ts +9 -11
  91. package/PickersShortcuts/PickersShortcuts.js +21 -11
  92. package/PickersShortcuts/index.d.ts +1 -1
  93. package/PickersTextField/PickersFilledInput/PickersFilledInput.d.ts +7 -0
  94. package/PickersTextField/PickersFilledInput/PickersFilledInput.js +34 -28
  95. package/PickersTextField/PickersFilledInput/pickersFilledInputClasses.d.ts +1 -1
  96. package/PickersTextField/PickersInput/PickersInput.js +20 -14
  97. package/PickersTextField/PickersInput/pickersInputClasses.d.ts +3 -2
  98. package/PickersTextField/PickersInput/pickersInputClasses.js +1 -1
  99. package/PickersTextField/PickersInputBase/PickersInputBase.d.ts +3 -6
  100. package/PickersTextField/PickersInputBase/PickersInputBase.js +43 -37
  101. package/PickersTextField/PickersInputBase/PickersInputBase.types.d.ts +1 -0
  102. package/PickersTextField/PickersOutlinedInput/Outline.d.ts +0 -1
  103. package/PickersTextField/PickersOutlinedInput/Outline.js +13 -10
  104. package/PickersTextField/PickersOutlinedInput/PickersOutlinedInput.js +8 -14
  105. package/PickersTextField/PickersTextField.js +75 -62
  106. package/PickersTextField/PickersTextField.types.d.ts +43 -4
  107. package/PickersTextField/usePickerTextFieldOwnerState.d.ts +4 -0
  108. package/PickersTextField/usePickerTextFieldOwnerState.js +11 -0
  109. package/README.md +8 -5
  110. package/StaticDatePicker/StaticDatePicker.js +2 -2
  111. package/StaticDatePicker/StaticDatePicker.types.d.ts +2 -3
  112. package/StaticDateTimePicker/StaticDateTimePicker.js +2 -2
  113. package/StaticDateTimePicker/StaticDateTimePicker.types.d.ts +2 -2
  114. package/StaticTimePicker/StaticTimePicker.js +2 -2
  115. package/StaticTimePicker/StaticTimePicker.types.d.ts +2 -2
  116. package/TimeClock/Clock.d.ts +4 -0
  117. package/TimeClock/Clock.js +27 -27
  118. package/TimeClock/ClockNumber.js +15 -11
  119. package/TimeClock/ClockPointer.d.ts +6 -1
  120. package/TimeClock/ClockPointer.js +16 -10
  121. package/TimeClock/TimeClock.js +30 -12
  122. package/TimeField/TimeField.js +28 -32
  123. package/TimeField/TimeField.types.d.ts +7 -16
  124. package/TimeField/useTimeField.d.ts +1 -1
  125. package/TimeField/useTimeField.js +14 -11
  126. package/TimePicker/TimePicker.js +2 -2
  127. package/TimePicker/TimePicker.types.d.ts +4 -5
  128. package/TimePicker/TimePickerToolbar.d.ts +1 -3
  129. package/TimePicker/TimePickerToolbar.js +36 -51
  130. package/TimePicker/shared.d.ts +6 -6
  131. package/YearCalendar/YearCalendar.js +46 -13
  132. package/YearCalendar/YearCalendar.types.d.ts +2 -2
  133. package/YearCalendar/YearCalendarButton.d.ts +23 -0
  134. package/{modern/YearCalendar/PickersYear.js → YearCalendar/YearCalendarButton.js} +20 -59
  135. package/YearCalendar/index.d.ts +0 -3
  136. package/YearCalendar/index.js +1 -2
  137. package/YearCalendar/yearCalendarClasses.d.ts +7 -1
  138. package/YearCalendar/yearCalendarClasses.js +1 -1
  139. package/hooks/index.d.ts +2 -0
  140. package/hooks/index.js +3 -1
  141. package/hooks/useClearableField.d.ts +5 -3
  142. package/hooks/useClearableField.js +4 -2
  143. package/hooks/useIsValidValue.d.ts +7 -0
  144. package/hooks/useIsValidValue.js +11 -0
  145. package/hooks/useParsedFormat.d.ts +9 -7
  146. package/hooks/useParsedFormat.js +11 -13
  147. package/hooks/usePickerActionsContext.d.ts +7 -0
  148. package/hooks/usePickerActionsContext.js +15 -0
  149. package/hooks/usePickerContext.d.ts +5 -1
  150. package/hooks/usePickerContext.js +2 -2
  151. package/hooks/useSplitFieldProps.d.ts +12 -3
  152. package/hooks/useSplitFieldProps.js +8 -3
  153. package/index.d.ts +1 -0
  154. package/index.js +3 -2
  155. package/internals/components/PickerFieldUI.d.ts +133 -0
  156. package/internals/components/PickerFieldUI.js +317 -0
  157. package/internals/components/{PickersPopper.d.ts → PickerPopper/PickerPopper.d.ts} +26 -25
  158. package/{modern/internals/components/PickersPopper.js → internals/components/PickerPopper/PickerPopper.js} +47 -47
  159. package/internals/components/PickerPopper/index.d.ts +4 -0
  160. package/internals/components/PickerPopper/index.js +2 -0
  161. package/internals/components/PickerPopper/pickerPopperClasses.d.ts +9 -0
  162. package/internals/components/PickerPopper/pickerPopperClasses.js +6 -0
  163. package/internals/components/PickerProvider.d.ts +86 -32
  164. package/internals/components/PickerProvider.js +25 -7
  165. package/internals/components/PickersArrowSwitcher/PickersArrowSwitcher.js +12 -11
  166. package/internals/components/PickersArrowSwitcher/PickersArrowSwitcher.types.d.ts +11 -8
  167. package/internals/components/PickersModalDialog.d.ts +1 -3
  168. package/internals/components/PickersModalDialog.js +9 -3
  169. package/internals/components/PickersToolbar.d.ts +2 -3
  170. package/internals/components/PickersToolbar.js +15 -12
  171. package/internals/components/PickersToolbarButton.js +4 -6
  172. package/internals/components/PickersToolbarText.js +11 -13
  173. package/internals/hooks/date-helpers-hooks.js +4 -3
  174. package/internals/hooks/useClockReferenceDate.d.ts +2 -1
  175. package/internals/hooks/useDesktopPicker/useDesktopPicker.d.ts +1 -1
  176. package/internals/hooks/useDesktopPicker/useDesktopPicker.js +35 -120
  177. package/internals/hooks/useDesktopPicker/useDesktopPicker.types.d.ts +16 -38
  178. package/internals/hooks/useField/buildSectionsFromFormat.js +1 -1
  179. package/internals/hooks/useField/index.d.ts +2 -0
  180. package/internals/hooks/useField/index.js +2 -1
  181. package/internals/hooks/useField/useField.d.ts +3 -3
  182. package/internals/hooks/useField/useField.js +17 -4
  183. package/internals/hooks/useField/useField.types.d.ts +55 -48
  184. package/internals/hooks/useField/useField.utils.d.ts +4 -3
  185. package/internals/hooks/useField/useField.utils.js +2 -2
  186. package/internals/hooks/useField/useFieldCharacterEditing.d.ts +6 -5
  187. package/internals/hooks/useField/useFieldInternalPropsWithDefaults.d.ts +15 -0
  188. package/internals/hooks/useField/useFieldInternalPropsWithDefaults.js +47 -0
  189. package/internals/hooks/useField/useFieldState.d.ts +9 -8
  190. package/internals/hooks/useField/useFieldState.js +2 -3
  191. package/internals/hooks/useField/useFieldV6TextField.d.ts +4 -3
  192. package/internals/hooks/useField/useFieldV6TextField.js +5 -2
  193. package/internals/hooks/useField/useFieldV7TextField.js +6 -3
  194. package/internals/hooks/useFieldOwnerState.d.ts +6 -0
  195. package/internals/hooks/useFieldOwnerState.js +16 -0
  196. package/internals/hooks/useMobilePicker/useMobilePicker.d.ts +1 -1
  197. package/internals/hooks/useMobilePicker/useMobilePicker.js +34 -68
  198. package/internals/hooks/useMobilePicker/useMobilePicker.types.d.ts +15 -22
  199. package/internals/hooks/useNullablePickerContext.d.ts +5 -0
  200. package/internals/hooks/useNullablePickerContext.js +10 -0
  201. package/internals/hooks/useOpenState.d.ts +3 -2
  202. package/internals/hooks/useOpenState.js +11 -9
  203. package/internals/hooks/usePicker/index.d.ts +1 -1
  204. package/internals/hooks/usePicker/usePicker.d.ts +3 -4
  205. package/internals/hooks/usePicker/usePicker.js +4 -20
  206. package/internals/hooks/usePicker/usePicker.types.d.ts +10 -10
  207. package/internals/hooks/usePicker/usePickerProvider.d.ts +45 -10
  208. package/internals/hooks/usePicker/usePickerProvider.js +50 -16
  209. package/internals/hooks/usePicker/usePickerValue.d.ts +3 -2
  210. package/internals/hooks/usePicker/usePickerValue.js +84 -214
  211. package/internals/hooks/usePicker/usePickerValue.types.d.ts +130 -75
  212. package/internals/hooks/usePicker/usePickerViews.d.ts +59 -41
  213. package/internals/hooks/usePicker/usePickerViews.js +31 -20
  214. package/internals/hooks/useReduceAnimations.d.ts +2 -0
  215. package/internals/hooks/{useDefaultReduceAnimations.js → useReduceAnimations.js} +5 -2
  216. package/internals/hooks/useStaticPicker/useStaticPicker.d.ts +1 -1
  217. package/internals/hooks/useStaticPicker/useStaticPicker.js +7 -12
  218. package/internals/hooks/useStaticPicker/useStaticPicker.types.d.ts +7 -13
  219. package/internals/hooks/useToolbarOwnerState.d.ts +10 -0
  220. package/internals/hooks/useToolbarOwnerState.js +13 -0
  221. package/internals/hooks/useUtils.d.ts +4 -3
  222. package/internals/hooks/useUtils.js +1 -1
  223. package/internals/hooks/useValueWithTimezone.d.ts +5 -4
  224. package/internals/hooks/useViews.d.ts +5 -5
  225. package/internals/index.d.ts +27 -18
  226. package/internals/index.js +13 -8
  227. package/internals/models/common.d.ts +1 -1
  228. package/internals/models/fields.d.ts +8 -24
  229. package/internals/models/index.d.ts +1 -0
  230. package/internals/models/index.js +2 -1
  231. package/internals/models/manager.d.ts +15 -0
  232. package/internals/models/manager.js +1 -0
  233. package/internals/models/pickers.d.ts +1 -0
  234. package/internals/models/pickers.js +1 -0
  235. package/internals/models/props/basePickerProps.d.ts +3 -33
  236. package/internals/models/props/tabs.d.ts +0 -13
  237. package/internals/models/props/time.d.ts +2 -1
  238. package/internals/models/props/toolbar.d.ts +1 -19
  239. package/internals/models/value.d.ts +9 -0
  240. package/internals/utils/date-utils.d.ts +1 -1
  241. package/internals/utils/date-utils.js +1 -1
  242. package/internals/utils/utils.d.ts +3 -0
  243. package/internals/utils/utils.js +11 -1
  244. package/internals/utils/valueManagers.d.ts +4 -3
  245. package/internals/utils/valueManagers.js +4 -4
  246. package/locales/index.d.ts +1 -0
  247. package/locales/index.js +1 -0
  248. package/locales/nbNO.js +15 -19
  249. package/locales/nlNL.js +7 -7
  250. package/locales/roRO.js +15 -18
  251. package/locales/utils/getPickersLocalization.d.ts +0 -7
  252. package/locales/utils/getPickersLocalization.js +0 -13
  253. package/locales/zhTW.d.ts +80 -0
  254. package/locales/zhTW.js +73 -0
  255. package/managers/index.d.ts +6 -0
  256. package/managers/index.js +3 -0
  257. package/managers/package.json +6 -0
  258. package/managers/useDateManager.d.ts +27 -0
  259. package/managers/useDateManager.js +55 -0
  260. package/managers/useDateTimeManager.d.ts +28 -0
  261. package/managers/useDateTimeManager.js +60 -0
  262. package/managers/useTimeManager.d.ts +28 -0
  263. package/managers/useTimeManager.js +51 -0
  264. package/models/adapters.d.ts +5 -5
  265. package/models/fields.d.ts +33 -9
  266. package/models/index.d.ts +1 -0
  267. package/models/index.js +1 -0
  268. package/models/manager.d.ts +87 -0
  269. package/models/manager.js +1 -0
  270. package/models/pickers.d.ts +7 -0
  271. package/models/validation.d.ts +2 -1
  272. package/modern/AdapterDateFns/AdapterDateFns.js +49 -47
  273. package/modern/AdapterDateFnsJalali/AdapterDateFnsJalali.js +48 -46
  274. package/modern/{AdapterDateFnsJalaliV3/AdapterDateFnsJalaliV3.js → AdapterDateFnsJalaliV2/AdapterDateFnsJalaliV2.js} +45 -52
  275. package/modern/AdapterDateFnsJalaliV2/index.js +1 -0
  276. package/modern/{AdapterDateFnsV3/AdapterDateFnsV3.js → AdapterDateFnsV2/AdapterDateFnsV2.js} +46 -54
  277. package/modern/AdapterDateFnsV2/index.js +1 -0
  278. package/modern/AdapterMoment/AdapterMoment.js +10 -0
  279. package/modern/DateCalendar/DateCalendar.js +4 -4
  280. package/modern/DateCalendar/DayCalendar.js +2 -0
  281. package/modern/DateCalendar/PickersFadeTransitionGroup.js +4 -6
  282. package/modern/DateCalendar/PickersSlideTransition.js +12 -5
  283. package/modern/DateField/DateField.js +29 -33
  284. package/modern/DateField/useDateField.js +14 -11
  285. package/modern/DatePicker/DatePicker.js +1 -1
  286. package/modern/DatePicker/DatePickerToolbar.js +17 -33
  287. package/modern/DateTimeField/DateTimeField.js +29 -33
  288. package/modern/DateTimeField/useDateTimeField.js +14 -11
  289. package/modern/DateTimePicker/DateTimePicker.js +2 -2
  290. package/modern/DateTimePicker/DateTimePickerTabs.js +15 -20
  291. package/modern/DateTimePicker/DateTimePickerToolbar.js +88 -80
  292. package/modern/DayCalendarSkeleton/DayCalendarSkeleton.js +10 -19
  293. package/modern/DesktopDatePicker/DesktopDatePicker.js +11 -17
  294. package/modern/DesktopDateTimePicker/DesktopDateTimePicker.js +17 -27
  295. package/modern/DesktopDateTimePicker/DesktopDateTimePickerLayout.js +9 -34
  296. package/modern/DesktopTimePicker/DesktopTimePicker.js +6 -22
  297. package/modern/DigitalClock/DigitalClock.js +13 -11
  298. package/modern/MobileDatePicker/MobileDatePicker.js +4 -14
  299. package/modern/MobileDateTimePicker/MobileDateTimePicker.js +4 -14
  300. package/modern/MobileTimePicker/MobileTimePicker.js +4 -14
  301. package/modern/MonthCalendar/MonthCalendar.js +31 -11
  302. package/{MonthCalendar/PickersMonth.js → modern/MonthCalendar/MonthCalendarButton.js} +20 -61
  303. package/modern/MonthCalendar/index.js +1 -2
  304. package/modern/MonthCalendar/monthCalendarClasses.js +1 -1
  305. package/modern/MultiSectionDigitalClock/MultiSectionDigitalClock.js +11 -7
  306. package/modern/MultiSectionDigitalClock/MultiSectionDigitalClockSection.js +14 -10
  307. package/modern/PickersActionBar/PickersActionBar.js +26 -17
  308. package/modern/PickersCalendarHeader/PickersCalendarHeader.js +10 -7
  309. package/modern/PickersLayout/PickersLayout.js +23 -42
  310. package/modern/PickersLayout/usePickerLayout.js +26 -53
  311. package/modern/PickersSectionList/PickersSectionList.js +21 -16
  312. package/modern/PickersShortcuts/PickersShortcuts.js +21 -11
  313. package/modern/PickersTextField/PickersFilledInput/PickersFilledInput.js +34 -28
  314. package/modern/PickersTextField/PickersInput/PickersInput.js +20 -14
  315. package/modern/PickersTextField/PickersInput/pickersInputClasses.js +1 -1
  316. package/modern/PickersTextField/PickersInputBase/PickersInputBase.js +43 -37
  317. package/modern/PickersTextField/PickersOutlinedInput/Outline.js +13 -10
  318. package/modern/PickersTextField/PickersOutlinedInput/PickersOutlinedInput.js +8 -14
  319. package/modern/PickersTextField/PickersTextField.js +75 -62
  320. package/modern/PickersTextField/usePickerTextFieldOwnerState.js +11 -0
  321. package/modern/StaticDatePicker/StaticDatePicker.js +2 -2
  322. package/modern/StaticDateTimePicker/StaticDateTimePicker.js +2 -2
  323. package/modern/StaticTimePicker/StaticTimePicker.js +2 -2
  324. package/modern/TimeClock/Clock.js +27 -27
  325. package/modern/TimeClock/ClockNumber.js +15 -11
  326. package/modern/TimeClock/ClockPointer.js +16 -10
  327. package/modern/TimeClock/TimeClock.js +30 -12
  328. package/modern/TimeField/TimeField.js +28 -32
  329. package/modern/TimeField/useTimeField.js +14 -11
  330. package/modern/TimePicker/TimePicker.js +2 -2
  331. package/modern/TimePicker/TimePickerToolbar.js +36 -51
  332. package/modern/YearCalendar/YearCalendar.js +46 -13
  333. package/{YearCalendar/PickersYear.js → modern/YearCalendar/YearCalendarButton.js} +20 -59
  334. package/modern/YearCalendar/index.js +1 -2
  335. package/modern/YearCalendar/yearCalendarClasses.js +1 -1
  336. package/modern/hooks/index.js +3 -1
  337. package/modern/hooks/useClearableField.js +4 -2
  338. package/modern/hooks/useIsValidValue.js +11 -0
  339. package/modern/hooks/useParsedFormat.js +11 -13
  340. package/modern/hooks/usePickerActionsContext.js +15 -0
  341. package/modern/hooks/usePickerContext.js +2 -2
  342. package/modern/hooks/useSplitFieldProps.js +8 -3
  343. package/modern/index.js +3 -2
  344. package/modern/internals/components/PickerFieldUI.js +317 -0
  345. package/{internals/components/PickersPopper.js → modern/internals/components/PickerPopper/PickerPopper.js} +47 -47
  346. package/modern/internals/components/PickerPopper/index.js +2 -0
  347. package/modern/internals/components/PickerPopper/pickerPopperClasses.js +6 -0
  348. package/modern/internals/components/PickerProvider.js +25 -7
  349. package/modern/internals/components/PickersArrowSwitcher/PickersArrowSwitcher.js +12 -11
  350. package/modern/internals/components/PickersModalDialog.js +9 -3
  351. package/modern/internals/components/PickersToolbar.js +15 -12
  352. package/modern/internals/components/PickersToolbarButton.js +4 -6
  353. package/modern/internals/components/PickersToolbarText.js +11 -13
  354. package/modern/internals/hooks/date-helpers-hooks.js +4 -3
  355. package/modern/internals/hooks/useDesktopPicker/useDesktopPicker.js +35 -120
  356. package/modern/internals/hooks/useField/buildSectionsFromFormat.js +1 -1
  357. package/modern/internals/hooks/useField/index.js +2 -1
  358. package/modern/internals/hooks/useField/useField.js +17 -4
  359. package/modern/internals/hooks/useField/useField.utils.js +2 -2
  360. package/modern/internals/hooks/useField/useFieldInternalPropsWithDefaults.js +47 -0
  361. package/modern/internals/hooks/useField/useFieldState.js +2 -3
  362. package/modern/internals/hooks/useField/useFieldV6TextField.js +5 -2
  363. package/modern/internals/hooks/useField/useFieldV7TextField.js +6 -3
  364. package/modern/internals/hooks/useFieldOwnerState.js +16 -0
  365. package/modern/internals/hooks/useMobilePicker/useMobilePicker.js +34 -68
  366. package/modern/internals/hooks/useNullablePickerContext.js +10 -0
  367. package/modern/internals/hooks/useOpenState.js +11 -9
  368. package/modern/internals/hooks/usePicker/usePicker.js +4 -20
  369. package/modern/internals/hooks/usePicker/usePickerProvider.js +50 -16
  370. package/modern/internals/hooks/usePicker/usePickerValue.js +84 -214
  371. package/modern/internals/hooks/usePicker/usePickerViews.js +31 -20
  372. package/modern/internals/hooks/{useDefaultReduceAnimations.js → useReduceAnimations.js} +5 -2
  373. package/modern/internals/hooks/useStaticPicker/useStaticPicker.js +7 -12
  374. package/modern/internals/hooks/useToolbarOwnerState.js +13 -0
  375. package/modern/internals/hooks/useUtils.js +1 -1
  376. package/modern/internals/index.js +13 -8
  377. package/modern/internals/models/index.js +2 -1
  378. package/modern/internals/models/manager.js +1 -0
  379. package/modern/internals/models/pickers.js +1 -0
  380. package/modern/internals/utils/date-utils.js +1 -1
  381. package/modern/internals/utils/utils.js +11 -1
  382. package/modern/internals/utils/valueManagers.js +4 -4
  383. package/modern/locales/index.js +1 -0
  384. package/modern/locales/nbNO.js +15 -19
  385. package/modern/locales/nlNL.js +7 -7
  386. package/modern/locales/roRO.js +15 -18
  387. package/modern/locales/utils/getPickersLocalization.js +0 -13
  388. package/modern/locales/zhTW.js +73 -0
  389. package/modern/managers/index.js +3 -0
  390. package/modern/managers/useDateManager.js +55 -0
  391. package/modern/managers/useDateTimeManager.js +60 -0
  392. package/modern/managers/useTimeManager.js +51 -0
  393. package/modern/models/index.js +1 -0
  394. package/modern/models/manager.js +1 -0
  395. package/modern/validation/useValidation.js +1 -1
  396. package/modern/validation/validateDate.js +8 -0
  397. package/modern/validation/validateDateTime.js +8 -0
  398. package/modern/validation/validateTime.js +8 -0
  399. package/node/AdapterDateFns/AdapterDateFns.js +97 -97
  400. package/node/AdapterDateFnsJalali/AdapterDateFnsJalali.js +97 -96
  401. package/node/{AdapterDateFnsJalaliV3/AdapterDateFnsJalaliV3.js → AdapterDateFnsJalaliV2/AdapterDateFnsJalaliV2.js} +94 -101
  402. package/node/{AdapterDateFnsJalaliV3 → AdapterDateFnsJalaliV2}/index.js +1 -1
  403. package/node/AdapterDateFnsV2/AdapterDateFnsV2.js +291 -0
  404. package/node/{AdapterDateFnsV3 → AdapterDateFnsV2}/index.js +1 -1
  405. package/node/AdapterMoment/AdapterMoment.js +10 -0
  406. package/node/DateCalendar/DateCalendar.js +4 -4
  407. package/node/DateCalendar/DayCalendar.js +1 -0
  408. package/node/DateCalendar/PickersFadeTransitionGroup.js +4 -6
  409. package/node/DateCalendar/PickersSlideTransition.js +12 -5
  410. package/node/DateField/DateField.js +29 -33
  411. package/node/DateField/useDateField.js +13 -10
  412. package/node/DatePicker/DatePicker.js +1 -1
  413. package/node/DatePicker/DatePickerToolbar.js +17 -33
  414. package/node/DateTimeField/DateTimeField.js +29 -33
  415. package/node/DateTimeField/useDateTimeField.js +13 -10
  416. package/node/DateTimePicker/DateTimePicker.js +2 -2
  417. package/node/DateTimePicker/DateTimePickerTabs.js +15 -20
  418. package/node/DateTimePicker/DateTimePickerToolbar.js +89 -80
  419. package/node/DayCalendarSkeleton/DayCalendarSkeleton.js +10 -19
  420. package/node/DesktopDatePicker/DesktopDatePicker.js +11 -17
  421. package/node/DesktopDateTimePicker/DesktopDateTimePicker.js +17 -27
  422. package/node/DesktopDateTimePicker/DesktopDateTimePickerLayout.js +10 -35
  423. package/node/DesktopTimePicker/DesktopTimePicker.js +6 -22
  424. package/node/DigitalClock/DigitalClock.js +13 -11
  425. package/node/MobileDatePicker/MobileDatePicker.js +4 -14
  426. package/node/MobileDateTimePicker/MobileDateTimePicker.js +4 -14
  427. package/node/MobileTimePicker/MobileTimePicker.js +4 -14
  428. package/node/MonthCalendar/MonthCalendar.js +31 -11
  429. package/node/MonthCalendar/{PickersMonth.js → MonthCalendarButton.js} +20 -61
  430. package/node/MonthCalendar/index.js +1 -8
  431. package/node/MonthCalendar/monthCalendarClasses.js +1 -1
  432. package/node/MultiSectionDigitalClock/MultiSectionDigitalClock.js +11 -7
  433. package/node/MultiSectionDigitalClock/MultiSectionDigitalClockSection.js +13 -10
  434. package/node/PickersActionBar/PickersActionBar.js +28 -19
  435. package/node/PickersCalendarHeader/PickersCalendarHeader.js +10 -7
  436. package/node/PickersLayout/PickersLayout.js +23 -42
  437. package/node/PickersLayout/usePickerLayout.js +30 -57
  438. package/node/PickersSectionList/PickersSectionList.js +21 -16
  439. package/node/PickersShortcuts/PickersShortcuts.js +21 -11
  440. package/node/PickersTextField/PickersFilledInput/PickersFilledInput.js +34 -28
  441. package/node/PickersTextField/PickersInput/PickersInput.js +20 -14
  442. package/node/PickersTextField/PickersInput/pickersInputClasses.js +1 -1
  443. package/node/PickersTextField/PickersInputBase/PickersInputBase.js +43 -37
  444. package/node/PickersTextField/PickersOutlinedInput/Outline.js +13 -10
  445. package/node/PickersTextField/PickersOutlinedInput/PickersOutlinedInput.js +8 -14
  446. package/node/PickersTextField/PickersTextField.js +75 -62
  447. package/node/PickersTextField/usePickerTextFieldOwnerState.js +18 -0
  448. package/node/StaticDatePicker/StaticDatePicker.js +2 -2
  449. package/node/StaticDateTimePicker/StaticDateTimePicker.js +2 -2
  450. package/node/StaticTimePicker/StaticTimePicker.js +2 -2
  451. package/node/TimeClock/Clock.js +27 -27
  452. package/node/TimeClock/ClockNumber.js +15 -11
  453. package/node/TimeClock/ClockPointer.js +15 -10
  454. package/node/TimeClock/TimeClock.js +30 -12
  455. package/node/TimeField/TimeField.js +28 -32
  456. package/node/TimeField/useTimeField.js +13 -10
  457. package/node/TimePicker/TimePicker.js +2 -2
  458. package/node/TimePicker/TimePickerToolbar.js +36 -51
  459. package/node/YearCalendar/YearCalendar.js +45 -12
  460. package/node/YearCalendar/{PickersYear.js → YearCalendarButton.js} +20 -59
  461. package/node/YearCalendar/index.js +1 -8
  462. package/node/YearCalendar/yearCalendarClasses.js +1 -1
  463. package/node/hooks/index.js +15 -1
  464. package/node/hooks/useClearableField.js +4 -2
  465. package/node/hooks/useIsValidValue.js +18 -0
  466. package/node/hooks/useParsedFormat.js +11 -13
  467. package/node/hooks/usePickerActionsContext.js +22 -0
  468. package/node/hooks/usePickerContext.js +5 -4
  469. package/node/hooks/useSplitFieldProps.js +7 -2
  470. package/node/index.js +13 -1
  471. package/node/internals/components/PickerFieldUI.js +329 -0
  472. package/node/internals/components/{PickersPopper.js → PickerPopper/PickerPopper.js} +48 -48
  473. package/node/internals/components/PickerPopper/index.js +25 -0
  474. package/node/internals/components/PickerPopper/pickerPopperClasses.js +14 -0
  475. package/node/internals/components/PickerProvider.js +27 -9
  476. package/node/internals/components/PickersArrowSwitcher/PickersArrowSwitcher.js +12 -11
  477. package/node/internals/components/PickersModalDialog.js +9 -3
  478. package/node/internals/components/PickersToolbar.js +15 -12
  479. package/node/internals/components/PickersToolbarButton.js +4 -6
  480. package/node/internals/components/PickersToolbarText.js +10 -12
  481. package/node/internals/hooks/date-helpers-hooks.js +4 -3
  482. package/node/internals/hooks/useDesktopPicker/useDesktopPicker.js +37 -122
  483. package/node/internals/hooks/useField/buildSectionsFromFormat.js +1 -1
  484. package/node/internals/hooks/useField/index.js +8 -1
  485. package/node/internals/hooks/useField/useField.js +16 -3
  486. package/node/internals/hooks/useField/useField.utils.js +2 -2
  487. package/node/internals/hooks/useField/useFieldInternalPropsWithDefaults.js +56 -0
  488. package/node/internals/hooks/useField/useFieldState.js +2 -3
  489. package/node/internals/hooks/useField/useFieldV6TextField.js +5 -2
  490. package/node/internals/hooks/useField/useFieldV7TextField.js +6 -3
  491. package/node/internals/hooks/useFieldOwnerState.js +24 -0
  492. package/node/internals/hooks/useMobilePicker/useMobilePicker.js +35 -69
  493. package/node/internals/hooks/useNullablePickerContext.js +16 -0
  494. package/node/internals/hooks/useOpenState.js +12 -9
  495. package/node/internals/hooks/usePicker/usePicker.js +4 -20
  496. package/node/internals/hooks/usePicker/usePickerProvider.js +51 -17
  497. package/node/internals/hooks/usePicker/usePickerValue.js +84 -213
  498. package/node/internals/hooks/usePicker/usePickerViews.js +31 -21
  499. package/node/internals/hooks/{useDefaultReduceAnimations.js → useReduceAnimations.js} +7 -4
  500. package/node/internals/hooks/useStaticPicker/useStaticPicker.js +7 -12
  501. package/node/internals/hooks/useToolbarOwnerState.js +21 -0
  502. package/node/internals/hooks/useUtils.js +1 -1
  503. package/node/internals/index.js +87 -34
  504. package/node/internals/models/index.js +11 -0
  505. package/node/internals/models/manager.js +5 -0
  506. package/node/internals/models/pickers.js +5 -0
  507. package/node/internals/utils/date-utils.js +1 -1
  508. package/node/internals/utils/utils.js +14 -2
  509. package/node/internals/utils/valueManagers.js +4 -4
  510. package/node/locales/index.js +11 -0
  511. package/node/locales/nbNO.js +15 -19
  512. package/node/locales/nlNL.js +7 -7
  513. package/node/locales/roRO.js +15 -18
  514. package/node/locales/utils/getPickersLocalization.js +2 -16
  515. package/node/locales/zhTW.js +79 -0
  516. package/node/managers/index.js +26 -0
  517. package/node/managers/useDateManager.js +63 -0
  518. package/node/managers/useDateTimeManager.js +68 -0
  519. package/node/managers/useTimeManager.js +59 -0
  520. package/node/models/index.js +11 -0
  521. package/node/models/manager.js +5 -0
  522. package/node/validation/useValidation.js +1 -1
  523. package/node/validation/validateDate.js +8 -0
  524. package/node/validation/validateDateTime.js +8 -0
  525. package/node/validation/validateTime.js +8 -0
  526. package/package.json +5 -5
  527. package/themeAugmentation/components.d.ts +3 -11
  528. package/themeAugmentation/overrides.d.ts +5 -7
  529. package/themeAugmentation/props.d.ts +7 -9
  530. package/validation/extractValidationProps.d.ts +1 -1
  531. package/validation/useValidation.d.ts +7 -6
  532. package/validation/useValidation.js +1 -1
  533. package/validation/validateDate.d.ts +12 -3
  534. package/validation/validateDate.js +8 -0
  535. package/validation/validateDateTime.d.ts +12 -4
  536. package/validation/validateDateTime.js +8 -0
  537. package/validation/validateTime.d.ts +12 -3
  538. package/validation/validateTime.js +8 -0
  539. package/AdapterDateFnsJalaliV3/index.d.ts +0 -1
  540. package/AdapterDateFnsJalaliV3/index.js +0 -1
  541. package/AdapterDateFnsV3/index.d.ts +0 -1
  542. package/AdapterDateFnsV3/index.js +0 -1
  543. package/MonthCalendar/PickersMonth.d.ts +0 -28
  544. package/MonthCalendar/pickersMonthClasses.d.ts +0 -13
  545. package/MonthCalendar/pickersMonthClasses.js +0 -5
  546. package/YearCalendar/PickersYear.d.ts +0 -27
  547. package/YearCalendar/pickersYearClasses.d.ts +0 -13
  548. package/YearCalendar/pickersYearClasses.js +0 -5
  549. package/internals/components/pickersPopperClasses.d.ts +0 -9
  550. package/internals/components/pickersPopperClasses.js +0 -5
  551. package/internals/hooks/defaultizedFieldProps.d.ts +0 -18
  552. package/internals/hooks/defaultizedFieldProps.js +0 -40
  553. package/internals/hooks/useDefaultReduceAnimations.d.ts +0 -2
  554. package/internals/hooks/useIsLandscape.d.ts +0 -4
  555. package/internals/hooks/useIsLandscape.js +0 -35
  556. package/internals/hooks/usePicker/usePickerLayoutProps.d.ts +0 -32
  557. package/internals/hooks/usePicker/usePickerLayoutProps.js +0 -31
  558. package/internals/utils/convertFieldResponseIntoMuiTextFieldProps.d.ts +0 -3
  559. package/internals/utils/convertFieldResponseIntoMuiTextFieldProps.js +0 -44
  560. package/modern/AdapterDateFnsJalaliV3/index.js +0 -1
  561. package/modern/AdapterDateFnsV3/index.js +0 -1
  562. package/modern/MonthCalendar/pickersMonthClasses.js +0 -5
  563. package/modern/YearCalendar/pickersYearClasses.js +0 -5
  564. package/modern/internals/components/pickersPopperClasses.js +0 -5
  565. package/modern/internals/hooks/defaultizedFieldProps.js +0 -40
  566. package/modern/internals/hooks/useIsLandscape.js +0 -35
  567. package/modern/internals/hooks/usePicker/usePickerLayoutProps.js +0 -31
  568. package/modern/internals/utils/convertFieldResponseIntoMuiTextFieldProps.js +0 -44
  569. package/node/AdapterDateFnsV3/AdapterDateFnsV3.js +0 -299
  570. package/node/MonthCalendar/pickersMonthClasses.js +0 -12
  571. package/node/YearCalendar/pickersYearClasses.js +0 -12
  572. package/node/internals/components/pickersPopperClasses.js +0 -12
  573. package/node/internals/hooks/defaultizedFieldProps.js +0 -50
  574. package/node/internals/hooks/useIsLandscape.js +0 -43
  575. package/node/internals/hooks/usePicker/usePickerLayoutProps.js +0 -38
  576. package/node/internals/utils/convertFieldResponseIntoMuiTextFieldProps.js +0 -52
@@ -2,13 +2,21 @@
2
2
 
3
3
  import _extends from "@babel/runtime/helpers/esm/extends";
4
4
  import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/esm/objectWithoutPropertiesLoose";
5
- const _excluded = ["onAccept", "onClear", "onCancel", "onSetToday", "actions"];
5
+ const _excluded = ["actions"];
6
6
  import * as React from 'react';
7
7
  import PropTypes from 'prop-types';
8
+ import { styled } from '@mui/material/styles';
8
9
  import Button from '@mui/material/Button';
9
10
  import DialogActions from '@mui/material/DialogActions';
10
11
  import { usePickerTranslations } from "../hooks/usePickerTranslations.js";
12
+ import { usePickerActionsContext } from "../hooks/index.js";
11
13
  import { jsx as _jsx } from "react/jsx-runtime";
14
+ const PickersActionBarRoot = styled(DialogActions, {
15
+ name: 'MuiPickersLayout',
16
+ slot: 'ActionBar',
17
+ overridesResolver: (_, styles) => styles.actionBar
18
+ })({});
19
+
12
20
  /**
13
21
  * Demos:
14
22
  *
@@ -19,16 +27,18 @@ import { jsx as _jsx } from "react/jsx-runtime";
19
27
  *
20
28
  * - [PickersActionBar API](https://mui.com/x/api/date-pickers/pickers-action-bar/)
21
29
  */
22
- function PickersActionBar(props) {
30
+ function PickersActionBarComponent(props) {
23
31
  const {
24
- onAccept,
25
- onClear,
26
- onCancel,
27
- onSetToday,
28
32
  actions
29
33
  } = props,
30
34
  other = _objectWithoutPropertiesLoose(props, _excluded);
31
35
  const translations = usePickerTranslations();
36
+ const {
37
+ clearValue,
38
+ setValueToToday,
39
+ acceptValueChanges,
40
+ cancelValueChanges
41
+ } = usePickerActionsContext();
32
42
  if (actions == null || actions.length === 0) {
33
43
  return null;
34
44
  }
@@ -36,33 +46,33 @@ function PickersActionBar(props) {
36
46
  switch (actionType) {
37
47
  case 'clear':
38
48
  return /*#__PURE__*/_jsx(Button, {
39
- onClick: onClear,
49
+ onClick: clearValue,
40
50
  children: translations.clearButtonLabel
41
51
  }, actionType);
42
52
  case 'cancel':
43
53
  return /*#__PURE__*/_jsx(Button, {
44
- onClick: onCancel,
54
+ onClick: cancelValueChanges,
45
55
  children: translations.cancelButtonLabel
46
56
  }, actionType);
47
57
  case 'accept':
48
58
  return /*#__PURE__*/_jsx(Button, {
49
- onClick: onAccept,
59
+ onClick: acceptValueChanges,
50
60
  children: translations.okButtonLabel
51
61
  }, actionType);
52
62
  case 'today':
53
63
  return /*#__PURE__*/_jsx(Button, {
54
- onClick: onSetToday,
64
+ onClick: setValueToToday,
55
65
  children: translations.todayButtonLabel
56
66
  }, actionType);
57
67
  default:
58
68
  return null;
59
69
  }
60
70
  });
61
- return /*#__PURE__*/_jsx(DialogActions, _extends({}, other, {
71
+ return /*#__PURE__*/_jsx(PickersActionBarRoot, _extends({}, other, {
62
72
  children: buttons
63
73
  }));
64
74
  }
65
- process.env.NODE_ENV !== "production" ? PickersActionBar.propTypes = {
75
+ process.env.NODE_ENV !== "production" ? PickersActionBarComponent.propTypes = {
66
76
  // ----------------------------- Warning --------------------------------
67
77
  // | These PropTypes are generated from the TypeScript type definitions |
68
78
  // | To update them edit the TypeScript types and run "pnpm proptypes" |
@@ -70,7 +80,9 @@ process.env.NODE_ENV !== "production" ? PickersActionBar.propTypes = {
70
80
  /**
71
81
  * Ordered array of actions to display.
72
82
  * If empty, does not display that action bar.
73
- * @default `['cancel', 'accept']` for mobile and `[]` for desktop
83
+ * @default
84
+ * - `[]` for Desktop Date Picker and Desktop Date Range Picker
85
+ * - `['cancel', 'accept']` for all other Pickers
74
86
  */
75
87
  actions: PropTypes.arrayOf(PropTypes.oneOf(['accept', 'cancel', 'clear', 'today']).isRequired),
76
88
  /**
@@ -78,13 +90,10 @@ process.env.NODE_ENV !== "production" ? PickersActionBar.propTypes = {
78
90
  * @default false
79
91
  */
80
92
  disableSpacing: PropTypes.bool,
81
- onAccept: PropTypes.func.isRequired,
82
- onCancel: PropTypes.func.isRequired,
83
- onClear: PropTypes.func.isRequired,
84
- onSetToday: PropTypes.func.isRequired,
85
93
  /**
86
94
  * The system prop that allows defining system overrides as well as additional CSS styles.
87
95
  */
88
96
  sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object])
89
97
  } : void 0;
98
+ const PickersActionBar = /*#__PURE__*/React.memo(PickersActionBarComponent);
90
99
  export { PickersActionBar };
@@ -2,7 +2,7 @@
2
2
 
3
3
  import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/esm/objectWithoutPropertiesLoose";
4
4
  import _extends from "@babel/runtime/helpers/esm/extends";
5
- const _excluded = ["slots", "slotProps", "currentMonth", "disabled", "disableFuture", "disablePast", "maxDate", "minDate", "onMonthChange", "onViewChange", "view", "reduceAnimations", "views", "labelId", "className", "timezone", "format"],
5
+ const _excluded = ["slots", "slotProps", "currentMonth", "disabled", "disableFuture", "disablePast", "maxDate", "minDate", "onMonthChange", "onViewChange", "view", "reduceAnimations", "views", "labelId", "className", "classes", "timezone", "format"],
6
6
  _excluded2 = ["ownerState"];
7
7
  import * as React from 'react';
8
8
  import PropTypes from 'prop-types';
@@ -19,11 +19,9 @@ import { ArrowDropDownIcon } from "../icons/index.js";
19
19
  import { PickersArrowSwitcher } from "../internals/components/PickersArrowSwitcher/index.js";
20
20
  import { usePreviousMonthDisabled, useNextMonthDisabled } from "../internals/hooks/date-helpers-hooks.js";
21
21
  import { getPickersCalendarHeaderUtilityClass, pickersCalendarHeaderClasses } from "./pickersCalendarHeaderClasses.js";
22
+ import { usePickerPrivateContext } from "../internals/hooks/usePickerPrivateContext.js";
22
23
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
23
- const useUtilityClasses = ownerState => {
24
- const {
25
- classes
26
- } = ownerState;
24
+ const useUtilityClasses = classes => {
27
25
  const slots = {
28
26
  root: ['root'],
29
27
  labelContainer: ['labelContainer'],
@@ -132,12 +130,15 @@ const PickersCalendarHeader = /*#__PURE__*/React.forwardRef(function PickersCale
132
130
  views,
133
131
  labelId,
134
132
  className,
133
+ classes: classesProp,
135
134
  timezone,
136
135
  format = `${utils.formats.month} ${utils.formats.year}`
137
136
  } = props,
138
137
  other = _objectWithoutPropertiesLoose(props, _excluded);
139
- const ownerState = props;
140
- const classes = useUtilityClasses(props);
138
+ const {
139
+ ownerState
140
+ } = usePickerPrivateContext();
141
+ const classes = useUtilityClasses(classesProp);
141
142
  const SwitchViewButton = slots?.switchViewButton ?? PickersCalendarHeaderSwitchViewButton;
142
143
  const switchViewButtonProps = useSlotProps({
143
144
  elementType: SwitchViewButton,
@@ -214,6 +215,8 @@ const PickersCalendarHeader = /*#__PURE__*/React.forwardRef(function PickersCale
214
215
  }))]
215
216
  }), /*#__PURE__*/_jsx(Fade, {
216
217
  in: view === 'day',
218
+ appear: !reduceAnimations,
219
+ enter: !reduceAnimations,
217
220
  children: /*#__PURE__*/_jsx(PickersArrowSwitcher, {
218
221
  slots: slots,
219
222
  slotProps: slotProps,
@@ -5,7 +5,7 @@ import SvgIcon from '@mui/material/SvgIcon';
5
5
  import { SxProps, Theme } from '@mui/material/styles';
6
6
  import { ExportedPickersArrowSwitcherProps, PickersArrowSwitcherSlots, PickersArrowSwitcherSlotProps } from '../internals/components/PickersArrowSwitcher';
7
7
  import { MonthValidationOptions } from '../internals/hooks/date-helpers-hooks';
8
- import { PickerValidDate, DateView } from '../models';
8
+ import { PickerValidDate, DateView, PickerOwnerState } from '../models';
9
9
  import { SlideDirection } from '../DateCalendar/PickersSlideTransition';
10
10
  import { PickersCalendarHeaderClasses } from './pickersCalendarHeaderClasses';
11
11
  export interface PickersCalendarHeaderSlots extends PickersArrowSwitcherSlots {
@@ -22,10 +22,9 @@ export interface PickersCalendarHeaderSlots extends PickersArrowSwitcherSlots {
22
22
  }
23
23
  export interface PickersCalendarHeaderSlotPropsOverrides {
24
24
  }
25
- export type PickersCalendarHeaderOwnerState = PickersCalendarHeaderProps;
26
25
  export interface PickersCalendarHeaderSlotProps extends PickersArrowSwitcherSlotProps {
27
- switchViewButton?: SlotComponentProps<typeof IconButton, PickersCalendarHeaderSlotPropsOverrides, PickersCalendarHeaderOwnerState>;
28
- switchViewIcon?: SlotComponentProps<typeof SvgIcon, PickersCalendarHeaderSlotPropsOverrides, PickersCalendarHeaderOwnerState>;
26
+ switchViewButton?: SlotComponentProps<typeof IconButton, PickersCalendarHeaderSlotPropsOverrides, PickerOwnerState>;
27
+ switchViewIcon?: SlotComponentProps<typeof SvgIcon, PickersCalendarHeaderSlotPropsOverrides, PickerOwnerState>;
29
28
  }
30
29
  export interface PickersCalendarHeaderProps extends ExportedPickersArrowSwitcherProps, MonthValidationOptions {
31
30
  /**
@@ -1,11 +1,13 @@
1
1
  import * as React from 'react';
2
- import { PickersLayoutProps } from './PickersLayout.types';
3
- import { DateOrTimeViewWithMeridiem } from '../internals/models';
2
+ import { PickerLayoutOwnerState, PickersLayoutProps } from './PickersLayout.types';
3
+ import { PickerValidValue } from '../internals/models';
4
4
  export declare const PickersLayoutRoot: import("@emotion/styled").StyledComponent<import("@mui/system").MUIStyledCommonProps<import("@mui/material").Theme> & {
5
- ownerState: PickersLayoutProps<any, any>;
5
+ ownerState: PickerLayoutOwnerState;
6
6
  }, Pick<React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, keyof React.ClassAttributes<HTMLDivElement> | keyof React.HTMLAttributes<HTMLDivElement>>, {}>;
7
- export declare const PickersLayoutContentWrapper: import("@emotion/styled").StyledComponent<import("@mui/system").MUIStyledCommonProps<import("@mui/material").Theme>, Pick<React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, keyof React.ClassAttributes<HTMLDivElement> | keyof React.HTMLAttributes<HTMLDivElement>>, {}>;
8
- type PickersLayoutComponent = (<TValue, TView extends DateOrTimeViewWithMeridiem>(props: PickersLayoutProps<TValue, TView> & React.RefAttributes<HTMLDivElement>) => React.JSX.Element) & {
7
+ export declare const PickersLayoutContentWrapper: import("@emotion/styled").StyledComponent<import("@mui/system").MUIStyledCommonProps<import("@mui/material").Theme> & {
8
+ ownerState: PickerLayoutOwnerState;
9
+ }, Pick<React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, keyof React.ClassAttributes<HTMLDivElement> | keyof React.HTMLAttributes<HTMLDivElement>>, {}>;
10
+ type PickersLayoutComponent = (<TValue extends PickerValidValue>(props: PickersLayoutProps<TValue> & React.RefAttributes<HTMLDivElement>) => React.JSX.Element) & {
9
11
  propTypes?: any;
10
12
  };
11
13
  /**
@@ -7,14 +7,14 @@ import { styled, useThemeProps } from '@mui/material/styles';
7
7
  import composeClasses from '@mui/utils/composeClasses';
8
8
  import { pickersLayoutClasses, getPickersLayoutUtilityClass } from "./pickersLayoutClasses.js";
9
9
  import usePickerLayout from "./usePickerLayout.js";
10
+ import { usePickerContext } from "../hooks/usePickerContext.js";
10
11
  import { jsxs as _jsxs, jsx as _jsx } from "react/jsx-runtime";
11
- const useUtilityClasses = ownerState => {
12
+ const useUtilityClasses = (classes, ownerState) => {
12
13
  const {
13
- isLandscape,
14
- classes
14
+ pickerOrientation
15
15
  } = ownerState;
16
16
  const slots = {
17
- root: ['root', isLandscape && 'landscape'],
17
+ root: ['root', pickerOrientation === 'landscape' && 'landscape'],
18
18
  contentWrapper: ['contentWrapper']
19
19
  };
20
20
  return composeClasses(slots, getPickersLayoutUtilityClass, classes);
@@ -33,7 +33,7 @@ export const PickersLayoutRoot = styled('div', {
33
33
  },
34
34
  variants: [{
35
35
  props: {
36
- isLandscape: true
36
+ pickerOrientation: 'landscape'
37
37
  },
38
38
  style: {
39
39
  [`& .${pickersLayoutClasses.toolbar}`]: {
@@ -47,8 +47,8 @@ export const PickersLayoutRoot = styled('div', {
47
47
  }
48
48
  }, {
49
49
  props: {
50
- isLandscape: true,
51
- isRtl: true
50
+ pickerOrientation: 'landscape',
51
+ layoutDirection: 'rtl'
52
52
  },
53
53
  style: {
54
54
  [`& .${pickersLayoutClasses.toolbar}`]: {
@@ -57,7 +57,7 @@ export const PickersLayoutRoot = styled('div', {
57
57
  }
58
58
  }, {
59
59
  props: {
60
- isLandscape: false
60
+ pickerOrientation: 'portrait'
61
61
  },
62
62
  style: {
63
63
  [`& .${pickersLayoutClasses.toolbar}`]: {
@@ -71,8 +71,8 @@ export const PickersLayoutRoot = styled('div', {
71
71
  }
72
72
  }, {
73
73
  props: {
74
- isLandscape: false,
75
- isRtl: true
74
+ pickerOrientation: 'portrait',
75
+ layoutDirection: 'rtl'
76
76
  },
77
77
  style: {
78
78
  [`& .${pickersLayoutClasses.shortcuts}`]: {
@@ -110,23 +110,28 @@ const PickersLayout = /*#__PURE__*/React.forwardRef(function PickersLayout(inPro
110
110
  content,
111
111
  tabs,
112
112
  actionBar,
113
- shortcuts
113
+ shortcuts,
114
+ ownerState
114
115
  } = usePickerLayout(props);
116
+ const {
117
+ orientation,
118
+ variant
119
+ } = usePickerContext();
115
120
  const {
116
121
  sx,
117
122
  className,
118
- isLandscape,
119
- wrapperVariant
123
+ classes: classesProp
120
124
  } = props;
121
- const classes = useUtilityClasses(props);
125
+ const classes = useUtilityClasses(classesProp, ownerState);
122
126
  return /*#__PURE__*/_jsxs(PickersLayoutRoot, {
123
127
  ref: ref,
124
128
  sx: sx,
125
129
  className: clsx(classes.root, className),
126
- ownerState: props,
127
- children: [isLandscape ? shortcuts : toolbar, isLandscape ? toolbar : shortcuts, /*#__PURE__*/_jsx(PickersLayoutContentWrapper, {
130
+ ownerState: ownerState,
131
+ children: [orientation === 'landscape' ? shortcuts : toolbar, orientation === 'landscape' ? toolbar : shortcuts, /*#__PURE__*/_jsx(PickersLayoutContentWrapper, {
128
132
  className: classes.contentWrapper,
129
- children: wrapperVariant === 'desktop' ? /*#__PURE__*/_jsxs(React.Fragment, {
133
+ ownerState: ownerState,
134
+ children: variant === 'desktop' ? /*#__PURE__*/_jsxs(React.Fragment, {
130
135
  children: [content, tabs]
131
136
  }) : /*#__PURE__*/_jsxs(React.Fragment, {
132
137
  children: [tabs, content]
@@ -145,26 +150,6 @@ process.env.NODE_ENV !== "production" ? PickersLayout.propTypes = {
145
150
  */
146
151
  classes: PropTypes.object,
147
152
  className: PropTypes.string,
148
- isLandscape: PropTypes.bool.isRequired,
149
- /**
150
- * `true` if the application is in right-to-left direction.
151
- */
152
- isRtl: PropTypes.bool.isRequired,
153
- isValid: PropTypes.func.isRequired,
154
- onAccept: PropTypes.func.isRequired,
155
- onCancel: PropTypes.func.isRequired,
156
- onChange: PropTypes.func.isRequired,
157
- onClear: PropTypes.func.isRequired,
158
- onClose: PropTypes.func.isRequired,
159
- onDismiss: PropTypes.func.isRequired,
160
- onOpen: PropTypes.func.isRequired,
161
- onSelectShortcut: PropTypes.func.isRequired,
162
- onSetToday: PropTypes.func.isRequired,
163
- onViewChange: PropTypes.func.isRequired,
164
- /**
165
- * Force rendering in particular orientation.
166
- */
167
- orientation: PropTypes.oneOf(['landscape', 'portrait']),
168
153
  /**
169
154
  * The props used for each component slot.
170
155
  * @default {}
@@ -178,10 +163,6 @@ process.env.NODE_ENV !== "production" ? PickersLayout.propTypes = {
178
163
  /**
179
164
  * The system prop that allows defining system overrides as well as additional CSS styles.
180
165
  */
181
- sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object]),
182
- value: PropTypes.any,
183
- view: PropTypes.oneOf(['day', 'hours', 'meridiem', 'minutes', 'month', 'seconds', 'year']),
184
- views: PropTypes.arrayOf(PropTypes.oneOf(['day', 'hours', 'meridiem', 'minutes', 'month', 'seconds', 'year']).isRequired).isRequired,
185
- wrapperVariant: PropTypes.oneOf(['desktop', 'mobile'])
166
+ sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object])
186
167
  } : void 0;
187
168
  export { PickersLayout };
@@ -3,14 +3,13 @@ import { SxProps, Theme } from '@mui/material/styles';
3
3
  import { SlotComponentProps } from '@mui/utils';
4
4
  import { PickersActionBar, PickersActionBarProps } from '../PickersActionBar';
5
5
  import { BaseToolbarProps, ExportedBaseToolbarProps } from '../internals/models/props/toolbar';
6
- import { BaseTabsProps, ExportedBaseTabsProps } from '../internals/models/props/tabs';
7
- import { UsePickerLayoutPropsResponseLayoutProps } from '../internals/hooks/usePicker/usePickerLayoutProps';
6
+ import { ExportedBaseTabsProps } from '../internals/models/props/tabs';
8
7
  import { PickersLayoutClasses } from './pickersLayoutClasses';
9
- import { DateOrTimeViewWithMeridiem, PickerVariant } from '../internals/models/common';
10
8
  import { PickersShortcutsProps } from '../PickersShortcuts';
11
9
  import { ExportedPickersShortcutProps, PickersShortcuts } from '../PickersShortcuts/PickersShortcuts';
12
10
  import { PickerOwnerState } from '../models';
13
- export interface ExportedPickersLayoutSlots<TValue, TView extends DateOrTimeViewWithMeridiem> {
11
+ import { PickerValidValue } from '../internals/models';
12
+ export interface ExportedPickersLayoutSlots<TValue extends PickerValidValue> {
14
13
  /**
15
14
  * Custom component for the action bar, it is placed below the picker views.
16
15
  * @default PickersActionBar
@@ -25,13 +24,17 @@ export interface ExportedPickersLayoutSlots<TValue, TView extends DateOrTimeView
25
24
  * Custom component for wrapping the layout.
26
25
  * It wraps the toolbar, views, action bar, and shortcuts.
27
26
  */
28
- layout?: React.JSXElementConstructor<PickersLayoutProps<TValue, TView> & React.RefAttributes<HTMLDivElement>>;
27
+ layout?: React.JSXElementConstructor<PickersLayoutProps<TValue> & React.RefAttributes<HTMLDivElement>>;
29
28
  }
30
29
  export interface PickerLayoutOwnerState extends PickerOwnerState {
31
- wrapperVariant: PickerVariant;
32
- isLandscape: boolean;
30
+ /**
31
+ * The direction of the layout.
32
+ * Is equal to "ltr" when the layout is in left-to-right direction.
33
+ * Is equal to "rtl" when the layout is in right-to-left direction.
34
+ */
35
+ layoutDirection: 'ltr' | 'rtl';
33
36
  }
34
- export interface ExportedPickersLayoutSlotProps<TValue, TView extends DateOrTimeViewWithMeridiem> {
37
+ export interface ExportedPickersLayoutSlotProps<TValue extends PickerValidValue> {
35
38
  /**
36
39
  * Props passed down to the action bar component.
37
40
  */
@@ -43,20 +46,20 @@ export interface ExportedPickersLayoutSlotProps<TValue, TView extends DateOrTime
43
46
  /**
44
47
  * Props passed down to the layoutRoot component.
45
48
  */
46
- layout?: Partial<PickersLayoutProps<TValue, TView>>;
49
+ layout?: Partial<PickersLayoutProps<TValue>>;
47
50
  }
48
- export interface PickersLayoutSlots<TValue, TView extends DateOrTimeViewWithMeridiem> extends ExportedPickersLayoutSlots<TValue, TView> {
51
+ export interface PickersLayoutSlots<TValue extends PickerValidValue> extends ExportedPickersLayoutSlots<TValue> {
49
52
  /**
50
53
  * Tabs enabling toggling between views.
51
54
  */
52
- tabs?: React.ElementType<BaseTabsProps<TView>>;
55
+ tabs?: React.ElementType<{}>;
53
56
  /**
54
57
  * Custom component for the toolbar.
55
58
  * It is placed above the picker views.
56
59
  */
57
- toolbar?: React.JSXElementConstructor<BaseToolbarProps<TValue, TView>>;
60
+ toolbar?: React.JSXElementConstructor<BaseToolbarProps>;
58
61
  }
59
- export interface PickersLayoutSlotProps<TValue, TView extends DateOrTimeViewWithMeridiem> extends ExportedPickersLayoutSlotProps<TValue, TView> {
62
+ export interface PickersLayoutSlotProps<TValue extends PickerValidValue> extends ExportedPickersLayoutSlotProps<TValue> {
60
63
  /**
61
64
  * Props passed down to the tabs component.
62
65
  */
@@ -66,8 +69,7 @@ export interface PickersLayoutSlotProps<TValue, TView extends DateOrTimeViewWith
66
69
  */
67
70
  toolbar?: ExportedBaseToolbarProps;
68
71
  }
69
- export interface PickersLayoutProps<TValue, TView extends DateOrTimeViewWithMeridiem> extends Omit<UsePickerLayoutPropsResponseLayoutProps<TValue, TView>, 'value'> {
70
- value?: TValue;
72
+ export interface PickersLayoutProps<TValue extends PickerValidValue> {
71
73
  className?: string;
72
74
  children?: React.ReactNode;
73
75
  /**
@@ -82,18 +84,14 @@ export interface PickersLayoutProps<TValue, TView extends DateOrTimeViewWithMeri
82
84
  * Overridable component slots.
83
85
  * @default {}
84
86
  */
85
- slots?: PickersLayoutSlots<TValue, TView>;
87
+ slots?: PickersLayoutSlots<TValue>;
86
88
  /**
87
89
  * The props used for each component slot.
88
90
  * @default {}
89
91
  */
90
- slotProps?: PickersLayoutSlotProps<TValue, TView>;
91
- /**
92
- * `true` if the application is in right-to-left direction.
93
- */
94
- isRtl: boolean;
92
+ slotProps?: PickersLayoutSlotProps<TValue>;
95
93
  }
96
- export interface SubComponents<TValue> {
94
+ export interface SubComponents<TValue extends PickerValidValue> {
97
95
  toolbar: React.ReactElement<ExportedBaseToolbarProps> | null;
98
96
  content: React.ReactNode;
99
97
  tabs: React.ReactElement<ExportedBaseTabsProps> | null;
@@ -1,6 +1,7 @@
1
- import { PickersLayoutProps, SubComponents } from './PickersLayout.types';
2
- import { DateOrTimeViewWithMeridiem } from '../internals/models';
3
- interface UsePickerLayoutResponse<TValue> extends SubComponents<TValue> {
1
+ import { PickerLayoutOwnerState, PickersLayoutProps, SubComponents } from './PickersLayout.types';
2
+ import { PickerValidValue } from '../internals/models';
3
+ interface UsePickerLayoutResponse<TValue extends PickerValidValue> extends SubComponents<TValue> {
4
+ ownerState: PickerLayoutOwnerState;
4
5
  }
5
- declare const usePickerLayout: <TValue, TView extends DateOrTimeViewWithMeridiem>(props: PickersLayoutProps<TValue, TView>) => UsePickerLayoutResponse<TValue>;
6
+ declare const usePickerLayout: <TValue extends PickerValidValue>(props: PickersLayoutProps<TValue>) => UsePickerLayoutResponse<TValue>;
6
7
  export default usePickerLayout;
@@ -1,23 +1,27 @@
1
1
  'use client';
2
2
 
3
+ import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/esm/objectWithoutPropertiesLoose";
3
4
  import _extends from "@babel/runtime/helpers/esm/extends";
5
+ const _excluded = ["ownerState"];
4
6
  import * as React from 'react';
5
7
  import useSlotProps from '@mui/utils/useSlotProps';
6
8
  import composeClasses from '@mui/utils/composeClasses';
9
+ import { useRtl } from '@mui/system/RtlProvider';
7
10
  import { PickersActionBar } from "../PickersActionBar/index.js";
8
11
  import { getPickersLayoutUtilityClass } from "./pickersLayoutClasses.js";
9
12
  import { PickersShortcuts } from "../PickersShortcuts/index.js";
10
13
  import { usePickerPrivateContext } from "../internals/hooks/usePickerPrivateContext.js";
14
+ import { usePickerContext } from "../hooks/index.js";
11
15
  import { jsx as _jsx } from "react/jsx-runtime";
12
16
  function toolbarHasView(toolbarProps) {
13
17
  return toolbarProps.view !== null;
14
18
  }
15
19
  const useUtilityClasses = (classes, ownerState) => {
16
20
  const {
17
- isLandscape
21
+ pickerOrientation
18
22
  } = ownerState;
19
23
  const slots = {
20
- root: ['root', isLandscape && 'landscape'],
24
+ root: ['root', pickerOrientation === 'landscape' && 'landscape'],
21
25
  contentWrapper: ['contentWrapper'],
22
26
  toolbar: ['toolbar'],
23
27
  actionBar: ['actionBar'],
@@ -29,52 +33,35 @@ const useUtilityClasses = (classes, ownerState) => {
29
33
  };
30
34
  const usePickerLayout = props => {
31
35
  const {
32
- ownerState: pickersOwnerState
36
+ ownerState: pickerOwnerState
33
37
  } = usePickerPrivateContext();
34
38
  const {
35
- wrapperVariant,
36
- onAccept,
37
- onClear,
38
- onCancel,
39
- onSetToday,
40
- view,
41
- views,
42
- onViewChange,
43
- value,
44
- onChange,
45
- onSelectShortcut,
46
- isValid,
47
- isLandscape,
39
+ view
40
+ } = usePickerContext();
41
+ const isRtl = useRtl();
42
+ const {
48
43
  children,
49
44
  slots,
50
45
  slotProps,
51
46
  classes: classesProp
52
- // TODO: Remove this "as" hack. It get introduced to mark `value` prop in PickersLayoutProps as not required.
53
- // The true type should be
54
- // - For pickers value: PickerValidDate | null
55
- // - For range pickers value: [PickerValidDate | null, PickerValidDate | null]
56
47
  } = props;
57
- const ownerState = _extends({}, pickersOwnerState, {
58
- wrapperVariant,
59
- isLandscape
60
- });
48
+ const ownerState = React.useMemo(() => _extends({}, pickerOwnerState, {
49
+ layoutDirection: isRtl ? 'rtl' : 'ltr'
50
+ }), [pickerOwnerState, isRtl]);
61
51
  const classes = useUtilityClasses(classesProp, ownerState);
62
52
 
63
53
  // Action bar
64
54
  const ActionBar = slots?.actionBar ?? PickersActionBar;
65
- const actionBarProps = useSlotProps({
66
- elementType: ActionBar,
67
- externalSlotProps: slotProps?.actionBar,
68
- additionalProps: {
69
- onAccept,
70
- onClear,
71
- onCancel,
72
- onSetToday,
73
- actions: wrapperVariant === 'desktop' ? [] : ['cancel', 'accept']
74
- },
75
- className: classes.actionBar,
76
- ownerState
77
- });
55
+ const _useSlotProps = useSlotProps({
56
+ elementType: ActionBar,
57
+ externalSlotProps: slotProps?.actionBar,
58
+ additionalProps: {
59
+ actions: ['cancel', 'accept']
60
+ },
61
+ className: classes.actionBar,
62
+ ownerState
63
+ }),
64
+ actionBarProps = _objectWithoutPropertiesLoose(_useSlotProps, _excluded);
78
65
  const actionBar = /*#__PURE__*/_jsx(ActionBar, _extends({}, actionBarProps));
79
66
 
80
67
  // Toolbar
@@ -82,14 +69,6 @@ const usePickerLayout = props => {
82
69
  const toolbarProps = useSlotProps({
83
70
  elementType: Toolbar,
84
71
  externalSlotProps: slotProps?.toolbar,
85
- additionalProps: {
86
- isLandscape,
87
- onChange,
88
- value,
89
- view,
90
- onViewChange,
91
- views
92
- },
93
72
  className: classes.toolbar,
94
73
  ownerState
95
74
  });
@@ -101,8 +80,6 @@ const usePickerLayout = props => {
101
80
  // Tabs
102
81
  const Tabs = slots?.tabs;
103
82
  const tabs = view && Tabs ? /*#__PURE__*/_jsx(Tabs, _extends({
104
- view: view,
105
- onViewChange: onViewChange,
106
83
  className: classes.tabs
107
84
  }, slotProps?.tabs)) : null;
108
85
 
@@ -111,11 +88,6 @@ const usePickerLayout = props => {
111
88
  const shortcutsProps = useSlotProps({
112
89
  elementType: Shortcuts,
113
90
  externalSlotProps: slotProps?.shortcuts,
114
- additionalProps: {
115
- isValid,
116
- isLandscape,
117
- onChange: onSelectShortcut
118
- },
119
91
  className: classes.shortcuts,
120
92
  ownerState
121
93
  });
@@ -125,7 +97,8 @@ const usePickerLayout = props => {
125
97
  content,
126
98
  tabs,
127
99
  actionBar,
128
- shortcuts
100
+ shortcuts,
101
+ ownerState
129
102
  };
130
103
  };
131
104
  export default usePickerLayout;