@mui/x-date-pickers 8.0.0-alpha.6 → 8.0.0-alpha.8

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 (327) 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/CHANGELOG.md +242 -1
  20. package/DateCalendar/DateCalendar.js +1 -1
  21. package/DateCalendar/PickersFadeTransitionGroup.d.ts +1 -1
  22. package/DateCalendar/PickersSlideTransition.d.ts +1 -1
  23. package/DateField/DateField.js +26 -31
  24. package/DateField/DateField.types.d.ts +6 -15
  25. package/DateField/useDateField.d.ts +1 -1
  26. package/DateField/useDateField.js +14 -11
  27. package/DatePicker/DatePicker.js +1 -1
  28. package/DatePicker/DatePicker.types.d.ts +5 -0
  29. package/DatePicker/DatePickerToolbar.d.ts +1 -2
  30. package/DatePicker/DatePickerToolbar.js +7 -11
  31. package/DatePicker/shared.d.ts +1 -1
  32. package/DateTimeField/DateTimeField.js +26 -31
  33. package/DateTimeField/DateTimeField.types.d.ts +6 -15
  34. package/DateTimeField/useDateTimeField.d.ts +1 -1
  35. package/DateTimeField/useDateTimeField.js +14 -11
  36. package/DateTimePicker/DateTimePicker.js +2 -2
  37. package/DateTimePicker/DateTimePickerTabs.js +2 -2
  38. package/DateTimePicker/DateTimePickerToolbar.d.ts +6 -2
  39. package/DateTimePicker/DateTimePickerToolbar.js +36 -31
  40. package/DateTimePicker/shared.d.ts +1 -1
  41. package/DesktopDatePicker/DesktopDatePicker.js +9 -14
  42. package/DesktopDatePicker/DesktopDatePicker.types.d.ts +5 -0
  43. package/DesktopDateTimePicker/DesktopDateTimePicker.js +14 -22
  44. package/DesktopDateTimePicker/DesktopDateTimePickerLayout.js +1 -5
  45. package/DesktopTimePicker/DesktopTimePicker.js +4 -19
  46. package/MobileDatePicker/MobileDatePicker.js +2 -11
  47. package/MobileDateTimePicker/MobileDateTimePicker.js +2 -11
  48. package/MobileTimePicker/MobileTimePicker.js +2 -11
  49. package/PickersActionBar/PickersActionBar.d.ts +6 -3
  50. package/PickersActionBar/PickersActionBar.js +6 -3
  51. package/PickersLayout/PickersLayout.js +1 -5
  52. package/PickersLayout/PickersLayout.types.d.ts +2 -3
  53. package/PickersLayout/usePickerLayout.js +12 -31
  54. package/PickersShortcuts/PickersShortcuts.d.ts +2 -5
  55. package/PickersShortcuts/PickersShortcuts.js +13 -10
  56. package/PickersShortcuts/index.d.ts +1 -1
  57. package/PickersTextField/PickersInputBase/PickersInputBase.js +7 -0
  58. package/PickersTextField/PickersTextField.js +1 -1
  59. package/TimeField/TimeField.js +25 -30
  60. package/TimeField/TimeField.types.d.ts +6 -15
  61. package/TimeField/useTimeField.d.ts +1 -1
  62. package/TimeField/useTimeField.js +14 -11
  63. package/TimePicker/TimePicker.js +2 -2
  64. package/TimePicker/TimePickerToolbar.d.ts +1 -2
  65. package/TimePicker/TimePickerToolbar.js +20 -18
  66. package/TimePicker/shared.d.ts +1 -1
  67. package/hooks/index.d.ts +1 -0
  68. package/hooks/index.js +2 -1
  69. package/hooks/useIsValidValue.d.ts +7 -0
  70. package/hooks/useIsValidValue.js +11 -0
  71. package/hooks/useParsedFormat.d.ts +8 -6
  72. package/hooks/useParsedFormat.js +10 -12
  73. package/hooks/usePickerActionsContext.d.ts +3 -1
  74. package/hooks/usePickerActionsContext.js +0 -1
  75. package/hooks/usePickerContext.d.ts +5 -3
  76. package/hooks/usePickerContext.js +3 -2
  77. package/hooks/useSplitFieldProps.d.ts +12 -3
  78. package/hooks/useSplitFieldProps.js +8 -3
  79. package/index.d.ts +1 -0
  80. package/index.js +3 -2
  81. package/internals/components/PickerFieldUI.d.ts +132 -0
  82. package/internals/components/PickerFieldUI.js +306 -0
  83. package/internals/components/PickerProvider.d.ts +34 -12
  84. package/internals/components/PickerProvider.js +14 -4
  85. package/internals/components/PickersToolbar.d.ts +2 -3
  86. package/internals/components/PickersToolbar.js +1 -1
  87. package/internals/hooks/date-helpers-hooks.js +4 -3
  88. package/internals/hooks/useDesktopPicker/useDesktopPicker.d.ts +1 -1
  89. package/internals/hooks/useDesktopPicker/useDesktopPicker.js +21 -96
  90. package/internals/hooks/useDesktopPicker/useDesktopPicker.types.d.ts +10 -33
  91. package/internals/hooks/useField/buildSectionsFromFormat.js +1 -1
  92. package/internals/hooks/useField/index.d.ts +2 -0
  93. package/internals/hooks/useField/index.js +2 -1
  94. package/internals/hooks/useField/useField.js +12 -4
  95. package/internals/hooks/useField/useField.types.d.ts +11 -4
  96. package/internals/hooks/useField/useField.utils.js +2 -2
  97. package/internals/hooks/useField/useFieldInternalPropsWithDefaults.d.ts +15 -0
  98. package/internals/hooks/useField/useFieldInternalPropsWithDefaults.js +46 -0
  99. package/internals/hooks/useField/useFieldState.js +2 -2
  100. package/internals/hooks/useField/useFieldV6TextField.js +2 -2
  101. package/internals/hooks/useField/useFieldV7TextField.js +3 -3
  102. package/internals/hooks/useFieldOwnerState.d.ts +1 -2
  103. package/internals/hooks/useMobilePicker/useMobilePicker.d.ts +1 -1
  104. package/internals/hooks/useMobilePicker/useMobilePicker.js +20 -51
  105. package/internals/hooks/useMobilePicker/useMobilePicker.types.d.ts +8 -16
  106. package/internals/hooks/useNullablePickerContext.d.ts +5 -0
  107. package/internals/hooks/useNullablePickerContext.js +10 -0
  108. package/internals/hooks/useOpenState.js +3 -2
  109. package/internals/hooks/usePicker/usePicker.d.ts +1 -2
  110. package/internals/hooks/usePicker/usePicker.js +0 -9
  111. package/internals/hooks/usePicker/usePicker.types.d.ts +7 -9
  112. package/internals/hooks/usePicker/usePickerProvider.d.ts +12 -6
  113. package/internals/hooks/usePicker/usePickerProvider.js +26 -4
  114. package/internals/hooks/usePicker/usePickerValue.d.ts +1 -1
  115. package/internals/hooks/usePicker/usePickerValue.js +62 -185
  116. package/internals/hooks/usePicker/usePickerValue.types.d.ts +52 -55
  117. package/internals/hooks/usePicker/usePickerViews.d.ts +27 -23
  118. package/internals/hooks/usePicker/usePickerViews.js +17 -11
  119. package/internals/hooks/useStaticPicker/useStaticPicker.js +1 -4
  120. package/internals/hooks/useStaticPicker/useStaticPicker.types.d.ts +2 -2
  121. package/internals/hooks/useUtils.d.ts +4 -3
  122. package/internals/hooks/useUtils.js +1 -1
  123. package/internals/index.d.ts +11 -6
  124. package/internals/index.js +6 -4
  125. package/internals/models/fields.d.ts +3 -16
  126. package/internals/models/index.d.ts +1 -0
  127. package/internals/models/index.js +2 -1
  128. package/internals/models/manager.d.ts +15 -0
  129. package/internals/models/manager.js +1 -0
  130. package/internals/models/props/basePickerProps.d.ts +2 -14
  131. package/internals/models/props/toolbar.d.ts +1 -5
  132. package/internals/utils/date-utils.js +1 -1
  133. package/internals/utils/valueManagers.js +4 -4
  134. package/locales/index.d.ts +1 -0
  135. package/locales/index.js +1 -0
  136. package/locales/nbNO.js +15 -19
  137. package/locales/utils/getPickersLocalization.d.ts +0 -7
  138. package/locales/utils/getPickersLocalization.js +0 -13
  139. package/locales/zhTW.d.ts +80 -0
  140. package/locales/zhTW.js +73 -0
  141. package/managers/index.d.ts +6 -0
  142. package/managers/index.js +3 -0
  143. package/managers/package.json +6 -0
  144. package/managers/useDateManager.d.ts +27 -0
  145. package/managers/useDateManager.js +55 -0
  146. package/managers/useDateTimeManager.d.ts +28 -0
  147. package/managers/useDateTimeManager.js +60 -0
  148. package/managers/useTimeManager.d.ts +28 -0
  149. package/managers/useTimeManager.js +51 -0
  150. package/models/adapters.d.ts +1 -1
  151. package/models/fields.d.ts +4 -4
  152. package/models/index.d.ts +1 -0
  153. package/models/index.js +1 -0
  154. package/models/manager.d.ts +87 -0
  155. package/models/manager.js +1 -0
  156. package/models/pickers.d.ts +7 -0
  157. package/modern/AdapterDateFns/AdapterDateFns.js +49 -47
  158. package/modern/AdapterDateFnsJalali/AdapterDateFnsJalali.js +48 -46
  159. package/modern/{AdapterDateFnsJalaliV3/AdapterDateFnsJalaliV3.js → AdapterDateFnsJalaliV2/AdapterDateFnsJalaliV2.js} +45 -52
  160. package/modern/AdapterDateFnsJalaliV2/index.js +1 -0
  161. package/modern/{AdapterDateFnsV3/AdapterDateFnsV3.js → AdapterDateFnsV2/AdapterDateFnsV2.js} +46 -54
  162. package/modern/AdapterDateFnsV2/index.js +1 -0
  163. package/modern/DateCalendar/DateCalendar.js +1 -1
  164. package/modern/DateField/DateField.js +26 -31
  165. package/modern/DateField/useDateField.js +14 -11
  166. package/modern/DatePicker/DatePicker.js +1 -1
  167. package/modern/DatePicker/DatePickerToolbar.js +7 -11
  168. package/modern/DateTimeField/DateTimeField.js +26 -31
  169. package/modern/DateTimeField/useDateTimeField.js +14 -11
  170. package/modern/DateTimePicker/DateTimePicker.js +2 -2
  171. package/modern/DateTimePicker/DateTimePickerTabs.js +2 -2
  172. package/modern/DateTimePicker/DateTimePickerToolbar.js +36 -31
  173. package/modern/DesktopDatePicker/DesktopDatePicker.js +9 -14
  174. package/modern/DesktopDateTimePicker/DesktopDateTimePicker.js +14 -22
  175. package/modern/DesktopDateTimePicker/DesktopDateTimePickerLayout.js +1 -5
  176. package/modern/DesktopTimePicker/DesktopTimePicker.js +4 -19
  177. package/modern/MobileDatePicker/MobileDatePicker.js +2 -11
  178. package/modern/MobileDateTimePicker/MobileDateTimePicker.js +2 -11
  179. package/modern/MobileTimePicker/MobileTimePicker.js +2 -11
  180. package/modern/PickersActionBar/PickersActionBar.js +6 -3
  181. package/modern/PickersLayout/PickersLayout.js +1 -5
  182. package/modern/PickersLayout/usePickerLayout.js +12 -31
  183. package/modern/PickersShortcuts/PickersShortcuts.js +13 -10
  184. package/modern/PickersTextField/PickersInputBase/PickersInputBase.js +7 -0
  185. package/modern/PickersTextField/PickersTextField.js +1 -1
  186. package/modern/TimeField/TimeField.js +25 -30
  187. package/modern/TimeField/useTimeField.js +14 -11
  188. package/modern/TimePicker/TimePicker.js +2 -2
  189. package/modern/TimePicker/TimePickerToolbar.js +20 -18
  190. package/modern/hooks/index.js +2 -1
  191. package/modern/hooks/useIsValidValue.js +11 -0
  192. package/modern/hooks/useParsedFormat.js +10 -12
  193. package/modern/hooks/usePickerActionsContext.js +0 -1
  194. package/modern/hooks/usePickerContext.js +3 -2
  195. package/modern/hooks/useSplitFieldProps.js +8 -3
  196. package/modern/index.js +3 -2
  197. package/modern/internals/components/PickerFieldUI.js +306 -0
  198. package/modern/internals/components/PickerProvider.js +14 -4
  199. package/modern/internals/components/PickersToolbar.js +1 -1
  200. package/modern/internals/hooks/date-helpers-hooks.js +4 -3
  201. package/modern/internals/hooks/useDesktopPicker/useDesktopPicker.js +21 -96
  202. package/modern/internals/hooks/useField/buildSectionsFromFormat.js +1 -1
  203. package/modern/internals/hooks/useField/index.js +2 -1
  204. package/modern/internals/hooks/useField/useField.js +12 -4
  205. package/modern/internals/hooks/useField/useField.utils.js +2 -2
  206. package/modern/internals/hooks/useField/useFieldInternalPropsWithDefaults.js +46 -0
  207. package/modern/internals/hooks/useField/useFieldState.js +2 -2
  208. package/modern/internals/hooks/useField/useFieldV6TextField.js +2 -2
  209. package/modern/internals/hooks/useField/useFieldV7TextField.js +3 -3
  210. package/modern/internals/hooks/useMobilePicker/useMobilePicker.js +20 -51
  211. package/modern/internals/hooks/useNullablePickerContext.js +10 -0
  212. package/modern/internals/hooks/useOpenState.js +3 -2
  213. package/modern/internals/hooks/usePicker/usePicker.js +0 -9
  214. package/modern/internals/hooks/usePicker/usePickerProvider.js +26 -4
  215. package/modern/internals/hooks/usePicker/usePickerValue.js +62 -185
  216. package/modern/internals/hooks/usePicker/usePickerViews.js +17 -11
  217. package/modern/internals/hooks/useStaticPicker/useStaticPicker.js +1 -4
  218. package/modern/internals/hooks/useUtils.js +1 -1
  219. package/modern/internals/index.js +6 -4
  220. package/modern/internals/models/index.js +2 -1
  221. package/modern/internals/models/manager.js +1 -0
  222. package/modern/internals/utils/date-utils.js +1 -1
  223. package/modern/internals/utils/valueManagers.js +4 -4
  224. package/modern/locales/index.js +1 -0
  225. package/modern/locales/nbNO.js +15 -19
  226. package/modern/locales/utils/getPickersLocalization.js +0 -13
  227. package/modern/locales/zhTW.js +73 -0
  228. package/modern/managers/index.js +3 -0
  229. package/modern/managers/useDateManager.js +55 -0
  230. package/modern/managers/useDateTimeManager.js +60 -0
  231. package/modern/managers/useTimeManager.js +51 -0
  232. package/modern/models/index.js +1 -0
  233. package/modern/models/manager.js +1 -0
  234. package/node/AdapterDateFns/AdapterDateFns.js +97 -97
  235. package/node/AdapterDateFnsJalali/AdapterDateFnsJalali.js +97 -96
  236. package/node/{AdapterDateFnsJalaliV3/AdapterDateFnsJalaliV3.js → AdapterDateFnsJalaliV2/AdapterDateFnsJalaliV2.js} +94 -101
  237. package/node/{AdapterDateFnsJalaliV3 → AdapterDateFnsJalaliV2}/index.js +1 -1
  238. package/node/AdapterDateFnsV2/AdapterDateFnsV2.js +291 -0
  239. package/node/{AdapterDateFnsV3 → AdapterDateFnsV2}/index.js +1 -1
  240. package/node/DateCalendar/DateCalendar.js +1 -1
  241. package/node/DateField/DateField.js +26 -31
  242. package/node/DateField/useDateField.js +13 -10
  243. package/node/DatePicker/DatePicker.js +1 -1
  244. package/node/DatePicker/DatePickerToolbar.js +7 -11
  245. package/node/DateTimeField/DateTimeField.js +26 -31
  246. package/node/DateTimeField/useDateTimeField.js +13 -10
  247. package/node/DateTimePicker/DateTimePicker.js +2 -2
  248. package/node/DateTimePicker/DateTimePickerTabs.js +2 -2
  249. package/node/DateTimePicker/DateTimePickerToolbar.js +36 -31
  250. package/node/DesktopDatePicker/DesktopDatePicker.js +9 -14
  251. package/node/DesktopDateTimePicker/DesktopDateTimePicker.js +14 -22
  252. package/node/DesktopDateTimePicker/DesktopDateTimePickerLayout.js +1 -5
  253. package/node/DesktopTimePicker/DesktopTimePicker.js +4 -19
  254. package/node/MobileDatePicker/MobileDatePicker.js +2 -11
  255. package/node/MobileDateTimePicker/MobileDateTimePicker.js +2 -11
  256. package/node/MobileTimePicker/MobileTimePicker.js +2 -11
  257. package/node/PickersActionBar/PickersActionBar.js +8 -5
  258. package/node/PickersLayout/PickersLayout.js +1 -5
  259. package/node/PickersLayout/usePickerLayout.js +16 -35
  260. package/node/PickersShortcuts/PickersShortcuts.js +13 -10
  261. package/node/PickersTextField/PickersInputBase/PickersInputBase.js +7 -0
  262. package/node/PickersTextField/PickersTextField.js +1 -1
  263. package/node/TimeField/TimeField.js +25 -30
  264. package/node/TimeField/useTimeField.js +13 -10
  265. package/node/TimePicker/TimePicker.js +2 -2
  266. package/node/TimePicker/TimePickerToolbar.js +20 -18
  267. package/node/hooks/index.js +8 -1
  268. package/node/hooks/useIsValidValue.js +18 -0
  269. package/node/hooks/useParsedFormat.js +10 -12
  270. package/node/hooks/usePickerContext.js +5 -4
  271. package/node/hooks/useSplitFieldProps.js +7 -2
  272. package/node/index.js +13 -1
  273. package/node/internals/components/PickerFieldUI.js +318 -0
  274. package/node/internals/components/PickerProvider.js +16 -6
  275. package/node/internals/components/PickersToolbar.js +1 -1
  276. package/node/internals/hooks/date-helpers-hooks.js +4 -3
  277. package/node/internals/hooks/useDesktopPicker/useDesktopPicker.js +23 -98
  278. package/node/internals/hooks/useField/buildSectionsFromFormat.js +1 -1
  279. package/node/internals/hooks/useField/index.js +8 -1
  280. package/node/internals/hooks/useField/useField.js +11 -3
  281. package/node/internals/hooks/useField/useField.utils.js +2 -2
  282. package/node/internals/hooks/useField/useFieldInternalPropsWithDefaults.js +55 -0
  283. package/node/internals/hooks/useField/useFieldState.js +2 -2
  284. package/node/internals/hooks/useField/useFieldV6TextField.js +2 -2
  285. package/node/internals/hooks/useField/useFieldV7TextField.js +3 -3
  286. package/node/internals/hooks/useMobilePicker/useMobilePicker.js +20 -51
  287. package/node/internals/hooks/useNullablePickerContext.js +16 -0
  288. package/node/internals/hooks/useOpenState.js +4 -2
  289. package/node/internals/hooks/usePicker/usePicker.js +0 -10
  290. package/node/internals/hooks/usePicker/usePickerProvider.js +26 -4
  291. package/node/internals/hooks/usePicker/usePickerValue.js +62 -185
  292. package/node/internals/hooks/usePicker/usePickerViews.js +17 -12
  293. package/node/internals/hooks/useStaticPicker/useStaticPicker.js +1 -4
  294. package/node/internals/hooks/useUtils.js +1 -1
  295. package/node/internals/index.js +45 -19
  296. package/node/internals/models/index.js +11 -0
  297. package/node/internals/models/manager.js +5 -0
  298. package/node/internals/utils/date-utils.js +1 -1
  299. package/node/internals/utils/valueManagers.js +4 -4
  300. package/node/locales/index.js +11 -0
  301. package/node/locales/nbNO.js +15 -19
  302. package/node/locales/utils/getPickersLocalization.js +2 -16
  303. package/node/locales/zhTW.js +79 -0
  304. package/node/managers/index.js +26 -0
  305. package/node/managers/useDateManager.js +63 -0
  306. package/node/managers/useDateTimeManager.js +68 -0
  307. package/node/managers/useTimeManager.js +59 -0
  308. package/node/models/index.js +11 -0
  309. package/node/models/manager.js +5 -0
  310. package/package.json +3 -3
  311. package/themeAugmentation/props.d.ts +1 -1
  312. package/validation/extractValidationProps.d.ts +1 -1
  313. package/AdapterDateFnsJalaliV3/index.d.ts +0 -1
  314. package/AdapterDateFnsJalaliV3/index.js +0 -1
  315. package/AdapterDateFnsV3/index.d.ts +0 -1
  316. package/AdapterDateFnsV3/index.js +0 -1
  317. package/internals/hooks/defaultizedFieldProps.d.ts +0 -18
  318. package/internals/hooks/defaultizedFieldProps.js +0 -40
  319. package/internals/utils/convertFieldResponseIntoMuiTextFieldProps.d.ts +0 -3
  320. package/internals/utils/convertFieldResponseIntoMuiTextFieldProps.js +0 -44
  321. package/modern/AdapterDateFnsJalaliV3/index.js +0 -1
  322. package/modern/AdapterDateFnsV3/index.js +0 -1
  323. package/modern/internals/hooks/defaultizedFieldProps.js +0 -40
  324. package/modern/internals/utils/convertFieldResponseIntoMuiTextFieldProps.js +0 -44
  325. package/node/AdapterDateFnsV3/AdapterDateFnsV3.js +0 -299
  326. package/node/internals/hooks/defaultizedFieldProps.js +0 -50
  327. package/node/internals/utils/convertFieldResponseIntoMuiTextFieldProps.js +0 -52
