@mui/x-date-pickers 9.0.0-alpha.4 → 9.0.0

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 (300) hide show
  1. package/AdapterDateFnsBase/AdapterDateFnsBase.mjs +1 -1
  2. package/AdapterDayjs/AdapterDayjs.mjs +1 -1
  3. package/AdapterLuxon/AdapterLuxon.mjs +1 -1
  4. package/AdapterMoment/AdapterMoment.mjs +1 -1
  5. package/AdapterMomentHijri/AdapterMomentHijri.mjs +1 -1
  6. package/AdapterMomentJalaali/AdapterMomentJalaali.mjs +1 -1
  7. package/CHANGELOG.md +374 -2
  8. package/DateCalendar/DateCalendar.js +1 -1
  9. package/DateCalendar/DateCalendar.mjs +1 -1
  10. package/DateCalendar/DayCalendar.d.mts +7 -7
  11. package/DateCalendar/DayCalendar.d.ts +7 -7
  12. package/DateCalendar/DayCalendar.js +23 -25
  13. package/DateCalendar/DayCalendar.mjs +23 -25
  14. package/DateField/DateField.d.mts +1 -1
  15. package/DateField/DateField.d.ts +1 -1
  16. package/DateField/DateField.js +22 -28
  17. package/DateField/DateField.mjs +22 -28
  18. package/DateField/DateField.types.d.mts +3 -3
  19. package/DateField/DateField.types.d.ts +3 -3
  20. package/DateField/useDateField.d.mts +1 -1
  21. package/DateField/useDateField.d.ts +1 -1
  22. package/DateField/useDateField.js +1 -1
  23. package/DateField/useDateField.mjs +1 -1
  24. package/DatePicker/DatePicker.d.mts +1 -1
  25. package/DatePicker/DatePicker.d.ts +1 -1
  26. package/DatePicker/DatePicker.js +1 -5
  27. package/DatePicker/DatePicker.mjs +1 -5
  28. package/DatePicker/DatePicker.types.d.mts +3 -3
  29. package/DatePicker/DatePicker.types.d.ts +3 -3
  30. package/DateTimeField/DateTimeField.d.mts +1 -1
  31. package/DateTimeField/DateTimeField.d.ts +1 -1
  32. package/DateTimeField/DateTimeField.js +22 -28
  33. package/DateTimeField/DateTimeField.mjs +22 -28
  34. package/DateTimeField/DateTimeField.types.d.mts +2 -2
  35. package/DateTimeField/DateTimeField.types.d.ts +2 -2
  36. package/DateTimeField/useDateTimeField.d.mts +1 -1
  37. package/DateTimeField/useDateTimeField.d.ts +1 -1
  38. package/DateTimeField/useDateTimeField.js +1 -1
  39. package/DateTimeField/useDateTimeField.mjs +1 -1
  40. package/DateTimePicker/DateTimePicker.d.mts +1 -1
  41. package/DateTimePicker/DateTimePicker.d.ts +1 -1
  42. package/DateTimePicker/DateTimePicker.js +1 -5
  43. package/DateTimePicker/DateTimePicker.mjs +1 -5
  44. package/DateTimePicker/DateTimePicker.types.d.mts +3 -3
  45. package/DateTimePicker/DateTimePicker.types.d.ts +3 -3
  46. package/DesktopDatePicker/DesktopDatePicker.d.mts +1 -1
  47. package/DesktopDatePicker/DesktopDatePicker.d.ts +1 -1
  48. package/DesktopDatePicker/DesktopDatePicker.js +1 -5
  49. package/DesktopDatePicker/DesktopDatePicker.mjs +1 -5
  50. package/DesktopDatePicker/DesktopDatePicker.types.d.mts +3 -3
  51. package/DesktopDatePicker/DesktopDatePicker.types.d.ts +3 -3
  52. package/DesktopDateTimePicker/DesktopDateTimePicker.d.mts +1 -1
  53. package/DesktopDateTimePicker/DesktopDateTimePicker.d.ts +1 -1
  54. package/DesktopDateTimePicker/DesktopDateTimePicker.js +1 -5
  55. package/DesktopDateTimePicker/DesktopDateTimePicker.mjs +1 -5
  56. package/DesktopDateTimePicker/DesktopDateTimePicker.types.d.mts +3 -3
  57. package/DesktopDateTimePicker/DesktopDateTimePicker.types.d.ts +3 -3
  58. package/DesktopTimePicker/DesktopTimePicker.d.mts +1 -1
  59. package/DesktopTimePicker/DesktopTimePicker.d.ts +1 -1
  60. package/DesktopTimePicker/DesktopTimePicker.js +0 -4
  61. package/DesktopTimePicker/DesktopTimePicker.mjs +0 -4
  62. package/DesktopTimePicker/DesktopTimePicker.types.d.mts +3 -3
  63. package/DesktopTimePicker/DesktopTimePicker.types.d.ts +3 -3
  64. package/DigitalClock/DigitalClock.d.mts +1 -1
  65. package/DigitalClock/DigitalClock.d.ts +1 -1
  66. package/DigitalClock/DigitalClock.js +2 -2
  67. package/DigitalClock/DigitalClock.mjs +3 -3
  68. package/LocalizationProvider/LocalizationProvider.d.mts +0 -6
  69. package/LocalizationProvider/LocalizationProvider.d.ts +0 -6
  70. package/LocalizationProvider/LocalizationProvider.js +1 -10
  71. package/LocalizationProvider/LocalizationProvider.mjs +0 -9
  72. package/LocalizationProvider/index.d.mts +1 -1
  73. package/LocalizationProvider/index.d.ts +1 -1
  74. package/LocalizationProvider/index.js +0 -6
  75. package/LocalizationProvider/index.mjs +1 -1
  76. package/MobileDatePicker/MobileDatePicker.d.mts +1 -1
  77. package/MobileDatePicker/MobileDatePicker.d.ts +1 -1
  78. package/MobileDatePicker/MobileDatePicker.js +1 -5
  79. package/MobileDatePicker/MobileDatePicker.mjs +1 -5
  80. package/MobileDatePicker/MobileDatePicker.types.d.mts +3 -3
  81. package/MobileDatePicker/MobileDatePicker.types.d.ts +3 -3
  82. package/MobileDateTimePicker/MobileDateTimePicker.d.mts +1 -1
  83. package/MobileDateTimePicker/MobileDateTimePicker.d.ts +1 -1
  84. package/MobileDateTimePicker/MobileDateTimePicker.js +1 -5
  85. package/MobileDateTimePicker/MobileDateTimePicker.mjs +1 -5
  86. package/MobileDateTimePicker/MobileDateTimePicker.types.d.mts +3 -3
  87. package/MobileDateTimePicker/MobileDateTimePicker.types.d.ts +3 -3
  88. package/MobileTimePicker/MobileTimePicker.d.mts +1 -1
  89. package/MobileTimePicker/MobileTimePicker.d.ts +1 -1
  90. package/MobileTimePicker/MobileTimePicker.js +0 -4
  91. package/MobileTimePicker/MobileTimePicker.mjs +0 -4
  92. package/MobileTimePicker/MobileTimePicker.types.d.mts +3 -3
  93. package/MobileTimePicker/MobileTimePicker.types.d.ts +3 -3
  94. package/MonthCalendar/MonthCalendarButton.js +2 -2
  95. package/MonthCalendar/MonthCalendarButton.mjs +3 -3
  96. package/MultiSectionDigitalClock/MultiSectionDigitalClockSection.js +2 -2
  97. package/MultiSectionDigitalClock/MultiSectionDigitalClockSection.mjs +3 -3
  98. package/PickerDay/PickerDay.d.mts +14 -0
  99. package/PickerDay/PickerDay.d.ts +14 -0
  100. package/{PickerDay2/PickerDay2.js → PickerDay/PickerDay.js} +110 -45
  101. package/{PickerDay2/PickerDay2.mjs → PickerDay/PickerDay.mjs} +110 -45
  102. package/PickerDay/PickerDay.types.d.mts +137 -0
  103. package/PickerDay/PickerDay.types.d.ts +137 -0
  104. package/PickerDay/index.d.mts +4 -0
  105. package/PickerDay/index.d.ts +4 -0
  106. package/PickerDay/index.js +25 -0
  107. package/PickerDay/index.mjs +2 -0
  108. package/{PickerDay2/pickerDay2Classes.d.mts → PickerDay/pickerDayClasses.d.mts} +4 -4
  109. package/{PickerDay2/pickerDay2Classes.d.ts → PickerDay/pickerDayClasses.d.ts} +4 -4
  110. package/PickerDay/pickerDayClasses.js +14 -0
  111. package/PickerDay/pickerDayClasses.mjs +6 -0
  112. package/PickersTextField/PickersFilledInput/PickersFilledInput.js +37 -16
  113. package/PickersTextField/PickersFilledInput/PickersFilledInput.mjs +37 -16
  114. package/PickersTextField/PickersInput/PickersInput.js +35 -14
  115. package/PickersTextField/PickersInput/PickersInput.mjs +35 -14
  116. package/PickersTextField/PickersInputBase/PickersInputBase.js +38 -8
  117. package/PickersTextField/PickersInputBase/PickersInputBase.mjs +38 -8
  118. package/PickersTextField/PickersInputBase/PickersInputBase.types.d.mts +56 -13
  119. package/PickersTextField/PickersInputBase/PickersInputBase.types.d.ts +56 -13
  120. package/PickersTextField/PickersOutlinedInput/Outline.js +1 -1
  121. package/PickersTextField/PickersOutlinedInput/Outline.mjs +1 -1
  122. package/PickersTextField/PickersOutlinedInput/PickersOutlinedInput.js +33 -11
  123. package/PickersTextField/PickersOutlinedInput/PickersOutlinedInput.mjs +33 -11
  124. package/PickersTextField/PickersTextField.js +92 -39
  125. package/PickersTextField/PickersTextField.mjs +92 -39
  126. package/PickersTextField/PickersTextField.types.d.mts +56 -28
  127. package/PickersTextField/PickersTextField.types.d.ts +56 -28
  128. package/PickersTextField/index.d.mts +1 -1
  129. package/PickersTextField/index.d.ts +1 -1
  130. package/StaticDatePicker/StaticDatePicker.js +1 -1
  131. package/StaticDatePicker/StaticDatePicker.mjs +1 -1
  132. package/StaticDateTimePicker/StaticDateTimePicker.js +1 -1
  133. package/StaticDateTimePicker/StaticDateTimePicker.mjs +1 -1
  134. package/TimeField/TimeField.d.mts +1 -1
  135. package/TimeField/TimeField.d.ts +1 -1
  136. package/TimeField/TimeField.js +23 -29
  137. package/TimeField/TimeField.mjs +23 -29
  138. package/TimeField/TimeField.types.d.mts +2 -2
  139. package/TimeField/TimeField.types.d.ts +2 -2
  140. package/TimeField/useTimeField.d.mts +1 -1
  141. package/TimeField/useTimeField.d.ts +1 -1
  142. package/TimePicker/TimePicker.d.mts +1 -1
  143. package/TimePicker/TimePicker.d.ts +1 -1
  144. package/TimePicker/TimePicker.js +0 -4
  145. package/TimePicker/TimePicker.mjs +0 -4
  146. package/TimePicker/TimePicker.types.d.mts +3 -3
  147. package/TimePicker/TimePicker.types.d.ts +3 -3
  148. package/YearCalendar/YearCalendarButton.js +2 -2
  149. package/YearCalendar/YearCalendarButton.mjs +3 -3
  150. package/hooks/useParsedFormat.js +5 -7
  151. package/hooks/useParsedFormat.mjs +5 -7
  152. package/hooks/useSplitFieldProps.d.mts +1 -1
  153. package/hooks/useSplitFieldProps.d.ts +1 -1
  154. package/hooks/useSplitFieldProps.js +1 -1
  155. package/hooks/useSplitFieldProps.mjs +1 -1
  156. package/index.d.mts +1 -2
  157. package/index.d.ts +1 -2
  158. package/index.js +2 -14
  159. package/index.mjs +2 -3
  160. package/internals/components/PickerFieldUI.d.mts +11 -17
  161. package/internals/components/PickerFieldUI.d.ts +11 -17
  162. package/internals/components/PickerFieldUI.js +65 -114
  163. package/internals/components/PickerFieldUI.mjs +65 -114
  164. package/internals/components/PickerPopper/PickerPopper.js +3 -0
  165. package/internals/components/PickerPopper/PickerPopper.mjs +3 -0
  166. package/internals/components/PickersToolbar.js +3 -1
  167. package/internals/components/PickersToolbar.mjs +3 -1
  168. package/internals/demo/DemoContainer.js +6 -8
  169. package/internals/demo/DemoContainer.mjs +6 -8
  170. package/internals/hooks/PickerDay.types.d.mts +12 -0
  171. package/internals/hooks/PickerDay.types.d.ts +12 -0
  172. package/internals/hooks/useDesktopPicker/useDesktopPicker.d.mts +2 -2
  173. package/internals/hooks/useDesktopPicker/useDesktopPicker.d.ts +2 -2
  174. package/internals/hooks/useDesktopPicker/useDesktopPicker.types.d.mts +6 -6
  175. package/internals/hooks/useDesktopPicker/useDesktopPicker.types.d.ts +6 -6
  176. package/internals/hooks/useField/buildSectionsFromFormat.d.mts +0 -1
  177. package/internals/hooks/useField/buildSectionsFromFormat.d.ts +0 -1
  178. package/internals/hooks/useField/buildSectionsFromFormat.js +1 -1
  179. package/internals/hooks/useField/buildSectionsFromFormat.mjs +1 -1
  180. package/internals/hooks/useField/index.d.mts +1 -1
  181. package/internals/hooks/useField/index.d.ts +1 -1
  182. package/internals/hooks/useField/index.js +2 -8
  183. package/internals/hooks/useField/index.mjs +1 -1
  184. package/internals/hooks/useField/useField.d.mts +2 -2
  185. package/internals/hooks/useField/useField.d.ts +2 -2
  186. package/internals/hooks/useField/useField.js +265 -8
  187. package/internals/hooks/useField/useField.mjs +264 -8
  188. package/internals/hooks/useField/useField.types.d.mts +11 -50
  189. package/internals/hooks/useField/useField.types.d.ts +11 -50
  190. package/internals/hooks/useField/useField.utils.d.mts +2 -3
  191. package/internals/hooks/useField/useField.utils.d.ts +2 -3
  192. package/internals/hooks/useField/useField.utils.js +8 -65
  193. package/internals/hooks/useField/useField.utils.mjs +6 -62
  194. package/internals/hooks/useField/useFieldHiddenInputProps.d.mts +2 -4
  195. package/internals/hooks/useField/useFieldHiddenInputProps.d.ts +2 -4
  196. package/internals/hooks/useField/useFieldHiddenInputProps.js +1 -3
  197. package/internals/hooks/useField/useFieldHiddenInputProps.mjs +1 -3
  198. package/internals/hooks/useField/useFieldInternalPropsWithDefaults.js +0 -1
  199. package/internals/hooks/useField/useFieldInternalPropsWithDefaults.mjs +0 -1
  200. package/internals/hooks/useField/useFieldRootProps.d.mts +5 -5
  201. package/internals/hooks/useField/useFieldRootProps.d.ts +5 -5
  202. package/internals/hooks/useField/useFieldRootProps.js +183 -11
  203. package/internals/hooks/useField/useFieldRootProps.mjs +183 -11
  204. package/internals/hooks/useField/useFieldSectionContainerProps.d.mts +3 -5
  205. package/internals/hooks/useField/useFieldSectionContainerProps.d.ts +3 -5
  206. package/internals/hooks/useField/useFieldSectionContainerProps.js +2 -4
  207. package/internals/hooks/useField/useFieldSectionContainerProps.mjs +2 -4
  208. package/internals/hooks/useField/useFieldSectionContentProps.d.mts +6 -7
  209. package/internals/hooks/useField/useFieldSectionContentProps.d.ts +6 -7
  210. package/internals/hooks/useField/useFieldSectionContentProps.js +2 -4
  211. package/internals/hooks/useField/useFieldSectionContentProps.mjs +2 -4
  212. package/internals/hooks/useField/useFieldState.d.mts +4 -4
  213. package/internals/hooks/useField/useFieldState.d.ts +4 -4
  214. package/internals/hooks/useField/useFieldState.js +3 -6
  215. package/internals/hooks/useField/useFieldState.mjs +3 -6
  216. package/internals/hooks/useMobilePicker/useMobilePicker.d.mts +2 -2
  217. package/internals/hooks/useMobilePicker/useMobilePicker.d.ts +2 -2
  218. package/internals/hooks/useMobilePicker/useMobilePicker.types.d.mts +6 -6
  219. package/internals/hooks/useMobilePicker/useMobilePicker.types.d.ts +6 -6
  220. package/internals/hooks/useNullableFieldPrivateContext.d.mts +1 -1
  221. package/internals/hooks/useNullableFieldPrivateContext.d.ts +1 -1
  222. package/internals/hooks/usePicker/usePicker.js +1 -3
  223. package/internals/hooks/usePicker/usePicker.mjs +1 -3
  224. package/{PickersDay → internals/hooks}/usePickerDayOwnerState.d.mts +2 -3
  225. package/{PickersDay → internals/hooks}/usePickerDayOwnerState.d.ts +2 -3
  226. package/{PickersDay → internals/hooks}/usePickerDayOwnerState.js +3 -5
  227. package/{PickersDay → internals/hooks}/usePickerDayOwnerState.mjs +3 -5
  228. package/internals/index.d.mts +4 -4
  229. package/internals/index.d.ts +4 -4
  230. package/internals/index.js +9 -9
  231. package/internals/index.mjs +3 -3
  232. package/internals/models/manager.d.mts +3 -5
  233. package/internals/models/manager.d.ts +3 -5
  234. package/internals/utils/valueManagers.js +1 -2
  235. package/internals/utils/valueManagers.mjs +2 -3
  236. package/managers/index.d.mts +2 -2
  237. package/managers/index.d.ts +2 -2
  238. package/managers/useDateManager.d.mts +3 -6
  239. package/managers/useDateManager.d.ts +3 -6
  240. package/managers/useDateManager.js +2 -6
  241. package/managers/useDateManager.mjs +2 -6
  242. package/managers/useDateTimeManager.d.mts +3 -6
  243. package/managers/useDateTimeManager.d.ts +3 -6
  244. package/managers/useDateTimeManager.js +2 -6
  245. package/managers/useDateTimeManager.mjs +2 -6
  246. package/managers/useTimeManager.d.mts +4 -6
  247. package/managers/useTimeManager.d.ts +4 -6
  248. package/managers/useTimeManager.js +1 -3
  249. package/managers/useTimeManager.mjs +1 -3
  250. package/models/fields.d.mts +3 -4
  251. package/models/fields.d.ts +3 -4
  252. package/models/manager.d.mts +2 -8
  253. package/models/manager.d.ts +2 -8
  254. package/package.json +55 -69
  255. package/themeAugmentation/components.d.mts +4 -8
  256. package/themeAugmentation/components.d.ts +4 -8
  257. package/themeAugmentation/overrides.d.mts +2 -4
  258. package/themeAugmentation/overrides.d.ts +2 -4
  259. package/themeAugmentation/props.d.mts +5 -7
  260. package/themeAugmentation/props.d.ts +5 -7
  261. package/PickerDay2/PickerDay2.d.mts +0 -7
  262. package/PickerDay2/PickerDay2.d.ts +0 -7
  263. package/PickerDay2/PickerDay2.types.d.mts +0 -18
  264. package/PickerDay2/PickerDay2.types.d.ts +0 -18
  265. package/PickerDay2/index.d.mts +0 -4
  266. package/PickerDay2/index.d.ts +0 -4
  267. package/PickerDay2/index.js +0 -25
  268. package/PickerDay2/index.mjs +0 -2
  269. package/PickerDay2/pickerDay2Classes.js +0 -14
  270. package/PickerDay2/pickerDay2Classes.mjs +0 -6
  271. package/PickersDay/PickersDay.d.mts +0 -15
  272. package/PickersDay/PickersDay.d.ts +0 -15
  273. package/PickersDay/PickersDay.js +0 -384
  274. package/PickersDay/PickersDay.mjs +0 -377
  275. package/PickersDay/PickersDay.types.d.mts +0 -114
  276. package/PickersDay/PickersDay.types.d.ts +0 -114
  277. package/PickersDay/index.d.mts +0 -4
  278. package/PickersDay/index.d.ts +0 -4
  279. package/PickersDay/index.js +0 -25
  280. package/PickersDay/index.mjs +0 -2
  281. package/PickersDay/pickersDayClasses.d.mts +0 -19
  282. package/PickersDay/pickersDayClasses.d.ts +0 -19
  283. package/PickersDay/pickersDayClasses.js +0 -14
  284. package/PickersDay/pickersDayClasses.mjs +0 -6
  285. package/internals/hooks/useField/useFieldRootHandleKeyDown.d.mts +0 -16
  286. package/internals/hooks/useField/useFieldRootHandleKeyDown.d.ts +0 -16
  287. package/internals/hooks/useField/useFieldRootHandleKeyDown.js +0 -211
  288. package/internals/hooks/useField/useFieldRootHandleKeyDown.mjs +0 -205
  289. package/internals/hooks/useField/useFieldV6TextField.d.mts +0 -26
  290. package/internals/hooks/useField/useFieldV6TextField.d.ts +0 -26
  291. package/internals/hooks/useField/useFieldV6TextField.js +0 -422
  292. package/internals/hooks/useField/useFieldV6TextField.mjs +0 -413
  293. package/internals/hooks/useField/useFieldV7TextField.d.mts +0 -3
  294. package/internals/hooks/useField/useFieldV7TextField.d.ts +0 -3
  295. package/internals/hooks/useField/useFieldV7TextField.js +0 -272
  296. package/internals/hooks/useField/useFieldV7TextField.mjs +0 -264
  297. /package/{PickerDay2/PickerDay2.types.js → PickerDay/PickerDay.types.js} +0 -0
  298. /package/{PickerDay2/PickerDay2.types.mjs → PickerDay/PickerDay.types.mjs} +0 -0
  299. /package/{PickersDay/PickersDay.types.js → internals/hooks/PickerDay.types.js} +0 -0
  300. /package/{PickersDay/PickersDay.types.mjs → internals/hooks/PickerDay.types.mjs} +0 -0
