@mui/x-date-pickers-pro 7.0.0-beta.2 → 7.0.0-beta.4

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 (274) hide show
  1. package/CHANGELOG.md +298 -23
  2. package/DateRangeCalendar/DateRangeCalendar.js +3 -1
  3. package/DateRangeCalendar/DateRangeCalendar.types.d.ts +3 -0
  4. package/DateRangePicker/DateRangePicker.d.ts +1 -1
  5. package/DateRangePicker/DateRangePicker.js +9 -9
  6. package/DateRangePicker/DateRangePicker.types.d.ts +3 -3
  7. package/DateRangePicker/DateRangePickerToolbar.d.ts +3 -0
  8. package/DateRangePicker/DateRangePickerToolbar.js +6 -0
  9. package/DateTimeRangePicker/DateTimeRangePicker.d.ts +1 -1
  10. package/DateTimeRangePicker/DateTimeRangePicker.js +11 -12
  11. package/DateTimeRangePicker/DateTimeRangePicker.types.d.ts +3 -3
  12. package/DateTimeRangePicker/DateTimeRangePickerTabs.js +7 -1
  13. package/DateTimeRangePicker/DateTimeRangePickerToolbar.d.ts +3 -0
  14. package/DateTimeRangePicker/DateTimeRangePickerToolbar.js +6 -0
  15. package/DesktopDateRangePicker/DesktopDateRangePicker.d.ts +1 -1
  16. package/DesktopDateRangePicker/DesktopDateRangePicker.js +9 -9
  17. package/DesktopDateRangePicker/DesktopDateRangePicker.types.d.ts +3 -3
  18. package/DesktopDateTimeRangePicker/DesktopDateTimeRangePicker.d.ts +1 -1
  19. package/DesktopDateTimeRangePicker/DesktopDateTimeRangePicker.js +11 -12
  20. package/DesktopDateTimeRangePicker/DesktopDateTimeRangePicker.types.d.ts +3 -3
  21. package/MobileDateRangePicker/MobileDateRangePicker.d.ts +1 -1
  22. package/MobileDateRangePicker/MobileDateRangePicker.js +9 -9
  23. package/MobileDateRangePicker/MobileDateRangePicker.types.d.ts +3 -3
  24. package/MobileDateTimeRangePicker/MobileDateTimeRangePicker.d.ts +1 -1
  25. package/MobileDateTimeRangePicker/MobileDateTimeRangePicker.js +11 -12
  26. package/MobileDateTimeRangePicker/MobileDateTimeRangePicker.types.d.ts +3 -3
  27. package/MultiInputDateRangeField/MultiInputDateRangeField.d.ts +1 -1
  28. package/MultiInputDateRangeField/MultiInputDateRangeField.js +17 -19
  29. package/MultiInputDateRangeField/MultiInputDateRangeField.types.d.ts +11 -14
  30. package/MultiInputDateTimeRangeField/MultiInputDateTimeRangeField.d.ts +1 -1
  31. package/MultiInputDateTimeRangeField/MultiInputDateTimeRangeField.js +17 -19
  32. package/MultiInputDateTimeRangeField/MultiInputDateTimeRangeField.types.d.ts +12 -16
  33. package/MultiInputTimeRangeField/MultiInputTimeRangeField.d.ts +1 -1
  34. package/MultiInputTimeRangeField/MultiInputTimeRangeField.js +17 -19
  35. package/MultiInputTimeRangeField/MultiInputTimeRangeField.types.d.ts +12 -16
  36. package/SingleInputDateRangeField/SingleInputDateRangeField.d.ts +2 -2
  37. package/SingleInputDateRangeField/SingleInputDateRangeField.js +12 -10
  38. package/SingleInputDateRangeField/SingleInputDateRangeField.types.d.ts +11 -14
  39. package/SingleInputDateRangeField/index.d.ts +1 -1
  40. package/SingleInputDateRangeField/useSingleInputDateRangeField.d.ts +2 -3
  41. package/SingleInputDateRangeField/useSingleInputDateRangeField.js +2 -15
  42. package/SingleInputDateTimeRangeField/SingleInputDateTimeRangeField.d.ts +2 -2
  43. package/SingleInputDateTimeRangeField/SingleInputDateTimeRangeField.js +12 -10
  44. package/SingleInputDateTimeRangeField/SingleInputDateTimeRangeField.types.d.ts +12 -15
  45. package/SingleInputDateTimeRangeField/index.d.ts +1 -1
  46. package/SingleInputDateTimeRangeField/useSingleInputDateTimeRangeField.d.ts +2 -3
  47. package/SingleInputDateTimeRangeField/useSingleInputDateTimeRangeField.js +2 -20
  48. package/SingleInputTimeRangeField/SingleInputTimeRangeField.d.ts +2 -2
  49. package/SingleInputTimeRangeField/SingleInputTimeRangeField.js +11 -9
  50. package/SingleInputTimeRangeField/SingleInputTimeRangeField.types.d.ts +12 -15
  51. package/SingleInputTimeRangeField/index.d.ts +1 -1
  52. package/SingleInputTimeRangeField/useSingleInputTimeRangeField.d.ts +2 -3
  53. package/SingleInputTimeRangeField/useSingleInputTimeRangeField.js +2 -14
  54. package/StaticDateRangePicker/StaticDateRangePicker.js +0 -1
  55. package/index.d.ts +0 -1
  56. package/index.js +2 -1
  57. package/internals/hooks/models/useRangePicker.d.ts +5 -5
  58. package/internals/hooks/useDesktopRangePicker/useDesktopRangePicker.d.ts +1 -1
  59. package/internals/hooks/useDesktopRangePicker/useDesktopRangePicker.js +16 -7
  60. package/internals/hooks/useDesktopRangePicker/useDesktopRangePicker.types.d.ts +5 -5
  61. package/internals/hooks/useEnrichedRangePickerFieldProps.d.ts +15 -15
  62. package/internals/hooks/useEnrichedRangePickerFieldProps.js +37 -40
  63. package/internals/hooks/useMobileRangePicker/useMobileRangePicker.d.ts +1 -1
  64. package/internals/hooks/useMobileRangePicker/useMobileRangePicker.js +17 -8
  65. package/internals/hooks/useMobileRangePicker/useMobileRangePicker.types.d.ts +5 -5
  66. package/internals/hooks/useMultiInputFieldSelectedSections.d.ts +21 -0
  67. package/internals/hooks/useMultiInputFieldSelectedSections.js +43 -0
  68. package/internals/hooks/useMultiInputRangeField/useMultiInputDateRangeField.d.ts +1 -1
  69. package/internals/hooks/useMultiInputRangeField/useMultiInputDateRangeField.js +17 -12
  70. package/internals/hooks/useMultiInputRangeField/useMultiInputDateTimeRangeField.d.ts +2 -3
  71. package/internals/hooks/useMultiInputRangeField/useMultiInputDateTimeRangeField.js +23 -31
  72. package/internals/hooks/useMultiInputRangeField/useMultiInputRangeField.types.d.ts +4 -4
  73. package/internals/hooks/useMultiInputRangeField/useMultiInputTimeRangeField.d.ts +2 -3
  74. package/internals/hooks/useMultiInputRangeField/useMultiInputTimeRangeField.js +23 -25
  75. package/internals/hooks/useRangePosition.d.ts +2 -4
  76. package/internals/hooks/useRangePosition.js +3 -6
  77. package/internals/hooks/useStaticRangePicker/useStaticRangePicker.js +1 -0
  78. package/internals/hooks/useStaticRangePicker/useStaticRangePicker.types.d.ts +1 -2
  79. package/internals/models/dateRange.d.ts +3 -15
  80. package/internals/models/dateTimeRange.d.ts +4 -6
  81. package/internals/models/index.d.ts +0 -1
  82. package/internals/models/index.js +0 -1
  83. package/internals/models/timeRange.d.ts +3 -6
  84. package/internals/utils/date-fields-utils.d.ts +1 -5
  85. package/internals/utils/releaseInfo.js +1 -1
  86. package/internals/utils/valueManagers.d.ts +1 -2
  87. package/internals/utils/valueManagers.js +11 -6
  88. package/models/fields.d.ts +69 -0
  89. package/models/index.d.ts +1 -0
  90. package/models/index.js +1 -0
  91. package/modern/DateRangeCalendar/DateRangeCalendar.js +3 -1
  92. package/modern/DateRangePicker/DateRangePicker.js +9 -9
  93. package/modern/DateRangePicker/DateRangePickerToolbar.js +6 -0
  94. package/modern/DateTimeRangePicker/DateTimeRangePicker.js +11 -12
  95. package/modern/DateTimeRangePicker/DateTimeRangePickerTabs.js +7 -1
  96. package/modern/DateTimeRangePicker/DateTimeRangePickerToolbar.js +6 -0
  97. package/modern/DesktopDateRangePicker/DesktopDateRangePicker.js +9 -9
  98. package/modern/DesktopDateTimeRangePicker/DesktopDateTimeRangePicker.js +11 -12
  99. package/modern/MobileDateRangePicker/MobileDateRangePicker.js +9 -9
  100. package/modern/MobileDateTimeRangePicker/MobileDateTimeRangePicker.js +11 -12
  101. package/modern/MultiInputDateRangeField/MultiInputDateRangeField.js +17 -19
  102. package/modern/MultiInputDateTimeRangeField/MultiInputDateTimeRangeField.js +17 -19
  103. package/modern/MultiInputTimeRangeField/MultiInputTimeRangeField.js +17 -19
  104. package/modern/SingleInputDateRangeField/SingleInputDateRangeField.js +12 -10
  105. package/modern/SingleInputDateRangeField/useSingleInputDateRangeField.js +2 -14
  106. package/modern/SingleInputDateTimeRangeField/SingleInputDateTimeRangeField.js +12 -10
  107. package/modern/SingleInputDateTimeRangeField/useSingleInputDateTimeRangeField.js +2 -19
  108. package/modern/SingleInputTimeRangeField/SingleInputTimeRangeField.js +11 -9
  109. package/modern/SingleInputTimeRangeField/useSingleInputTimeRangeField.js +2 -13
  110. package/modern/StaticDateRangePicker/StaticDateRangePicker.js +0 -1
  111. package/modern/index.js +2 -1
  112. package/modern/internals/hooks/useDesktopRangePicker/useDesktopRangePicker.js +16 -7
  113. package/modern/internals/hooks/useEnrichedRangePickerFieldProps.js +34 -37
  114. package/modern/internals/hooks/useMobileRangePicker/useMobileRangePicker.js +17 -8
  115. package/modern/internals/hooks/useMultiInputFieldSelectedSections.js +40 -0
  116. package/modern/internals/hooks/useMultiInputRangeField/useMultiInputDateRangeField.js +17 -12
  117. package/modern/internals/hooks/useMultiInputRangeField/useMultiInputDateTimeRangeField.js +23 -30
  118. package/modern/internals/hooks/useMultiInputRangeField/useMultiInputTimeRangeField.js +23 -24
  119. package/modern/internals/hooks/useRangePosition.js +3 -6
  120. package/modern/internals/hooks/useStaticRangePicker/useStaticRangePicker.js +1 -0
  121. package/modern/internals/models/index.js +0 -1
  122. package/modern/internals/utils/releaseInfo.js +1 -1
  123. package/modern/internals/utils/valueManagers.js +11 -6
  124. package/modern/models/index.js +1 -0
  125. package/node/DateRangeCalendar/DateRangeCalendar.js +3 -1
  126. package/node/DateRangePicker/DateRangePicker.js +9 -9
  127. package/node/DateRangePicker/DateRangePickerToolbar.js +6 -0
  128. package/node/DateTimeRangePicker/DateTimeRangePicker.js +11 -12
  129. package/node/DateTimeRangePicker/DateTimeRangePickerTabs.js +7 -1
  130. package/node/DateTimeRangePicker/DateTimeRangePickerToolbar.js +6 -0
  131. package/node/DesktopDateRangePicker/DesktopDateRangePicker.js +9 -9
  132. package/node/DesktopDateTimeRangePicker/DesktopDateTimeRangePicker.js +11 -12
  133. package/node/MobileDateRangePicker/MobileDateRangePicker.js +9 -9
  134. package/node/MobileDateTimeRangePicker/MobileDateTimeRangePicker.js +13 -14
  135. package/node/MultiInputDateRangeField/MultiInputDateRangeField.js +17 -19
  136. package/node/MultiInputDateTimeRangeField/MultiInputDateTimeRangeField.js +17 -19
  137. package/node/MultiInputTimeRangeField/MultiInputTimeRangeField.js +17 -19
  138. package/node/SingleInputDateRangeField/SingleInputDateRangeField.js +12 -10
  139. package/node/SingleInputDateRangeField/useSingleInputDateRangeField.js +2 -16
  140. package/node/SingleInputDateTimeRangeField/SingleInputDateTimeRangeField.js +15 -13
  141. package/node/SingleInputDateTimeRangeField/useSingleInputDateTimeRangeField.js +2 -21
  142. package/node/SingleInputTimeRangeField/SingleInputTimeRangeField.js +11 -9
  143. package/node/SingleInputTimeRangeField/useSingleInputTimeRangeField.js +2 -15
  144. package/node/StaticDateRangePicker/StaticDateRangePicker.js +0 -1
  145. package/node/index.js +1 -1
  146. package/node/internals/hooks/useDesktopRangePicker/useDesktopRangePicker.js +16 -7
  147. package/node/internals/hooks/useEnrichedRangePickerFieldProps.js +33 -36
  148. package/node/internals/hooks/useMobileRangePicker/useMobileRangePicker.js +17 -8
  149. package/node/internals/hooks/useMultiInputFieldSelectedSections.js +50 -0
  150. package/node/internals/hooks/useMultiInputRangeField/useMultiInputDateRangeField.js +16 -11
  151. package/node/internals/hooks/useMultiInputRangeField/useMultiInputDateTimeRangeField.js +23 -31
  152. package/node/internals/hooks/useMultiInputRangeField/useMultiInputTimeRangeField.js +23 -25
  153. package/node/internals/hooks/useRangePosition.js +3 -8
  154. package/node/internals/hooks/useStaticRangePicker/useStaticRangePicker.js +1 -0
  155. package/node/internals/models/index.js +0 -11
  156. package/node/internals/utils/releaseInfo.js +1 -1
  157. package/node/internals/utils/valueManagers.js +10 -5
  158. package/node/models/index.js +11 -0
  159. package/package.json +5 -5
  160. package/themeAugmentation/props.d.ts +12 -12
  161. package/internals/models/fields.d.ts +0 -49
  162. package/legacy/AdapterDateFns/index.js +0 -1
  163. package/legacy/AdapterDateFnsJalali/index.js +0 -1
  164. package/legacy/AdapterDateFnsV3/index.js +0 -1
  165. package/legacy/AdapterDayjs/index.js +0 -1
  166. package/legacy/AdapterLuxon/index.js +0 -1
  167. package/legacy/AdapterMoment/index.js +0 -1
  168. package/legacy/AdapterMomentHijri/index.js +0 -1
  169. package/legacy/AdapterMomentJalaali/index.js +0 -1
  170. package/legacy/DateRangeCalendar/DateRangeCalendar.js +0 -764
  171. package/legacy/DateRangeCalendar/DateRangeCalendar.types.js +0 -1
  172. package/legacy/DateRangeCalendar/dateRangeCalendarClasses.js +0 -5
  173. package/legacy/DateRangeCalendar/index.js +0 -2
  174. package/legacy/DateRangeCalendar/useDragRange.js +0 -258
  175. package/legacy/DateRangePicker/DateRangePicker.js +0 -334
  176. package/legacy/DateRangePicker/DateRangePicker.types.js +0 -1
  177. package/legacy/DateRangePicker/DateRangePickerToolbar.js +0 -127
  178. package/legacy/DateRangePicker/dateRangePickerToolbarClasses.js +0 -5
  179. package/legacy/DateRangePicker/index.js +0 -3
  180. package/legacy/DateRangePicker/shared.js +0 -33
  181. package/legacy/DateRangePickerDay/DateRangePickerDay.js +0 -366
  182. package/legacy/DateRangePickerDay/dateRangePickerDayClasses.js +0 -5
  183. package/legacy/DateRangePickerDay/index.js +0 -2
  184. package/legacy/DateTimeRangePicker/DateTimeRangePicker.js +0 -413
  185. package/legacy/DateTimeRangePicker/DateTimeRangePicker.types.js +0 -1
  186. package/legacy/DateTimeRangePicker/DateTimeRangePickerTabs.js +0 -191
  187. package/legacy/DateTimeRangePicker/DateTimeRangePickerTimeWrapper.js +0 -57
  188. package/legacy/DateTimeRangePicker/DateTimeRangePickerToolbar.js +0 -184
  189. package/legacy/DateTimeRangePicker/dateTimeRangePickerTabsClasses.js +0 -6
  190. package/legacy/DateTimeRangePicker/dateTimeRangePickerToolbarClasses.js +0 -5
  191. package/legacy/DateTimeRangePicker/index.js +0 -5
  192. package/legacy/DateTimeRangePicker/shared.js +0 -54
  193. package/legacy/DesktopDateRangePicker/DesktopDateRangePicker.js +0 -343
  194. package/legacy/DesktopDateRangePicker/DesktopDateRangePicker.types.js +0 -1
  195. package/legacy/DesktopDateRangePicker/index.js +0 -1
  196. package/legacy/DesktopDateTimeRangePicker/DesktopDateTimeRangePicker.js +0 -491
  197. package/legacy/DesktopDateTimeRangePicker/DesktopDateTimeRangePicker.types.js +0 -1
  198. package/legacy/DesktopDateTimeRangePicker/DesktopDateTimeRangePickerLayout.js +0 -48
  199. package/legacy/DesktopDateTimeRangePicker/index.js +0 -1
  200. package/legacy/MobileDateRangePicker/MobileDateRangePicker.js +0 -339
  201. package/legacy/MobileDateRangePicker/MobileDateRangePicker.types.js +0 -1
  202. package/legacy/MobileDateRangePicker/index.js +0 -1
  203. package/legacy/MobileDateTimeRangePicker/MobileDateTimeRangePicker.js +0 -484
  204. package/legacy/MobileDateTimeRangePicker/MobileDateTimeRangePicker.types.js +0 -1
  205. package/legacy/MobileDateTimeRangePicker/index.js +0 -1
  206. package/legacy/MultiInputDateRangeField/MultiInputDateRangeField.js +0 -316
  207. package/legacy/MultiInputDateRangeField/MultiInputDateRangeField.types.js +0 -1
  208. package/legacy/MultiInputDateRangeField/index.js +0 -2
  209. package/legacy/MultiInputDateTimeRangeField/MultiInputDateTimeRangeField.js +0 -357
  210. package/legacy/MultiInputDateTimeRangeField/MultiInputDateTimeRangeField.types.js +0 -1
  211. package/legacy/MultiInputDateTimeRangeField/index.js +0 -2
  212. package/legacy/MultiInputTimeRangeField/MultiInputTimeRangeField.js +0 -330
  213. package/legacy/MultiInputTimeRangeField/MultiInputTimeRangeField.types.js +0 -1
  214. package/legacy/MultiInputTimeRangeField/index.js +0 -2
  215. package/legacy/SingleInputDateRangeField/SingleInputDateRangeField.js +0 -307
  216. package/legacy/SingleInputDateRangeField/SingleInputDateRangeField.types.js +0 -1
  217. package/legacy/SingleInputDateRangeField/index.js +0 -2
  218. package/legacy/SingleInputDateRangeField/useSingleInputDateRangeField.js +0 -30
  219. package/legacy/SingleInputDateTimeRangeField/SingleInputDateTimeRangeField.js +0 -348
  220. package/legacy/SingleInputDateTimeRangeField/SingleInputDateTimeRangeField.types.js +0 -1
  221. package/legacy/SingleInputDateTimeRangeField/index.js +0 -2
  222. package/legacy/SingleInputDateTimeRangeField/useSingleInputDateTimeRangeField.js +0 -35
  223. package/legacy/SingleInputTimeRangeField/SingleInputTimeRangeField.js +0 -321
  224. package/legacy/SingleInputTimeRangeField/SingleInputTimeRangeField.types.js +0 -1
  225. package/legacy/SingleInputTimeRangeField/index.js +0 -2
  226. package/legacy/SingleInputTimeRangeField/useSingleInputTimeRangeField.js +0 -29
  227. package/legacy/StaticDateRangePicker/StaticDateRangePicker.js +0 -276
  228. package/legacy/StaticDateRangePicker/StaticDateRangePicker.types.js +0 -1
  229. package/legacy/StaticDateRangePicker/index.js +0 -1
  230. package/legacy/dateRangeViewRenderers/dateRangeViewRenderers.js +0 -87
  231. package/legacy/dateRangeViewRenderers/index.js +0 -1
  232. package/legacy/index.js +0 -52
  233. package/legacy/internals/constants/dimensions.js +0 -5
  234. package/legacy/internals/hooks/models/index.js +0 -1
  235. package/legacy/internals/hooks/models/useRangePicker.js +0 -1
  236. package/legacy/internals/hooks/useDesktopRangePicker/index.js +0 -1
  237. package/legacy/internals/hooks/useDesktopRangePicker/useDesktopRangePicker.js +0 -154
  238. package/legacy/internals/hooks/useDesktopRangePicker/useDesktopRangePicker.types.js +0 -1
  239. package/legacy/internals/hooks/useEnrichedRangePickerFieldProps.js +0 -258
  240. package/legacy/internals/hooks/useMobileRangePicker/index.js +0 -1
  241. package/legacy/internals/hooks/useMobileRangePicker/useMobileRangePicker.js +0 -144
  242. package/legacy/internals/hooks/useMobileRangePicker/useMobileRangePicker.types.js +0 -1
  243. package/legacy/internals/hooks/useMultiInputRangeField/shared.js +0 -9
  244. package/legacy/internals/hooks/useMultiInputRangeField/useMultiInputDateRangeField.js +0 -102
  245. package/legacy/internals/hooks/useMultiInputRangeField/useMultiInputDateTimeRangeField.js +0 -115
  246. package/legacy/internals/hooks/useMultiInputRangeField/useMultiInputRangeField.types.js +0 -1
  247. package/legacy/internals/hooks/useMultiInputRangeField/useMultiInputTimeRangeField.js +0 -109
  248. package/legacy/internals/hooks/useRangePosition.js +0 -39
  249. package/legacy/internals/hooks/useStaticRangePicker/index.js +0 -1
  250. package/legacy/internals/hooks/useStaticRangePicker/useStaticRangePicker.js +0 -76
  251. package/legacy/internals/hooks/useStaticRangePicker/useStaticRangePicker.types.js +0 -1
  252. package/legacy/internals/models/dateRange.js +0 -1
  253. package/legacy/internals/models/dateTimeRange.js +0 -1
  254. package/legacy/internals/models/index.js +0 -5
  255. package/legacy/internals/models/rangePickerProps.js +0 -1
  256. package/legacy/internals/models/timeRange.js +0 -1
  257. package/legacy/internals/utils/date-fields-utils.js +0 -26
  258. package/legacy/internals/utils/date-range-manager.js +0 -65
  259. package/legacy/internals/utils/date-utils.js +0 -12
  260. package/legacy/internals/utils/releaseInfo.js +0 -13
  261. package/legacy/internals/utils/validation/validateDateRange.js +0 -45
  262. package/legacy/internals/utils/validation/validateDateTimeRange.js +0 -45
  263. package/legacy/internals/utils/validation/validateTimeRange.js +0 -32
  264. package/legacy/internals/utils/valueManagers.js +0 -135
  265. package/legacy/locales/index.js +0 -1
  266. package/legacy/models/index.js +0 -3
  267. package/legacy/models/multiInputRangeFieldClasses.js +0 -1
  268. package/legacy/models/range.js +0 -1
  269. package/legacy/models/validation.js +0 -1
  270. package/legacy/themeAugmentation/index.js +0 -4
  271. package/modern/internals/models/fields.js +0 -1
  272. /package/{internals/models → models}/fields.js +0 -0
  273. /package/{legacy/internals → modern}/models/fields.js +0 -0
  274. /package/node/{internals/models → models}/fields.js +0 -0