@@ -18,10 +18,8 @@ var _valueManagers = require("../internals/utils/valueManagers");
18
18
  var _DateTimeField = require("../DateTimeField");
19
19
  var _shared = require("../DateTimePicker/shared");
20
20
  var _dateViewRenderers = require("../dateViewRenderers/dateViewRenderers");
21
- var _usePickerTranslations = require("../hooks/usePickerTranslations");
22
21
  var _useUtils = require("../internals/hooks/useUtils");
23
22
  var _validation = require("../validation");
24
- var _icons = require("../icons");
25
23
  var _useDesktopPicker = require("../internals/hooks/useDesktopPicker");
26
24
  var _dateTimeUtils = require("../internals/utils/date-time-utils");
27
25
  var _timeViewRenderers = require("../timeViewRenderers");
@@ -31,10 +29,14 @@ var _DesktopDateTimePickerLayout = require("./DesktopDateTimePickerLayout");
31
29
  var _dimensions = require("../internals/constants/dimensions");
32
30
  var _timeUtils = require("../internals/utils/time-utils");
33
31
  var _dateUtils = require("../internals/utils/date-utils");
34
- var _getPickersLocalization = require("../locales/utils/getPickersLocalization");
35
32
  var _jsxRuntime = require("react/jsx-runtime");
