@mui/x-date-pickers 8.0.0-alpha.5 → 8.0.0-alpha.7

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 (305) 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 +206 -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/useDateField.d.ts +1 -1
  24. package/DateField/useDateField.js +13 -11
  25. package/DatePicker/DatePicker.js +1 -1
  26. package/DatePicker/DatePicker.types.d.ts +5 -0
  27. package/DatePicker/DatePickerToolbar.d.ts +1 -3
  28. package/DatePicker/DatePickerToolbar.js +10 -25
  29. package/DatePicker/shared.d.ts +1 -1
  30. package/DateTimeField/useDateTimeField.d.ts +1 -1
  31. package/DateTimeField/useDateTimeField.js +13 -11
  32. package/DateTimePicker/DateTimePicker.js +2 -2
  33. package/DateTimePicker/DateTimePicker.types.d.ts +2 -2
  34. package/DateTimePicker/DateTimePickerTabs.d.ts +2 -5
  35. package/DateTimePicker/DateTimePickerTabs.js +7 -14
  36. package/DateTimePicker/DateTimePickerToolbar.d.ts +12 -4
  37. package/DateTimePicker/DateTimePickerToolbar.js +42 -48
  38. package/DateTimePicker/shared.d.ts +3 -3
  39. package/DesktopDatePicker/DesktopDatePicker.js +9 -3
  40. package/DesktopDatePicker/DesktopDatePicker.types.d.ts +7 -3
  41. package/DesktopDateTimePicker/DesktopDateTimePicker.js +13 -10
  42. package/DesktopDateTimePicker/DesktopDateTimePicker.types.d.ts +2 -2
  43. package/DesktopDateTimePicker/DesktopDateTimePickerLayout.d.ts +1 -2
  44. package/DesktopDateTimePicker/DesktopDateTimePickerLayout.js +1 -15
  45. package/DesktopTimePicker/DesktopTimePicker.js +3 -7
  46. package/DesktopTimePicker/DesktopTimePicker.types.d.ts +2 -2
  47. package/MobileDatePicker/MobileDatePicker.js +2 -2
  48. package/MobileDatePicker/MobileDatePicker.types.d.ts +2 -3
  49. package/MobileDateTimePicker/MobileDateTimePicker.js +2 -2
  50. package/MobileDateTimePicker/MobileDateTimePicker.types.d.ts +4 -4
  51. package/MobileTimePicker/MobileTimePicker.js +2 -2
  52. package/MobileTimePicker/MobileTimePicker.types.d.ts +4 -4
  53. package/PickersActionBar/PickersActionBar.d.ts +6 -7
  54. package/PickersActionBar/PickersActionBar.js +18 -16
  55. package/PickersLayout/PickersLayout.d.ts +2 -2
  56. package/PickersLayout/PickersLayout.js +1 -15
  57. package/PickersLayout/PickersLayout.types.d.ts +12 -15
  58. package/PickersLayout/usePickerLayout.d.ts +2 -2
  59. package/PickersLayout/usePickerLayout.js +13 -47
  60. package/PickersShortcuts/PickersShortcuts.d.ts +2 -5
  61. package/PickersShortcuts/PickersShortcuts.js +13 -10
  62. package/PickersShortcuts/index.d.ts +1 -1
  63. package/PickersTextField/PickersInputBase/PickersInputBase.js +7 -0
  64. package/PickersTextField/PickersTextField.js +1 -1
  65. package/StaticDatePicker/StaticDatePicker.types.d.ts +2 -3
  66. package/StaticDateTimePicker/StaticDateTimePicker.types.d.ts +2 -2
  67. package/StaticTimePicker/StaticTimePicker.types.d.ts +2 -2
  68. package/TimeField/useTimeField.d.ts +1 -1
  69. package/TimeField/useTimeField.js +13 -11
  70. package/TimePicker/TimePicker.js +2 -2
  71. package/TimePicker/TimePicker.types.d.ts +2 -2
  72. package/TimePicker/TimePickerToolbar.d.ts +1 -2
  73. package/TimePicker/TimePickerToolbar.js +23 -35
  74. package/TimePicker/shared.d.ts +1 -1
  75. package/hooks/index.d.ts +2 -0
  76. package/hooks/index.js +3 -1
  77. package/hooks/useIsValidValue.d.ts +7 -0
  78. package/hooks/useIsValidValue.js +11 -0
  79. package/hooks/usePickerActionsContext.d.ts +7 -0
  80. package/hooks/usePickerActionsContext.js +15 -0
  81. package/hooks/usePickerContext.d.ts +3 -1
  82. package/hooks/usePickerContext.js +1 -2
  83. package/index.d.ts +1 -0
  84. package/index.js +3 -2
  85. package/internals/components/PickerProvider.d.ts +14 -8
  86. package/internals/components/PickerProvider.js +17 -6
  87. package/internals/components/PickersModalDialog.d.ts +1 -3
  88. package/internals/components/PickersModalDialog.js +9 -3
  89. package/internals/components/PickersPopper.d.ts +1 -3
  90. package/internals/components/PickersPopper.js +11 -6
  91. package/internals/components/PickersToolbar.d.ts +2 -3
  92. package/internals/components/PickersToolbar.js +1 -1
  93. package/internals/hooks/date-helpers-hooks.js +4 -3
  94. package/internals/hooks/useDesktopPicker/useDesktopPicker.js +10 -12
  95. package/internals/hooks/useDesktopPicker/useDesktopPicker.types.d.ts +7 -7
  96. package/internals/hooks/useField/buildSectionsFromFormat.js +1 -1
  97. package/internals/hooks/useField/index.d.ts +1 -1
  98. package/internals/hooks/useField/index.js +1 -1
  99. package/internals/hooks/useField/useField.d.ts +10 -1
  100. package/internals/hooks/useField/useField.js +17 -1
  101. package/internals/hooks/useField/useField.utils.js +2 -2
  102. package/internals/hooks/useField/useFieldState.js +2 -2
  103. package/internals/hooks/useField/useFieldV6TextField.js +2 -2
  104. package/internals/hooks/useMobilePicker/useMobilePicker.js +9 -10
  105. package/internals/hooks/useMobilePicker/useMobilePicker.types.d.ts +7 -7
  106. package/internals/hooks/useOpenState.js +3 -2
  107. package/internals/hooks/usePicker/usePicker.d.ts +1 -1
  108. package/internals/hooks/usePicker/usePicker.js +0 -8
  109. package/internals/hooks/usePicker/usePicker.types.d.ts +6 -7
  110. package/internals/hooks/usePicker/usePickerProvider.d.ts +5 -5
  111. package/internals/hooks/usePicker/usePickerProvider.js +8 -5
  112. package/internals/hooks/usePicker/usePickerValue.d.ts +1 -1
  113. package/internals/hooks/usePicker/usePickerValue.js +82 -217
  114. package/internals/hooks/usePicker/usePickerValue.types.d.ts +82 -67
  115. package/internals/hooks/usePicker/usePickerViews.d.ts +35 -20
  116. package/internals/hooks/usePicker/usePickerViews.js +22 -14
  117. package/internals/hooks/useStaticPicker/useStaticPicker.js +1 -4
  118. package/internals/hooks/useStaticPicker/useStaticPicker.types.d.ts +6 -6
  119. package/internals/hooks/useUtils.js +1 -1
  120. package/internals/index.d.ts +9 -7
  121. package/internals/index.js +5 -3
  122. package/internals/models/index.d.ts +1 -0
  123. package/internals/models/index.js +2 -1
  124. package/internals/models/manager.d.ts +12 -0
  125. package/internals/models/manager.js +1 -0
  126. package/internals/models/props/basePickerProps.d.ts +2 -2
  127. package/internals/models/props/tabs.d.ts +0 -13
  128. package/internals/models/props/toolbar.d.ts +1 -20
  129. package/internals/utils/date-utils.js +1 -1
  130. package/internals/utils/valueManagers.js +4 -4
  131. package/locales/index.d.ts +1 -0
  132. package/locales/index.js +1 -0
  133. package/locales/nbNO.js +15 -19
  134. package/locales/utils/getPickersLocalization.js +1 -1
  135. package/locales/zhTW.d.ts +80 -0
  136. package/locales/zhTW.js +73 -0
  137. package/managers/index.d.ts +6 -0
  138. package/managers/index.js +3 -0
  139. package/managers/package.json +6 -0
  140. package/managers/useDateManager.d.ts +27 -0
  141. package/managers/useDateManager.js +47 -0
  142. package/managers/useDateTimeManager.d.ts +28 -0
  143. package/managers/useDateTimeManager.js +52 -0
  144. package/managers/useTimeManager.d.ts +28 -0
  145. package/managers/useTimeManager.js +43 -0
  146. package/models/adapters.d.ts +1 -1
  147. package/models/index.d.ts +1 -0
  148. package/models/index.js +1 -0
  149. package/models/manager.d.ts +78 -0
  150. package/models/manager.js +1 -0
  151. package/models/pickers.d.ts +7 -0
  152. package/modern/AdapterDateFns/AdapterDateFns.js +49 -47
  153. package/modern/AdapterDateFnsJalali/AdapterDateFnsJalali.js +48 -46
  154. package/modern/{AdapterDateFnsJalaliV3/AdapterDateFnsJalaliV3.js → AdapterDateFnsJalaliV2/AdapterDateFnsJalaliV2.js} +45 -52
  155. package/modern/AdapterDateFnsJalaliV2/index.js +1 -0
  156. package/modern/{AdapterDateFnsV3/AdapterDateFnsV3.js → AdapterDateFnsV2/AdapterDateFnsV2.js} +46 -54
  157. package/modern/AdapterDateFnsV2/index.js +1 -0
  158. package/modern/DateCalendar/DateCalendar.js +1 -1
  159. package/modern/DateField/useDateField.js +13 -11
  160. package/modern/DatePicker/DatePicker.js +1 -1
  161. package/modern/DatePicker/DatePickerToolbar.js +10 -25
  162. package/modern/DateTimeField/useDateTimeField.js +13 -11
  163. package/modern/DateTimePicker/DateTimePicker.js +2 -2
  164. package/modern/DateTimePicker/DateTimePickerTabs.js +7 -14
  165. package/modern/DateTimePicker/DateTimePickerToolbar.js +42 -48
  166. package/modern/DesktopDatePicker/DesktopDatePicker.js +9 -3
  167. package/modern/DesktopDateTimePicker/DesktopDateTimePicker.js +13 -10
  168. package/modern/DesktopDateTimePicker/DesktopDateTimePickerLayout.js +1 -15
  169. package/modern/DesktopTimePicker/DesktopTimePicker.js +3 -7
  170. package/modern/MobileDatePicker/MobileDatePicker.js +2 -2
  171. package/modern/MobileDateTimePicker/MobileDateTimePicker.js +2 -2
  172. package/modern/MobileTimePicker/MobileTimePicker.js +2 -2
  173. package/modern/PickersActionBar/PickersActionBar.js +18 -16
  174. package/modern/PickersLayout/PickersLayout.js +1 -15
  175. package/modern/PickersLayout/usePickerLayout.js +13 -47
  176. package/modern/PickersShortcuts/PickersShortcuts.js +13 -10
  177. package/modern/PickersTextField/PickersInputBase/PickersInputBase.js +7 -0
  178. package/modern/PickersTextField/PickersTextField.js +1 -1
  179. package/modern/TimeField/useTimeField.js +13 -11
  180. package/modern/TimePicker/TimePicker.js +2 -2
  181. package/modern/TimePicker/TimePickerToolbar.js +23 -35
  182. package/modern/hooks/index.js +3 -1
  183. package/modern/hooks/useIsValidValue.js +11 -0
  184. package/modern/hooks/usePickerActionsContext.js +15 -0
  185. package/modern/hooks/usePickerContext.js +1 -2
  186. package/modern/index.js +3 -2
  187. package/modern/internals/components/PickerProvider.js +17 -6
  188. package/modern/internals/components/PickersModalDialog.js +9 -3
  189. package/modern/internals/components/PickersPopper.js +11 -6
  190. package/modern/internals/components/PickersToolbar.js +1 -1
  191. package/modern/internals/hooks/date-helpers-hooks.js +4 -3
  192. package/modern/internals/hooks/useDesktopPicker/useDesktopPicker.js +10 -12
  193. package/modern/internals/hooks/useField/buildSectionsFromFormat.js +1 -1
  194. package/modern/internals/hooks/useField/index.js +1 -1
  195. package/modern/internals/hooks/useField/useField.js +17 -1
  196. package/modern/internals/hooks/useField/useField.utils.js +2 -2
  197. package/modern/internals/hooks/useField/useFieldState.js +2 -2
  198. package/modern/internals/hooks/useField/useFieldV6TextField.js +2 -2
  199. package/modern/internals/hooks/useMobilePicker/useMobilePicker.js +9 -10
  200. package/modern/internals/hooks/useOpenState.js +3 -2
  201. package/modern/internals/hooks/usePicker/usePicker.js +0 -8
  202. package/modern/internals/hooks/usePicker/usePickerProvider.js +8 -5
  203. package/modern/internals/hooks/usePicker/usePickerValue.js +82 -217
  204. package/modern/internals/hooks/usePicker/usePickerViews.js +22 -14
  205. package/modern/internals/hooks/useStaticPicker/useStaticPicker.js +1 -4
  206. package/modern/internals/hooks/useUtils.js +1 -1
  207. package/modern/internals/index.js +5 -3
  208. package/modern/internals/models/index.js +2 -1
  209. package/modern/internals/models/manager.js +1 -0
  210. package/modern/internals/utils/date-utils.js +1 -1
  211. package/modern/internals/utils/valueManagers.js +4 -4
  212. package/modern/locales/index.js +1 -0
  213. package/modern/locales/nbNO.js +15 -19
  214. package/modern/locales/utils/getPickersLocalization.js +1 -1
  215. package/modern/locales/zhTW.js +73 -0
  216. package/modern/managers/index.js +3 -0
  217. package/modern/managers/useDateManager.js +47 -0
  218. package/modern/managers/useDateTimeManager.js +52 -0
  219. package/modern/managers/useTimeManager.js +43 -0
  220. package/modern/models/index.js +1 -0
  221. package/modern/models/manager.js +1 -0
  222. package/node/AdapterDateFns/AdapterDateFns.js +97 -97
  223. package/node/AdapterDateFnsJalali/AdapterDateFnsJalali.js +97 -96
  224. package/node/{AdapterDateFnsJalaliV3/AdapterDateFnsJalaliV3.js → AdapterDateFnsJalaliV2/AdapterDateFnsJalaliV2.js} +94 -101
  225. package/node/{AdapterDateFnsJalaliV3 → AdapterDateFnsJalaliV2}/index.js +1 -1
  226. package/node/AdapterDateFnsV2/AdapterDateFnsV2.js +291 -0
  227. package/node/{AdapterDateFnsV3 → AdapterDateFnsV2}/index.js +1 -1
  228. package/node/DateCalendar/DateCalendar.js +1 -1
  229. package/node/DateField/useDateField.js +12 -10
  230. package/node/DatePicker/DatePicker.js +1 -1
  231. package/node/DatePicker/DatePickerToolbar.js +10 -25
  232. package/node/DateTimeField/useDateTimeField.js +12 -10
  233. package/node/DateTimePicker/DateTimePicker.js +2 -2
  234. package/node/DateTimePicker/DateTimePickerTabs.js +7 -14
  235. package/node/DateTimePicker/DateTimePickerToolbar.js +43 -49
  236. package/node/DesktopDatePicker/DesktopDatePicker.js +9 -3
  237. package/node/DesktopDateTimePicker/DesktopDateTimePicker.js +13 -10
  238. package/node/DesktopDateTimePicker/DesktopDateTimePickerLayout.js +1 -15
  239. package/node/DesktopTimePicker/DesktopTimePicker.js +3 -7
  240. package/node/MobileDatePicker/MobileDatePicker.js +2 -2
  241. package/node/MobileDateTimePicker/MobileDateTimePicker.js +2 -2
  242. package/node/MobileTimePicker/MobileTimePicker.js +2 -2
  243. package/node/PickersActionBar/PickersActionBar.js +20 -18
  244. package/node/PickersLayout/PickersLayout.js +1 -15
  245. package/node/PickersLayout/usePickerLayout.js +17 -51
  246. package/node/PickersShortcuts/PickersShortcuts.js +13 -10
  247. package/node/PickersTextField/PickersInputBase/PickersInputBase.js +7 -0
  248. package/node/PickersTextField/PickersTextField.js +1 -1
  249. package/node/TimeField/useTimeField.js +12 -10
  250. package/node/TimePicker/TimePicker.js +2 -2
  251. package/node/TimePicker/TimePickerToolbar.js +23 -35
  252. package/node/hooks/index.js +15 -1
  253. package/node/hooks/useIsValidValue.js +18 -0
  254. package/node/hooks/usePickerActionsContext.js +22 -0
  255. package/node/hooks/usePickerContext.js +1 -1
  256. package/node/index.js +13 -1
  257. package/node/internals/components/PickerProvider.js +18 -7
  258. package/node/internals/components/PickersModalDialog.js +9 -3
  259. package/node/internals/components/PickersPopper.js +11 -6
  260. package/node/internals/components/PickersToolbar.js +1 -1
  261. package/node/internals/hooks/date-helpers-hooks.js +4 -3
  262. package/node/internals/hooks/useDesktopPicker/useDesktopPicker.js +10 -12
  263. package/node/internals/hooks/useField/buildSectionsFromFormat.js +1 -1
  264. package/node/internals/hooks/useField/index.js +6 -0
  265. package/node/internals/hooks/useField/useField.js +18 -1
  266. package/node/internals/hooks/useField/useField.utils.js +2 -2
  267. package/node/internals/hooks/useField/useFieldState.js +2 -2
  268. package/node/internals/hooks/useField/useFieldV6TextField.js +2 -2
  269. package/node/internals/hooks/useMobilePicker/useMobilePicker.js +9 -10
  270. package/node/internals/hooks/useOpenState.js +4 -2
  271. package/node/internals/hooks/usePicker/usePicker.js +0 -9
  272. package/node/internals/hooks/usePicker/usePickerProvider.js +8 -5
  273. package/node/internals/hooks/usePicker/usePickerValue.js +82 -217
  274. package/node/internals/hooks/usePicker/usePickerViews.js +22 -15
  275. package/node/internals/hooks/useStaticPicker/useStaticPicker.js +1 -4
  276. package/node/internals/hooks/useUtils.js +1 -1
  277. package/node/internals/index.js +28 -20
  278. package/node/internals/models/index.js +11 -0
  279. package/node/internals/models/manager.js +5 -0
  280. package/node/internals/utils/date-utils.js +1 -1
  281. package/node/internals/utils/valueManagers.js +4 -4
  282. package/node/locales/index.js +11 -0
  283. package/node/locales/nbNO.js +15 -19
  284. package/node/locales/utils/getPickersLocalization.js +1 -1
  285. package/node/locales/zhTW.js +79 -0
  286. package/node/managers/index.js +26 -0
  287. package/node/managers/useDateManager.js +55 -0
  288. package/node/managers/useDateTimeManager.js +60 -0
  289. package/node/managers/useTimeManager.js +51 -0
  290. package/node/models/index.js +11 -0
  291. package/node/models/manager.js +5 -0
  292. package/package.json +3 -3
  293. package/themeAugmentation/props.d.ts +2 -3
  294. package/validation/extractValidationProps.d.ts +1 -1
  295. package/AdapterDateFnsJalaliV3/index.d.ts +0 -1
  296. package/AdapterDateFnsJalaliV3/index.js +0 -1
  297. package/AdapterDateFnsV3/index.d.ts +0 -1
  298. package/AdapterDateFnsV3/index.js +0 -1
  299. package/internals/hooks/defaultizedFieldProps.d.ts +0 -18
  300. package/internals/hooks/defaultizedFieldProps.js +0 -40
  301. package/modern/AdapterDateFnsJalaliV3/index.js +0 -1
  302. package/modern/AdapterDateFnsV3/index.js +0 -1
  303. package/modern/internals/hooks/defaultizedFieldProps.js +0 -40
  304. package/node/AdapterDateFnsV3/AdapterDateFnsV3.js +0 -299
  305. package/node/internals/hooks/defaultizedFieldProps.js +0 -50
