@mui/x-date-pickers 8.0.0-alpha.13 → 8.0.0-alpha.14

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 (197) hide show
  1. package/CHANGELOG.md +131 -0
  2. package/DatePicker/shared.d.ts +1 -1
  3. package/DateTimePicker/DateTimePicker.types.d.ts +2 -2
  4. package/DateTimePicker/DateTimePickerToolbar.d.ts +1 -1
  5. package/DateTimePicker/DateTimePickerToolbar.js +1 -1
  6. package/DateTimePicker/shared.d.ts +18 -10
  7. package/DateTimePicker/shared.js +23 -2
  8. package/DesktopDateTimePicker/DesktopDateTimePicker.js +2 -11
  9. package/DesktopDateTimePicker/DesktopDateTimePicker.types.d.ts +4 -7
  10. package/DesktopTimePicker/DesktopTimePicker.types.d.ts +2 -2
  11. package/MobileDateTimePicker/MobileDateTimePicker.d.ts +1 -2
  12. package/MobileDateTimePicker/MobileDateTimePicker.js +61 -6
  13. package/MobileDateTimePicker/MobileDateTimePicker.types.d.ts +1 -3
  14. package/PickersTextField/PickersTextField.js +3 -1
  15. package/StaticDateTimePicker/StaticDateTimePicker.js +60 -6
  16. package/StaticDateTimePicker/StaticDateTimePicker.types.d.ts +1 -2
  17. package/TimePicker/shared.d.ts +1 -1
  18. package/esm/DatePicker/shared.d.ts +1 -1
  19. package/esm/DateTimePicker/DateTimePicker.types.d.ts +2 -2
  20. package/esm/DateTimePicker/DateTimePickerToolbar.d.ts +1 -1
  21. package/esm/DateTimePicker/DateTimePickerToolbar.js +1 -1
  22. package/esm/DateTimePicker/shared.d.ts +18 -10
  23. package/esm/DateTimePicker/shared.js +23 -2
  24. package/esm/DesktopDateTimePicker/DesktopDateTimePicker.js +3 -12
  25. package/esm/DesktopDateTimePicker/DesktopDateTimePicker.types.d.ts +4 -7
  26. package/esm/DesktopTimePicker/DesktopTimePicker.types.d.ts +2 -2
  27. package/esm/MobileDateTimePicker/MobileDateTimePicker.d.ts +1 -2
  28. package/esm/MobileDateTimePicker/MobileDateTimePicker.js +62 -7
  29. package/esm/MobileDateTimePicker/MobileDateTimePicker.types.d.ts +1 -3
  30. package/esm/PickersTextField/PickersTextField.js +3 -1
  31. package/esm/StaticDateTimePicker/StaticDateTimePicker.js +61 -7
  32. package/esm/StaticDateTimePicker/StaticDateTimePicker.types.d.ts +1 -2
  33. package/esm/TimePicker/shared.d.ts +1 -1
  34. package/esm/index.js +1 -1
  35. package/esm/internals/components/PickerFieldUI.js +6 -2
  36. package/esm/internals/components/PickerPopper/PickerPopper.js +3 -3
  37. package/esm/internals/components/PickerProvider.d.ts +137 -6
  38. package/esm/internals/components/PickerProvider.js +1 -1
  39. package/esm/internals/hooks/useDesktopPicker/useDesktopPicker.types.d.ts +4 -7
  40. package/esm/internals/hooks/useField/useField.js +7 -8
  41. package/esm/internals/hooks/useField/useField.types.d.ts +46 -43
  42. package/esm/internals/hooks/useField/useField.utils.js +4 -1
  43. package/esm/internals/hooks/useField/useFieldCharacterEditing.js +2 -2
  44. package/esm/internals/hooks/useField/useFieldState.d.ts +2 -1
  45. package/esm/internals/hooks/useField/useFieldState.js +136 -83
  46. package/esm/internals/hooks/useField/useFieldV6TextField.js +1 -1
  47. package/esm/internals/hooks/useField/useFieldV7TextField.js +2 -1
  48. package/esm/internals/hooks/useMobilePicker/useMobilePicker.types.d.ts +4 -7
  49. package/esm/internals/hooks/useNullableFieldPrivateContext.d.ts +5 -2
  50. package/esm/internals/hooks/usePicker/hooks/useOrientation.d.ts +2 -0
  51. package/esm/internals/hooks/usePicker/hooks/useOrientation.js +34 -0
  52. package/esm/internals/hooks/usePicker/hooks/useValueAndOpenStates.d.ts +19 -0
  53. package/esm/internals/hooks/usePicker/hooks/useValueAndOpenStates.js +210 -0
  54. package/esm/internals/hooks/usePicker/index.d.ts +1 -3
  55. package/esm/internals/hooks/usePicker/usePicker.d.ts +5 -5
  56. package/esm/internals/hooks/usePicker/usePicker.js +276 -34
  57. package/esm/internals/hooks/usePicker/usePicker.types.d.ts +181 -9
  58. package/esm/internals/hooks/useStaticPicker/useStaticPicker.types.d.ts +3 -4
  59. package/esm/internals/hooks/useValueWithTimezone.d.ts +1 -1
  60. package/esm/internals/index.d.ts +3 -6
  61. package/esm/internals/models/manager.d.ts +108 -4
  62. package/esm/internals/models/props/basePickerProps.d.ts +2 -2
  63. package/esm/internals/models/props/time.d.ts +1 -1
  64. package/esm/internals/utils/date-time-utils.d.ts +2 -2
  65. package/esm/internals/utils/valueManagers.d.ts +1 -1
  66. package/esm/internals/utils/valueManagers.js +10 -18
  67. package/esm/managers/useDateManager.d.ts +3 -4
  68. package/esm/managers/useDateTimeManager.d.ts +3 -4
  69. package/esm/managers/useTimeManager.d.ts +3 -4
  70. package/esm/models/adapters.d.ts +2 -1
  71. package/esm/models/manager.d.ts +4 -5
  72. package/esm/validation/useValidation.d.ts +1 -1
  73. package/index.js +1 -1
  74. package/internals/components/PickerFieldUI.js +6 -2
  75. package/internals/components/PickerPopper/PickerPopper.js +3 -3
  76. package/internals/components/PickerProvider.d.ts +137 -6
  77. package/internals/components/PickerProvider.js +1 -1
  78. package/internals/hooks/useDesktopPicker/useDesktopPicker.types.d.ts +4 -7
  79. package/internals/hooks/useField/useField.js +7 -8
  80. package/internals/hooks/useField/useField.types.d.ts +46 -43
  81. package/internals/hooks/useField/useField.utils.js +4 -1
  82. package/internals/hooks/useField/useFieldCharacterEditing.js +2 -2
  83. package/internals/hooks/useField/useFieldState.d.ts +2 -1
  84. package/internals/hooks/useField/useFieldState.js +135 -82
  85. package/internals/hooks/useField/useFieldV6TextField.js +1 -1
  86. package/internals/hooks/useField/useFieldV7TextField.js +2 -1
  87. package/internals/hooks/useMobilePicker/useMobilePicker.types.d.ts +4 -7
  88. package/internals/hooks/useNullableFieldPrivateContext.d.ts +5 -2
  89. package/internals/hooks/usePicker/hooks/useOrientation.d.ts +2 -0
  90. package/internals/hooks/usePicker/hooks/useOrientation.js +42 -0
  91. package/internals/hooks/usePicker/hooks/useValueAndOpenStates.d.ts +19 -0
  92. package/internals/hooks/usePicker/{usePickerValue.js → hooks/useValueAndOpenStates.js} +97 -114
  93. package/internals/hooks/usePicker/index.d.ts +1 -3
  94. package/internals/hooks/usePicker/usePicker.d.ts +5 -5
  95. package/internals/hooks/usePicker/usePicker.js +278 -34
  96. package/internals/hooks/usePicker/usePicker.types.d.ts +181 -9
  97. package/internals/hooks/useStaticPicker/useStaticPicker.types.d.ts +3 -4
  98. package/internals/hooks/useValueWithTimezone.d.ts +1 -1
  99. package/internals/index.d.ts +3 -6
  100. package/internals/models/manager.d.ts +108 -4
  101. package/internals/models/props/basePickerProps.d.ts +2 -2
  102. package/internals/models/props/time.d.ts +1 -1
  103. package/internals/utils/date-time-utils.d.ts +2 -2
  104. package/internals/utils/valueManagers.d.ts +1 -1
  105. package/internals/utils/valueManagers.js +10 -18
  106. package/managers/useDateManager.d.ts +3 -4
  107. package/managers/useDateTimeManager.d.ts +3 -4
  108. package/managers/useTimeManager.d.ts +3 -4
  109. package/models/adapters.d.ts +2 -1
  110. package/models/manager.d.ts +4 -5
  111. package/modern/DatePicker/shared.d.ts +1 -1
  112. package/modern/DateTimePicker/DateTimePicker.types.d.ts +2 -2
  113. package/modern/DateTimePicker/DateTimePickerToolbar.d.ts +1 -1
  114. package/modern/DateTimePicker/DateTimePickerToolbar.js +1 -1
  115. package/modern/DateTimePicker/shared.d.ts +18 -10
  116. package/modern/DateTimePicker/shared.js +23 -2
  117. package/modern/DesktopDateTimePicker/DesktopDateTimePicker.js +3 -12
  118. package/modern/DesktopDateTimePicker/DesktopDateTimePicker.types.d.ts +4 -7
  119. package/modern/DesktopTimePicker/DesktopTimePicker.types.d.ts +2 -2
  120. package/modern/MobileDateTimePicker/MobileDateTimePicker.d.ts +1 -2
  121. package/modern/MobileDateTimePicker/MobileDateTimePicker.js +62 -7
  122. package/modern/MobileDateTimePicker/MobileDateTimePicker.types.d.ts +1 -3
  123. package/modern/PickersTextField/PickersTextField.js +3 -1
  124. package/modern/StaticDateTimePicker/StaticDateTimePicker.js +61 -7
  125. package/modern/StaticDateTimePicker/StaticDateTimePicker.types.d.ts +1 -2
  126. package/modern/TimePicker/shared.d.ts +1 -1
  127. package/modern/index.js +1 -1
  128. package/modern/internals/components/PickerFieldUI.js +6 -2
  129. package/modern/internals/components/PickerPopper/PickerPopper.js +3 -3
  130. package/modern/internals/components/PickerProvider.d.ts +137 -6
  131. package/modern/internals/components/PickerProvider.js +1 -1
  132. package/modern/internals/hooks/useDesktopPicker/useDesktopPicker.types.d.ts +4 -7
  133. package/modern/internals/hooks/useField/useField.js +7 -8
  134. package/modern/internals/hooks/useField/useField.types.d.ts +46 -43
  135. package/modern/internals/hooks/useField/useField.utils.js +4 -1
  136. package/modern/internals/hooks/useField/useFieldCharacterEditing.js +2 -2
  137. package/modern/internals/hooks/useField/useFieldState.d.ts +2 -1
  138. package/modern/internals/hooks/useField/useFieldState.js +136 -83
  139. package/modern/internals/hooks/useField/useFieldV6TextField.js +1 -1
  140. package/modern/internals/hooks/useField/useFieldV7TextField.js +2 -1
  141. package/modern/internals/hooks/useMobilePicker/useMobilePicker.types.d.ts +4 -7
  142. package/modern/internals/hooks/useNullableFieldPrivateContext.d.ts +5 -2
  143. package/modern/internals/hooks/usePicker/hooks/useOrientation.d.ts +2 -0
  144. package/modern/internals/hooks/usePicker/hooks/useOrientation.js +34 -0
  145. package/modern/internals/hooks/usePicker/hooks/useValueAndOpenStates.d.ts +19 -0
  146. package/modern/internals/hooks/usePicker/hooks/useValueAndOpenStates.js +210 -0
  147. package/modern/internals/hooks/usePicker/index.d.ts +1 -3
  148. package/modern/internals/hooks/usePicker/usePicker.d.ts +5 -5
  149. package/modern/internals/hooks/usePicker/usePicker.js +276 -34
  150. package/modern/internals/hooks/usePicker/usePicker.types.d.ts +181 -9
  151. package/modern/internals/hooks/useStaticPicker/useStaticPicker.types.d.ts +3 -4
  152. package/modern/internals/hooks/useValueWithTimezone.d.ts +1 -1
  153. package/modern/internals/index.d.ts +3 -6
  154. package/modern/internals/models/manager.d.ts +108 -4
  155. package/modern/internals/models/props/basePickerProps.d.ts +2 -2
  156. package/modern/internals/models/props/time.d.ts +1 -1
  157. package/modern/internals/utils/date-time-utils.d.ts +2 -2
  158. package/modern/internals/utils/valueManagers.d.ts +1 -1
  159. package/modern/internals/utils/valueManagers.js +10 -18
  160. package/modern/managers/useDateManager.d.ts +3 -4
  161. package/modern/managers/useDateTimeManager.d.ts +3 -4
  162. package/modern/managers/useTimeManager.d.ts +3 -4
  163. package/modern/models/adapters.d.ts +2 -1
  164. package/modern/models/manager.d.ts +4 -5
  165. package/modern/validation/useValidation.d.ts +1 -1
  166. package/package.json +1 -1
  167. package/tsconfig.build.tsbuildinfo +1 -1
  168. package/validation/useValidation.d.ts +1 -1
  169. package/esm/internals/hooks/useOpenState.d.ts +0 -14
  170. package/esm/internals/hooks/useOpenState.js +0 -37
  171. package/esm/internals/hooks/usePicker/usePickerProvider.d.ts +0 -65
  172. package/esm/internals/hooks/usePicker/usePickerProvider.js +0 -125
  173. package/esm/internals/hooks/usePicker/usePickerValue.d.ts +0 -12
  174. package/esm/internals/hooks/usePicker/usePickerValue.js +0 -226
  175. package/esm/internals/hooks/usePicker/usePickerValue.types.d.ts +0 -327
  176. package/esm/internals/hooks/usePicker/usePickerValue.types.js +0 -1
  177. package/esm/internals/hooks/usePicker/usePickerViews.d.ts +0 -137
  178. package/esm/internals/hooks/usePicker/usePickerViews.js +0 -188
  179. package/internals/hooks/useOpenState.d.ts +0 -14
  180. package/internals/hooks/useOpenState.js +0 -46
  181. package/internals/hooks/usePicker/usePickerProvider.d.ts +0 -65
  182. package/internals/hooks/usePicker/usePickerProvider.js +0 -135
  183. package/internals/hooks/usePicker/usePickerValue.d.ts +0 -12
  184. package/internals/hooks/usePicker/usePickerValue.types.d.ts +0 -327
  185. package/internals/hooks/usePicker/usePickerValue.types.js +0 -5
  186. package/internals/hooks/usePicker/usePickerViews.d.ts +0 -137
  187. package/internals/hooks/usePicker/usePickerViews.js +0 -195
  188. package/modern/internals/hooks/useOpenState.d.ts +0 -14
  189. package/modern/internals/hooks/useOpenState.js +0 -37
  190. package/modern/internals/hooks/usePicker/usePickerProvider.d.ts +0 -65
  191. package/modern/internals/hooks/usePicker/usePickerProvider.js +0 -125
  192. package/modern/internals/hooks/usePicker/usePickerValue.d.ts +0 -12
  193. package/modern/internals/hooks/usePicker/usePickerValue.js +0 -226
  194. package/modern/internals/hooks/usePicker/usePickerValue.types.d.ts +0 -327
  195. package/modern/internals/hooks/usePicker/usePickerValue.types.js +0 -1
  196. package/modern/internals/hooks/usePicker/usePickerViews.d.ts +0 -137
  197. package/modern/internals/hooks/usePicker/usePickerViews.js +0 -188