@@ -20,7 +20,7 @@ var _PickersInputBase = require("../PickersInputBase");
20
20
  var _PickersInputBase2 = require("../PickersInputBase/PickersInputBase");
21
21
  var _usePickerTextFieldOwnerState = require("../usePickerTextFieldOwnerState");
22
22
  var _jsxRuntime = require("react/jsx-runtime");
23
- const _excluded = ["label", "autoFocus", "disableUnderline", "hiddenLabel", "classes"];
23
+ const _excluded = ["label", "autoFocus", "disableUnderline", "hiddenLabel", "classes", "slots", "slotProps"];
24
24
  const PickersFilledInputRoot = (0, _styles.styled)(_PickersInputBase2.PickersInputBaseRoot, {
25
25
  name: 'MuiPickersFilledInput',
26
26
  slot: 'Root',
@@ -97,7 +97,7 @@ const PickersFilledInputRoot = (0, _styles.styled)(_PickersInputBase2.PickersInp
97
97
  }
98
98
  },
99
99
  '&::before': {
100
- borderBottom: `1px solid ${theme.vars ? `rgba(${theme.vars.palette.common.onBackgroundChannel} / ${theme.vars.opacity.inputUnderline})` : bottomLineColor}`,
100
+ borderBottom: `1px solid ${theme.vars ? theme.alpha(theme.vars.palette.common.onBackground, theme.vars.opacity.inputUnderline) : bottomLineColor}`,
101
101
  left: 0,
102
102
  bottom: 0,
103
103
  // Doing the other way around crash on IE11 "''" https://github.com/cssinjs/jss/issues/242
@@ -207,7 +207,9 @@ const PickersFilledInput = exports.PickersFilledInput = /*#__PURE__*/React.forwa
207
207
  label,
208
208
  disableUnderline = false,
209
209
  hiddenLabel = false,
210
- classes: classesProp
210
+ classes: classesProp,
211
+ slots: inSlots,
212
+ slotProps: inSlotProps
211
213
  } = props,
212
214
  other = (0, _objectWithoutPropertiesLoose2.default)(props, _excluded);
213
215
  const pickerTextFieldOwnerState = (0, _usePickerTextFieldOwnerState.usePickerTextFieldOwnerState)();
@@ -215,20 +217,19 @@ const PickersFilledInput = exports.PickersFilledInput = /*#__PURE__*/React.forwa
215
217
  inputHasUnderline: !disableUnderline
216
218
  });