36
33
  const _excluded = ["openTo", "focusedView", "timeViewsCount"];
37
- const rendererInterceptor = function rendererInterceptor(inViewRenderers, popperView, rendererProps) {
34
+ const rendererInterceptor = function RendererInterceptor(props) {
35
+ const {
36
+ viewRenderers,
37
+ popperView,
38
+ rendererProps
39
+ } = props;
38
40
  const {
39
41
  openTo,
40
42
  focusedView,
@@ -53,8 +55,10 @@ const rendererInterceptor = function rendererInterceptor(inViewRenderers, popper
53
55
  }]
54
56
  });
55
57
  const isTimeViewActive = (0, _timeUtils.isInternalTimeView)(popperView);
58
+ const dateView = isTimeViewActive ? 'day' : popperView;
59
+ const timeView = isTimeViewActive ? popperView : 'hours';
56
60
  return /*#__PURE__*/(0, _jsxRuntime.jsxs)(React.Fragment, {
57
- children: [inViewRenderers[!isTimeViewActive ? popperView : 'day']?.((0, _extends2.default)({}, rendererProps, {
61
+ children: [viewRenderers[dateView]?.((0, _extends2.default)({}, rendererProps, {
58
62
  view: !isTimeViewActive ? popperView : 'day',
59
63
  focusedView: focusedView && (0, _dateUtils.isDatePickerView)(focusedView) ? focusedView : null,
60
64
  views: rendererProps.views.filter(_dateUtils.isDatePickerView),
@@ -67,7 +71,7 @@ const rendererInterceptor = function rendererInterceptor(inViewRenderers, popper
67
71
  sx: {
68
72
  gridColumn: 2
69
73
  }
70
- }), inViewRenderers[isTimeViewActive ? popperView : 'hours']?.((0, _extends2.default)({}, finalProps, {
74
+ }), viewRenderers[timeView]?.((0, _extends2.default)({}, finalProps, {
71
75
  view: isTimeViewActive ? popperView : 'hours',
72
76
  focusedView: focusedView && (0, _timeUtils.isInternalTimeView)(focusedView) ? focusedView : null,
73
77
  openTo: (0, _timeUtils.isInternalTimeView)(openTo) ? openTo : 'hours',
@@ -90,7 +94,6 @@ const rendererInterceptor = function rendererInterceptor(inViewRenderers, popper
90
94
  * - [DesktopDateTimePicker API](https://mui.com/x/api/date-pickers/desktop-date-time-picker/)
91
95
  */
92
96
  const DesktopDateTimePicker = exports.DesktopDateTimePicker = /*#__PURE__*/React.forwardRef(function DesktopDateTimePicker(inProps, ref) {
93
- const translations = (0, _usePickerTranslations.usePickerTranslations)();
94
97
  const utils = (0, _useUtils.useUtils)();
95
98
 
96
99
  // Props with the default values common to all date time pickers
@@ -115,7 +118,6 @@ const DesktopDateTimePicker = exports.DesktopDateTimePicker = /*#__PURE__*/React
115
118
  // Need to avoid adding the `meridiem` view when unexpected renderer is specified
116
119
  const shouldHoursRendererContainMeridiemView = viewRenderers.hours?.name === _timeViewRenderers.renderMultiSectionDigitalClockTimeView.name;
117
120
  const views = !shouldHoursRendererContainMeridiemView ? resolvedViews.filter(view => view !== 'meridiem') : resolvedViews;
118
- const actionBarActions = shouldRenderTimeInASingleColumn ? [] : ['accept'];
119
121
 
120
122
  // Props with the default values specific to the desktop variant
121
123
  const props = (0, _extends2.default)({}, defaultizedProps, {
@@ -129,8 +131,7 @@ const DesktopDateTimePicker = exports.DesktopDateTimePicker = /*#__PURE__*/React
129
131
  shouldRenderTimeInASingleColumn,
130
132
  slots: (0, _extends2.default)({
131
133
  field: _DateTimeField.DateTimeField,
132
- layout: _DesktopDateTimePickerLayout.DesktopDateTimePickerLayout,
133
- openPickerIcon: _icons.CalendarIcon
134
+ layout: _DesktopDateTimePickerLayout.DesktopDateTimePickerLayout
134
135
  }, defaultizedProps.slots),
135
136
  slotProps: (0, _extends2.default)({}, defaultizedProps.slotProps, {
136
137
  field: ownerState => (0, _extends2.default)({}, (0, _resolveComponentProps.default)(defaultizedProps.slotProps?.field, ownerState), (0, _validation.extractValidationProps)(defaultizedProps), {
@@ -142,10 +143,7 @@ const DesktopDateTimePicker = exports.DesktopDateTimePicker = /*#__PURE__*/React
142
143
  }, defaultizedProps.slotProps?.toolbar),
143
144
  tabs: (0, _extends2.default)({
144
145
  hidden: true
145
- }, defaultizedProps.slotProps?.tabs),
146
- actionBar: ownerState => (0, _extends2.default)({
147
- actions: actionBarActions
148
- }, (0, _resolveComponentProps.default)(defaultizedProps.slotProps?.actionBar, ownerState))
146
+ }, defaultizedProps.slotProps?.tabs)
149
147
  })
150
148
  });
151
149
  const {
@@ -154,12 +152,6 @@ const DesktopDateTimePicker = exports.DesktopDateTimePicker = /*#__PURE__*/React
154
152
  props,
155
153
  valueManager: _valueManagers.singleItemValueManager,
156
154
  valueType: 'date-time',
157
- getOpenDialogAriaText: (0, _getPickersLocalization.buildGetOpenDialogAriaText)({
158
- utils,
159
- formatKey: 'fullDate',
160
- contextTranslation: translations.openDatePickerDialogue,
161
- propsTranslation: props.localeText?.openDatePickerDialogue
162
- }),
163
155
  validator: _validation.validateDateTime,
164
156
  rendererInterceptor
165
157
  });
@@ -189,8 +181,8 @@ DesktopDateTimePicker.propTypes = {
189
181
  autoFocus: _propTypes.default.bool,
190
182
  className: _propTypes.default.string,
191
183
  /**
192
- * If `true`, the popover or modal will close after submitting the full date.
193
- * @default `true` for desktop, `false` for mobile (based on the chosen wrapper and `desktopModeMediaQuery` prop).
184
+ * If `true`, the Picker will close after submitting the full date.
185
+ * @default false
194
186
  */
195
187
  closeOnSelect: _propTypes.default.bool,
196
188
  /**
@@ -73,9 +73,6 @@ process.env.NODE_ENV !== "production" ? DesktopDateTimePickerLayout.propTypes =
73
73
  */
74
74
  classes: _propTypes.default.object,
75
75
  className: _propTypes.default.string,
76
- isValid: _propTypes.default.func.isRequired,
77
- onChange: _propTypes.default.func.isRequired,
78
- onSelectShortcut: _propTypes.default.func.isRequired,
79
76
  /**
80
77
  * The props used for each component slot.
81
78
  * @default {}
@@ -89,6 +86,5 @@ process.env.NODE_ENV !== "production" ? DesktopDateTimePickerLayout.propTypes =
89
86
  /**
90
87
  * The system prop that allows defining system overrides as well as additional CSS styles.
91
88
  */
92
- sx: _propTypes.default.oneOfType([_propTypes.default.arrayOf(_propTypes.default.oneOfType([_propTypes.default.func, _propTypes.default.object, _propTypes.default.bool])), _propTypes.default.func, _propTypes.default.object]),
93
- value: _propTypes.default.oneOfType([_propTypes.default.arrayOf(_propTypes.default.object), _propTypes.default.object])
89
+ sx: _propTypes.default.oneOfType([_propTypes.default.arrayOf(_propTypes.default.oneOfType([_propTypes.default.func, _propTypes.default.object, _propTypes.default.bool])), _propTypes.default.func, _propTypes.default.object])
94
90
  } : void 0;
@@ -15,15 +15,12 @@ var _utils = require("@mui/utils");
15
15
  var _valueManagers = require("../internals/utils/valueManagers");
16
16
  var _TimeField = require("../TimeField");
17
17
  var _shared = require("../TimePicker/shared");
18
- var _usePickerTranslations = require("../hooks/usePickerTranslations");
19
18
  var _useUtils = require("../internals/hooks/useUtils");
20
19
  var _validation = require("../validation");
21
- var _icons = require("../icons");
22
20
  var _useDesktopPicker = require("../internals/hooks/useDesktopPicker");
23
21
  var _timeViewRenderers = require("../timeViewRenderers");
24
22
  var _timeUtils = require("../internals/utils/time-utils");
25
23
  var _dateTimeUtils = require("../internals/utils/date-time-utils");
26
- var _getPickersLocalization = require("../locales/utils/getPickersLocalization");
27
24
  /**
28
25
  * Demos:
29
26
  *
@@ -35,7 +32,6 @@ var _getPickersLocalization = require("../locales/utils/getPickersLocalization")
35
32
  * - [DesktopTimePicker API](https://mui.com/x/api/date-pickers/desktop-time-picker/)
36
33
  */
37
34
  const DesktopTimePicker = exports.DesktopTimePicker = /*#__PURE__*/React.forwardRef(function DesktopTimePicker(inProps, ref) {
38
- const translations = (0, _usePickerTranslations.usePickerTranslations)();
39
35
  const utils = (0, _useUtils.useUtils)();
40
36
 
41
37
  // Props with the default values common to all time pickers
@@ -53,7 +49,6 @@ const DesktopTimePicker = exports.DesktopTimePicker = /*#__PURE__*/React.forward
53
49
  meridiem: renderTimeView
54
50
  }, defaultizedProps.viewRenderers);
55
51
  const ampmInClock = defaultizedProps.ampmInClock ?? true;
56
- const actionBarActions = shouldRenderTimeInASingleColumn ? [] : ['accept'];
57
52
  // Need to avoid adding the `meridiem` view when unexpected renderer is specified
58
53
  const shouldHoursRendererContainMeridiemView = viewRenderers.hours?.name === _timeViewRenderers.renderMultiSectionDigitalClockTimeView.name;
59
54
  const views = !shouldHoursRendererContainMeridiemView ? resolvedViews.filter(view => view !== 'meridiem') : resolvedViews;
@@ -68,8 +63,7 @@ const DesktopTimePicker = exports.DesktopTimePicker = /*#__PURE__*/React.forward
68
63
  // Allows for easy view lifecycle management
69
64
  views: shouldRenderTimeInASingleColumn ? ['hours'] : views,
70
65
  slots: (0, _extends2.default)({
71
- field: _TimeField.TimeField,
72
- openPickerIcon: _icons.ClockIcon
66
+ field: _TimeField.TimeField
73
67
  }, defaultizedProps.slots),
74
68
  slotProps: (0, _extends2.default)({}, defaultizedProps.slotProps, {
75
69
  field: ownerState => (0, _extends2.default)({}, (0, _resolveComponentProps.default)(defaultizedProps.slotProps?.field, ownerState), (0, _validation.extractValidationProps)(defaultizedProps), {
@@ -78,10 +72,7 @@ const DesktopTimePicker = exports.DesktopTimePicker = /*#__PURE__*/React.forward
78
72
  toolbar: (0, _extends2.default)({
79
73
  hidden: true,
80
74
  ampmInClock
81
- }, defaultizedProps.slotProps?.toolbar),
82
- actionBar: (0, _extends2.default)({
83
- actions: actionBarActions
84
- }, defaultizedProps.slotProps?.actionBar)
75
+ }, defaultizedProps.slotProps?.toolbar)
85
76
  })
86
77
  });
87
78
  const {
@@ -90,12 +81,6 @@ const DesktopTimePicker = exports.DesktopTimePicker = /*#__PURE__*/React.forward
90
81
  props,
91
82
  valueManager: _valueManagers.singleItemValueManager,
92
83
  valueType: 'time',
93
- getOpenDialogAriaText: (0, _getPickersLocalization.buildGetOpenDialogAriaText)({
94
- utils,
95
- formatKey: 'fullTime',
96
- contextTranslation: translations.openTimePickerDialogue,
97
- propsTranslation: props.localeText?.openTimePickerDialogue
98
- }),
99
84
  validator: _validation.validateTime
100
85
  });
101
86
  return renderPicker();
@@ -124,8 +109,8 @@ DesktopTimePicker.propTypes = {
124
109
  autoFocus: _propTypes.default.bool,
125
110
  className: _propTypes.default.string,
126
111
  /**
127
- * If `true`, the popover or modal will close after submitting the full date.
128
- * @default `true` for desktop, `false` for mobile (based on the chosen wrapper and `desktopModeMediaQuery` prop).
112
+ * If `true`, the Picker will close after submitting the full date.
113
+ * @default false
129
114
  */
130
115
  closeOnSelect: _propTypes.default.bool,
131
116
  /**
@@ -14,14 +14,12 @@ var _resolveComponentProps = _interopRequireDefault(require("@mui/utils/resolveC
14
14
  var _utils = require("@mui/utils");
15
15
  var _useMobilePicker = require("../internals/hooks/useMobilePicker");
16
16
  var _shared = require("../DatePicker/shared");
17
- var _usePickerTranslations = require("../hooks/usePickerTranslations");
18
17
  var _useUtils = require("../internals/hooks/useUtils");
19
18
  var _validation = require("../validation");
20
19
  var _DateField = require("../DateField");
21
20
  var _valueManagers = require("../internals/utils/valueManagers");
22
21
  var _dateViewRenderers = require("../dateViewRenderers");
23
22
  var _dateUtils = require("../internals/utils/date-utils");
24
- var _getPickersLocalization = require("../locales/utils/getPickersLocalization");
25
23
  /**
26
24
  * Demos:
27
25
  *
@@ -33,7 +31,6 @@ var _getPickersLocalization = require("../locales/utils/getPickersLocalization")
33
31
  * - [MobileDatePicker API](https://mui.com/x/api/date-pickers/mobile-date-picker/)
34
32
  */
35
33
  const MobileDatePicker = exports.MobileDatePicker = /*#__PURE__*/React.forwardRef(function MobileDatePicker(inProps, ref) {
36
- const translations = (0, _usePickerTranslations.usePickerTranslations)();
37
34
  const utils = (0, _useUtils.useUtils)();
38
35
 
39
36
  // Props with the default values common to all date pickers
@@ -66,12 +63,6 @@ const MobileDatePicker = exports.MobileDatePicker = /*#__PURE__*/React.forwardRe
66
63
  props,
67
64
  valueManager: _valueManagers.singleItemValueManager,
68
65
  valueType: 'date',
69
- getOpenDialogAriaText: (0, _getPickersLocalization.buildGetOpenDialogAriaText)({
70
- utils,
71
- formatKey: 'fullDate',
72
- contextTranslation: translations.openDatePickerDialogue,
73
- propsTranslation: props.localeText?.openDatePickerDialogue
74
- }),
75
66
  validator: _validation.validateDate
76
67
  });
77
68
  return renderPicker();
@@ -90,8 +81,8 @@ MobileDatePicker.propTypes = {
90
81
  autoFocus: _propTypes.default.bool,
91
82
  className: _propTypes.default.string,
92
83
  /**
93
- * If `true`, the popover or modal will close after submitting the full date.
94
- * @default `true` for desktop, `false` for mobile (based on the chosen wrapper and `desktopModeMediaQuery` prop).
84
+ * If `true`, the Picker will close after submitting the full date.
85
+ * @default false
95
86
  */
96
87
  closeOnSelect: _propTypes.default.bool,
97
88
  /**
@@ -15,14 +15,12 @@ var _utils = require("@mui/utils");
15
15
  var _valueManagers = require("../internals/utils/valueManagers");
16
16
  var _DateTimeField = require("../DateTimeField");
17
17
  var _shared = require("../DateTimePicker/shared");
18
- var _usePickerTranslations = require("../hooks/usePickerTranslations");
19
18
  var _useUtils = require("../internals/hooks/useUtils");
20
19
  var _validation = require("../validation");
21
20
  var _useMobilePicker = require("../internals/hooks/useMobilePicker");
22
21
  var _dateViewRenderers = require("../dateViewRenderers");
23
22
  var _timeViewRenderers = require("../timeViewRenderers");
24
23
  var _dateTimeUtils = require("../internals/utils/date-time-utils");
25
- var _getPickersLocalization = require("../locales/utils/getPickersLocalization");
26
24
  /**
27
25
  * Demos:
28
26
  *
@@ -34,7 +32,6 @@ var _getPickersLocalization = require("../locales/utils/getPickersLocalization")
34
32
  * - [MobileDateTimePicker API](https://mui.com/x/api/date-pickers/mobile-date-time-picker/)
35
33
  */
36
34
  const MobileDateTimePicker = exports.MobileDateTimePicker = /*#__PURE__*/React.forwardRef(function MobileDateTimePicker(inProps, ref) {
37
- const translations = (0, _usePickerTranslations.usePickerTranslations)();
38
35
  const utils = (0, _useUtils.useUtils)();
39
36
 
40
37
  // Props with the default values common to all date time pickers
@@ -76,12 +73,6 @@ const MobileDateTimePicker = exports.MobileDateTimePicker = /*#__PURE__*/React.f
76
73
  props,
77
74
  valueManager: _valueManagers.singleItemValueManager,
78
75
  valueType: 'date-time',
79
- getOpenDialogAriaText: (0, _getPickersLocalization.buildGetOpenDialogAriaText)({
80
- utils,
81
- formatKey: 'fullDate',
82
- contextTranslation: translations.openDatePickerDialogue,
83
- propsTranslation: props.localeText?.openDatePickerDialogue
84
- }),
85
76
  validator: _validation.validateDateTime
86
77
  });
87
78
  return renderPicker();
@@ -110,8 +101,8 @@ MobileDateTimePicker.propTypes = {
110
101
  autoFocus: _propTypes.default.bool,
111
102
  className: _propTypes.default.string,
112
103
  /**
113
- * If `true`, the popover or modal will close after submitting the full date.
114
- * @default `true` for desktop, `false` for mobile (based on the chosen wrapper and `desktopModeMediaQuery` prop).
104
+ * If `true`, the Picker will close after submitting the full date.
105
+ * @default false
115
106
  */
116
107
  closeOnSelect: _propTypes.default.bool,
117
108
  /**
@@ -15,13 +15,11 @@ var _utils = require("@mui/utils");
15
15
  var _valueManagers = require("../internals/utils/valueManagers");
16
16
  var _TimeField = require("../TimeField");
17
17
  var _shared = require("../TimePicker/shared");
18
- var _usePickerTranslations = require("../hooks/usePickerTranslations");
19
18
  var _useUtils = require("../internals/hooks/useUtils");
20
19
  var _validation = require("../validation");
21
20
  var _useMobilePicker = require("../internals/hooks/useMobilePicker");
22
21
  var _timeViewRenderers = require("../timeViewRenderers");
23
22
  var _timeUtils = require("../internals/utils/time-utils");
24
- var _getPickersLocalization = require("../locales/utils/getPickersLocalization");
25
23
  /**
26
24
  * Demos:
27
25
  *
@@ -33,7 +31,6 @@ var _getPickersLocalization = require("../locales/utils/getPickersLocalization")
33
31
  * - [MobileTimePicker API](https://mui.com/x/api/date-pickers/mobile-time-picker/)
34
32
  */
35
33
  const MobileTimePicker = exports.MobileTimePicker = /*#__PURE__*/React.forwardRef(function MobileTimePicker(inProps, ref) {
36
- const translations = (0, _usePickerTranslations.usePickerTranslations)();
37
34
  const utils = (0, _useUtils.useUtils)();
38
35
 
39
36
  // Props with the default values common to all time pickers
@@ -69,12 +66,6 @@ const MobileTimePicker = exports.MobileTimePicker = /*#__PURE__*/React.forwardRe
69
66
  props,
70
67
  valueManager: _valueManagers.singleItemValueManager,
71
68
  valueType: 'time',
72
- getOpenDialogAriaText: (0, _getPickersLocalization.buildGetOpenDialogAriaText)({
73
- utils,
74
- formatKey: 'fullTime',
75
- contextTranslation: translations.openTimePickerDialogue,
76
- propsTranslation: props.localeText?.openTimePickerDialogue
77
- }),
78
69
  validator: _validation.validateTime
79
70
  });
80
71
  return renderPicker();
@@ -103,8 +94,8 @@ MobileTimePicker.propTypes = {
103
94
  autoFocus: _propTypes.default.bool,
104
95
  className: _propTypes.default.string,
105
96
  /**
106
- * If `true`, the popover or modal will close after submitting the full date.
107
- * @default `true` for desktop, `false` for mobile (based on the chosen wrapper and `desktopModeMediaQuery` prop).
97
+ * If `true`, the Picker will close after submitting the full date.
98
+ * @default false
108
99
  */
109
100
  closeOnSelect: _propTypes.default.bool,
110
101
  /**
@@ -6,7 +6,7 @@ var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWild
6
6
  Object.defineProperty(exports, "__esModule", {
7
7
  value: true
8
8
  });
9
- exports.PickersActionBar = PickersActionBar;
9
+ exports.PickersActionBar = void 0;
10
10
  var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
11
11
  var _objectWithoutPropertiesLoose2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutPropertiesLoose"));
12
12
  var React = _interopRequireWildcard(require("react"));
@@ -34,7 +34,7 @@ const PickersActionBarRoot = (0, _styles.styled)(_DialogActions.default, {
34
34
  *
35
35
  * - [PickersActionBar API](https://mui.com/x/api/date-pickers/pickers-action-bar/)
36
36
  */
37
- function PickersActionBar(props) {
37
+ function PickersActionBarComponent(props) {
38
38
  const {
39
39
  actions
40
40
  } = props,
@@ -79,7 +79,7 @@ function PickersActionBar(props) {
79
79
  children: buttons
80
80
  }));
81
81
  }
82
- process.env.NODE_ENV !== "production" ? PickersActionBar.propTypes = {
82
+ process.env.NODE_ENV !== "production" ? PickersActionBarComponent.propTypes = {
83
83
  // ----------------------------- Warning --------------------------------
84
84
  // | These PropTypes are generated from the TypeScript type definitions |
85
85
  // | To update them edit the TypeScript types and run "pnpm proptypes" |
@@ -87,7 +87,9 @@ process.env.NODE_ENV !== "production" ? PickersActionBar.propTypes = {
87
87
  /**
88
88
  * Ordered array of actions to display.
89
89
  * If empty, does not display that action bar.
90
- * @default `['cancel', 'accept']` for mobile and `[]` for desktop
90
+ * @default
91
+ * - `[]` for Desktop Date Picker and Desktop Date Range Picker
92
+ * - `['cancel', 'accept']` for all other Pickers
91
93
  */
92
94
  actions: _propTypes.default.arrayOf(_propTypes.default.oneOf(['accept', 'cancel', 'clear', 'today']).isRequired),
93
95
  /**
@@ -99,4 +101,5 @@ process.env.NODE_ENV !== "production" ? PickersActionBar.propTypes = {
99
101
  * The system prop that allows defining system overrides as well as additional CSS styles.
100
102
  */
101
103
  sx: _propTypes.default.oneOfType([_propTypes.default.arrayOf(_propTypes.default.oneOfType([_propTypes.default.func, _propTypes.default.object, _propTypes.default.bool])), _propTypes.default.func, _propTypes.default.object])
102
- } : void 0;
104
+ } : void 0;
105
+ const PickersActionBar = exports.PickersActionBar = /*#__PURE__*/React.memo(PickersActionBarComponent);
@@ -157,9 +157,6 @@ process.env.NODE_ENV !== "production" ? PickersLayout.propTypes = {
157
157
  */
158
158
  classes: _propTypes.default.object,
159
159
  className: _propTypes.default.string,
160
- isValid: _propTypes.default.func.isRequired,
161
- onChange: _propTypes.default.func.isRequired,
162
- onSelectShortcut: _propTypes.default.func.isRequired,
163
160
  /**
164
161
  * The props used for each component slot.
165
162
  * @default {}
@@ -173,6 +170,5 @@ process.env.NODE_ENV !== "production" ? PickersLayout.propTypes = {
173
170
  /**
174
171
  * The system prop that allows defining system overrides as well as additional CSS styles.
175
172
  */
176
- sx: _propTypes.default.oneOfType([_propTypes.default.arrayOf(_propTypes.default.oneOfType([_propTypes.default.func, _propTypes.default.object, _propTypes.default.bool])), _propTypes.default.func, _propTypes.default.object]),
177
- value: _propTypes.default.oneOfType([_propTypes.default.arrayOf(_propTypes.default.object), _propTypes.default.object])
173
+ sx: _propTypes.default.oneOfType([_propTypes.default.arrayOf(_propTypes.default.oneOfType([_propTypes.default.func, _propTypes.default.object, _propTypes.default.bool])), _propTypes.default.func, _propTypes.default.object])
178
174
  } : void 0;
@@ -1,15 +1,16 @@
1
1
  "use strict";
2
2
  'use client';
3
3
 
4
- var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
5
4
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
5
+ var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
6
6
  Object.defineProperty(exports, "__esModule", {
7
7
  value: true
8
8
  });
9
9
  exports.default = void 0;
10
+ var _objectWithoutPropertiesLoose2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutPropertiesLoose"));
10
11
  var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
11
12
  var React = _interopRequireWildcard(require("react"));
12
- var _useSlotProps = _interopRequireDefault(require("@mui/utils/useSlotProps"));
13
+ var _useSlotProps2 = _interopRequireDefault(require("@mui/utils/useSlotProps"));
13
14
  var _composeClasses = _interopRequireDefault(require("@mui/utils/composeClasses"));
14
15
  var _RtlProvider = require("@mui/system/RtlProvider");
15
16
  var _PickersActionBar = require("../PickersActionBar");
@@ -18,6 +19,7 @@ var _PickersShortcuts = require("../PickersShortcuts");
18
19
  var _usePickerPrivateContext = require("../internals/hooks/usePickerPrivateContext");
19
20
  var _hooks = require("../hooks");
20
21
  var _jsxRuntime = require("react/jsx-runtime");
22
+ const _excluded = ["ownerState"];
21
23
  function toolbarHasView(toolbarProps) {
22
24
  return toolbarProps.view !== null;
23
25
  }
@@ -41,24 +43,14 @@ const usePickerLayout = props => {
41
43
  ownerState: pickerOwnerState
42
44
  } = (0, _usePickerPrivateContext.usePickerPrivateContext)();
43
45
  const {
44
- variant,
45
- orientation,
46
46
  view
47
47
  } = (0, _hooks.usePickerContext)();
48
48
  const isRtl = (0, _RtlProvider.useRtl)();
49
49
  const {
50
- value,
51
- onChange,
52
- onSelectShortcut,
53
- isValid,
54
50
  children,
55
51
  slots,
56
52
  slotProps,
57
53
  classes: classesProp
58
- // TODO: Remove this "as" hack. It get introduced to mark `value` prop in PickersLayoutProps as not required.
59
- // The true type should be
60
- // - For pickers value: PickerValidDate | null
61
- // - For range pickers value: [PickerValidDate | null, PickerValidDate | null]
62
54
  } = props;
63
55
  const ownerState = React.useMemo(() => (0, _extends2.default)({}, pickerOwnerState, {
64
56
  layoutDirection: isRtl ? 'rtl' : 'ltr'
@@ -67,28 +59,23 @@ const usePickerLayout = props => {
67
59
 
68
60
  // Action bar
69
61
  const ActionBar = slots?.actionBar ?? _PickersActionBar.PickersActionBar;
70
- const actionBarProps = (0, _useSlotProps.default)({
71
- elementType: ActionBar,
72
- externalSlotProps: slotProps?.actionBar,
73
- additionalProps: {
74
- actions: variant === 'desktop' ? [] : ['cancel', 'accept']
75
- },
76
- className: classes.actionBar,
77
- ownerState
78
- });
62
+ const _useSlotProps = (0, _useSlotProps2.default)({
63
+ elementType: ActionBar,
64
+ externalSlotProps: slotProps?.actionBar,
65
+ additionalProps: {
66
+ actions: ['cancel', 'accept']
67
+ },
68
+ className: classes.actionBar,
69
+ ownerState
70
+ }),
71
+ actionBarProps = (0, _objectWithoutPropertiesLoose2.default)(_useSlotProps, _excluded);
79
72
  const actionBar = /*#__PURE__*/(0, _jsxRuntime.jsx)(ActionBar, (0, _extends2.default)({}, actionBarProps));
80
73
 
81
74
  // Toolbar
82
75
  const Toolbar = slots?.toolbar;
83
- const toolbarProps = (0, _useSlotProps.default)({
76
+ const toolbarProps = (0, _useSlotProps2.default)({
84
77
  elementType: Toolbar,
85
78
  externalSlotProps: slotProps?.toolbar,
86
- additionalProps: {
87
- isLandscape: orientation === 'landscape',
88
- // Will be removed in a follow up PR?
89
- onChange,
90
- value
91
- },
92
79
  className: classes.toolbar,
93
80
  ownerState
94
81
  });
@@ -105,15 +92,9 @@ const usePickerLayout = props => {
105
92
 
106
93
  // Shortcuts
107
94
  const Shortcuts = slots?.shortcuts ?? _PickersShortcuts.PickersShortcuts;
108
- const shortcutsProps = (0, _useSlotProps.default)({
95
+ const shortcutsProps = (0, _useSlotProps2.default)({
109
96
  elementType: Shortcuts,
110
97
  externalSlotProps: slotProps?.shortcuts,
111
- additionalProps: {
112
- isValid,
113
- isLandscape: orientation === 'landscape',
114
- // Will be removed in a follow up PR?
115
- onChange: onSelectShortcut
116
- },
117
98
  className: classes.shortcuts,
118
99
  ownerState
119
100
  });
@@ -16,8 +16,9 @@ var _List = _interopRequireDefault(require("@mui/material/List"));
16
16
  var _ListItem = _interopRequireDefault(require("@mui/material/ListItem"));
17
17
  var _Chip = _interopRequireDefault(require("@mui/material/Chip"));
18
18
  var _dimensions = require("../internals/constants/dimensions");
19
+ var _hooks = require("../hooks");
19
20
  var _jsxRuntime = require("react/jsx-runtime");
20
- const _excluded = ["items", "changeImportance", "isLandscape", "onChange", "isValid"],
21
+ const _excluded = ["items", "changeImportance"],
21
22
  _excluded2 = ["getValue"];
22
23
  const PickersShortcutsRoot = (0, _styles.styled)(_List.default, {
23
24
  name: 'MuiPickersLayout',
@@ -37,11 +38,13 @@ const PickersShortcutsRoot = (0, _styles.styled)(_List.default, {
37
38
  function PickersShortcuts(props) {
38
39
  const {
39
40
  items,
40
- changeImportance = 'accept',
41
- onChange,
42
- isValid
41
+ changeImportance = 'accept'
43
42
  } = props,
44
43
  other = (0, _objectWithoutPropertiesLoose2.default)(props, _excluded);
44
+ const {
45
+ setValue
46
+ } = (0, _hooks.usePickerActionsContext)();
47
+ const isValidValue = (0, _hooks.useIsValidValue)();
45
48
  if (items == null || items.length === 0) {
46
49
  return null;
47
50
  }
@@ -51,14 +54,17 @@ function PickersShortcuts(props) {
51
54
  } = _ref,
52
55
  item = (0, _objectWithoutPropertiesLoose2.default)(_ref, _excluded2);
53
56
  const newValue = getValue({
54
- isValid
57
+ isValid: isValidValue
55
58
  });
56
59
  return (0, _extends2.default)({}, item, {
57
60
  label: item.label,
58
61
  onClick: () => {
59
- onChange(newValue, changeImportance, item);
62
+ setValue(newValue, {
63
+ changeImportance,
64
+ shortcut: item
65
+ });
60
66
  },
61
- disabled: !isValid(newValue)
67
+ disabled: !isValidValue(newValue)
62
68
  });
63
69
  });
64
70
  return /*#__PURE__*/(0, _jsxRuntime.jsx)(PickersShortcutsRoot, (0, _extends2.default)({
@@ -102,8 +108,6 @@ process.env.NODE_ENV !== "production" ? PickersShortcuts.propTypes = {
102
108
  * @default false
103
109
  */
104
110
  disablePadding: _propTypes.default.bool,
105
- isLandscape: _propTypes.default.bool.isRequired,
106
- isValid: _propTypes.default.func.isRequired,
107
111
  /**
108
112
  * Ordered array of shortcuts to display.
109
113
  * If empty, does not display the shortcuts.
@@ -114,7 +118,6 @@ process.env.NODE_ENV !== "production" ? PickersShortcuts.propTypes = {
114
118
  id: _propTypes.default.string,
115
119
  label: _propTypes.default.string.isRequired
116
120
  })),
117
- onChange: _propTypes.default.func.isRequired,
118
121
  style: _propTypes.default.object,
119
122
  /**
120
123
  * The content of the subheader, normally `ListSubheader`.
@@ -221,6 +221,9 @@ const PickersInputBase = exports.PickersInputBase = /*#__PURE__*/React.forwardRe
221
221
  muiFormControl.onFocus?.(event);
222
222
  onFocus?.(event);
223
223
  };
224
+ const handleHiddenInputFocus = event => {
225
+ handleInputFocus(event);
226
+ };
224
227
  const handleInputBlur = event => {
225
228
  muiFormControl.onBlur?.(event);
226
229
  onBlur?.(event);
@@ -296,6 +299,10 @@ const PickersInputBase = exports.PickersInputBase = /*#__PURE__*/React.forwardRe
296
299
  readOnly: readOnly,
297
300
  required: muiFormControl.required,
298
301
  disabled: muiFormControl.disabled
302
+ // Hidden input element cannot be focused, trigger the root focus instead
303
+ // This allows to maintain the ability to do `inputRef.current.focus()` to focus the field
304
+ ,
305
+ onFocus: handleHiddenInputFocus
299
306
  }, inputProps, {
300
307
  ref: handleInputRef
301
308
  }))]
@@ -132,7 +132,7 @@ const PickersTextField = exports.PickersTextField = /*#__PURE__*/React.forwardRe
132
132
  required: required,
133
133
  ownerState: ownerState
134
134
  }, other, {
135
- children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_InputLabel.default, (0, _extends2.default)({
135
+ children: [label != null && label !== '' && /*#__PURE__*/(0, _jsxRuntime.jsx)(_InputLabel.default, (0, _extends2.default)({
136
136
  htmlFor: id,
137
137
  id: inputLabelId
138
138
  }, InputLabelProps, {