package/CHANGELOG.md CHANGED
@@ -5,6 +5,137 @@
5
5
  All notable changes to this project will be documented in this file.
6
6
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
7
7
 
8
+ ## 8.0.0-alpha.14
9
+
10
+ _Mar 7, 2025_
11
+
12
+ We'd like to offer a big thanks to the 12 contributors who made this release possible. Here are some highlights ✨:
13
+
14
+ - 🚀📊 New Pro Chart: It is now possible to create Funnel charts—perfect for visualizing conversions, sales pipelines and more!
15
+ <img width="418" alt="Screenshot 2025-01-31 at 12 22 31" src="https://github.com/user-attachments/assets/8cd26821-5f11-46bf-a9bb-34d212880a47" />
16
+ - 🎁 The first iteration of the radar chart is available. Features and refinements will be added in the coming weeks.
17
+ - 🛠️ New and improved [Toolbar component](https://next.mui.com/x/react-data-grid/components/toolbar/) for the data grid
18
+ - 🐞 Bugfixes
19
+
20
+ Special thanks go out to the community member for their valuable contributions:
21
+ @vadimka123.
22
+
23
+ Following are all team members who have contributed to this release:
24
+ @alexfauquette, @arminmeh, @bernardobelchior, @cherniavskii, @flaviendelangle, @JCQuintas, @KenanYusuf, @LukasTy, @michelengelen, @noraleonte, @oliviertassinari.
25
+
26
+ <!--/ HIGHLIGHT_ABOVE_SEPARATOR /-->
27
+
28
+ ### Data Grid
29
+
30
+ #### Breaking changes
31
+
32
+ - The density selector has been removed from the toolbar. It is still possible to set the density programmatically via the `density` prop. A density selector can be added to a custom toolbar passed to `slots.toolbar`. See [Toolbar component—Settings menu](https://next.mui.com/x/react-data-grid/components/toolbar/#settings-menu) for an example.
33
+ - The quick filter is now shown in the toolbar by default. Use `slotProps={{ toolbar: { showQuickFilter: false } }}` to hide it.
34
+ - The `<GridSaveAltIcon />` icon is not exported anymore. Import `SaveAlt` from `@mui/icons-material` instead.
35
+
36
+ #### `@mui/x-data-grid@8.0.0-alpha.14`
37
+
38
+ - [DataGrid] Fix `aria-hidden` console error when scrollbar is dragged (#16829) @arminmeh
39
+ - [DataGrid] Fix scroll jump with dynamic row height (#16763) @cherniavskii
40
+ - [DataGrid] New `<Toolbar />` component (#14611) @KenanYusuf
41
+ - [DataGrid] Use new toolbar by default (#16814) @KenanYusuf
42
+ - [DataGrid] Remove the quick filtering on a given column (#16738) @vadimka123
43
+
44
+ #### `@mui/x-data-grid-pro@8.0.0-alpha.14` [![pro](https://mui.com/r/x-pro-svg)](https://mui.com/r/x-pro-svg-link 'Pro plan')
45
+
46
+ Same changes as in `@mui/x-data-grid@8.0.0-alpha.14`.
47
+
48
+ #### `@mui/x-data-grid-premium@8.0.0-alpha.14` [![premium](https://mui.com/r/x-premium-svg)](https://mui.com/r/x-premium-svg-link 'Premium plan')
49
+
50
+ Same changes as in `@mui/x-data-grid-pro@8.0.0-alpha.14`.
51
+
52
+ ### Date and Time Pickers
53
+
54
+ #### Breaking changes
55
+
56
+ - All Date Time Picker variants now use Digital Clock for time editing.
57
+ - Stop passing invalid date to `onChange` when the date is partially filled — [Learn more](https://next.mui.com/x/migration/migration-pickers-v7/#treat-partially-filled-date-as-null-in-onchange).
58
+
59
+ #### `@mui/x-date-pickers@8.0.0-alpha.14`
60
+
61
+ - [DateTimePicker] Use Digital Clock in all component variants (#16678) @LukasTy
62
+ - [fields] Always use `props.value` as the source of truth when defined (#15875) @flaviendelangle
63
+ - [fields] Fix Fields aria relationship with `helperText` (#16821) @LukasTy
64
+ - [pickers] Add `TValidationProps` generic to the `PickerManager` interface (#16832) @flaviendelangle
65
+ - [pickers] Fix `edge` property setting in different button position cases (#16838) @LukasTy
66
+ - [pickers] Fix typo in JSDoc (#16831) @flaviendelangle
67
+ - [pickers] Refactor the files in the `usePicker` folder (#16680) @flaviendelangle
68
+
69
+ #### `@mui/x-date-pickers-pro@8.0.0-alpha.14` [![pro](https://mui.com/r/x-pro-svg)](https://mui.com/r/x-pro-svg-link 'Pro plan')
70
+
71
+ Same changes as in `@mui/x-date-pickers@8.0.0-alpha.14`.
72
+
73
+ ### Charts
74
+
75
+ #### `@mui/x-charts@8.0.0-alpha.14`
76
+
77
+ - [charts] Fix `undefined` behaving differently from missing value for axis size (#16844) @bernardobelchior
78
+ - [charts] Fix x-axis text anchor default when language is RTL (#16836) @bernardobelchior
79
+ - [charts] Add Radar chart (#16406) @alexfauquette
80
+ - [charts] Move series default color generation in the series config (#16752) @alexfauquette
81
+ - [charts] Render axis title within axis size (#16730) @bernardobelchior
82
+ - [charts] Split `defaultizeAxis` function into two (#16745) @bernardobelchior
83
+ - [charts] Warn if axes data don't have enough elements (#16830) @alexfauquette
84
+ - [charts] XAxis: Add defaults for `textAnchor` and `dominantBaseline` based on `angle` (#16817) @bernardobelchior
85
+
86
+ #### `@mui/x-charts-pro@8.0.0-alpha.14` [![pro](https://mui.com/r/x-pro-svg)](https://mui.com/r/x-pro-svg-link 'Pro plan')
87
+
88
+ Same changes as in `@mui/x-charts@8.0.0-alpha.14`, plus:
89
+
90
+ - [charts] Add Funnel chart (#14804) @JCQuintas
91
+
92
+ ### Tree View
93
+
94
+ #### Breaking changes
95
+
96
+ - The `selectItem` method has been renamed `setItemSelection`:
97
+
98
+ ```diff
99
+ const { publicAPI } = useTreeItemUtils();
100
+
101
+ const handleSelectItem() {
102
+ - publicAPI.selectItem({ event, itemId: props.itemId, shouldBeSelected: true })
103
+ + publicAPI.setItemSelection({ event, itemId: props.itemId, shouldBeSelected: true })
104
+ }
105
+ ```
106
+
107
+ - The `setItemExpansion` method now receives a single object instead of a list of parameters:
108
+
109
+ ```diff
110
+ const { publicAPI } = useTreeItemUtils();
111
+
112
+ const handleExpandItem() {
113
+ - publicAPI.setItemExpansion(event, props.itemId, true)
114
+ + publicAPI.setItemExpansion({ event, itemId: props.itemId, shouldBeExpanded: true })
115
+ }
116
+ ```
117
+
118
+ #### `@mui/x-tree-view@8.0.0-alpha.14`
119
+
120
+ - [TreeView] Clean the expansion and selection API methods (#16795) @flaviendelangle
121
+
122
+ #### `@mui/x-tree-view-pro@8.0.0-alpha.14` [![pro](https://mui.com/r/x-pro-svg)](https://mui.com/r/x-pro-svg-link 'Pro plan')
123
+
124
+ Same changes as in `@mui/x-tree-view@8.0.0-alpha.14`.
125
+
126
+ ### Docs
127
+
128
+ - [docs] Fix padding package install on mobile (#16794) @oliviertassinari
129
+ - [docs] Typo fixes (#16835) @alexfauquette
130
+
131
+ ### Core
132
+
133
+ - [code-infra] Fix console warning in telemetry package (#16816) @JCQuintas
134
+ - [code-infra] Split date-picker test files (#16825) @JCQuintas
135
+ - [infra] Replace PR label check workflow with reusable version (#16762) @michelengelen
136
+ - [infra] Update label in priority-support issue template (#16767) @michelengelen
137
+ - [test] Add timeout to flaky screenshot tests (#16852) @LukasTy
138
+
8
139
  ## 8.0.0-alpha.13
9
140
 
10
141
  _Feb 28, 2025_
@@ -5,7 +5,7 @@ import { DateValidationError, DateView } from "../models/index.js";
5
5
  import { BasePickerInputProps } from "../internals/models/props/basePickerProps.js";
6
6
  import { LocalizedComponent } from "../locales/utils/pickersLocaleTextApi.js";
7
7
  import { DatePickerToolbarProps, ExportedDatePickerToolbarProps } from "./DatePickerToolbar.js";
8
- import { PickerViewRendererLookup } from "../internals/hooks/usePicker/usePickerViews.js";
8
+ import { PickerViewRendererLookup } from "../internals/hooks/usePicker/index.js";
9
9
  import { DateViewRendererProps } from "../dateViewRenderers/index.js";
10
10
  import { PickerValue } from "../internals/models/index.js";
11
11
  import { ValidateDatePropsToDefault } from "../validation/validateDate.js";
@@ -1,11 +1,11 @@
1
1
  import { DesktopDateTimePickerProps, DesktopDateTimePickerSlots, DesktopDateTimePickerSlotProps } from "../DesktopDateTimePicker/index.js";
2
- import { BaseSingleInputFieldProps, DateOrTimeViewWithMeridiem } from "../internals/models/index.js";
2
+ import { BaseSingleInputFieldProps } from "../internals/models/index.js";
3
3
  import { MobileDateTimePickerProps, MobileDateTimePickerSlots, MobileDateTimePickerSlotProps } from "../MobileDateTimePicker/index.js";
4
4
  import { ValidateDateTimeProps } from "../validation/index.js";
5
5
  import { ExportedYearCalendarProps } from "../YearCalendar/YearCalendar.types.js";
6
6
  export interface DateTimePickerSlots extends DesktopDateTimePickerSlots, MobileDateTimePickerSlots {}
7
7
  export interface DateTimePickerSlotProps<TEnableAccessibleFieldDOMStructure extends boolean> extends DesktopDateTimePickerSlotProps<TEnableAccessibleFieldDOMStructure>, MobileDateTimePickerSlotProps<TEnableAccessibleFieldDOMStructure> {}
8
- export interface DateTimePickerProps<TEnableAccessibleFieldDOMStructure extends boolean = true> extends DesktopDateTimePickerProps<TEnableAccessibleFieldDOMStructure>, ExportedYearCalendarProps, Omit<MobileDateTimePickerProps<DateOrTimeViewWithMeridiem, TEnableAccessibleFieldDOMStructure>, 'views'> {
8
+ export interface DateTimePickerProps<TEnableAccessibleFieldDOMStructure extends boolean = true> extends DesktopDateTimePickerProps<TEnableAccessibleFieldDOMStructure>, ExportedYearCalendarProps, Omit<MobileDateTimePickerProps<TEnableAccessibleFieldDOMStructure>, 'views'> {
9
9
  /**
10
10
  * CSS media query when `Mobile` mode will be changed to `Desktop`.
11
11
  * @default '@media (pointer: fine)'
@@ -3,7 +3,7 @@ import { BaseToolbarProps, ExportedBaseToolbarProps } from "../internals/models/
3
3
  import { DateTimePickerToolbarClasses } from "./dateTimePickerToolbarClasses.js";
4
4
  import { DateOrTimeViewWithMeridiem, PickerValue } from "../internals/models/index.js";
5
5
  import { DateTimeValidationError } from "../models/index.js";
6
- import { SetValueActionOptions } from "../internals/hooks/usePicker/usePickerValue.types.js";
6
+ import { SetValueActionOptions } from "../internals/components/PickerProvider.js";
7
7
  export interface ExportedDateTimePickerToolbarProps extends ExportedBaseToolbarProps {
8
8
  /**
9
9
  * Override or extend the styles applied to the component.
@@ -65,7 +65,7 @@ const DateTimePickerToolbarRoot = (0, _styles.styled)(_PickersToolbar.PickersToo
65
65
  },
66
66
  style: {
67
67
  borderBottom: `1px solid ${(theme.vars || theme).palette.divider}`,
68
- [`& .${_pickersToolbarClasses.pickersToolbarClasses.content} .${_pickersToolbarTextClasses.pickersToolbarTextClasses.selected}`]: {
68
+ [`& .${_pickersToolbarClasses.pickersToolbarClasses.content} .${_pickersToolbarTextClasses.pickersToolbarTextClasses.root}[data-selected]`]: {
69
69
  color: (theme.vars || theme).palette.primary.main,
70
70
  fontWeight: theme.typography.fontWeightBold
71
71
  }
@@ -1,19 +1,20 @@
1
1
  import * as React from 'react';
2
2
  import { DefaultizedProps } from '@mui/x-internals/types';
3
- import { DateTimeValidationError } from "../models/index.js";
3
+ import { DateOrTimeView, DateTimeValidationError } from "../models/index.js";
4
4
  import { DateCalendarSlots, DateCalendarSlotProps, ExportedDateCalendarProps } from "../DateCalendar/DateCalendar.types.js";
5
- import { TimeClockSlots, TimeClockSlotProps } from "../TimeClock/TimeClock.types.js";
6
5
  import { BasePickerInputProps } from "../internals/models/props/basePickerProps.js";
7
6
  import { DateTimePickerTabsProps } from "./DateTimePickerTabs.js";
8
7
  import { LocalizedComponent } from "../locales/utils/pickersLocaleTextApi.js";
9
8
  import { DateTimePickerToolbarProps, ExportedDateTimePickerToolbarProps } from "./DateTimePickerToolbar.js";
10
- import { PickerViewRendererLookup } from "../internals/hooks/usePicker/usePickerViews.js";
9
+ import { PickerViewRendererLookup } from "../internals/hooks/usePicker/index.js";
11
10
  import { DateViewRendererProps } from "../dateViewRenderers/index.js";
12
11
  import { TimeViewRendererProps } from "../timeViewRenderers/index.js";
13
- import { BaseClockProps, ExportedBaseClockProps } from "../internals/models/props/time.js";
12
+ import { BaseClockProps, DigitalTimePickerProps } from "../internals/models/props/time.js";
14
13
  import { DateOrTimeViewWithMeridiem, PickerValue, TimeViewWithMeridiem } from "../internals/models/index.js";
15
14
  import { ExportedValidateDateTimeProps, ValidateDateTimePropsToDefault } from "../validation/validateDateTime.js";
16
- export interface BaseDateTimePickerSlots extends DateCalendarSlots, TimeClockSlots {
15
+ import { DigitalClockSlotProps, DigitalClockSlots } from "../DigitalClock/index.js";
16
+ import { MultiSectionDigitalClockSlotProps, MultiSectionDigitalClockSlots } from "../MultiSectionDigitalClock/index.js";
17
+ export interface BaseDateTimePickerSlots extends DateCalendarSlots, DigitalClockSlots, MultiSectionDigitalClockSlots {
17
18
  /**
18
19
  * Tabs enabling toggling between date and time pickers.
19
20
  * @default DateTimePickerTabs
@@ -25,7 +26,7 @@ export interface BaseDateTimePickerSlots extends DateCalendarSlots, TimeClockSlo
25
26
  */
26
27
  toolbar?: React.JSXElementConstructor<DateTimePickerToolbarProps>;
27
28
  }
28
- export interface BaseDateTimePickerSlotProps extends DateCalendarSlotProps, TimeClockSlotProps {
29
+ export interface BaseDateTimePickerSlotProps extends DateCalendarSlotProps, DigitalClockSlotProps, MultiSectionDigitalClockSlotProps {
29
30
  /**
30
31
  * Props passed down to the tabs component.
31
32
  */
@@ -36,7 +37,7 @@ export interface BaseDateTimePickerSlotProps extends DateCalendarSlotProps, Time
36
37
  toolbar?: ExportedDateTimePickerToolbarProps;
37
38
  }
38
39
  export type DateTimePickerViewRenderers<TView extends DateOrTimeViewWithMeridiem> = PickerViewRendererLookup<PickerValue, TView, Omit<DateViewRendererProps<TView>, 'slots' | 'slotProps'> & Omit<TimeViewRendererProps<TimeViewWithMeridiem, BaseClockProps<TimeViewWithMeridiem>>, 'slots' | 'slotProps'>>;
39
- export interface BaseDateTimePickerProps<TView extends DateOrTimeViewWithMeridiem> extends BasePickerInputProps<PickerValue, TView, DateTimeValidationError>, Omit<ExportedDateCalendarProps, 'onViewChange'>, ExportedBaseClockProps, ExportedValidateDateTimeProps {
40
+ export interface BaseDateTimePickerProps extends Omit<BasePickerInputProps<PickerValue, DateOrTimeViewWithMeridiem, DateTimeValidationError>, 'views'>, Omit<ExportedDateCalendarProps, 'onViewChange' | 'views'>, DigitalTimePickerProps, ExportedValidateDateTimeProps {
40
41
  /**
41
42
  * Display ampm controls under the clock (instead of in the toolbar).
42
43
  * @default true on desktop, false on mobile
@@ -57,8 +58,15 @@ export interface BaseDateTimePickerProps<TView extends DateOrTimeViewWithMeridie
57
58
  * If `null`, the section will only have field editing.
58
59
  * If `undefined`, internally defined view will be used.
59
60
  */
60
- viewRenderers?: Partial<DateTimePickerViewRenderers<TView>>;
61
+ viewRenderers?: Partial<DateTimePickerViewRenderers<DateOrTimeViewWithMeridiem>>;
62
+ /**
63
+ * Available views.
64
+ */
65
+ views?: readonly DateOrTimeView[];
61
66
  }
62
- type UseDateTimePickerDefaultizedProps<TView extends DateOrTimeViewWithMeridiem, Props extends BaseDateTimePickerProps<TView>> = LocalizedComponent<DefaultizedProps<Props, 'views' | 'openTo' | 'orientation' | 'ampm' | ValidateDateTimePropsToDefault>>;
63
- export declare function useDateTimePickerDefaultizedProps<TView extends DateOrTimeViewWithMeridiem, Props extends BaseDateTimePickerProps<TView>>(props: Props, name: string): UseDateTimePickerDefaultizedProps<TView, Props>;
67
+ type UseDateTimePickerDefaultizedProps<Props extends BaseDateTimePickerProps> = LocalizedComponent<Omit<DefaultizedProps<Props, 'openTo' | 'orientation' | 'ampm' | ValidateDateTimePropsToDefault>, 'views'>> & {
68
+ shouldRenderTimeInASingleColumn: boolean;
69
+ views: readonly DateOrTimeViewWithMeridiem[];
70
+ };
71
+ export declare function useDateTimePickerDefaultizedProps<Props extends BaseDateTimePickerProps>(props: Props, name: string): UseDateTimePickerDefaultizedProps<Props>;
64
72
  export {};
@@ -14,6 +14,7 @@ var _dateUtils = require("../internals/utils/date-utils");
14
14
  var _DateTimePickerTabs = require("./DateTimePickerTabs");
15
15
  var _DateTimePickerToolbar = require("./DateTimePickerToolbar");
16
16
  var _views = require("../internals/utils/views");
17
+ var _dateTimeUtils = require("../internals/utils/date-time-utils");
17
18
  function useDateTimePickerDefaultizedProps(props, name) {
18
19
  const utils = (0, _useUtils.useUtils)();
19
20
  const defaultDates = (0, _useUtils.useDefaultDates)();
@@ -30,12 +31,32 @@ function useDateTimePickerDefaultizedProps(props, name) {
30
31
  dateTimePickerToolbarTitle: themeProps.localeText.toolbarTitle
31
32
  });
32
33
  }, [themeProps.localeText]);
33
- return (0, _extends2.default)({}, themeProps, (0, _views.applyDefaultViewProps)({
34
+ const {
35
+ openTo,
36
+ views: defaultViews
37
+ } = (0, _views.applyDefaultViewProps)({
34
38
  views: themeProps.views,
35
39
  openTo: themeProps.openTo,
36
40
  defaultViews: ['year', 'day', 'hours', 'minutes'],
37
41
  defaultOpenTo: 'day'
38
- }), {
42
+ });
43
+ const {
44
+ shouldRenderTimeInASingleColumn,
45
+ thresholdToRenderTimeInASingleColumn,
46
+ views,
47
+ timeSteps
48
+ } = (0, _dateTimeUtils.resolveTimeViewsResponse)({
49
+ thresholdToRenderTimeInASingleColumn: themeProps.thresholdToRenderTimeInASingleColumn,
50
+ ampm,
51
+ timeSteps: themeProps.timeSteps,
52
+ views: defaultViews
53
+ });
54
+ return (0, _extends2.default)({}, themeProps, {
55
+ timeSteps,
56
+ openTo,
57
+ shouldRenderTimeInASingleColumn,
58
+ thresholdToRenderTimeInASingleColumn,
59
+ views,
39
60
  ampm,
40
61
  localeText,
41
62
  orientation: themeProps.orientation ?? 'portrait',
@@ -98,13 +98,7 @@ const DesktopDateTimePicker = exports.DesktopDateTimePicker = /*#__PURE__*/React
98
98
 
99
99
  // Props with the default values common to all date time pickers
100
100
  const defaultizedProps = (0, _shared.useDateTimePickerDefaultizedProps)(inProps, 'MuiDesktopDateTimePicker');
101
- const {
102
- shouldRenderTimeInASingleColumn,
103
- thresholdToRenderTimeInASingleColumn,
104
- views: resolvedViews,
105
- timeSteps
106
- } = (0, _dateTimeUtils.resolveTimeViewsResponse)(defaultizedProps);
107
- const renderTimeView = shouldRenderTimeInASingleColumn ? _timeViewRenderers.renderDigitalClockTimeView : _timeViewRenderers.renderMultiSectionDigitalClockTimeView;
101
+ const renderTimeView = defaultizedProps.shouldRenderTimeInASingleColumn ? _timeViewRenderers.renderDigitalClockTimeView : _timeViewRenderers.renderMultiSectionDigitalClockTimeView;
108
102
  const viewRenderers = (0, _extends2.default)({
109
103
  day: _dateViewRenderers.renderDateViewCalendar,
110
104
  month: _dateViewRenderers.renderDateViewCalendar,
@@ -117,7 +111,7 @@ const DesktopDateTimePicker = exports.DesktopDateTimePicker = /*#__PURE__*/React
117
111
  const ampmInClock = defaultizedProps.ampmInClock ?? true;
118
112
  // Need to avoid adding the `meridiem` view when unexpected renderer is specified
119
113
  const shouldHoursRendererContainMeridiemView = viewRenderers.hours?.name === _timeViewRenderers.renderMultiSectionDigitalClockTimeView.name;
120
- const views = !shouldHoursRendererContainMeridiemView ? resolvedViews.filter(view => view !== 'meridiem') : resolvedViews;
114
+ const views = !shouldHoursRendererContainMeridiemView ? defaultizedProps.views.filter(view => view !== 'meridiem') : defaultizedProps.views;
121
115
 
122
116
  // Props with the default values specific to the desktop variant
123
117
  const props = (0, _extends2.default)({}, defaultizedProps, {
@@ -126,9 +120,6 @@ const DesktopDateTimePicker = exports.DesktopDateTimePicker = /*#__PURE__*/React
126
120
  views,
127
121
  yearsPerRow: defaultizedProps.yearsPerRow ?? 4,
128
122
  ampmInClock,
129
- timeSteps,
130
- thresholdToRenderTimeInASingleColumn,
131
- shouldRenderTimeInASingleColumn,
132
123
  slots: (0, _extends2.default)({
133
124
  field: _DateTimeField.DateTimeField,
134
125
  layout: _DesktopDateTimePickerLayout.DesktopDateTimePickerLayout
@@ -2,14 +2,11 @@ import { MakeOptional } from '@mui/x-internals/types';
2
2
  import { UseDesktopPickerSlots, ExportedUseDesktopPickerSlotProps, DesktopOnlyPickerProps } from "../internals/hooks/useDesktopPicker/index.js";
3
3
  import { BaseDateTimePickerProps, BaseDateTimePickerSlots, BaseDateTimePickerSlotProps } from "../DateTimePicker/shared.js";
4
4
  import { DateOrTimeView } from "../models/index.js";
5
- import { DesktopOnlyTimePickerProps } from "../internals/models/props/time.js";
6
- import { DateOrTimeViewWithMeridiem } from "../internals/models/index.js";
7
- import { MultiSectionDigitalClockSlots, MultiSectionDigitalClockSlotProps } from "../MultiSectionDigitalClock/index.js";
8
- import { DigitalClockSlots, DigitalClockSlotProps } from "../DigitalClock/index.js";
5
+ import { DigitalTimePickerProps } from "../internals/models/props/time.js";
9
6
  import { ExportedYearCalendarProps } from "../YearCalendar/YearCalendar.types.js";
10
- export interface DesktopDateTimePickerSlots extends BaseDateTimePickerSlots, MakeOptional<UseDesktopPickerSlots, 'field' | 'openPickerIcon'>, DigitalClockSlots, MultiSectionDigitalClockSlots {}
11
- export interface DesktopDateTimePickerSlotProps<TEnableAccessibleFieldDOMStructure extends boolean> extends BaseDateTimePickerSlotProps, ExportedUseDesktopPickerSlotProps<TEnableAccessibleFieldDOMStructure>, DigitalClockSlotProps, MultiSectionDigitalClockSlotProps {}
12
- export interface DesktopDateTimePickerProps<TEnableAccessibleFieldDOMStructure extends boolean = true> extends BaseDateTimePickerProps<DateOrTimeViewWithMeridiem>, DesktopOnlyPickerProps, DesktopOnlyTimePickerProps, ExportedYearCalendarProps {
7
+ export interface DesktopDateTimePickerSlots extends BaseDateTimePickerSlots, MakeOptional<UseDesktopPickerSlots, 'field' | 'openPickerIcon'> {}
8
+ export interface DesktopDateTimePickerSlotProps<TEnableAccessibleFieldDOMStructure extends boolean> extends BaseDateTimePickerSlotProps, ExportedUseDesktopPickerSlotProps<TEnableAccessibleFieldDOMStructure> {}
9
+ export interface DesktopDateTimePickerProps<TEnableAccessibleFieldDOMStructure extends boolean = true> extends BaseDateTimePickerProps, DesktopOnlyPickerProps, DigitalTimePickerProps, ExportedYearCalendarProps {
13
10
  /**
14
11
  * Overridable component slots.
15
12
  * @default {}
@@ -2,13 +2,13 @@ import { MakeOptional } from '@mui/x-internals/types';
2
2
  import { UseDesktopPickerSlots, ExportedUseDesktopPickerSlotProps, DesktopOnlyPickerProps } from "../internals/hooks/useDesktopPicker/index.js";
3
3
  import { BaseTimePickerProps, BaseTimePickerSlots, BaseTimePickerSlotProps } from "../TimePicker/shared.js";
4
4
  import { TimeViewWithMeridiem } from "../internals/models/index.js";
5
- import { DesktopOnlyTimePickerProps } from "../internals/models/props/time.js";
5
+ import { DigitalTimePickerProps } from "../internals/models/props/time.js";
6
6
  import { DigitalClockSlots, DigitalClockSlotProps } from "../DigitalClock/index.js";
7
7
  import { MultiSectionDigitalClockSlots, MultiSectionDigitalClockSlotProps } from "../MultiSectionDigitalClock/index.js";
8
8
  import { TimeView } from "../models/index.js";
9
9
  export interface DesktopTimePickerSlots extends BaseTimePickerSlots, MakeOptional<UseDesktopPickerSlots, 'field' | 'openPickerIcon'>, DigitalClockSlots, MultiSectionDigitalClockSlots {}
10
10
  export interface DesktopTimePickerSlotProps<TEnableAccessibleFieldDOMStructure extends boolean> extends BaseTimePickerSlotProps, ExportedUseDesktopPickerSlotProps<TEnableAccessibleFieldDOMStructure>, DigitalClockSlotProps, MultiSectionDigitalClockSlotProps {}
11
- export interface DesktopTimePickerProps<TEnableAccessibleFieldDOMStructure extends boolean = true> extends BaseTimePickerProps<TimeViewWithMeridiem>, DesktopOnlyPickerProps, DesktopOnlyTimePickerProps {
11
+ export interface DesktopTimePickerProps<TEnableAccessibleFieldDOMStructure extends boolean = true> extends BaseTimePickerProps<TimeViewWithMeridiem>, DesktopOnlyPickerProps, DigitalTimePickerProps {
12
12
  /**
13
13
  * Available views.
14
14
  */
@@ -1,7 +1,6 @@
1
1
  import * as React from 'react';
2
2
  import { MobileDateTimePickerProps } from "./MobileDateTimePicker.types.js";
3
- import { DateOrTimeView } from "../models/index.js";
4
- type MobileDateTimePickerComponent = (<TEnableAccessibleFieldDOMStructure extends boolean = true>(props: MobileDateTimePickerProps<DateOrTimeView, TEnableAccessibleFieldDOMStructure> & React.RefAttributes<HTMLDivElement>) => React.JSX.Element) & {
3
+ type MobileDateTimePickerComponent = (<TEnableAccessibleFieldDOMStructure extends boolean = true>(props: MobileDateTimePickerProps<TEnableAccessibleFieldDOMStructure> & React.RefAttributes<HTMLDivElement>) => React.JSX.Element) & {
5
4
  propTypes?: any;
6
5
  };
7
6
  /**
@@ -21,6 +21,10 @@ var _useMobilePicker = require("../internals/hooks/useMobilePicker");
21
21
  var _dateViewRenderers = require("../dateViewRenderers");
22
22
  var _timeViewRenderers = require("../timeViewRenderers");
23
23
  var _dateTimeUtils = require("../internals/utils/date-time-utils");
24
+ var _dimensions = require("../internals/constants/dimensions");
25
+ var _MultiSectionDigitalClock = require("../MultiSectionDigitalClock");
26
+ var _utils2 = require("../internals/utils/utils");
27
+ var _DigitalClock = require("../DigitalClock");
24
28
  /**
25
29
  * Demos:
26
30
  *
@@ -36,20 +40,26 @@ const MobileDateTimePicker = exports.MobileDateTimePicker = /*#__PURE__*/React.f
36
40
 
37
41
  // Props with the default values common to all date time pickers
38
42
  const defaultizedProps = (0, _shared.useDateTimePickerDefaultizedProps)(inProps, 'MuiMobileDateTimePicker');
43
+ const renderTimeView = defaultizedProps.shouldRenderTimeInASingleColumn ? _timeViewRenderers.renderDigitalClockTimeView : _timeViewRenderers.renderMultiSectionDigitalClockTimeView;
39
44
  const viewRenderers = (0, _extends2.default)({
40
45
  day: _dateViewRenderers.renderDateViewCalendar,
41
46
  month: _dateViewRenderers.renderDateViewCalendar,
42
47
  year: _dateViewRenderers.renderDateViewCalendar,
43
- hours: _timeViewRenderers.renderTimeViewClock,
44
- minutes: _timeViewRenderers.renderTimeViewClock,
45
- seconds: _timeViewRenderers.renderTimeViewClock
48
+ hours: renderTimeView,
49
+ minutes: renderTimeView,
50
+ seconds: renderTimeView,
51
+ meridiem: renderTimeView
46
52
  }, defaultizedProps.viewRenderers);
47
53
  const ampmInClock = defaultizedProps.ampmInClock ?? false;
54
+ // Need to avoid adding the `meridiem` view when unexpected renderer is specified
55
+ const shouldHoursRendererContainMeridiemView = viewRenderers.hours?.name === _timeViewRenderers.renderMultiSectionDigitalClockTimeView.name;
56
+ const views = !shouldHoursRendererContainMeridiemView ? defaultizedProps.views.filter(view => view !== 'meridiem') : defaultizedProps.views;
48
57
 
49
58
  // Props with the default values specific to the mobile variant
50
59
  const props = (0, _extends2.default)({}, defaultizedProps, {
51
60
  viewRenderers,
52
61
  format: (0, _dateTimeUtils.resolveDateTimeFormat)(utils, defaultizedProps),
62
+ views,
53
63
  ampmInClock,
54
64
  slots: (0, _extends2.default)({
55
65
  field: _DateTimeField.DateTimeField
@@ -62,7 +72,30 @@ const MobileDateTimePicker = exports.MobileDateTimePicker = /*#__PURE__*/React.f
62
72
  }, defaultizedProps.slotProps?.toolbar),
63
73
  tabs: (0, _extends2.default)({
64
74
  hidden: false
65
- }, defaultizedProps.slotProps?.tabs)
75
+ }, defaultizedProps.slotProps?.tabs),
76
+ layout: (0, _extends2.default)({}, defaultizedProps.slotProps?.layout, {
77
+ sx: (0, _utils2.mergeSx)([{
78
+ [`& .${_MultiSectionDigitalClock.multiSectionDigitalClockClasses.root}`]: {
79
+ width: _dimensions.DIALOG_WIDTH
80
+ },
81
+ [`& .${_MultiSectionDigitalClock.multiSectionDigitalClockSectionClasses.root}`]: {
82
+ flex: 1,
83
+ // account for the border on `MultiSectionDigitalClock`
84
+ maxHeight: _dimensions.VIEW_HEIGHT - 1,
85
+ [`.${_MultiSectionDigitalClock.multiSectionDigitalClockSectionClasses.item}`]: {
86
+ width: 'auto'
87
+ }
88
+ },
89
+ [`& .${_DigitalClock.digitalClockClasses.root}`]: {
90
+ width: _dimensions.DIALOG_WIDTH,
91
+ maxHeight: _dimensions.VIEW_HEIGHT,
92
+ flex: 1,
93
+ [`.${_DigitalClock.digitalClockClasses.item}`]: {
94
+ justifyContent: 'center'
95
+ }
96
+ }
97
+ }], defaultizedProps.slotProps?.layout?.sx)
98
+ })
66
99
  })
67
100
  });
68
101
  const {
@@ -299,7 +332,7 @@ MobileDateTimePicker.propTypes = {
299
332
  * Used when the component view is not controlled.
300
333
  * Must be a valid option from `views` list.
301
334
  */
302
- openTo: _propTypes.default.oneOf(['day', 'hours', 'minutes', 'month', 'seconds', 'year']),
335
+ openTo: _propTypes.default.oneOf(['day', 'hours', 'meridiem', 'minutes', 'month', 'seconds', 'year']),
303
336
  /**
304
337
  * Force rendering in particular orientation.
305
338
  */
@@ -375,6 +408,11 @@ MobileDateTimePicker.propTypes = {
375
408
  * @default false
376
409
  */
377
410
  showDaysOutsideCurrentMonth: _propTypes.default.bool,
411
+ /**
412
+ * If `true`, disabled digital clock items will not be rendered.
413
+ * @default false
414
+ */
415
+ skipDisabled: _propTypes.default.bool,
378
416
  /**
379
417
  * The props used for each component slot.
380
418
  * @default {}
@@ -389,6 +427,22 @@ MobileDateTimePicker.propTypes = {
389
427
  * The system prop that allows defining system overrides as well as additional CSS styles.
390
428
  */
391
429
  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]),
430
+ /**
431
+ * Amount of time options below or at which the single column time renderer is used.
432
+ * @default 24
433
+ */
434
+ thresholdToRenderTimeInASingleColumn: _propTypes.default.number,
435
+ /**
436
+ * The time steps between two time unit options.
437
+ * For example, if `timeStep.minutes = 8`, then the available minute options will be `[0, 8, 16, 24, 32, 40, 48, 56]`.
438
+ * When single column time renderer is used, only `timeStep.minutes` will be used.
439
+ * @default{ hours: 1, minutes: 5, seconds: 5 }
440
+ */
441
+ timeSteps: _propTypes.default.shape({
442
+ hours: _propTypes.default.number,
443
+ minutes: _propTypes.default.number,
444
+ seconds: _propTypes.default.number
445
+ }),
392
446
  /**
393
447
  * Choose which timezone to use for the value.
394
448
  * Example: "default", "system", "UTC", "America/New_York".
@@ -407,7 +461,7 @@ MobileDateTimePicker.propTypes = {
407
461
  * Used when the component view is controlled.
408
462
  * Must be a valid option from `views` list.
409
463
  */
410
- view: _propTypes.default.oneOf(['day', 'hours', 'minutes', 'month', 'seconds', 'year']),
464
+ view: _propTypes.default.oneOf(['day', 'hours', 'meridiem', 'minutes', 'month', 'seconds', 'year']),
411
465
  /**
412
466
  * Define custom view renderers for each section.
413
467
  * If `null`, the section will only have field editing.
@@ -416,6 +470,7 @@ MobileDateTimePicker.propTypes = {
416
470
  viewRenderers: _propTypes.default.shape({
417
471
  day: _propTypes.default.func,
418
472
  hours: _propTypes.default.func,
473
+ meridiem: _propTypes.default.func,
419
474
  minutes: _propTypes.default.func,
420
475
  month: _propTypes.default.func,
421
476
  seconds: _propTypes.default.func,
@@ -1,11 +1,9 @@
1
1
  import { MakeOptional } from '@mui/x-internals/types';
2
2
  import { UseMobilePickerSlots, ExportedUseMobilePickerSlotProps, MobileOnlyPickerProps } from "../internals/hooks/useMobilePicker/index.js";
3
3
  import { BaseDateTimePickerProps, BaseDateTimePickerSlots, BaseDateTimePickerSlotProps } from "../DateTimePicker/shared.js";
4
- import { DateOrTimeView } from "../models/index.js";
5
- import { DateOrTimeViewWithMeridiem } from "../internals/models/index.js";
6
4
  export interface MobileDateTimePickerSlots extends BaseDateTimePickerSlots, MakeOptional<UseMobilePickerSlots, 'field'> {}
7
5
  export interface MobileDateTimePickerSlotProps<TEnableAccessibleFieldDOMStructure extends boolean> extends BaseDateTimePickerSlotProps, ExportedUseMobilePickerSlotProps<TEnableAccessibleFieldDOMStructure> {}
8
- export interface MobileDateTimePickerProps<TView extends DateOrTimeViewWithMeridiem = DateOrTimeView, TEnableAccessibleFieldDOMStructure extends boolean = true> extends BaseDateTimePickerProps<TView>, MobileOnlyPickerProps {
6
+ export interface MobileDateTimePickerProps<TEnableAccessibleFieldDOMStructure extends boolean = true> extends BaseDateTimePickerProps, MobileOnlyPickerProps {
9
7
  /**
10
8
  * Overridable component slots.
11
9
  * @default {}
@@ -161,7 +161,9 @@ const PickersTextField = exports.PickersTextField = /*#__PURE__*/React.forwardRe
161
161
  label: label,
162
162
  name: name,
163
163
  role: "group",
164
- "aria-labelledby": inputLabelId
164
+ "aria-labelledby": inputLabelId,
165
+ "aria-describedby": helperTextId,
166
+ "aria-live": helperTextId ? 'polite' : undefined
165
167
  }, InputProps)), helperText && /*#__PURE__*/(0, _jsxRuntime.jsx)(_FormHelperText.default, (0, _extends2.default)({
166
168
  id: helperTextId
167
169
  }, FormHelperTextProps, {