@@ -76,7 +76,8 @@ const DateTimeRangePickerTabs = function DateTimeRangePickerTabs(inProps) {
76
76
  hidden = typeof window === 'undefined' || window.innerHeight < 667,
77
77
  rangePosition,
78
78
  onRangePositionChange,
79
- className
79
+ className,
80
+ sx
80
81
  } = props;
81
82
  const localeText = useLocaleText();
82
83
  const classes = useUtilityClasses(props);
@@ -120,6 +121,7 @@ const DateTimeRangePickerTabs = function DateTimeRangePickerTabs(inProps) {
120
121
  return /*#__PURE__*/_jsxs(DateTimeRangePickerTabsRoot, {
121
122
  ownerState: props,
122
123
  className: clsx(classes.root, className),
124
+ sx: sx,
123
125
  children: [!isPreviousHidden ? /*#__PURE__*/_jsx(IconButton, {
124
126
  onClick: changeToPreviousTab,
125
127
  className: classes.navigationButton,
@@ -170,6 +172,10 @@ process.env.NODE_ENV !== "production" ? DateTimeRangePickerTabs.propTypes = {
170
172
  */
171
173
  onViewChange: PropTypes.func.isRequired,
172
174
  rangePosition: PropTypes.oneOf(['end', 'start']).isRequired,
175
+ /**
176
+ * The system prop that allows defining system overrides as well as additional CSS styles.
177
+ */
178
+ sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object]),
173
179
  /**
174
180
  * Time tab icon.
175
181
  * @default TimeIcon
@@ -10,6 +10,9 @@ export interface DateTimeRangePickerToolbarProps<TDate extends PickerValidDate>
10
10
  toolbarVariant?: WrapperVariant;
11
11
  }
12
12
  export interface ExportedDateTimeRangePickerToolbarProps extends ExportedBaseToolbarProps {
13
+ /**
14
+ * Override or extend the styles applied to the component.
15
+ */
13
16
  classes?: Partial<DateTimeRangePickerToolbarClasses>;
14
17
  }
15
18
  declare const DateTimeRangePickerToolbar: React.ForwardRefExoticComponent<DateTimeRangePickerToolbarProps<PickerValidDate> & React.RefAttributes<HTMLDivElement>>;
@@ -135,6 +135,9 @@ process.env.NODE_ENV !== "production" ? DateTimeRangePickerToolbar.propTypes = {
135
135
  // | To update them edit the TypeScript types and run "yarn proptypes" |
136
136
  // ----------------------------------------------------------------------
137
137
  ampm: PropTypes.bool,
138
+ /**
139
+ * Override or extend the styles applied to the component.
140
+ */
138
141
  classes: PropTypes.object,
139
142
  className: PropTypes.string,
140
143
  disabled: PropTypes.bool,
@@ -154,6 +157,9 @@ process.env.NODE_ENV !== "production" ? DateTimeRangePickerToolbar.propTypes = {
154
157
  onViewChange: PropTypes.func.isRequired,
155
158
  rangePosition: PropTypes.oneOf(['end', 'start']).isRequired,
156
159
  readOnly: PropTypes.bool,
160
+ /**
161
+ * The system prop that allows defining system overrides as well as additional CSS styles.
162
+ */
157
163
  sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object]),
158
164
  titleId: PropTypes.string,
159
165
  /**
@@ -1,7 +1,7 @@
1
1
  import * as React from 'react';
2
2
  import { PickerValidDate } from '@mui/x-date-pickers/models';
3
3
  import { DesktopDateRangePickerProps } from './DesktopDateRangePicker.types';
4
- type DesktopDateRangePickerComponent = (<TDate extends PickerValidDate>(props: DesktopDateRangePickerProps<TDate> & React.RefAttributes<HTMLDivElement>) => React.JSX.Element) & {
4
+ type DesktopDateRangePickerComponent = (<TDate extends PickerValidDate, TEnableAccessibleFieldDOMStructure extends boolean = false>(props: DesktopDateRangePickerProps<TDate, TEnableAccessibleFieldDOMStructure> & React.RefAttributes<HTMLDivElement>) => React.JSX.Element) & {
5
5
  propTypes?: any;
6
6
  };
7
7
  /**
@@ -142,10 +142,13 @@ DesktopDateRangePicker.propTypes = {
142
142
  * If `true`, the week number will be display in the calendar.
143
143
  */
144
144
  displayWeekNumber: PropTypes.bool,
145
+ /**
146
+ * @default false
147
+ */
148
+ enableAccessibleFieldDOMStructure: PropTypes.any,
145
149
  /**
146
150
  * The day view will show as many weeks as needed after the end of the current month to match this value.
147
151
  * Put it to 6 to have a fixed number of weeks in Gregorian calendars
148
- * @default undefined
149
152
  */
150
153
  fixedWeekNumber: PropTypes.number,
151
154
  /**
@@ -272,17 +275,14 @@ DesktopDateRangePicker.propTypes = {
272
275
  renderLoading: PropTypes.func,
273
276
  /**
274
277
  * The currently selected sections.
275
- * This prop accept four formats:
278
+ * This prop accepts four formats:
276
279
  * 1. If a number is provided, the section at this index will be selected.
277
- * 2. If an object with a `startIndex` and `endIndex` properties are provided, the sections between those two indexes will be selected.
278
- * 3. If a string of type `FieldSectionType` is provided, the first section with that name will be selected.
279
- * 4. If `null` is provided, no section will be selected
280
+ * 2. If a string of type `FieldSectionType` is provided, the first section with that name will be selected.
281
+ * 3. If `"all"` is provided, all the sections will be selected.
282
+ * 4. If `null` is provided, no section will be selected.
280
283
  * If not provided, the selected sections will be handled internally.
281
284
  */
282
- selectedSections: PropTypes.oneOfType([PropTypes.oneOf(['all', 'day', 'empty', 'hours', 'meridiem', 'minutes', 'month', 'seconds', 'weekDay', 'year']), PropTypes.number, PropTypes.shape({
283
- endIndex: PropTypes.number.isRequired,
284
- startIndex: PropTypes.number.isRequired
285
- })]),
285
+ selectedSections: PropTypes.oneOfType([PropTypes.oneOf(['all', 'day', 'empty', 'hours', 'meridiem', 'minutes', 'month', 'seconds', 'weekDay', 'year']), PropTypes.number]),
286
286
  /**
287
287
  * Disable specific date.
288
288
  *
@@ -4,9 +4,9 @@ import { UseDesktopRangePickerSlots, UseDesktopRangePickerSlotProps, DesktopRang
4
4
  import { BaseDateRangePickerProps, BaseDateRangePickerSlots, BaseDateRangePickerSlotProps } from '../DateRangePicker/shared';
5
5
  export interface DesktopDateRangePickerSlots<TDate extends PickerValidDate> extends BaseDateRangePickerSlots<TDate>, MakeOptional<UseDesktopRangePickerSlots<TDate, 'day'>, 'field'> {
6
6
  }
7
- export interface DesktopDateRangePickerSlotProps<TDate extends PickerValidDate> extends BaseDateRangePickerSlotProps<TDate>, Omit<UseDesktopRangePickerSlotProps<TDate, 'day'>, 'tabs'> {
7
+ export interface DesktopDateRangePickerSlotProps<TDate extends PickerValidDate, TEnableAccessibleFieldDOMStructure extends boolean> extends BaseDateRangePickerSlotProps<TDate>, Omit<UseDesktopRangePickerSlotProps<TDate, 'day', TEnableAccessibleFieldDOMStructure>, 'tabs'> {
8
8
  }
9
- export interface DesktopDateRangePickerProps<TDate extends PickerValidDate> extends BaseDateRangePickerProps<TDate>, DesktopRangeOnlyPickerProps<TDate> {
9
+ export interface DesktopDateRangePickerProps<TDate extends PickerValidDate, TEnableAccessibleFieldDOMStructure extends boolean = false> extends BaseDateRangePickerProps<TDate>, DesktopRangeOnlyPickerProps {
10
10
  /**
11
11
  * The number of calendars to render on **desktop**.
12
12
  * @default 2
@@ -21,5 +21,5 @@ export interface DesktopDateRangePickerProps<TDate extends PickerValidDate> exte
21
21
  * The props used for each component slot.
22
22
  * @default {}
23
23
  */
24
- slotProps?: DesktopDateRangePickerSlotProps<TDate>;
24
+ slotProps?: DesktopDateRangePickerSlotProps<TDate, TEnableAccessibleFieldDOMStructure>;
25
25
  }
@@ -1,7 +1,7 @@
1
1
  import * as React from 'react';
2
2
  import { PickerValidDate } from '@mui/x-date-pickers/models';
3
3
  import { DesktopDateTimeRangePickerProps } from './DesktopDateTimeRangePicker.types';
4
- type DesktopDateRangePickerComponent = (<TDate extends PickerValidDate>(props: DesktopDateTimeRangePickerProps<TDate> & React.RefAttributes<HTMLDivElement>) => React.JSX.Element) & {
4
+ type DesktopDateRangePickerComponent = (<TDate extends PickerValidDate, TEnableAccessibleFieldDOMStructure extends boolean = false>(props: DesktopDateTimeRangePickerProps<TDate, TEnableAccessibleFieldDOMStructure> & React.RefAttributes<HTMLDivElement>) => React.JSX.Element) & {
5
5
  propTypes?: any;
6
6
  };
7
7
  declare const DesktopDateTimeRangePicker: DesktopDateRangePickerComponent;
@@ -5,6 +5,7 @@ import * as React from 'react';
5
5
  import PropTypes from 'prop-types';
6
6
  import { extractValidationProps, isDatePickerView, isInternalTimeView } from '@mui/x-date-pickers/internals';
7
7
  import { resolveComponentProps } from '@mui/base/utils';
8
+ import { refType } from '@mui/utils';
8
9
  import { renderDigitalClockTimeView, renderMultiSectionDigitalClockTimeView } from '@mui/x-date-pickers/timeViewRenderers';
9
10
  import { multiSectionDigitalClockClasses, multiSectionDigitalClockSectionClasses } from '@mui/x-date-pickers/MultiSectionDigitalClock';
10
11
  import Divider from '@mui/material/Divider';
@@ -209,10 +210,13 @@ DesktopDateTimeRangePicker.propTypes = {
209
210
  * If `true`, the week number will be display in the calendar.
210
211
  */
211
212
  displayWeekNumber: PropTypes.bool,
213
+ /**
214
+ * @default false
215
+ */
216
+ enableAccessibleFieldDOMStructure: PropTypes.any,
212
217
  /**
213
218
  * The day view will show as many weeks as needed after the end of the current month to match this value.
214
219
  * Put it to 6 to have a fixed number of weeks in Gregorian calendars
215
- * @default undefined
216
220
  */
217
221
  fixedWeekNumber: PropTypes.number,
218
222
  /**
@@ -230,9 +234,7 @@ DesktopDateTimeRangePicker.propTypes = {
230
234
  * Pass a ref to the `input` element.
231
235
  * Ignored if the field has several inputs.
232
236
  */
233
- inputRef: PropTypes.oneOfType([PropTypes.func, PropTypes.shape({
234
- current: PropTypes.object
235
- })]),
237
+ inputRef: refType,
236
238
  /**
237
239
  * The label content.
238
240
  * Ignored if the field has several inputs.
@@ -376,17 +378,14 @@ DesktopDateTimeRangePicker.propTypes = {
376
378
  renderLoading: PropTypes.func,
377
379
  /**
378
380
  * The currently selected sections.
379
- * This prop accept four formats:
381
+ * This prop accepts four formats:
380
382
  * 1. If a number is provided, the section at this index will be selected.
381
- * 2. If an object with a `startIndex` and `endIndex` properties are provided, the sections between those two indexes will be selected.
382
- * 3. If a string of type `FieldSectionType` is provided, the first section with that name will be selected.
383
- * 4. If `null` is provided, no section will be selected
383
+ * 2. If a string of type `FieldSectionType` is provided, the first section with that name will be selected.
384
+ * 3. If `"all"` is provided, all the sections will be selected.
385
+ * 4. If `null` is provided, no section will be selected.
384
386
  * If not provided, the selected sections will be handled internally.
385
387
  */
386
- selectedSections: PropTypes.oneOfType([PropTypes.oneOf(['all', 'day', 'empty', 'hours', 'meridiem', 'minutes', 'month', 'seconds', 'weekDay', 'year']), PropTypes.number, PropTypes.shape({
387
- endIndex: PropTypes.number.isRequired,
388
- startIndex: PropTypes.number.isRequired
389
- })]),
388
+ selectedSections: PropTypes.oneOfType([PropTypes.oneOf(['all', 'day', 'empty', 'hours', 'meridiem', 'minutes', 'month', 'seconds', 'weekDay', 'year']), PropTypes.number]),
390
389
  /**
391
390
  * Disable specific date.
392
391
  *
@@ -5,9 +5,9 @@ import { BaseDateTimeRangePickerProps, BaseDateTimeRangePickerSlots, BaseDateTim
5
5
  import { DateTimeRangePickerView } from '../internals/models';
6
6
  export interface DesktopDateTimeRangePickerSlots<TDate extends PickerValidDate> extends BaseDateTimeRangePickerSlots<TDate>, MakeOptional<UseDesktopRangePickerSlots<TDate, DateTimeRangePickerView>, 'field'> {
7
7
  }
8
- export interface DesktopDateTimeRangePickerSlotProps<TDate extends PickerValidDate> extends BaseDateTimeRangePickerSlotProps<TDate>, Omit<UseDesktopRangePickerSlotProps<TDate, DateTimeRangePickerView>, 'tabs' | 'toolbar'> {
8
+ export interface DesktopDateTimeRangePickerSlotProps<TDate extends PickerValidDate, TEnableAccessibleFieldDOMStructure extends boolean> extends BaseDateTimeRangePickerSlotProps<TDate>, Omit<UseDesktopRangePickerSlotProps<TDate, DateTimeRangePickerView, TEnableAccessibleFieldDOMStructure>, 'tabs' | 'toolbar'> {
9
9
  }
10
- export interface DesktopDateTimeRangePickerProps<TDate extends PickerValidDate> extends BaseDateTimeRangePickerProps<TDate>, DesktopRangeOnlyPickerProps<TDate> {
10
+ export interface DesktopDateTimeRangePickerProps<TDate extends PickerValidDate, TEnableAccessibleFieldDOMStructure extends boolean = false> extends BaseDateTimeRangePickerProps<TDate>, DesktopRangeOnlyPickerProps {
11
11
  /**
12
12
  * The number of calendars to render on **desktop**.
13
13
  * @default 1
@@ -22,5 +22,5 @@ export interface DesktopDateTimeRangePickerProps<TDate extends PickerValidDate>
22
22
  * The props used for each component slot.
23
23
  * @default {}
24
24
  */
25
- slotProps?: DesktopDateTimeRangePickerSlotProps<TDate>;
25
+ slotProps?: DesktopDateTimeRangePickerSlotProps<TDate, TEnableAccessibleFieldDOMStructure>;
26
26
  }
@@ -1,7 +1,7 @@
1
1
  import * as React from 'react';
2
2
  import { PickerValidDate } from '@mui/x-date-pickers/models';
3
3
  import { MobileDateRangePickerProps } from './MobileDateRangePicker.types';
4
- type MobileDateRangePickerComponent = (<TDate extends PickerValidDate>(props: MobileDateRangePickerProps<TDate> & React.RefAttributes<HTMLDivElement>) => React.JSX.Element) & {
4
+ type MobileDateRangePickerComponent = (<TDate extends PickerValidDate, TEnableAccessibleFieldDOMStructure extends boolean = false>(props: MobileDateRangePickerProps<TDate, TEnableAccessibleFieldDOMStructure> & React.RefAttributes<HTMLDivElement>) => React.JSX.Element) & {
5
5
  propTypes?: any;
6
6
  };
7
7
  /**
@@ -138,10 +138,13 @@ MobileDateRangePicker.propTypes = {
138
138
  * If `true`, the week number will be display in the calendar.
139
139
  */
140
140
  displayWeekNumber: PropTypes.bool,
141
+ /**
142
+ * @default false
143
+ */
144
+ enableAccessibleFieldDOMStructure: PropTypes.any,
141
145
  /**
142
146
  * The day view will show as many weeks as needed after the end of the current month to match this value.
143
147
  * Put it to 6 to have a fixed number of weeks in Gregorian calendars
144
- * @default undefined
145
148
  */
146
149
  fixedWeekNumber: PropTypes.number,
147
150
  /**
@@ -268,17 +271,14 @@ MobileDateRangePicker.propTypes = {
268
271
  renderLoading: PropTypes.func,
269
272
  /**
270
273
  * The currently selected sections.
271
- * This prop accept four formats:
274
+ * This prop accepts four formats:
272
275
  * 1. If a number is provided, the section at this index will be selected.
273
- * 2. If an object with a `startIndex` and `endIndex` properties are provided, the sections between those two indexes will be selected.
274
- * 3. If a string of type `FieldSectionType` is provided, the first section with that name will be selected.
275
- * 4. If `null` is provided, no section will be selected
276
+ * 2. If a string of type `FieldSectionType` is provided, the first section with that name will be selected.
277
+ * 3. If `"all"` is provided, all the sections will be selected.
278
+ * 4. If `null` is provided, no section will be selected.
276
279
  * If not provided, the selected sections will be handled internally.
277
280
  */
278
- selectedSections: PropTypes.oneOfType([PropTypes.oneOf(['all', 'day', 'empty', 'hours', 'meridiem', 'minutes', 'month', 'seconds', 'weekDay', 'year']), PropTypes.number, PropTypes.shape({
279
- endIndex: PropTypes.number.isRequired,
280
- startIndex: PropTypes.number.isRequired
281
- })]),
281
+ selectedSections: PropTypes.oneOfType([PropTypes.oneOf(['all', 'day', 'empty', 'hours', 'meridiem', 'minutes', 'month', 'seconds', 'weekDay', 'year']), PropTypes.number]),
282
282
  /**
283
283
  * Disable specific date.
284
284
  *
@@ -4,9 +4,9 @@ import { UseMobileRangePickerSlots, UseMobileRangePickerSlotProps, MobileRangeOn
4
4
  import { BaseDateRangePickerProps, BaseDateRangePickerSlots, BaseDateRangePickerSlotProps } from '../DateRangePicker/shared';
5
5
  export interface MobileDateRangePickerSlots<TDate extends PickerValidDate> extends BaseDateRangePickerSlots<TDate>, MakeOptional<UseMobileRangePickerSlots<TDate, 'day'>, 'field'> {
6
6
  }
7
- export interface MobileDateRangePickerSlotProps<TDate extends PickerValidDate> extends BaseDateRangePickerSlotProps<TDate>, Omit<UseMobileRangePickerSlotProps<TDate, 'day'>, 'tabs'> {
7
+ export interface MobileDateRangePickerSlotProps<TDate extends PickerValidDate, TEnableAccessibleFieldDOMStructure extends boolean> extends BaseDateRangePickerSlotProps<TDate>, Omit<UseMobileRangePickerSlotProps<TDate, 'day', TEnableAccessibleFieldDOMStructure>, 'tabs'> {
8
8
  }
9
- export interface MobileDateRangePickerProps<TDate extends PickerValidDate> extends BaseDateRangePickerProps<TDate>, MobileRangeOnlyPickerProps<TDate> {
9
+ export interface MobileDateRangePickerProps<TDate extends PickerValidDate, TEnableAccessibleFieldDOMStructure extends boolean = false> extends BaseDateRangePickerProps<TDate>, MobileRangeOnlyPickerProps {
10
10
  /**
11
11
  * Overridable component slots.
12
12
  * @default {}
@@ -16,5 +16,5 @@ export interface MobileDateRangePickerProps<TDate extends PickerValidDate> exten
16
16
  * The props used for each component slot.
17
17
  * @default {}
18
18
  */
19
- slotProps?: MobileDateRangePickerSlotProps<TDate>;
19
+ slotProps?: MobileDateRangePickerSlotProps<TDate, TEnableAccessibleFieldDOMStructure>;
20
20
  }
@@ -1,7 +1,7 @@
1
1
  import * as React from 'react';
2
2
  import { PickerValidDate } from '@mui/x-date-pickers/models';
3
3
  import { MobileDateTimeRangePickerProps } from './MobileDateTimeRangePicker.types';
4
- type MobileDateRangePickerComponent = (<TDate extends PickerValidDate>(props: MobileDateTimeRangePickerProps<TDate> & React.RefAttributes<HTMLDivElement>) => React.JSX.Element) & {
4
+ type MobileDateRangePickerComponent = (<TDate extends PickerValidDate, TEnableAccessibleFieldDOMStructure extends boolean = false>(props: MobileDateTimeRangePickerProps<TDate, TEnableAccessibleFieldDOMStructure> & React.RefAttributes<HTMLDivElement>) => React.JSX.Element) & {
5
5
  propTypes?: any;
6
6
  };
7
7
  declare const MobileDateTimeRangePicker: MobileDateRangePickerComponent;
@@ -3,6 +3,7 @@ import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/esm/objectWith
3
3
  const _excluded = ["view", "openTo", "rangePosition", "sx"];
4
4
  import * as React from 'react';
5
5
  import PropTypes from 'prop-types';
6
+ import { refType } from '@mui/utils';
6
7
  import { DIALOG_WIDTH, VIEW_HEIGHT, extractValidationProps, isInternalTimeView, isDatePickerView } from '@mui/x-date-pickers/internals';
7
8
  import { resolveComponentProps } from '@mui/base/utils';
8
9
  import { renderDigitalClockTimeView, renderMultiSectionDigitalClockTimeView } from '@mui/x-date-pickers/timeViewRenderers';
@@ -208,10 +209,13 @@ MobileDateTimeRangePicker.propTypes = {
208
209
  * If `true`, the week number will be display in the calendar.
209
210
  */
210
211
  displayWeekNumber: PropTypes.bool,
212
+ /**
213
+ * @default false
214
+ */
215
+ enableAccessibleFieldDOMStructure: PropTypes.any,
211
216
  /**
212
217
  * The day view will show as many weeks as needed after the end of the current month to match this value.
213
218
  * Put it to 6 to have a fixed number of weeks in Gregorian calendars
214
- * @default undefined
215
219
  */
216
220
  fixedWeekNumber: PropTypes.number,
217
221
  /**
@@ -229,9 +233,7 @@ MobileDateTimeRangePicker.propTypes = {
229
233
  * Pass a ref to the `input` element.
230
234
  * Ignored if the field has several inputs.
231
235
  */
232
- inputRef: PropTypes.oneOfType([PropTypes.func, PropTypes.shape({
233
- current: PropTypes.object
234
- })]),
236
+ inputRef: refType,
235
237
  /**
236
238
  * The label content.
237
239
  * Ignored if the field has several inputs.
@@ -375,17 +377,14 @@ MobileDateTimeRangePicker.propTypes = {
375
377
  renderLoading: PropTypes.func,
376
378
  /**
377
379
  * The currently selected sections.
378
- * This prop accept four formats:
380
+ * This prop accepts four formats:
379
381
  * 1. If a number is provided, the section at this index will be selected.
380
- * 2. If an object with a `startIndex` and `endIndex` properties are provided, the sections between those two indexes will be selected.
381
- * 3. If a string of type `FieldSectionType` is provided, the first section with that name will be selected.
382
- * 4. If `null` is provided, no section will be selected
382
+ * 2. If a string of type `FieldSectionType` is provided, the first section with that name will be selected.
383
+ * 3. If `"all"` is provided, all the sections will be selected.
384
+ * 4. If `null` is provided, no section will be selected.
383
385
  * If not provided, the selected sections will be handled internally.
384
386
  */
385
- selectedSections: PropTypes.oneOfType([PropTypes.oneOf(['all', 'day', 'empty', 'hours', 'meridiem', 'minutes', 'month', 'seconds', 'weekDay', 'year']), PropTypes.number, PropTypes.shape({
386
- endIndex: PropTypes.number.isRequired,
387
- startIndex: PropTypes.number.isRequired
388
- })]),
387
+ selectedSections: PropTypes.oneOfType([PropTypes.oneOf(['all', 'day', 'empty', 'hours', 'meridiem', 'minutes', 'month', 'seconds', 'weekDay', 'year']), PropTypes.number]),
389
388
  /**
390
389
  * Disable specific date.
391
390
  *
@@ -5,9 +5,9 @@ import { BaseDateTimeRangePickerProps, BaseDateTimeRangePickerSlots, BaseDateTim
5
5
  import { DateTimeRangePickerView } from '../internals/models';
6
6
  export interface MobileDateTimeRangePickerSlots<TDate extends PickerValidDate> extends BaseDateTimeRangePickerSlots<TDate>, MakeOptional<UseMobileRangePickerSlots<TDate, DateTimeRangePickerView>, 'field'> {
7
7
  }
8
- export interface MobileDateTimeRangePickerSlotProps<TDate extends PickerValidDate> extends BaseDateTimeRangePickerSlotProps<TDate>, Omit<UseMobileRangePickerSlotProps<TDate, DateTimeRangePickerView>, 'tabs' | 'toolbar'> {
8
+ export interface MobileDateTimeRangePickerSlotProps<TDate extends PickerValidDate, TEnableAccessibleFieldDOMStructure extends boolean> extends BaseDateTimeRangePickerSlotProps<TDate>, Omit<UseMobileRangePickerSlotProps<TDate, DateTimeRangePickerView, TEnableAccessibleFieldDOMStructure>, 'tabs' | 'toolbar'> {
9
9
  }
10
- export interface MobileDateTimeRangePickerProps<TDate extends PickerValidDate> extends BaseDateTimeRangePickerProps<TDate>, MobileRangeOnlyPickerProps<TDate> {
10
+ export interface MobileDateTimeRangePickerProps<TDate extends PickerValidDate, TEnableAccessibleFieldDOMStructure extends boolean = false> extends BaseDateTimeRangePickerProps<TDate>, MobileRangeOnlyPickerProps {
11
11
  /**
12
12
  * Overridable component slots.
13
13
  * @default {}
@@ -17,5 +17,5 @@ export interface MobileDateTimeRangePickerProps<TDate extends PickerValidDate> e
17
17
  * The props used for each component slot.
18
18
  * @default {}
19
19
  */
20
- slotProps?: MobileDateTimeRangePickerSlotProps<TDate>;
20
+ slotProps?: MobileDateTimeRangePickerSlotProps<TDate, TEnableAccessibleFieldDOMStructure>;
21
21
  }
@@ -4,7 +4,7 @@ import { MultiInputDateRangeFieldProps } from './MultiInputDateRangeField.types'
4
4
  import { MultiInputRangeFieldClasses } from '../models';
5
5
  export declare const multiInputDateRangeFieldClasses: MultiInputRangeFieldClasses;
6
6
  export declare const getMultiInputDateRangeFieldUtilityClass: (slot: string) => string;
7
- type MultiInputDateRangeFieldComponent = (<TDate extends PickerValidDate>(props: MultiInputDateRangeFieldProps<TDate> & React.RefAttributes<HTMLDivElement>) => React.JSX.Element) & {
7
+ type MultiInputDateRangeFieldComponent = (<TDate extends PickerValidDate, TEnableAccessibleFieldDOMStructure extends boolean = false>(props: MultiInputDateRangeFieldProps<TDate, TEnableAccessibleFieldDOMStructure> & React.RefAttributes<HTMLDivElement>) => React.JSX.Element) & {
8
8
  propTypes?: any;
9
9
  };
10
10
  /**
@@ -1,6 +1,6 @@
1
1
  import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/esm/objectWithoutPropertiesLoose";
2
2
  import _extends from "@babel/runtime/helpers/esm/extends";
3
- const _excluded = ["slots", "slotProps", "disabled", "autoFocus", "unstableStartFieldRef", "unstableEndFieldRef", "className"];
3
+ const _excluded = ["slots", "slotProps", "unstableStartFieldRef", "unstableEndFieldRef", "className"];
4
4
  import * as React from 'react';
5
5
  import PropTypes from 'prop-types';
6
6
  import clsx from 'clsx';
@@ -11,6 +11,7 @@ import { styled, useThemeProps } from '@mui/material/styles';
11
11
  import { useSlotProps } from '@mui/base/utils';
12
12
  import { unstable_composeClasses as composeClasses, unstable_generateUtilityClass as generateUtilityClass, unstable_generateUtilityClasses as generateUtilityClasses } from '@mui/utils';
13
13
  import { splitFieldInternalAndForwardedProps, convertFieldResponseIntoMuiTextFieldProps } from '@mui/x-date-pickers/internals';
14
+ import { PickersTextField } from '@mui/x-date-pickers/PickersTextField';
14
15
  import { useMultiInputDateRangeField } from '../internals/hooks/useMultiInputRangeField/useMultiInputDateRangeField';
15
16
  import { jsx as _jsx } from "react/jsx-runtime";
16
17
  import { jsxs as _jsxs } from "react/jsx-runtime";
@@ -63,14 +64,12 @@ const MultiInputDateRangeField = /*#__PURE__*/React.forwardRef(function MultiInp
63
64
  name: 'MuiMultiInputDateRangeField'
64
65
  });
65
66
  const {
66
- internalProps: dateFieldInternalProps,
67
+ internalProps,
67
68
  forwardedProps
68
69
  } = splitFieldInternalAndForwardedProps(themeProps, 'date');
69
70
  const {
70
71
  slots,
71
72
  slotProps,
72
- disabled,
73
- autoFocus,
74
73
  unstableStartFieldRef,
75
74
  unstableEndFieldRef,
76
75
  className
@@ -89,13 +88,10 @@ const MultiInputDateRangeField = /*#__PURE__*/React.forwardRef(function MultiInp
89
88
  ownerState,
90
89
  className: clsx(className, classes.root)
91
90
  });
92
- const TextField = (_slots$textField = slots == null ? void 0 : slots.textField) != null ? _slots$textField : MuiTextField;
91
+ const TextField = (_slots$textField = slots == null ? void 0 : slots.textField) != null ? _slots$textField : inProps.enableAccessibleFieldDOMStructure ? PickersTextField : MuiTextField;
93
92
  const startTextFieldProps = useSlotProps({
94
93
  elementType: TextField,
95
94
  externalSlotProps: slotProps == null ? void 0 : slotProps.textField,
96
- additionalProps: {
97
- autoFocus
98
- },
99
95
  ownerState: _extends({}, ownerState, {
100
96
  position: 'start'
101
97
  })
@@ -115,9 +111,7 @@ const MultiInputDateRangeField = /*#__PURE__*/React.forwardRef(function MultiInp
115
111
  className: classes.separator
116
112
  });
117
113
  const fieldResponse = useMultiInputDateRangeField({
118
- sharedProps: _extends({}, dateFieldInternalProps, {
119
- disabled
120
- }),
114
+ sharedProps: internalProps,
121
115
  startTextFieldProps,
122
116
  endTextFieldProps,
123
117
  unstableStartFieldRef,
@@ -138,6 +132,9 @@ process.env.NODE_ENV !== "production" ? MultiInputDateRangeField.propTypes = {
138
132
  // | These PropTypes are generated from the TypeScript type definitions |
139
133
  // | To update them edit the TypeScript types and run "yarn proptypes" |
140
134
  // ----------------------------------------------------------------------
135
+ /**
136
+ * If `true`, the `input` element is focused during the first mount.
137
+ */
141
138
  autoFocus: PropTypes.bool,
142
139
  /**
143
140
  * Override or extend the styles applied to the component.
@@ -174,6 +171,10 @@ process.env.NODE_ENV !== "production" ? MultiInputDateRangeField.propTypes = {
174
171
  * Add an element between each child.
175
172
  */
176
173
  divider: PropTypes.node,
174
+ /**
175
+ * @default false
176
+ */
177
+ enableAccessibleFieldDOMStructure: PropTypes.bool,
177
178
  /**
178
179
  * Format of the date when rendered in the input(s).
179
180
  */
@@ -227,17 +228,14 @@ process.env.NODE_ENV !== "production" ? MultiInputDateRangeField.propTypes = {
227
228
  referenceDate: PropTypes.object,
228
229
  /**
229
230
  * The currently selected sections.
230
- * This prop accept four formats:
231
+ * This prop accepts four formats:
231
232
  * 1. If a number is provided, the section at this index will be selected.
232
- * 2. If an object with a `startIndex` and `endIndex` properties are provided, the sections between those two indexes will be selected.
233
- * 3. If a string of type `FieldSectionType` is provided, the first section with that name will be selected.
234
- * 4. If `null` is provided, no section will be selected
233
+ * 2. If a string of type `FieldSectionType` is provided, the first section with that name will be selected.
234
+ * 3. If `"all"` is provided, all the sections will be selected.
235
+ * 4. If `null` is provided, no section will be selected.
235
236
  * If not provided, the selected sections will be handled internally.
236
237
  */
237
- selectedSections: PropTypes.oneOfType([PropTypes.oneOf(['all', 'day', 'empty', 'hours', 'meridiem', 'minutes', 'month', 'seconds', 'weekDay', 'year']), PropTypes.number, PropTypes.shape({
238
- endIndex: PropTypes.number.isRequired,
239
- startIndex: PropTypes.number.isRequired
240
- })]),
238
+ selectedSections: PropTypes.oneOfType([PropTypes.oneOf(['all', 'day', 'empty', 'hours', 'meridiem', 'minutes', 'month', 'seconds', 'weekDay', 'year']), PropTypes.number]),
241
239
  /**
242
240
  * Disable specific date.
243
241
  *
@@ -6,13 +6,12 @@ import Stack, { StackProps } from '@mui/material/Stack';
6
6
  import TextField from '@mui/material/TextField';
7
7
  import { UseDateRangeFieldProps } from '../internals/models/dateRange';
8
8
  import { UseMultiInputRangeFieldParams } from '../internals/hooks/useMultiInputRangeField/useMultiInputRangeField.types';
9
- import { MultiInputFieldRefs } from '../internals/models/fields';
10
- import { MultiInputRangeFieldClasses, RangePosition } from '../models';
11
- export type UseMultiInputDateRangeFieldParams<TDate extends PickerValidDate, TTextFieldSlotProps extends {}> = UseMultiInputRangeFieldParams<UseMultiInputDateRangeFieldProps<TDate>, TTextFieldSlotProps>;
12
- export interface UseMultiInputDateRangeFieldProps<TDate extends PickerValidDate> extends Omit<UseDateRangeFieldProps<TDate>, 'unstableFieldRef' | 'clearable' | 'onClear'>, MultiInputFieldRefs {
9
+ import { MultiInputFieldRefs, MultiInputRangeFieldClasses, RangePosition } from '../models';
10
+ export type UseMultiInputDateRangeFieldParams<TDate extends PickerValidDate, TEnableAccessibleFieldDOMStructure extends boolean, TTextFieldSlotProps extends {}> = UseMultiInputRangeFieldParams<UseMultiInputDateRangeFieldProps<TDate, TEnableAccessibleFieldDOMStructure>, TTextFieldSlotProps>;
11
+ export interface UseMultiInputDateRangeFieldProps<TDate extends PickerValidDate, TEnableAccessibleFieldDOMStructure extends boolean> extends Omit<UseDateRangeFieldProps<TDate, TEnableAccessibleFieldDOMStructure>, 'unstableFieldRef' | 'clearable' | 'onClear'>, MultiInputFieldRefs {
13
12
  }
14
- export type UseMultiInputDateRangeFieldComponentProps<TDate extends PickerValidDate, TChildProps extends {}> = Omit<TChildProps, keyof UseMultiInputDateRangeFieldProps<TDate>> & UseMultiInputDateRangeFieldProps<TDate>;
15
- export interface MultiInputDateRangeFieldProps<TDate extends PickerValidDate> extends UseMultiInputDateRangeFieldComponentProps<TDate, Omit<StackProps, 'position'>> {
13
+ export type UseMultiInputDateRangeFieldComponentProps<TDate extends PickerValidDate, TEnableAccessibleFieldDOMStructure extends boolean, TChildProps extends {}> = Omit<TChildProps, keyof UseMultiInputDateRangeFieldProps<TDate, TEnableAccessibleFieldDOMStructure>> & UseMultiInputDateRangeFieldProps<TDate, TEnableAccessibleFieldDOMStructure>;
14
+ export interface MultiInputDateRangeFieldProps<TDate extends PickerValidDate, TEnableAccessibleFieldDOMStructure extends boolean = false> extends UseMultiInputDateRangeFieldComponentProps<TDate, TEnableAccessibleFieldDOMStructure, Omit<StackProps, 'position'>> {
16
15
  autoFocus?: boolean;
17
16
  /**
18
17
  * Override or extend the styles applied to the component.
@@ -27,9 +26,8 @@ export interface MultiInputDateRangeFieldProps<TDate extends PickerValidDate> ex
27
26
  * The props used for each component slot.
28
27
  * @default {}
29
28
  */
30
- slotProps?: MultiInputDateRangeFieldSlotProps<TDate>;
29
+ slotProps?: MultiInputDateRangeFieldSlotProps<TDate, TEnableAccessibleFieldDOMStructure>;
31
30
  }
32
- export type MultiInputDateRangeFieldOwnerState<TDate extends PickerValidDate> = MultiInputDateRangeFieldProps<TDate>;
33
31
  export interface MultiInputDateRangeFieldSlots {
34
32
  /**
35
33
  * Element rendered at the root.
@@ -39,8 +37,7 @@ export interface MultiInputDateRangeFieldSlots {
39
37
  /**
40
38
  * Form control with an input to render a date.
41
39
  * It is rendered twice: once for the start date and once for the end date.
42
- * Receives the same props as `@mui/material/TextField`.
43
- * @default TextField from '@mui/material'
40
+ * @default TextField from '@mui/material' or PickersTextField if `enableAccessibleFieldDOMStructure` is `true`.
44
41
  */
45
42
  textField?: React.ElementType;
46
43
  /**
@@ -49,10 +46,10 @@ export interface MultiInputDateRangeFieldSlots {
49
46
  */
50
47
  separator?: React.ElementType;
51
48
  }
52
- export interface MultiInputDateRangeFieldSlotProps<TDate extends PickerValidDate> {
53
- root?: SlotComponentProps<typeof Stack, {}, MultiInputDateRangeFieldOwnerState<TDate>>;
54
- textField?: SlotComponentProps<typeof TextField, {}, MultiInputDateRangeFieldOwnerState<TDate> & {
49
+ export interface MultiInputDateRangeFieldSlotProps<TDate extends PickerValidDate, TEnableAccessibleFieldDOMStructure extends boolean> {
50
+ root?: SlotComponentProps<typeof Stack, {}, MultiInputDateRangeFieldProps<TDate, TEnableAccessibleFieldDOMStructure>>;
51
+ textField?: SlotComponentProps<typeof TextField, {}, MultiInputDateRangeFieldProps<TDate, TEnableAccessibleFieldDOMStructure> & {
55
52
  position: RangePosition;
56
53
  }>;
57
- separator?: SlotComponentProps<typeof Typography, {}, MultiInputDateRangeFieldOwnerState<TDate>>;
54
+ separator?: SlotComponentProps<typeof Typography, {}, MultiInputDateRangeFieldProps<TDate, TEnableAccessibleFieldDOMStructure>>;
58
55
  }
@@ -4,7 +4,7 @@ import { MultiInputDateTimeRangeFieldProps } from './MultiInputDateTimeRangeFiel
4
4
  import { MultiInputRangeFieldClasses } from '../models';
5
5
  export declare const multiInputDateTimeRangeFieldClasses: MultiInputRangeFieldClasses;
6
6
  export declare const getMultiInputDateTimeRangeFieldUtilityClass: (slot: string) => string;
7
- type MultiInputDateTimeRangeFieldComponent = (<TDate extends PickerValidDate>(props: MultiInputDateTimeRangeFieldProps<TDate> & React.RefAttributes<HTMLDivElement>) => React.JSX.Element) & {
7
+ type MultiInputDateTimeRangeFieldComponent = (<TDate extends PickerValidDate, TEnableAccessibleFieldDOMStructure extends boolean = false>(props: MultiInputDateTimeRangeFieldProps<TDate, TEnableAccessibleFieldDOMStructure> & React.RefAttributes<HTMLDivElement>) => React.JSX.Element) & {
8
8
  propTypes?: any;
9
9
  };
10
10
  /**