@@ -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"));
@@ -15,8 +15,9 @@ var _styles = require("@mui/material/styles");
15
15
  var _Button = _interopRequireDefault(require("@mui/material/Button"));
16
16
  var _DialogActions = _interopRequireDefault(require("@mui/material/DialogActions"));
17
17
  var _usePickerTranslations = require("../hooks/usePickerTranslations");
18
+ var _hooks = require("../hooks");
18
19
  var _jsxRuntime = require("react/jsx-runtime");
19
- const _excluded = ["onAccept", "onClear", "onCancel", "onSetToday", "actions"];
20
+ const _excluded = ["actions"];
20
21
  const PickersActionBarRoot = (0, _styles.styled)(_DialogActions.default, {
21
22
  name: 'MuiPickersLayout',
22
23
  slot: 'ActionBar',
@@ -33,16 +34,18 @@ const PickersActionBarRoot = (0, _styles.styled)(_DialogActions.default, {
33
34
  *
34
35
  * - [PickersActionBar API](https://mui.com/x/api/date-pickers/pickers-action-bar/)
35
36
  */
36
- function PickersActionBar(props) {
37
+ function PickersActionBarComponent(props) {
37
38
  const {
38
- onAccept,
39
- onClear,
40
- onCancel,
41
- onSetToday,
42
39
  actions
43
40
  } = props,
44
41
  other = (0, _objectWithoutPropertiesLoose2.default)(props, _excluded);
45
42
  const translations = (0, _usePickerTranslations.usePickerTranslations)();
43
+ const {
44
+ clearValue,
45
+ setValueToToday,
46
+ acceptValueChanges,
47
+ cancelValueChanges
48
+ } = (0, _hooks.usePickerActionsContext)();
46
49
  if (actions == null || actions.length === 0) {
47
50
  return null;
48
51
  }
@@ -50,22 +53,22 @@ function PickersActionBar(props) {
50
53
  switch (actionType) {
51
54
  case 'clear':
52
55
  return /*#__PURE__*/(0, _jsxRuntime.jsx)(_Button.default, {
53
- onClick: onClear,
56
+ onClick: clearValue,
54
57
  children: translations.clearButtonLabel
55
58
  }, actionType);
56
59
  case 'cancel':
57
60
  return /*#__PURE__*/(0, _jsxRuntime.jsx)(_Button.default, {
58
- onClick: onCancel,
61
+ onClick: cancelValueChanges,
59
62
  children: translations.cancelButtonLabel
60
63
  }, actionType);
61
64
  case 'accept':
62
65
  return /*#__PURE__*/(0, _jsxRuntime.jsx)(_Button.default, {
63
- onClick: onAccept,
66
+ onClick: acceptValueChanges,
64
67
  children: translations.okButtonLabel
65
68
  }, actionType);
66
69
  case 'today':
67
70
  return /*#__PURE__*/(0, _jsxRuntime.jsx)(_Button.default, {
68
- onClick: onSetToday,
71
+ onClick: setValueToToday,
69
72
  children: translations.todayButtonLabel
70
73
  }, actionType);
71
74
  default:
@@ -76,7 +79,7 @@ function PickersActionBar(props) {
76
79
  children: buttons
77
80
  }));
78
81
  }
79
- process.env.NODE_ENV !== "production" ? PickersActionBar.propTypes = {
82
+ process.env.NODE_ENV !== "production" ? PickersActionBarComponent.propTypes = {
80
83
  // ----------------------------- Warning --------------------------------
81
84
  // | These PropTypes are generated from the TypeScript type definitions |
82
85
  // | To update them edit the TypeScript types and run "pnpm proptypes" |
@@ -84,7 +87,9 @@ process.env.NODE_ENV !== "production" ? PickersActionBar.propTypes = {
84
87
  /**
85
88
  * Ordered array of actions to display.
86
89
  * If empty, does not display that action bar.
87
- * @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
88
93
  */
89
94
  actions: _propTypes.default.arrayOf(_propTypes.default.oneOf(['accept', 'cancel', 'clear', 'today']).isRequired),
90
95
  /**
@@ -92,12 +97,9 @@ process.env.NODE_ENV !== "production" ? PickersActionBar.propTypes = {
92
97
  * @default false
93
98
  */
94
99
  disableSpacing: _propTypes.default.bool,
95
- onAccept: _propTypes.default.func.isRequired,
96
- onCancel: _propTypes.default.func.isRequired,
97
- onClear: _propTypes.default.func.isRequired,
98
- onSetToday: _propTypes.default.func.isRequired,
99
100
  /**
100
101
  * The system prop that allows defining system overrides as well as additional CSS styles.
101
102
  */
102
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])
103
- } : void 0;
104
+ } : void 0;
105
+ const PickersActionBar = exports.PickersActionBar = /*#__PURE__*/React.memo(PickersActionBarComponent);
@@ -157,17 +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
- onAccept: _propTypes.default.func.isRequired,
162
- onCancel: _propTypes.default.func.isRequired,
163
- onChange: _propTypes.default.func.isRequired,
164
- onClear: _propTypes.default.func.isRequired,
165
- onClose: _propTypes.default.func.isRequired,
166
- onDismiss: _propTypes.default.func.isRequired,
167
- onOpen: _propTypes.default.func.isRequired,
168
- onSelectShortcut: _propTypes.default.func.isRequired,
169
- onSetToday: _propTypes.default.func.isRequired,
170
- onViewChange: _propTypes.default.func.isRequired,
171
160
  /**
172
161
  * The props used for each component slot.
173
162
  * @default {}
@@ -181,8 +170,5 @@ process.env.NODE_ENV !== "production" ? PickersLayout.propTypes = {
181
170
  /**
182
171
  * The system prop that allows defining system overrides as well as additional CSS styles.
183
172
  */
184
- 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]),
185
- value: _propTypes.default.oneOfType([_propTypes.default.arrayOf(_propTypes.default.object), _propTypes.default.object]),
186
- view: _propTypes.default.oneOf(['day', 'hours', 'meridiem', 'minutes', 'month', 'seconds', 'year']),
187
- views: _propTypes.default.arrayOf(_propTypes.default.oneOf(['day', 'hours', 'meridiem', 'minutes', 'month', 'seconds', 'year']).isRequired).isRequired
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])
188
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,30 +43,14 @@ const usePickerLayout = props => {
41
43
  ownerState: pickerOwnerState
42
44
  } = (0, _usePickerPrivateContext.usePickerPrivateContext)();
43
45
  const {
44
- variant,
45
- orientation
46
+ view
46
47
  } = (0, _hooks.usePickerContext)();
47
48
  const isRtl = (0, _RtlProvider.useRtl)();
48
49
  const {
49
- onAccept,
50
- onClear,
51
- onCancel,
52
- onSetToday,
53
- view,
54
- views,
55
- onViewChange,
56
- value,
57
- onChange,
58
- onSelectShortcut,
59
- isValid,
60
50
  children,
61
51
  slots,
62
52
  slotProps,
63
53
  classes: classesProp
64
- // TODO: Remove this "as" hack. It get introduced to mark `value` prop in PickersLayoutProps as not required.
65
- // The true type should be
66
- // - For pickers value: PickerValidDate | null
67
- // - For range pickers value: [PickerValidDate | null, PickerValidDate | null]
68
54
  } = props;
69
55
  const ownerState = React.useMemo(() => (0, _extends2.default)({}, pickerOwnerState, {
70
56
  layoutDirection: isRtl ? 'rtl' : 'ltr'
@@ -73,35 +59,23 @@ const usePickerLayout = props => {
73
59
 
74
60
  // Action bar
75
61
  const ActionBar = slots?.actionBar ?? _PickersActionBar.PickersActionBar;
76
- const actionBarProps = (0, _useSlotProps.default)({
77
- elementType: ActionBar,
78
- externalSlotProps: slotProps?.actionBar,
79
- additionalProps: {
80
- onAccept,
81
- onClear,
82
- onCancel,
83
- onSetToday,
84
- actions: variant === 'desktop' ? [] : ['cancel', 'accept']
85
- },
86
- className: classes.actionBar,
87
- ownerState
88
- });
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);
89
72
  const actionBar = /*#__PURE__*/(0, _jsxRuntime.jsx)(ActionBar, (0, _extends2.default)({}, actionBarProps));
90
73
 
91
74
  // Toolbar
92
75
  const Toolbar = slots?.toolbar;
93
- const toolbarProps = (0, _useSlotProps.default)({
76
+ const toolbarProps = (0, _useSlotProps2.default)({
94
77
  elementType: Toolbar,
95
78
  externalSlotProps: slotProps?.toolbar,
96
- additionalProps: {
97
- isLandscape: orientation === 'landscape',
98
- // Will be removed in a follow up PR?
99
- onChange,
100
- value,
101
- view,
102
- onViewChange,
103
- views
104
- },
105
79
  className: classes.toolbar,
106
80
  ownerState
107
81
  });
@@ -113,22 +87,14 @@ const usePickerLayout = props => {
113
87
  // Tabs
114
88
  const Tabs = slots?.tabs;
115
89
  const tabs = view && Tabs ? /*#__PURE__*/(0, _jsxRuntime.jsx)(Tabs, (0, _extends2.default)({
116
- view: view,
117
- onViewChange: onViewChange,
118
90
  className: classes.tabs
119
91
  }, slotProps?.tabs)) : null;
120
92
 
121
93
  // Shortcuts
122
94
  const Shortcuts = slots?.shortcuts ?? _PickersShortcuts.PickersShortcuts;
123
- const shortcutsProps = (0, _useSlotProps.default)({
95
+ const shortcutsProps = (0, _useSlotProps2.default)({
124
96
  elementType: Shortcuts,
125
97
  externalSlotProps: slotProps?.shortcuts,
126
- additionalProps: {
127
- isValid,
128
- isLandscape: orientation === 'landscape',
129
- // Will be removed in a follow up PR?
130
- onChange: onSelectShortcut
131
- },
132
98
  className: classes.shortcuts,
133
99
  ownerState
134
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, {
@@ -5,24 +5,26 @@ Object.defineProperty(exports, "__esModule", {
5
5
  value: true
6
6
  });
7
7
  exports.useTimeField = void 0;
8
- var _valueManagers = require("../internals/utils/valueManagers");
9
8
  var _useField = require("../internals/hooks/useField");
10
- var _validation = require("../validation");
11
9
  var _hooks = require("../hooks");
12
- var _defaultizedFieldProps = require("../internals/hooks/defaultizedFieldProps");
13
- const useTimeField = inProps => {
14
- const props = (0, _defaultizedFieldProps.useDefaultizedTimeField)(inProps);
10
+ var _managers = require("../managers");
11
+ const useTimeField = props => {
12
+ const manager = (0, _managers.useTimeManager)(props);
15
13
  const {
16
14
  forwardedProps,
17
15
  internalProps
18
16
  } = (0, _hooks.useSplitFieldProps)(props, 'time');
17
+ const internalPropsWithDefaults = (0, _useField.useFieldInternalPropsWithDefaults)({
18
+ manager,
19
+ internalProps
20
+ });
19
21
  return (0, _useField.useField)({
20
22
  forwardedProps,
21
- internalProps,
22
- valueManager: _valueManagers.singleItemValueManager,
23
- fieldValueManager: _valueManagers.singleItemFieldValueManager,
24
- validator: _validation.validateTime,
25
- valueType: 'time'
23
+ internalProps: internalPropsWithDefaults,
24
+ valueManager: manager.internal_valueManager,
25
+ fieldValueManager: manager.internal_fieldValueManager,
26
+ validator: manager.validator,
27
+ valueType: manager.valueType
26
28
  });
27
29
  };
28
30
  exports.useTimeField = useTimeField;
@@ -76,8 +76,8 @@ process.env.NODE_ENV !== "production" ? TimePicker.propTypes = {
76
76
  autoFocus: _propTypes.default.bool,
77
77
  className: _propTypes.default.string,
78
78
  /**
79
- * If `true`, the popover or modal will close after submitting the full date.
80
- * @default `true` for desktop, `false` for mobile (based on the chosen wrapper and `desktopModeMediaQuery` prop).
79
+ * If `true`, the Picker will close after submitting the full date.
80
+ * @default false
81
81
  */
82
82
  closeOnSelect: _propTypes.default.bool,
83
83
  /**
@@ -26,7 +26,7 @@ var _dateUtils = require("../internals/utils/date-utils");
26
26
  var _hooks = require("../hooks");
27
27
  var _useToolbarOwnerState = require("../internals/hooks/useToolbarOwnerState");
28
28
  var _jsxRuntime = require("react/jsx-runtime");
29
- const _excluded = ["ampm", "ampmInClock", "value", "isLandscape", "onChange", "view", "onViewChange", "views", "className", "classes"];
29
+ const _excluded = ["ampm", "ampmInClock", "className", "classes"];
30
30
  const useUtilityClasses = (classes, ownerState) => {
31
31
  const {
32
32
  pickerOrientation,
@@ -129,12 +129,6 @@ function TimePickerToolbar(inProps) {
129
129
  const {
130
130
  ampm,
131
131
  ampmInClock,
132
- value,
133
- isLandscape,
134
- onChange,
135
- view,
136
- onViewChange,
137
- views,
138
132
  className,
139
133
  classes: classesProp
140
134
  } = props,
@@ -144,15 +138,27 @@ function TimePickerToolbar(inProps) {
144
138
  const ownerState = (0, _useToolbarOwnerState.useToolbarOwnerState)();
145
139
  const classes = useUtilityClasses(classesProp, ownerState);
146
140
  const {
141
+ value,
142
+ setValue,
147
143
  disabled,
148
- readOnly
144
+ readOnly,
145
+ view,
146
+ setView,
147
+ views
149
148
  } = (0, _hooks.usePickerContext)();
150
149
  const showAmPmControl = Boolean(ampm && !ampmInClock && views.includes('hours'));
151
150
  const {
152
151
  meridiemMode,
153
152
  handleMeridiemChange
154
- } = (0, _dateHelpersHooks.useMeridiemMode)(value, ampm, onChange);
155
- const formatHours = time => ampm ? utils.format(time, 'hours12h') : utils.format(time, 'hours24h');
153
+ } = (0, _dateHelpersHooks.useMeridiemMode)(value, ampm, newValue => setValue(newValue, {
154
+ changeImportance: 'set'
155
+ }));
156
+ const formatSection = format => {
157
+ if (!utils.isValid(value)) {
158
+ return '--';
159
+ }
160
+ return utils.format(value, format);
161
+ };
156
162
  const separator = /*#__PURE__*/(0, _jsxRuntime.jsx)(TimePickerToolbarSeparator, {
157
163
  tabIndex: -1,
158
164
  value: ":",
@@ -163,7 +169,6 @@ function TimePickerToolbar(inProps) {
163
169
  return /*#__PURE__*/(0, _jsxRuntime.jsxs)(TimePickerToolbarRoot, (0, _extends2.default)({
164
170
  landscapeDirection: "row",
165
171
  toolbarTitle: translations.timePickerToolbarTitle,
166
- isLandscape: isLandscape,
167
172
  ownerState: ownerState,
168
173
  className: (0, _clsx.default)(classes.root, className)
169
174
  }, other, {
@@ -173,20 +178,20 @@ function TimePickerToolbar(inProps) {
173
178
  children: [(0, _utils.arrayIncludes)(views, 'hours') && /*#__PURE__*/(0, _jsxRuntime.jsx)(_PickersToolbarButton.PickersToolbarButton, {
174
179
  tabIndex: -1,
175
180
  variant: "h3",
176
- onClick: () => onViewChange('hours'),
181
+ onClick: () => setView('hours'),
177
182
  selected: view === 'hours',
178
- value: value ? formatHours(value) : '--'
183
+ value: formatSection(ampm ? 'hours12h' : 'hours24h')
179
184
  }), (0, _utils.arrayIncludes)(views, ['hours', 'minutes']) && separator, (0, _utils.arrayIncludes)(views, 'minutes') && /*#__PURE__*/(0, _jsxRuntime.jsx)(_PickersToolbarButton.PickersToolbarButton, {
180
185
  tabIndex: -1,
181
186
  variant: "h3",
182
- onClick: () => onViewChange('minutes'),
187
+ onClick: () => setView('minutes'),
183
188
  selected: view === 'minutes',
184
- value: value ? utils.format(value, 'minutes') : '--'
189
+ value: formatSection('minutes')
185
190
  }), (0, _utils.arrayIncludes)(views, ['minutes', 'seconds']) && separator, (0, _utils.arrayIncludes)(views, 'seconds') && /*#__PURE__*/(0, _jsxRuntime.jsx)(_PickersToolbarButton.PickersToolbarButton, {
186
191
  variant: "h3",
187
- onClick: () => onViewChange('seconds'),
192
+ onClick: () => setView('seconds'),
188
193
  selected: view === 'seconds',
189
- value: value ? utils.format(value, 'seconds') : '--'
194
+ value: formatSection('seconds')
190
195
  })]
191
196
  }), showAmPmControl && /*#__PURE__*/(0, _jsxRuntime.jsxs)(TimePickerToolbarAmPmSelection, {
192
197
  className: classes.ampmSelection,
@@ -228,14 +233,6 @@ process.env.NODE_ENV !== "production" ? TimePickerToolbar.propTypes = {
228
233
  * @default `true` for Desktop, `false` for Mobile.
229
234
  */
230
235
  hidden: _propTypes.default.bool,
231
- isLandscape: _propTypes.default.bool.isRequired,
232
- onChange: _propTypes.default.func.isRequired,
233
- /**
234
- * Callback called when a toolbar is clicked
235
- * @template TView
236
- * @param {TView} view The view to open
237
- */
238
- onViewChange: _propTypes.default.func.isRequired,
239
236
  /**
240
237
  * The system prop that allows defining system overrides as well as additional CSS styles.
241
238
  */
@@ -249,14 +246,5 @@ process.env.NODE_ENV !== "production" ? TimePickerToolbar.propTypes = {
249
246
  * Toolbar value placeholder—it is displayed when the value is empty.
250
247
  * @default "––"
251
248
  */
252
- toolbarPlaceholder: _propTypes.default.node,
253
- value: _propTypes.default.object,
254
- /**
255
- * Currently visible picker view.
256
- */
257
- view: _propTypes.default.oneOf(['hours', 'meridiem', 'minutes', 'seconds']).isRequired,
258
- /**
259
- * Available views.
260
- */
261
- views: _propTypes.default.arrayOf(_propTypes.default.oneOf(['hours', 'meridiem', 'minutes', 'seconds']).isRequired).isRequired
249
+ toolbarPlaceholder: _propTypes.default.node
262
250
  } : void 0;
@@ -9,12 +9,24 @@ Object.defineProperty(exports, "useClearableField", {
9
9
  return _useClearableField.useClearableField;
10
10
  }
11
11
  });
12
+ Object.defineProperty(exports, "useIsValidValue", {
13
+ enumerable: true,
14
+ get: function () {
15
+ return _useIsValidValue.useIsValidValue;
16
+ }
17
+ });
12
18
  Object.defineProperty(exports, "useParsedFormat", {
13
19
  enumerable: true,
14
20
  get: function () {
15
21
  return _useParsedFormat.useParsedFormat;
16
22
  }
17
23
  });
24
+ Object.defineProperty(exports, "usePickerActionsContext", {
25
+ enumerable: true,
26
+ get: function () {
27
+ return _usePickerActionsContext.usePickerActionsContext;
28
+ }
29
+ });
18
30
  Object.defineProperty(exports, "usePickerContext", {
19
31
  enumerable: true,
20
32
  get: function () {
@@ -37,4 +49,6 @@ var _useClearableField = require("./useClearableField");
37
49
  var _usePickerTranslations = require("./usePickerTranslations");
38
50
  var _useSplitFieldProps = require("./useSplitFieldProps");
39
51
  var _useParsedFormat = require("./useParsedFormat");
40
- var _usePickerContext = require("./usePickerContext");
52
+ var _usePickerContext = require("./usePickerContext");
53
+ var _usePickerActionsContext = require("./usePickerActionsContext");
54
+ var _useIsValidValue = require("./useIsValidValue");
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ 'use client';
3
+
4
+ var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.IsValidValueContext = void 0;
9
+ exports.useIsValidValue = useIsValidValue;
10
+ var React = _interopRequireWildcard(require("react"));
11
+ const IsValidValueContext = exports.IsValidValueContext = /*#__PURE__*/React.createContext(() => true);
12
+
13
+ /**
14
+ * Returns a function to check if a value is valid according to the validation props passed to the parent picker.
15
+ */
16
+ function useIsValidValue() {
17
+ return React.useContext(IsValidValueContext);
18
+ }
@@ -0,0 +1,22 @@
1
+ "use strict";
2
+ 'use client';
3
+
4
+ var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.usePickerActionsContext = void 0;
9
+ var React = _interopRequireWildcard(require("react"));
10
+ var _PickerProvider = require("../internals/components/PickerProvider");
11
+ /**
12
+ * Returns a subset of the context passed by the picker wrapping the current component.
13
+ * It only contains the actions and never causes a re-render of the component using it.
14
+ */
15
+ const usePickerActionsContext = () => {
16
+ const value = React.useContext(_PickerProvider.PickerActionsContext);
17
+ if (value == null) {
18
+ throw new Error(['MUI X: The `usePickerActionsContext` can only be called in fields that are used as a slot of a picker component'].join('\n'));
19
+ }
20
+ return value;
21
+ };
22
+ exports.usePickerActionsContext = usePickerActionsContext;
@@ -14,7 +14,7 @@ var _PickerProvider = require("../internals/components/PickerProvider");
14
14
  const usePickerContext = () => {
15
15
  const value = React.useContext(_PickerProvider.PickerContext);
16
16
  if (value == null) {
17
- throw new Error(['MUI X: The `usePickerContext` can only be called in fields that are used as a slot of a picker component'].join('\n'));
17
+ throw new Error('MUI X: The `usePickerContext` hook can only be called inside the context of a picker component');
18
18
  }
19
19
  return value;
20
20
  };
package/node/index.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @mui/x-date-pickers v8.0.0-alpha.5
2
+ * @mui/x-date-pickers v8.0.0-alpha.7
3
3
  *
4
4
  * @license MIT
5
5
  * This source code is licensed under the MIT license found in the
@@ -463,4 +463,16 @@ Object.keys(_validation).forEach(function (key) {
463
463
  return _validation[key];
464
464
  }
465
465
  });
466
+ });
467
+ var _managers = require("./managers");
468
+ Object.keys(_managers).forEach(function (key) {
469
+ if (key === "default" || key === "__esModule") return;
470
+ if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
471
+ if (key in exports && exports[key] === _managers[key]) return;
472
+ Object.defineProperty(exports, key, {
473
+ enumerable: true,
474
+ get: function () {
475
+ return _managers[key];
476
+ }
477
+ });
466
478
  });