217
219
  const classes = useUtilityClasses(classesProp, ownerState);
218
- return /*#__PURE__*/(0, _jsxRuntime.jsx)(_PickersInputBase.PickersInputBase, (0, _extends2.default)({
219
- slots: {
220
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_PickersInputBase.PickersInputBase, (0, _extends2.default)({}, other, {
221
+ slots: (0, _extends2.default)({
220
222
  root: PickersFilledInputRoot,
221
223
  input: PickersFilledSectionsContainer
222
- },
223
- slotProps: {
224
- root: {
224
+ }, inSlots),
225
+ slotProps: (0, _extends2.default)({}, inSlotProps, {
226
+ root: (0, _extends2.default)({
225
227
  disableUnderline
226
- },
227
- input: {
228
+ }, inSlotProps?.root),
229
+ input: (0, _extends2.default)({
228
230
  hiddenLabel
229
- }
230
- }
231
- }, other, {
231
+ }, inSlotProps?.input)
232
+ }),
232
233
  label: label,
233
234
  classes: classes,
234
235
  ref: ref,
@@ -247,8 +248,8 @@ process.env.NODE_ENV !== "production" ? PickersFilledInput.propTypes = {
247
248
  * For a range value, it means that `value === [null, null]`
248
249
  */
249
250
  areAllSectionsEmpty: _propTypes.default.bool.isRequired,
251
+ classes: _propTypes.default.object,
250
252
  className: _propTypes.default.string,
251
- component: _propTypes.default.elementType,
252
253
  /**
253
254
  * If true, the whole element is editable.
254
255
  * Useful when all the sections are selected.
@@ -266,14 +267,32 @@ process.env.NODE_ENV !== "production" ? PickersFilledInput.propTypes = {
266
267
  container: _propTypes.default.object.isRequired,
267
268
  content: _propTypes.default.object.isRequired
268
269
  })).isRequired,
270
+ /**
271
+ * End `InputAdornment` for this component.
272
+ */
269
273
  endAdornment: _propTypes.default.node,
274
+ /**
275
+ * If `true`, the input will take up the full width of its container.
276
+ * @default false
277
+ */
270
278
  fullWidth: _propTypes.default.bool,
271
279
  hiddenLabel: _propTypes.default.bool,
280
+ /**
281
+ * The id of the `input` element.
282
+ */
272
283
  id: _propTypes.default.string,
273
- inputProps: _propTypes.default.object,
284
+ /**
285
+ * Pass a ref to the `input` element.
286
+ */
274
287
  inputRef: _refType.default,
288
+ /**
289
+ * The label content.
290
+ */
275
291
  label: _propTypes.default.node,
276
292
  margin: _propTypes.default.oneOf(['dense', 'none', 'normal']),
293
+ /**
294
+ * Name attribute of the `input` element.
295
+ */
277
296
  name: _propTypes.default.string,
278
297
  onChange: _propTypes.default.func.isRequired,
279
298
  onClick: _propTypes.default.func.isRequired,
@@ -302,8 +321,10 @@ process.env.NODE_ENV !== "production" ? PickersFilledInput.propTypes = {
302
321
  * @default {}
303
322
  */
304
323
  slots: _propTypes.default.object,
324
+ /**
325
+ * Start `InputAdornment` for this component.
326
+ */
305
327
  startAdornment: _propTypes.default.node,
306
- style: _propTypes.default.object,
307
328
  /**
308
329
  * The system prop that allows defining system overrides as well as additional CSS styles.
309
330
  */
@@ -2,7 +2,7 @@
2
2
 
3
3
  import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/esm/objectWithoutPropertiesLoose";
4
4
  import _extends from "@babel/runtime/helpers/esm/extends";
5
- const _excluded = ["label", "autoFocus", "disableUnderline", "hiddenLabel", "classes"];
5
+ const _excluded = ["label", "autoFocus", "disableUnderline", "hiddenLabel", "classes", "slots", "slotProps"];
6
6
  import * as React from 'react';
7
7
  import PropTypes from 'prop-types';
8
8
  import { styled, useThemeProps } from '@mui/material/styles';
@@ -90,7 +90,7 @@ const PickersFilledInputRoot = styled(PickersInputBaseRoot, {
90
90
  }
91
91
  },
92
92
  '&::before': {
93
- borderBottom: `1px solid ${theme.vars ? `rgba(${theme.vars.palette.common.onBackgroundChannel} / ${theme.vars.opacity.inputUnderline})` : bottomLineColor}`,
93
+ borderBottom: `1px solid ${theme.vars ? theme.alpha(theme.vars.palette.common.onBackground, theme.vars.opacity.inputUnderline) : bottomLineColor}`,
94
94
  left: 0,
95
95
  bottom: 0,
96
96
  // Doing the other way around crash on IE11 "''" https://github.com/cssinjs/jss/issues/242
@@ -200,7 +200,9 @@ const PickersFilledInput = /*#__PURE__*/React.forwardRef(function PickersFilledI
200
200
  label,
201
201
  disableUnderline = false,
202
202
  hiddenLabel = false,
203
- classes: classesProp
203
+ classes: classesProp,
204
+ slots: inSlots,
205
+ slotProps: inSlotProps
204
206
  } = props,
205
207
  other = _objectWithoutPropertiesLoose(props, _excluded);
206
208
  const pickerTextFieldOwnerState = usePickerTextFieldOwnerState();
@@ -208,20 +210,19 @@ const PickersFilledInput = /*#__PURE__*/React.forwardRef(function PickersFilledI
208
210
  inputHasUnderline: !disableUnderline
209
211
  });
210
212
  const classes = useUtilityClasses(classesProp, ownerState);
211
- return /*#__PURE__*/_jsx(PickersInputBase, _extends({
212
- slots: {
213
+ return /*#__PURE__*/_jsx(PickersInputBase, _extends({}, other, {
214
+ slots: _extends({
213
215
  root: PickersFilledInputRoot,
214
216
  input: PickersFilledSectionsContainer
215
- },
216
- slotProps: {
217
- root: {
217
+ }, inSlots),
218
+ slotProps: _extends({}, inSlotProps, {
219
+ root: _extends({
218
220
  disableUnderline
219
- },
220
- input: {
221
+ }, inSlotProps?.root),
222
+ input: _extends({
221
223
  hiddenLabel
222
- }
223
- }
224
- }, other, {
224
+ }, inSlotProps?.input)
225
+ }),
225
226
  label: label,
226
227
  classes: classes,
227
228
  ref: ref,
@@ -240,8 +241,8 @@ process.env.NODE_ENV !== "production" ? PickersFilledInput.propTypes = {
240
241
  * For a range value, it means that `value === [null, null]`
241
242
  */
242
243
  areAllSectionsEmpty: PropTypes.bool.isRequired,
244
+ classes: PropTypes.object,
243
245
  className: PropTypes.string,
244
- component: PropTypes.elementType,
245
246
  /**
246
247
  * If true, the whole element is editable.
247
248
  * Useful when all the sections are selected.
@@ -259,14 +260,32 @@ process.env.NODE_ENV !== "production" ? PickersFilledInput.propTypes = {
259
260
  container: PropTypes.object.isRequired,
260
261
  content: PropTypes.object.isRequired
261
262
  })).isRequired,
263
+ /**
264
+ * End `InputAdornment` for this component.
265
+ */
262
266
  endAdornment: PropTypes.node,
267
+ /**
268
+ * If `true`, the input will take up the full width of its container.
269
+ * @default false
270
+ */
263
271
  fullWidth: PropTypes.bool,
264
272
  hiddenLabel: PropTypes.bool,
273
+ /**
274
+ * The id of the `input` element.
275
+ */
265
276
  id: PropTypes.string,
266
- inputProps: PropTypes.object,
277
+ /**
278
+ * Pass a ref to the `input` element.
279
+ */
267
280
  inputRef: refType,
281
+ /**
282
+ * The label content.
283
+ */
268
284
  label: PropTypes.node,
269
285
  margin: PropTypes.oneOf(['dense', 'none', 'normal']),
286
+ /**
287
+ * Name attribute of the `input` element.
288
+ */
270
289
  name: PropTypes.string,
271
290
  onChange: PropTypes.func.isRequired,
272
291
  onClick: PropTypes.func.isRequired,
@@ -295,8 +314,10 @@ process.env.NODE_ENV !== "production" ? PickersFilledInput.propTypes = {
295
314
  * @default {}
296
315
  */
297
316
  slots: PropTypes.object,
317
+ /**
318
+ * Start `InputAdornment` for this component.
319
+ */
298
320
  startAdornment: PropTypes.node,
299
- style: PropTypes.object,
300
321
  /**
301
322
  * The system prop that allows defining system overrides as well as additional CSS styles.
302
323
  */
@@ -20,7 +20,7 @@ var _PickersInputBase = require("../PickersInputBase");
20
20
  var _PickersInputBase2 = require("../PickersInputBase/PickersInputBase");
21
21
  var _usePickerTextFieldOwnerState = require("../usePickerTextFieldOwnerState");
22
22
  var _jsxRuntime = require("react/jsx-runtime");
23
- const _excluded = ["label", "autoFocus", "disableUnderline", "ownerState", "classes"];
23
+ const _excluded = ["label", "autoFocus", "disableUnderline", "ownerState", "classes", "slots", "slotProps"];
24
24
  const PickersInputRoot = (0, _styles.styled)(_PickersInputBase2.PickersInputBaseRoot, {
25
25
  name: 'MuiPickersInput',
26
26
  slot: 'Root',
@@ -31,7 +31,7 @@ const PickersInputRoot = (0, _styles.styled)(_PickersInputBase2.PickersInputBase
31
31
  const light = theme.palette.mode === 'light';
32
32
  let bottomLineColor = light ? 'rgba(0, 0, 0, 0.42)' : 'rgba(255, 255, 255, 0.7)';
33
33
  if (theme.vars) {
34
- bottomLineColor = `rgba(${theme.vars.palette.common.onBackgroundChannel} / ${theme.vars.opacity.inputUnderline})`;
34
+ bottomLineColor = theme.alpha(theme.vars.palette.common.onBackground, theme.vars.opacity.inputUnderline);
35
35
  }
36
36
  return {
37
37
  'label + &': {
@@ -130,7 +130,9 @@ const PickersInput = exports.PickersInput = /*#__PURE__*/React.forwardRef(functi
130
130
  const {
131
131
  label,
132
132
  disableUnderline = false,
133
- classes: classesProp
133
+ classes: classesProp,
134
+ slots: inSlots,
135
+ slotProps: inSlotProps
134
136
  } = props,
135
137
  other = (0, _objectWithoutPropertiesLoose2.default)(props, _excluded);
136
138
  const pickerTextFieldOwnerState = (0, _usePickerTextFieldOwnerState.usePickerTextFieldOwnerState)();
@@ -138,16 +140,15 @@ const PickersInput = exports.PickersInput = /*#__PURE__*/React.forwardRef(functi
138
140
  inputHasUnderline: !disableUnderline
139
141
  });
140
142
  const classes = useUtilityClasses(classesProp, ownerState);
141
- return /*#__PURE__*/(0, _jsxRuntime.jsx)(_PickersInputBase.PickersInputBase, (0, _extends2.default)({
142
- slots: {
143
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_PickersInputBase.PickersInputBase, (0, _extends2.default)({}, other, {
144
+ slots: (0, _extends2.default)({
143
145
  root: PickersInputRoot
144
- },
145
- slotProps: {
146
- root: {
146
+ }, inSlots),
147
+ slotProps: (0, _extends2.default)({}, inSlotProps, {
148
+ root: (0, _extends2.default)({
147
149
  disableUnderline
148
- }
149
- }
150
- }, other, {
150
+ }, inSlotProps?.root)
151
+ }),
151
152
  ownerState: ownerState,
152
153
  label: label,
153
154
  classes: classes,
@@ -166,8 +167,8 @@ process.env.NODE_ENV !== "production" ? PickersInput.propTypes = {
166
167
  * For a range value, it means that `value === [null, null]`
167
168
  */
168
169
  areAllSectionsEmpty: _propTypes.default.bool.isRequired,
170
+ classes: _propTypes.default.object,
169
171
  className: _propTypes.default.string,
170
- component: _propTypes.default.elementType,
171
172
  /**
172
173
  * If true, the whole element is editable.
173
174
  * Useful when all the sections are selected.
@@ -185,13 +186,31 @@ process.env.NODE_ENV !== "production" ? PickersInput.propTypes = {
185
186
  container: _propTypes.default.object.isRequired,
186
187
  content: _propTypes.default.object.isRequired
187
188
  })).isRequired,
189
+ /**
190
+ * End `InputAdornment` for this component.
191
+ */
188
192
  endAdornment: _propTypes.default.node,
193
+ /**
194
+ * If `true`, the input will take up the full width of its container.
195
+ * @default false
196
+ */
189
197
  fullWidth: _propTypes.default.bool,
198
+ /**
199
+ * The id of the `input` element.
200
+ */
190
201
  id: _propTypes.default.string,
191
- inputProps: _propTypes.default.object,
202
+ /**
203
+ * Pass a ref to the `input` element.
204
+ */
192
205
  inputRef: _refType.default,
206
+ /**
207
+ * The label content.
208
+ */
193
209
  label: _propTypes.default.node,
194
210
  margin: _propTypes.default.oneOf(['dense', 'none', 'normal']),
211
+ /**
212
+ * Name attribute of the `input` element.
213
+ */
195
214
  name: _propTypes.default.string,
196
215
  onChange: _propTypes.default.func.isRequired,
197
216
  onClick: _propTypes.default.func.isRequired,
@@ -220,8 +239,10 @@ process.env.NODE_ENV !== "production" ? PickersInput.propTypes = {
220
239
  * @default {}
221
240
  */
222
241
  slots: _propTypes.default.object,
242
+ /**
243
+ * Start `InputAdornment` for this component.
244
+ */
223
245
  startAdornment: _propTypes.default.node,
224
- style: _propTypes.default.object,
225
246
  /**
226
247
  * The system prop that allows defining system overrides as well as additional CSS styles.
227
248
  */
@@ -2,7 +2,7 @@
2
2
 
3
3
  import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/esm/objectWithoutPropertiesLoose";
4
4
  import _extends from "@babel/runtime/helpers/esm/extends";
5
- const _excluded = ["label", "autoFocus", "disableUnderline", "ownerState", "classes"];
5
+ const _excluded = ["label", "autoFocus", "disableUnderline", "ownerState", "classes", "slots", "slotProps"];
6
6
  import * as React from 'react';
7
7
  import PropTypes from 'prop-types';
8
8
  import { styled, useThemeProps } from '@mui/material/styles';
@@ -24,7 +24,7 @@ const PickersInputRoot = styled(PickersInputBaseRoot, {
24
24
  const light = theme.palette.mode === 'light';
25
25
  let bottomLineColor = light ? 'rgba(0, 0, 0, 0.42)' : 'rgba(255, 255, 255, 0.7)';
26
26
  if (theme.vars) {
27
- bottomLineColor = `rgba(${theme.vars.palette.common.onBackgroundChannel} / ${theme.vars.opacity.inputUnderline})`;
27
+ bottomLineColor = theme.alpha(theme.vars.palette.common.onBackground, theme.vars.opacity.inputUnderline);
28
28
  }
29
29
  return {
30
30
  'label + &': {
@@ -123,7 +123,9 @@ const PickersInput = /*#__PURE__*/React.forwardRef(function PickersInput(inProps
123
123
  const {
124
124
  label,
125
125
  disableUnderline = false,
126
- classes: classesProp
126
+ classes: classesProp,
127
+ slots: inSlots,
128
+ slotProps: inSlotProps
127
129
  } = props,
128
130
  other = _objectWithoutPropertiesLoose(props, _excluded);
129
131
  const pickerTextFieldOwnerState = usePickerTextFieldOwnerState();
@@ -131,16 +133,15 @@ const PickersInput = /*#__PURE__*/React.forwardRef(function PickersInput(inProps
131
133
  inputHasUnderline: !disableUnderline
132
134
  });
133
135
  const classes = useUtilityClasses(classesProp, ownerState);
134
- return /*#__PURE__*/_jsx(PickersInputBase, _extends({
135
- slots: {
136
+ return /*#__PURE__*/_jsx(PickersInputBase, _extends({}, other, {
137
+ slots: _extends({
136
138
  root: PickersInputRoot
137
- },
138
- slotProps: {
139
- root: {
139
+ }, inSlots),
140
+ slotProps: _extends({}, inSlotProps, {
141
+ root: _extends({
140
142
  disableUnderline
141
- }
142
- }
143
- }, other, {
143
+ }, inSlotProps?.root)
144
+ }),
144
145
  ownerState: ownerState,
145
146
  label: label,
146
147
  classes: classes,
@@ -159,8 +160,8 @@ process.env.NODE_ENV !== "production" ? PickersInput.propTypes = {
159
160
  * For a range value, it means that `value === [null, null]`
160
161
  */
161
162
  areAllSectionsEmpty: PropTypes.bool.isRequired,
163
+ classes: PropTypes.object,
162
164
  className: PropTypes.string,
163
- component: PropTypes.elementType,
164
165
  /**
165
166
  * If true, the whole element is editable.
166
167
  * Useful when all the sections are selected.
@@ -178,13 +179,31 @@ process.env.NODE_ENV !== "production" ? PickersInput.propTypes = {
178
179
  container: PropTypes.object.isRequired,
179
180
  content: PropTypes.object.isRequired
180
181
  })).isRequired,
182
+ /**
183
+ * End `InputAdornment` for this component.
184
+ */
181
185
  endAdornment: PropTypes.node,
186
+ /**
187
+ * If `true`, the input will take up the full width of its container.
188
+ * @default false
189
+ */
182
190
  fullWidth: PropTypes.bool,
191
+ /**
192
+ * The id of the `input` element.
193
+ */
183
194
  id: PropTypes.string,
184
- inputProps: PropTypes.object,
195
+ /**
196
+ * Pass a ref to the `input` element.
197
+ */
185
198
  inputRef: refType,
199
+ /**
200
+ * The label content.
201
+ */
186
202
  label: PropTypes.node,
187
203
  margin: PropTypes.oneOf(['dense', 'none', 'normal']),
204
+ /**
205
+ * Name attribute of the `input` element.
206
+ */
188
207
  name: PropTypes.string,
189
208
  onChange: PropTypes.func.isRequired,
190
209
  onClick: PropTypes.func.isRequired,
@@ -213,8 +232,10 @@ process.env.NODE_ENV !== "production" ? PickersInput.propTypes = {
213
232
  * @default {}
214
233
  */
215
234
  slots: PropTypes.object,
235
+ /**
236
+ * Start `InputAdornment` for this component.
237
+ */
216
238
  startAdornment: PropTypes.node,
217
- style: PropTypes.object,
218
239
  /**
219
240
  * The system prop that allows defining system overrides as well as additional CSS styles.
220
241
  */
@@ -24,7 +24,8 @@ var _pickersInputBaseClasses = require("./pickersInputBaseClasses");
24
24
  var _PickersSectionList = require("../../PickersSectionList");
25
25
  var _usePickerTextFieldOwnerState = require("../usePickerTextFieldOwnerState");
26
26
  var _jsxRuntime = require("react/jsx-runtime");
27
- const _excluded = ["elements", "areAllSectionsEmpty", "defaultValue", "label", "value", "onChange", "id", "autoFocus", "endAdornment", "startAdornment", "renderSuffix", "slots", "slotProps", "contentEditable", "tabIndex", "onInput", "onPaste", "onKeyDown", "fullWidth", "name", "readOnly", "inputProps", "inputRef", "sectionListRef", "onFocus", "onBlur", "classes", "ownerState"];
27
+ const _excluded = ["elements", "areAllSectionsEmpty", "defaultValue", "label", "value", "onChange", "id", "autoFocus", "endAdornment", "startAdornment", "renderSuffix", "slots", "slotProps", "contentEditable", "tabIndex", "onInput", "onPaste", "onKeyDown", "fullWidth", "name", "readOnly", "inputRef", "sectionListRef", "onFocus", "onBlur", "classes", "ownerState"],
28
+ _excluded2 = ["ref"];
28
29
  const round = value => Math.round(value * 1e5) / 1e5;
29
30
  const PickersInputBaseRoot = exports.PickersInputBaseRoot = (0, _styles.styled)('div', {
30
31
  name: 'MuiPickersInputBase',
@@ -267,7 +268,6 @@ const PickersInputBase = exports.PickersInputBase = /*#__PURE__*/React.forwardRe
267
268
  onKeyDown,
268
269
  name,
269
270
  readOnly,
270
- inputProps,
271
271
  inputRef,
272
272
  sectionListRef,
273
273
  onFocus,
@@ -281,7 +281,6 @@ const PickersInputBase = exports.PickersInputBase = /*#__PURE__*/React.forwardRe
281
281
  const activeBarRef = React.useRef(null);
282
282
  const sectionOffsetsRef = React.useRef([]);
283
283
  const handleRootRef = (0, _useForkRef.default)(ref, rootRef);
284
- const handleInputRef = (0, _useForkRef.default)(inputProps?.ref, inputRef);
285
284
  const muiFormControl = (0, _FormControl.useFormControl)();
286
285
  if (!muiFormControl) {
287
286
  throw new Error(process.env.NODE_ENV !== "production" ? 'MUI X: PickersInputBase should always be used inside a PickersTextField component' : (0, _formatErrorMessage2.default)(152));
@@ -345,6 +344,17 @@ const PickersInputBase = exports.PickersInputBase = /*#__PURE__*/React.forwardRe
345
344
  ownerState
346
345
  });
347
346
  const InputSectionsContainer = slots?.input || PickersInputBaseSectionsContainer;
347
+ const HtmlInputComponent = slots?.htmlInput || PickersInputBaseInput;
348
+ const _ref = (0, _useSlotProps.default)({
349
+ elementType: HtmlInputComponent,
350
+ externalSlotProps: slotProps?.htmlInput,
351
+ ownerState
352
+ }),
353
+ {
354
+ ref: resolvedHtmlInputRef
355
+ } = _ref,
356
+ htmlInputProps = (0, _objectWithoutPropertiesLoose2.default)(_ref, _excluded2);
357
+ const handleInputRef = (0, _useForkRef.default)(resolvedHtmlInputRef, inputRef);
348
358
  const isSingleInputRange = elements.some(element => element.content['data-range-position'] !== undefined);
349
359
  React.useEffect(() => {
350
360
  if (!isSingleInputRange || !ownerState.isPickerOpen) {
@@ -390,7 +400,7 @@ const PickersInputBase = exports.PickersInputBase = /*#__PURE__*/React.forwardRe
390
400
  className: separatorPosition === 'before' ? _pickersInputBaseClasses.pickersInputBaseClasses.sectionBefore : _pickersInputBaseClasses.pickersInputBaseClasses.sectionAfter
391
401
  })
392
402
  }
393
- }), endAdornment, renderSuffix ? renderSuffix((0, _extends2.default)({}, muiFormControl)) : null, /*#__PURE__*/(0, _jsxRuntime.jsx)(PickersInputBaseInput, (0, _extends2.default)({
403
+ }), endAdornment, renderSuffix ? renderSuffix((0, _extends2.default)({}, muiFormControl)) : null, /*#__PURE__*/(0, _jsxRuntime.jsx)(HtmlInputComponent, (0, _extends2.default)({
394
404
  name: name,
395
405
  className: classes.input,
396
406
  value: value,
@@ -405,7 +415,7 @@ const PickersInputBase = exports.PickersInputBase = /*#__PURE__*/React.forwardRe
405
415
  // This allows to maintain the ability to do `inputRef.current.focus()` to focus the field
406
416
  ,
407
417
  onFocus: handleHiddenInputFocus
408
- }, inputProps, {
418
+ }, htmlInputProps, {
409
419
  ref: handleInputRef
410
420
  })), isSingleInputRange && /*#__PURE__*/(0, _jsxRuntime.jsx)(PickersInputBaseActiveBar, {
411
421
  className: classes.activeBar,
@@ -428,8 +438,8 @@ process.env.NODE_ENV !== "production" ? PickersInputBase.propTypes = {
428
438
  * For a range value, it means that `value === [null, null]`
429
439
  */
430
440
  areAllSectionsEmpty: _propTypes.default.bool.isRequired,
441
+ classes: _propTypes.default.object,
431
442
  className: _propTypes.default.string,
432
- component: _propTypes.default.elementType,
433
443
  /**
434
444
  * If true, the whole element is editable.
435
445
  * Useful when all the sections are selected.
@@ -446,13 +456,31 @@ process.env.NODE_ENV !== "production" ? PickersInputBase.propTypes = {
446
456
  container: _propTypes.default.object.isRequired,
447
457
  content: _propTypes.default.object.isRequired
448
458
  })).isRequired,
459
+ /**
460
+ * End `InputAdornment` for this component.
461
+ */
449
462
  endAdornment: _propTypes.default.node,
463
+ /**
464
+ * If `true`, the input will take up the full width of its container.
465
+ * @default false
466
+ */
450
467
  fullWidth: _propTypes.default.bool,
468
+ /**
469
+ * The id of the `input` element.
470
+ */
451
471
  id: _propTypes.default.string,
452
- inputProps: _propTypes.default.object,
472
+ /**
473
+ * Pass a ref to the `input` element.
474
+ */
453
475
  inputRef: _refType.default,
476
+ /**
477
+ * The label content.
478
+ */
454
479
  label: _propTypes.default.node,
455
480
  margin: _propTypes.default.oneOf(['dense', 'none', 'normal']),
481
+ /**
482
+ * Name attribute of the `input` element.
483
+ */
456
484
  name: _propTypes.default.string,
457
485
  onChange: _propTypes.default.func.isRequired,
458
486
  onClick: _propTypes.default.func.isRequired,
@@ -481,8 +509,10 @@ process.env.NODE_ENV !== "production" ? PickersInputBase.propTypes = {
481
509
  * @default {}
482
510
  */
483
511
  slots: _propTypes.default.object,
512
+ /**
513
+ * Start `InputAdornment` for this component.
514
+ */
484
515
  startAdornment: _propTypes.default.node,
485
- style: _propTypes.default.object,
486
516
  /**
487
517
  * The system prop that allows defining system overrides as well as additional CSS styles.
488
518
  */
@@ -3,7 +3,8 @@
3
3
  import _formatErrorMessage from "@mui/x-internals/formatErrorMessage";
4
4
  import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/esm/objectWithoutPropertiesLoose";
5
5
  import _extends from "@babel/runtime/helpers/esm/extends";
6
- const _excluded = ["elements", "areAllSectionsEmpty", "defaultValue", "label", "value", "onChange", "id", "autoFocus", "endAdornment", "startAdornment", "renderSuffix", "slots", "slotProps", "contentEditable", "tabIndex", "onInput", "onPaste", "onKeyDown", "fullWidth", "name", "readOnly", "inputProps", "inputRef", "sectionListRef", "onFocus", "onBlur", "classes", "ownerState"];
6
+ const _excluded = ["elements", "areAllSectionsEmpty", "defaultValue", "label", "value", "onChange", "id", "autoFocus", "endAdornment", "startAdornment", "renderSuffix", "slots", "slotProps", "contentEditable", "tabIndex", "onInput", "onPaste", "onKeyDown", "fullWidth", "name", "readOnly", "inputRef", "sectionListRef", "onFocus", "onBlur", "classes", "ownerState"],
7
+ _excluded2 = ["ref"];
7
8
  import * as React from 'react';
8
9
  import PropTypes from 'prop-types';
9
10
  import { useFormControl } from '@mui/material/FormControl';
@@ -260,7 +261,6 @@ const PickersInputBase = /*#__PURE__*/React.forwardRef(function PickersInputBase
260
261
  onKeyDown,
261
262
  name,
262
263
  readOnly,
263
- inputProps,
264
264
  inputRef,
265
265
  sectionListRef,
266
266
  onFocus,
@@ -274,7 +274,6 @@ const PickersInputBase = /*#__PURE__*/React.forwardRef(function PickersInputBase
274
274
  const activeBarRef = React.useRef(null);
275
275
  const sectionOffsetsRef = React.useRef([]);
276
276
  const handleRootRef = useForkRef(ref, rootRef);
277
- const handleInputRef = useForkRef(inputProps?.ref, inputRef);
278
277
  const muiFormControl = useFormControl();
279
278
  if (!muiFormControl) {
280
279
  throw new Error(process.env.NODE_ENV !== "production" ? 'MUI X: PickersInputBase should always be used inside a PickersTextField component' : _formatErrorMessage(152));
@@ -338,6 +337,17 @@ const PickersInputBase = /*#__PURE__*/React.forwardRef(function PickersInputBase
338
337
  ownerState
339
338
  });
340
339
  const InputSectionsContainer = slots?.input || PickersInputBaseSectionsContainer;
340
+ const HtmlInputComponent = slots?.htmlInput || PickersInputBaseInput;
341
+ const _ref = useSlotProps({
342
+ elementType: HtmlInputComponent,
343
+ externalSlotProps: slotProps?.htmlInput,
344
+ ownerState
345
+ }),
346
+ {
347
+ ref: resolvedHtmlInputRef
348
+ } = _ref,
349
+ htmlInputProps = _objectWithoutPropertiesLoose(_ref, _excluded2);
350
+ const handleInputRef = useForkRef(resolvedHtmlInputRef, inputRef);
341
351
  const isSingleInputRange = elements.some(element => element.content['data-range-position'] !== undefined);
342
352
  React.useEffect(() => {
343
353
  if (!isSingleInputRange || !ownerState.isPickerOpen) {
@@ -383,7 +393,7 @@ const PickersInputBase = /*#__PURE__*/React.forwardRef(function PickersInputBase
383
393
  className: separatorPosition === 'before' ? pickersInputBaseClasses.sectionBefore : pickersInputBaseClasses.sectionAfter
384
394
  })
385
395
  }
386
- }), endAdornment, renderSuffix ? renderSuffix(_extends({}, muiFormControl)) : null, /*#__PURE__*/_jsx(PickersInputBaseInput, _extends({
396
+ }), endAdornment, renderSuffix ? renderSuffix(_extends({}, muiFormControl)) : null, /*#__PURE__*/_jsx(HtmlInputComponent, _extends({
387
397
  name: name,
388
398
  className: classes.input,
389
399
  value: value,
@@ -398,7 +408,7 @@ const PickersInputBase = /*#__PURE__*/React.forwardRef(function PickersInputBase
398
408
  // This allows to maintain the ability to do `inputRef.current.focus()` to focus the field
399
409
  ,
400
410
  onFocus: handleHiddenInputFocus
401
- }, inputProps, {
411
+ }, htmlInputProps, {
402
412
  ref: handleInputRef
403
413
  })), isSingleInputRange && /*#__PURE__*/_jsx(PickersInputBaseActiveBar, {
404
414
  className: classes.activeBar,
@@ -421,8 +431,8 @@ process.env.NODE_ENV !== "production" ? PickersInputBase.propTypes = {
421
431
  * For a range value, it means that `value === [null, null]`
422
432
  */
423
433
  areAllSectionsEmpty: PropTypes.bool.isRequired,
434
+ classes: PropTypes.object,
424
435
  className: PropTypes.string,
425
- component: PropTypes.elementType,
426
436
  /**
427
437
  * If true, the whole element is editable.
428
438
  * Useful when all the sections are selected.
@@ -439,13 +449,31 @@ process.env.NODE_ENV !== "production" ? PickersInputBase.propTypes = {
439
449
  container: PropTypes.object.isRequired,
440
450
  content: PropTypes.object.isRequired
441
451
  })).isRequired,
452
+ /**
453
+ * End `InputAdornment` for this component.
454
+ */
442
455
  endAdornment: PropTypes.node,
456
+ /**
457
+ * If `true`, the input will take up the full width of its container.
458
+ * @default false
459
+ */
443
460
  fullWidth: PropTypes.bool,
461
+ /**
462
+ * The id of the `input` element.
463
+ */
444
464
  id: PropTypes.string,
445
- inputProps: PropTypes.object,
465
+ /**
466
+ * Pass a ref to the `input` element.
467
+ */
446
468
  inputRef: refType,
469
+ /**
470
+ * The label content.
471
+ */
447
472
  label: PropTypes.node,
448
473
  margin: PropTypes.oneOf(['dense', 'none', 'normal']),
474
+ /**
475
+ * Name attribute of the `input` element.
476
+ */
449
477
  name: PropTypes.string,
450
478
  onChange: PropTypes.func.isRequired,
451
479
  onClick: PropTypes.func.isRequired,
@@ -474,8 +502,10 @@ process.env.NODE_ENV !== "production" ? PickersInputBase.propTypes = {
474
502
  * @default {}
475
503
  */
476
504
  slots: PropTypes.object,
505
+ /**
506
+ * Start `InputAdornment` for this component.
507
+ */
477
508
  startAdornment: PropTypes.node,
478
- style: PropTypes.object,
479
509
  /**
480
510
  * The system prop that allows defining system overrides as well as additional CSS styles.
481
511
  */