@mui/x-date-pickers-pro 7.0.0-beta.1 → 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 (293) hide show
  1. package/CHANGELOG.md +437 -4
  2. package/DateRangeCalendar/DateRangeCalendar.d.ts +2 -1
  3. package/DateRangeCalendar/DateRangeCalendar.js +9 -7
  4. package/DateRangeCalendar/DateRangeCalendar.types.d.ts +10 -7
  5. package/DateRangeCalendar/useDragRange.d.ts +4 -4
  6. package/DateRangePicker/DateRangePicker.d.ts +2 -1
  7. package/DateRangePicker/DateRangePicker.js +14 -14
  8. package/DateRangePicker/DateRangePicker.types.d.ts +5 -4
  9. package/DateRangePicker/DateRangePickerToolbar.d.ts +6 -2
  10. package/DateRangePicker/DateRangePickerToolbar.js +7 -1
  11. package/DateRangePicker/shared.d.ts +6 -5
  12. package/DateRangePickerDay/DateRangePickerDay.d.ts +3 -2
  13. package/DateRangePickerDay/DateRangePickerDay.js +2 -2
  14. package/DateTimeRangePicker/DateTimeRangePicker.d.ts +2 -1
  15. package/DateTimeRangePicker/DateTimeRangePicker.js +20 -21
  16. package/DateTimeRangePicker/DateTimeRangePicker.types.d.ts +5 -4
  17. package/DateTimeRangePicker/DateTimeRangePickerTabs.js +7 -1
  18. package/DateTimeRangePicker/DateTimeRangePickerTimeWrapper.d.ts +3 -2
  19. package/DateTimeRangePicker/DateTimeRangePickerToolbar.d.ts +6 -2
  20. package/DateTimeRangePicker/DateTimeRangePickerToolbar.js +7 -1
  21. package/DateTimeRangePicker/shared.d.ts +6 -5
  22. package/DesktopDateRangePicker/DesktopDateRangePicker.d.ts +2 -1
  23. package/DesktopDateRangePicker/DesktopDateRangePicker.js +14 -14
  24. package/DesktopDateRangePicker/DesktopDateRangePicker.types.d.ts +5 -4
  25. package/DesktopDateTimeRangePicker/DesktopDateTimeRangePicker.d.ts +2 -1
  26. package/DesktopDateTimeRangePicker/DesktopDateTimeRangePicker.js +20 -21
  27. package/DesktopDateTimeRangePicker/DesktopDateTimeRangePicker.types.d.ts +5 -4
  28. package/DesktopDateTimeRangePicker/DesktopDateTimeRangePickerLayout.d.ts +2 -1
  29. package/MobileDateRangePicker/MobileDateRangePicker.d.ts +2 -1
  30. package/MobileDateRangePicker/MobileDateRangePicker.js +14 -14
  31. package/MobileDateRangePicker/MobileDateRangePicker.types.d.ts +5 -4
  32. package/MobileDateTimeRangePicker/MobileDateTimeRangePicker.d.ts +2 -1
  33. package/MobileDateTimeRangePicker/MobileDateTimeRangePicker.js +20 -21
  34. package/MobileDateTimeRangePicker/MobileDateTimeRangePicker.types.d.ts +5 -4
  35. package/MultiInputDateRangeField/MultiInputDateRangeField.d.ts +2 -1
  36. package/MultiInputDateRangeField/MultiInputDateRangeField.js +22 -24
  37. package/MultiInputDateRangeField/MultiInputDateRangeField.types.d.ts +12 -14
  38. package/MultiInputDateTimeRangeField/MultiInputDateTimeRangeField.d.ts +2 -1
  39. package/MultiInputDateTimeRangeField/MultiInputDateTimeRangeField.js +26 -28
  40. package/MultiInputDateTimeRangeField/MultiInputDateTimeRangeField.types.d.ts +13 -16
  41. package/MultiInputTimeRangeField/MultiInputTimeRangeField.d.ts +2 -1
  42. package/MultiInputTimeRangeField/MultiInputTimeRangeField.js +22 -24
  43. package/MultiInputTimeRangeField/MultiInputTimeRangeField.types.d.ts +13 -16
  44. package/SingleInputDateRangeField/SingleInputDateRangeField.d.ts +3 -2
  45. package/SingleInputDateRangeField/SingleInputDateRangeField.js +17 -15
  46. package/SingleInputDateRangeField/SingleInputDateRangeField.types.d.ts +11 -13
  47. package/SingleInputDateRangeField/index.d.ts +1 -1
  48. package/SingleInputDateRangeField/useSingleInputDateRangeField.d.ts +3 -3
  49. package/SingleInputDateRangeField/useSingleInputDateRangeField.js +2 -15
  50. package/SingleInputDateTimeRangeField/SingleInputDateTimeRangeField.d.ts +3 -2
  51. package/SingleInputDateTimeRangeField/SingleInputDateTimeRangeField.js +21 -19
  52. package/SingleInputDateTimeRangeField/SingleInputDateTimeRangeField.types.d.ts +12 -14
  53. package/SingleInputDateTimeRangeField/index.d.ts +1 -1
  54. package/SingleInputDateTimeRangeField/useSingleInputDateTimeRangeField.d.ts +3 -3
  55. package/SingleInputDateTimeRangeField/useSingleInputDateTimeRangeField.js +2 -20
  56. package/SingleInputTimeRangeField/SingleInputTimeRangeField.d.ts +3 -2
  57. package/SingleInputTimeRangeField/SingleInputTimeRangeField.js +16 -14
  58. package/SingleInputTimeRangeField/SingleInputTimeRangeField.types.d.ts +12 -14
  59. package/SingleInputTimeRangeField/index.d.ts +1 -1
  60. package/SingleInputTimeRangeField/useSingleInputTimeRangeField.d.ts +3 -3
  61. package/SingleInputTimeRangeField/useSingleInputTimeRangeField.js +2 -14
  62. package/StaticDateRangePicker/StaticDateRangePicker.d.ts +2 -1
  63. package/StaticDateRangePicker/StaticDateRangePicker.js +5 -6
  64. package/StaticDateRangePicker/StaticDateRangePicker.types.d.ts +4 -3
  65. package/dateRangeViewRenderers/dateRangeViewRenderers.d.ts +3 -2
  66. package/index.d.ts +7 -2
  67. package/index.js +8 -2
  68. package/internals/hooks/models/useRangePicker.d.ts +8 -7
  69. package/internals/hooks/useDesktopRangePicker/useDesktopRangePicker.d.ts +2 -1
  70. package/internals/hooks/useDesktopRangePicker/useDesktopRangePicker.js +17 -8
  71. package/internals/hooks/useDesktopRangePicker/useDesktopRangePicker.types.d.ts +7 -6
  72. package/internals/hooks/useEnrichedRangePickerFieldProps.d.ts +15 -15
  73. package/internals/hooks/useEnrichedRangePickerFieldProps.js +37 -40
  74. package/internals/hooks/useMobileRangePicker/useMobileRangePicker.d.ts +2 -1
  75. package/internals/hooks/useMobileRangePicker/useMobileRangePicker.js +18 -9
  76. package/internals/hooks/useMobileRangePicker/useMobileRangePicker.types.d.ts +7 -6
  77. package/internals/hooks/useMultiInputFieldSelectedSections.d.ts +21 -0
  78. package/internals/hooks/useMultiInputFieldSelectedSections.js +43 -0
  79. package/internals/hooks/useMultiInputRangeField/useMultiInputDateRangeField.d.ts +2 -1
  80. package/internals/hooks/useMultiInputRangeField/useMultiInputDateRangeField.js +17 -12
  81. package/internals/hooks/useMultiInputRangeField/useMultiInputDateTimeRangeField.d.ts +3 -3
  82. package/internals/hooks/useMultiInputRangeField/useMultiInputDateTimeRangeField.js +23 -31
  83. package/internals/hooks/useMultiInputRangeField/useMultiInputRangeField.types.d.ts +4 -4
  84. package/internals/hooks/useMultiInputRangeField/useMultiInputTimeRangeField.d.ts +3 -3
  85. package/internals/hooks/useMultiInputRangeField/useMultiInputTimeRangeField.js +23 -25
  86. package/internals/hooks/useRangePosition.d.ts +2 -4
  87. package/internals/hooks/useRangePosition.js +3 -6
  88. package/internals/hooks/useStaticRangePicker/useStaticRangePicker.d.ts +2 -1
  89. package/internals/hooks/useStaticRangePicker/useStaticRangePicker.js +1 -0
  90. package/internals/hooks/useStaticRangePicker/useStaticRangePicker.types.d.ts +6 -6
  91. package/internals/models/dateRange.d.ts +5 -16
  92. package/internals/models/dateTimeRange.d.ts +5 -6
  93. package/internals/models/index.d.ts +0 -1
  94. package/internals/models/index.js +0 -1
  95. package/internals/models/timeRange.d.ts +4 -6
  96. package/internals/utils/date-fields-utils.d.ts +1 -5
  97. package/internals/utils/date-range-manager.d.ts +5 -5
  98. package/internals/utils/date-utils.d.ts +5 -5
  99. package/internals/utils/releaseInfo.js +1 -1
  100. package/internals/utils/validation/validateDateRange.d.ts +2 -2
  101. package/internals/utils/validation/validateDateTimeRange.d.ts +2 -2
  102. package/internals/utils/valueManagers.d.ts +3 -3
  103. package/internals/utils/valueManagers.js +11 -6
  104. package/models/fields.d.ts +69 -0
  105. package/models/index.d.ts +1 -0
  106. package/models/index.js +1 -0
  107. package/models/range.d.ts +3 -2
  108. package/modern/DateRangeCalendar/DateRangeCalendar.js +9 -7
  109. package/modern/DateRangePicker/DateRangePicker.js +14 -14
  110. package/modern/DateRangePicker/DateRangePickerToolbar.js +7 -1
  111. package/modern/DateRangePickerDay/DateRangePickerDay.js +2 -2
  112. package/modern/DateTimeRangePicker/DateTimeRangePicker.js +20 -21
  113. package/modern/DateTimeRangePicker/DateTimeRangePickerTabs.js +7 -1
  114. package/modern/DateTimeRangePicker/DateTimeRangePickerToolbar.js +7 -1
  115. package/modern/DesktopDateRangePicker/DesktopDateRangePicker.js +14 -14
  116. package/modern/DesktopDateTimeRangePicker/DesktopDateTimeRangePicker.js +20 -21
  117. package/modern/MobileDateRangePicker/MobileDateRangePicker.js +14 -14
  118. package/modern/MobileDateTimeRangePicker/MobileDateTimeRangePicker.js +20 -21
  119. package/modern/MultiInputDateRangeField/MultiInputDateRangeField.js +22 -24
  120. package/modern/MultiInputDateTimeRangeField/MultiInputDateTimeRangeField.js +26 -28
  121. package/modern/MultiInputTimeRangeField/MultiInputTimeRangeField.js +22 -24
  122. package/modern/SingleInputDateRangeField/SingleInputDateRangeField.js +17 -15
  123. package/modern/SingleInputDateRangeField/useSingleInputDateRangeField.js +2 -14
  124. package/modern/SingleInputDateTimeRangeField/SingleInputDateTimeRangeField.js +21 -19
  125. package/modern/SingleInputDateTimeRangeField/useSingleInputDateTimeRangeField.js +2 -19
  126. package/modern/SingleInputTimeRangeField/SingleInputTimeRangeField.js +16 -14
  127. package/modern/SingleInputTimeRangeField/useSingleInputTimeRangeField.js +2 -13
  128. package/modern/StaticDateRangePicker/StaticDateRangePicker.js +5 -6
  129. package/modern/index.js +8 -2
  130. package/modern/internals/hooks/useDesktopRangePicker/useDesktopRangePicker.js +17 -8
  131. package/modern/internals/hooks/useEnrichedRangePickerFieldProps.js +34 -37
  132. package/modern/internals/hooks/useMobileRangePicker/useMobileRangePicker.js +18 -9
  133. package/modern/internals/hooks/useMultiInputFieldSelectedSections.js +40 -0
  134. package/modern/internals/hooks/useMultiInputRangeField/useMultiInputDateRangeField.js +17 -12
  135. package/modern/internals/hooks/useMultiInputRangeField/useMultiInputDateTimeRangeField.js +23 -30
  136. package/modern/internals/hooks/useMultiInputRangeField/useMultiInputTimeRangeField.js +23 -24
  137. package/modern/internals/hooks/useRangePosition.js +3 -6
  138. package/modern/internals/hooks/useStaticRangePicker/useStaticRangePicker.js +1 -0
  139. package/modern/internals/models/index.js +0 -1
  140. package/modern/internals/utils/releaseInfo.js +1 -1
  141. package/modern/internals/utils/valueManagers.js +11 -6
  142. package/modern/models/index.js +1 -0
  143. package/node/DateRangeCalendar/DateRangeCalendar.js +10 -8
  144. package/node/DateRangePicker/DateRangePicker.js +14 -14
  145. package/node/DateRangePicker/DateRangePickerToolbar.js +7 -1
  146. package/node/DateRangePickerDay/DateRangePickerDay.js +3 -3
  147. package/node/DateTimeRangePicker/DateTimeRangePicker.js +20 -21
  148. package/node/DateTimeRangePicker/DateTimeRangePickerTabs.js +7 -1
  149. package/node/DateTimeRangePicker/DateTimeRangePickerToolbar.js +7 -1
  150. package/node/DesktopDateRangePicker/DesktopDateRangePicker.js +14 -14
  151. package/node/DesktopDateTimeRangePicker/DesktopDateTimeRangePicker.js +20 -21
  152. package/node/MobileDateRangePicker/MobileDateRangePicker.js +14 -14
  153. package/node/MobileDateTimeRangePicker/MobileDateTimeRangePicker.js +22 -23
  154. package/node/MultiInputDateRangeField/MultiInputDateRangeField.js +22 -24
  155. package/node/MultiInputDateTimeRangeField/MultiInputDateTimeRangeField.js +26 -28
  156. package/node/MultiInputTimeRangeField/MultiInputTimeRangeField.js +22 -24
  157. package/node/SingleInputDateRangeField/SingleInputDateRangeField.js +17 -15
  158. package/node/SingleInputDateRangeField/useSingleInputDateRangeField.js +2 -16
  159. package/node/SingleInputDateTimeRangeField/SingleInputDateTimeRangeField.js +24 -22
  160. package/node/SingleInputDateTimeRangeField/useSingleInputDateTimeRangeField.js +2 -21
  161. package/node/SingleInputTimeRangeField/SingleInputTimeRangeField.js +16 -14
  162. package/node/SingleInputTimeRangeField/useSingleInputTimeRangeField.js +2 -15
  163. package/node/StaticDateRangePicker/StaticDateRangePicker.js +5 -6
  164. package/node/index.js +18 -9
  165. package/node/internals/hooks/useDesktopRangePicker/useDesktopRangePicker.js +18 -9
  166. package/node/internals/hooks/useEnrichedRangePickerFieldProps.js +33 -36
  167. package/node/internals/hooks/useMobileRangePicker/useMobileRangePicker.js +19 -10
  168. package/node/internals/hooks/useMultiInputFieldSelectedSections.js +50 -0
  169. package/node/internals/hooks/useMultiInputRangeField/useMultiInputDateRangeField.js +16 -11
  170. package/node/internals/hooks/useMultiInputRangeField/useMultiInputDateTimeRangeField.js +23 -31
  171. package/node/internals/hooks/useMultiInputRangeField/useMultiInputTimeRangeField.js +23 -25
  172. package/node/internals/hooks/useRangePosition.js +3 -8
  173. package/node/internals/hooks/useStaticRangePicker/useStaticRangePicker.js +1 -0
  174. package/node/internals/models/index.js +0 -11
  175. package/node/internals/utils/releaseInfo.js +1 -1
  176. package/node/internals/utils/valueManagers.js +10 -5
  177. package/node/models/index.js +11 -0
  178. package/package.json +6 -6
  179. package/themeAugmentation/props.d.ts +17 -17
  180. package/internals/models/fields.d.ts +0 -49
  181. package/legacy/AdapterDateFns/index.js +0 -1
  182. package/legacy/AdapterDateFnsJalali/index.js +0 -1
  183. package/legacy/AdapterDateFnsV3/index.js +0 -1
  184. package/legacy/AdapterDayjs/index.js +0 -1
  185. package/legacy/AdapterLuxon/index.js +0 -1
  186. package/legacy/AdapterMoment/index.js +0 -1
  187. package/legacy/AdapterMomentHijri/index.js +0 -1
  188. package/legacy/AdapterMomentJalaali/index.js +0 -1
  189. package/legacy/DateRangeCalendar/DateRangeCalendar.js +0 -764
  190. package/legacy/DateRangeCalendar/DateRangeCalendar.types.js +0 -1
  191. package/legacy/DateRangeCalendar/dateRangeCalendarClasses.js +0 -5
  192. package/legacy/DateRangeCalendar/index.js +0 -2
  193. package/legacy/DateRangeCalendar/useDragRange.js +0 -258
  194. package/legacy/DateRangePicker/DateRangePicker.js +0 -334
  195. package/legacy/DateRangePicker/DateRangePicker.types.js +0 -1
  196. package/legacy/DateRangePicker/DateRangePickerToolbar.js +0 -127
  197. package/legacy/DateRangePicker/dateRangePickerToolbarClasses.js +0 -5
  198. package/legacy/DateRangePicker/index.js +0 -3
  199. package/legacy/DateRangePicker/shared.js +0 -33
  200. package/legacy/DateRangePickerDay/DateRangePickerDay.js +0 -366
  201. package/legacy/DateRangePickerDay/dateRangePickerDayClasses.js +0 -5
  202. package/legacy/DateRangePickerDay/index.js +0 -2
  203. package/legacy/DateTimeRangePicker/DateTimeRangePicker.js +0 -413
  204. package/legacy/DateTimeRangePicker/DateTimeRangePicker.types.js +0 -1
  205. package/legacy/DateTimeRangePicker/DateTimeRangePickerTabs.js +0 -191
  206. package/legacy/DateTimeRangePicker/DateTimeRangePickerTimeWrapper.js +0 -57
  207. package/legacy/DateTimeRangePicker/DateTimeRangePickerToolbar.js +0 -184
  208. package/legacy/DateTimeRangePicker/dateTimeRangePickerTabsClasses.js +0 -6
  209. package/legacy/DateTimeRangePicker/dateTimeRangePickerToolbarClasses.js +0 -5
  210. package/legacy/DateTimeRangePicker/index.js +0 -5
  211. package/legacy/DateTimeRangePicker/shared.js +0 -54
  212. package/legacy/DesktopDateRangePicker/DesktopDateRangePicker.js +0 -343
  213. package/legacy/DesktopDateRangePicker/DesktopDateRangePicker.types.js +0 -1
  214. package/legacy/DesktopDateRangePicker/index.js +0 -1
  215. package/legacy/DesktopDateTimeRangePicker/DesktopDateTimeRangePicker.js +0 -491
  216. package/legacy/DesktopDateTimeRangePicker/DesktopDateTimeRangePicker.types.js +0 -1
  217. package/legacy/DesktopDateTimeRangePicker/DesktopDateTimeRangePickerLayout.js +0 -48
  218. package/legacy/DesktopDateTimeRangePicker/index.js +0 -1
  219. package/legacy/MobileDateRangePicker/MobileDateRangePicker.js +0 -339
  220. package/legacy/MobileDateRangePicker/MobileDateRangePicker.types.js +0 -1
  221. package/legacy/MobileDateRangePicker/index.js +0 -1
  222. package/legacy/MobileDateTimeRangePicker/MobileDateTimeRangePicker.js +0 -484
  223. package/legacy/MobileDateTimeRangePicker/MobileDateTimeRangePicker.types.js +0 -1
  224. package/legacy/MobileDateTimeRangePicker/index.js +0 -1
  225. package/legacy/MultiInputDateRangeField/MultiInputDateRangeField.js +0 -316
  226. package/legacy/MultiInputDateRangeField/MultiInputDateRangeField.types.js +0 -1
  227. package/legacy/MultiInputDateRangeField/index.js +0 -2
  228. package/legacy/MultiInputDateTimeRangeField/MultiInputDateTimeRangeField.js +0 -357
  229. package/legacy/MultiInputDateTimeRangeField/MultiInputDateTimeRangeField.types.js +0 -1
  230. package/legacy/MultiInputDateTimeRangeField/index.js +0 -2
  231. package/legacy/MultiInputTimeRangeField/MultiInputTimeRangeField.js +0 -330
  232. package/legacy/MultiInputTimeRangeField/MultiInputTimeRangeField.types.js +0 -1
  233. package/legacy/MultiInputTimeRangeField/index.js +0 -2
  234. package/legacy/SingleInputDateRangeField/SingleInputDateRangeField.js +0 -307
  235. package/legacy/SingleInputDateRangeField/SingleInputDateRangeField.types.js +0 -1
  236. package/legacy/SingleInputDateRangeField/index.js +0 -2
  237. package/legacy/SingleInputDateRangeField/useSingleInputDateRangeField.js +0 -30
  238. package/legacy/SingleInputDateTimeRangeField/SingleInputDateTimeRangeField.js +0 -348
  239. package/legacy/SingleInputDateTimeRangeField/SingleInputDateTimeRangeField.types.js +0 -1
  240. package/legacy/SingleInputDateTimeRangeField/index.js +0 -2
  241. package/legacy/SingleInputDateTimeRangeField/useSingleInputDateTimeRangeField.js +0 -35
  242. package/legacy/SingleInputTimeRangeField/SingleInputTimeRangeField.js +0 -321
  243. package/legacy/SingleInputTimeRangeField/SingleInputTimeRangeField.types.js +0 -1
  244. package/legacy/SingleInputTimeRangeField/index.js +0 -2
  245. package/legacy/SingleInputTimeRangeField/useSingleInputTimeRangeField.js +0 -29
  246. package/legacy/StaticDateRangePicker/StaticDateRangePicker.js +0 -276
  247. package/legacy/StaticDateRangePicker/StaticDateRangePicker.types.js +0 -1
  248. package/legacy/StaticDateRangePicker/index.js +0 -1
  249. package/legacy/dateRangeViewRenderers/dateRangeViewRenderers.js +0 -87
  250. package/legacy/dateRangeViewRenderers/index.js +0 -1
  251. package/legacy/index.js +0 -33
  252. package/legacy/internals/constants/dimensions.js +0 -5
  253. package/legacy/internals/hooks/models/index.js +0 -1
  254. package/legacy/internals/hooks/models/useRangePicker.js +0 -1
  255. package/legacy/internals/hooks/useDesktopRangePicker/index.js +0 -1
  256. package/legacy/internals/hooks/useDesktopRangePicker/useDesktopRangePicker.js +0 -154
  257. package/legacy/internals/hooks/useDesktopRangePicker/useDesktopRangePicker.types.js +0 -1
  258. package/legacy/internals/hooks/useEnrichedRangePickerFieldProps.js +0 -258
  259. package/legacy/internals/hooks/useMobileRangePicker/index.js +0 -1
  260. package/legacy/internals/hooks/useMobileRangePicker/useMobileRangePicker.js +0 -144
  261. package/legacy/internals/hooks/useMobileRangePicker/useMobileRangePicker.types.js +0 -1
  262. package/legacy/internals/hooks/useMultiInputRangeField/shared.js +0 -9
  263. package/legacy/internals/hooks/useMultiInputRangeField/useMultiInputDateRangeField.js +0 -102
  264. package/legacy/internals/hooks/useMultiInputRangeField/useMultiInputDateTimeRangeField.js +0 -115
  265. package/legacy/internals/hooks/useMultiInputRangeField/useMultiInputRangeField.types.js +0 -1
  266. package/legacy/internals/hooks/useMultiInputRangeField/useMultiInputTimeRangeField.js +0 -109
  267. package/legacy/internals/hooks/useRangePosition.js +0 -39
  268. package/legacy/internals/hooks/useStaticRangePicker/index.js +0 -1
  269. package/legacy/internals/hooks/useStaticRangePicker/useStaticRangePicker.js +0 -76
  270. package/legacy/internals/hooks/useStaticRangePicker/useStaticRangePicker.types.js +0 -1
  271. package/legacy/internals/models/dateRange.js +0 -1
  272. package/legacy/internals/models/dateTimeRange.js +0 -1
  273. package/legacy/internals/models/index.js +0 -5
  274. package/legacy/internals/models/rangePickerProps.js +0 -1
  275. package/legacy/internals/models/timeRange.js +0 -1
  276. package/legacy/internals/utils/date-fields-utils.js +0 -26
  277. package/legacy/internals/utils/date-range-manager.js +0 -65
  278. package/legacy/internals/utils/date-utils.js +0 -12
  279. package/legacy/internals/utils/releaseInfo.js +0 -13
  280. package/legacy/internals/utils/validation/validateDateRange.js +0 -45
  281. package/legacy/internals/utils/validation/validateDateTimeRange.js +0 -45
  282. package/legacy/internals/utils/validation/validateTimeRange.js +0 -32
  283. package/legacy/internals/utils/valueManagers.js +0 -135
  284. package/legacy/locales/index.js +0 -1
  285. package/legacy/models/index.js +0 -3
  286. package/legacy/models/multiInputRangeFieldClasses.js +0 -1
  287. package/legacy/models/range.js +0 -1
  288. package/legacy/models/validation.js +0 -1
  289. package/legacy/themeAugmentation/index.js +0 -4
  290. package/modern/internals/models/fields.js +0 -1
  291. /package/{internals/models → models}/fields.js +0 -0
  292. /package/{legacy/internals → modern}/models/fields.js +0 -0
  293. /package/node/{internals/models → models}/fields.js +0 -0
@@ -9,7 +9,7 @@ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends")
9
9
  var _objectWithoutPropertiesLoose2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutPropertiesLoose"));
10
10
  var React = _interopRequireWildcard(require("react"));
11
11
  var _utils = require("@mui/base/utils");
12
- var _xLicensePro = require("@mui/x-license-pro");
12
+ var _xLicense = require("@mui/x-license");
13
13
  var _LocalizationProvider = require("@mui/x-date-pickers/LocalizationProvider");
14
14
  var _PickersLayout = require("@mui/x-date-pickers/PickersLayout");
15
15
  var _internals = require("@mui/x-date-pickers/internals");
@@ -26,7 +26,7 @@ const useDesktopRangePicker = _ref => {
26
26
  props
27
27
  } = _ref,
28
28
  pickerParams = (0, _objectWithoutPropertiesLoose2.default)(_ref, _excluded);
29
- (0, _xLicensePro.useLicenseVerifier)('x-date-pickers-pro', releaseInfo);
29
+ (0, _xLicense.useLicenseVerifier)('x-date-pickers-pro', releaseInfo);
30
30
  const {
31
31
  slots,
32
32
  slotProps,
@@ -34,6 +34,9 @@ const useDesktopRangePicker = _ref => {
34
34
  sx,
35
35
  format,
36
36
  formatDensity,
37
+ enableAccessibleFieldDOMStructure,
38
+ selectedSections,
39
+ onSelectedSectionsChange,
37
40
  timezone,
38
41
  label,
39
42
  inputRef,
@@ -48,12 +51,14 @@ const useDesktopRangePicker = _ref => {
48
51
  const fieldContainerRef = React.useRef(null);
49
52
  const anchorRef = React.useRef(null);
50
53
  const popperRef = React.useRef(null);
54
+ const startFieldRef = React.useRef(null);
55
+ const endFieldRef = React.useRef(null);
51
56
  const initialView = React.useRef(props.openTo ?? null);
57
+ const fieldType = slots.field.fieldType ?? 'multi-input';
52
58
  const {
53
59
  rangePosition,
54
- onRangePositionChange,
55
- singleInputFieldRef
56
- } = (0, _useRangePosition.useRangePosition)(props);
60
+ onRangePositionChange
61
+ } = (0, _useRangePosition.useRangePosition)(props, fieldType === 'single-input' ? startFieldRef : undefined);
57
62
  const {
58
63
  open,
59
64
  actions,
@@ -65,6 +70,7 @@ const useDesktopRangePicker = _ref => {
65
70
  props,
66
71
  wrapperVariant: 'desktop',
67
72
  autoFocusView: false,
73
+ fieldRef: rangePosition === 'start' ? startFieldRef : endFieldRef,
68
74
  additionalViewProps: {
69
75
  rangePosition,
70
76
  onRangePositionChange
@@ -85,7 +91,6 @@ const useDesktopRangePicker = _ref => {
85
91
  });
86
92
  };
87
93
  const Field = slots.field;
88
- const fieldType = Field.fieldType ?? 'multi-input';
89
94
  const fieldProps = (0, _utils.useSlotProps)({
90
95
  elementType: Field,
91
96
  externalSlotProps: slotProps?.field,
@@ -96,13 +101,16 @@ const useDesktopRangePicker = _ref => {
96
101
  sx,
97
102
  format,
98
103
  formatDensity,
104
+ enableAccessibleFieldDOMStructure,
105
+ selectedSections,
106
+ onSelectedSectionsChange,
99
107
  timezone,
100
108
  autoFocus: autoFocus && !props.open,
101
109
  ref: fieldContainerRef
102
- }, fieldType === 'single-input' && {
110
+ }, inputRef ? {
103
111
  inputRef,
104
112
  name
105
- }),
113
+ } : {}),
106
114
  ownerState: props
107
115
  });
108
116
  const enrichedFieldProps = (0, _useEnrichedRangePickerFieldProps.useEnrichedRangePickerFieldProps)({
@@ -117,11 +125,12 @@ const useDesktopRangePicker = _ref => {
117
125
  onBlur: handleBlur,
118
126
  rangePosition,
119
127
  onRangePositionChange,
120
- singleInputFieldRef,
121
128
  pickerSlotProps: slotProps,
122
129
  pickerSlots: slots,
123
130
  fieldProps,
124
131
  anchorRef,
132
+ startFieldRef,
133
+ endFieldRef,
125
134
  currentView: layoutProps.view !== props.openTo ? layoutProps.view : undefined,
126
135
  initialView: initialView.current ?? undefined,
127
136
  onViewChange: layoutProps.onViewChange
@@ -32,34 +32,32 @@ const useMultiInputFieldSlotProps = ({
32
32
  anchorRef,
33
33
  currentView,
34
34
  initialView,
35
- onViewChange
35
+ onViewChange,
36
+ startFieldRef,
37
+ endFieldRef
36
38
  }) => {
37
39
  const localeText = (0, _internals.useLocaleText)();
38
- const startRef = React.useRef(null);
39
- const endRef = React.useRef(null);
40
- const startFieldRef = React.useRef(null);
41
- const endFieldRef = React.useRef(null);
42
40
  const handleStartFieldRef = (0, _useForkRef.default)(fieldProps.unstableStartFieldRef, startFieldRef);
43
- const handleEndFieldRef = (0, _useForkRef.default)(fieldProps.unstableFieldRef, endFieldRef);
41
+ const handleEndFieldRef = (0, _useForkRef.default)(fieldProps.unstableEndFieldRef, endFieldRef);
44
42
  const previousRangePosition = React.useRef(rangePosition);
45
43
  React.useEffect(() => {
46
44
  if (!open) {
47
45
  return;
48
46
  }
49
- const currentRef = rangePosition === 'start' ? startRef : endRef;
50
- currentRef.current?.focus();
51
47
  const currentFieldRef = rangePosition === 'start' ? startFieldRef : endFieldRef;
48
+ currentFieldRef.current?.focusField();
52
49
  if (!currentFieldRef.current || !currentView) {
53
50
  // could happen when the user is switching between the inputs
54
51
  previousRangePosition.current = rangePosition;
55
52
  return;
56
53
  }
54
+
57
55
  // bring back focus to the field
58
56
  currentFieldRef.current.setSelectedSections(
59
57
  // use the current view or `0` when the range position has just been swapped
60
58
  previousRangePosition.current === rangePosition ? currentView : 0);
61
59
  previousRangePosition.current = rangePosition;
62
- }, [rangePosition, open, currentView]);
60
+ }, [rangePosition, open, currentView, startFieldRef, endFieldRef]);
63
61
  const openRangeStartSelection = event => {
64
62
  event.stopPropagation();
65
63
  onRangePositionChange('start');
@@ -98,11 +96,10 @@ const useMultiInputFieldSlotProps = ({
98
96
  const slotProps = (0, _extends2.default)({}, fieldProps.slotProps, {
99
97
  textField: ownerState => {
100
98
  const resolvedComponentProps = (0, _utils.resolveComponentProps)(pickerSlotProps?.textField, ownerState);
101
- let inputProps;
99
+ let textFieldProps;
102
100
  let InputProps;
103
101
  if (ownerState.position === 'start') {
104
- inputProps = (0, _extends2.default)({
105
- inputRef: startRef,
102
+ textFieldProps = (0, _extends2.default)({
106
103
  label: inLocaleText?.start ?? localeText.start,
107
104
  onKeyDown: (0, _internals.onSpaceOrEnter)(openRangeStartSelection),
108
105
  onFocus: handleFocusStart,
@@ -118,8 +115,7 @@ const useMultiInputFieldSlotProps = ({
118
115
  });
119
116
  }
120
117
  } else {
121
- inputProps = (0, _extends2.default)({
122
- inputRef: endRef,
118
+ textFieldProps = (0, _extends2.default)({
123
119
  label: inLocaleText?.end ?? localeText.end,
124
120
  onKeyDown: (0, _internals.onSpaceOrEnter)(openRangeEndSelection),
125
121
  onFocus: handleFocusEnd,
@@ -133,7 +129,7 @@ const useMultiInputFieldSlotProps = ({
133
129
  }
134
130
  return (0, _extends2.default)({}, labelId != null && {
135
131
  id: `${labelId}-${ownerState.position}`
136
- }, inputProps, (0, _utils.resolveComponentProps)(pickerSlotProps?.textField, ownerState), {
132
+ }, textFieldProps, (0, _utils.resolveComponentProps)(pickerSlotProps?.textField, ownerState), {
137
133
  InputProps
138
134
  });
139
135
  },
@@ -147,12 +143,13 @@ const useMultiInputFieldSlotProps = ({
147
143
  });
148
144
 
149
145
  /* TODO: remove this when a clearable behavior for multiple input range fields is implemented */
150
- const restFieldProps = (0, _objectWithoutPropertiesLoose2.default)(fieldProps, _excluded);
146
+ const _ref = fieldProps,
147
+ restFieldProps = (0, _objectWithoutPropertiesLoose2.default)(_ref, _excluded);
151
148
  const enrichedFieldProps = (0, _extends2.default)({}, restFieldProps, {
152
- slots,
153
- slotProps,
154
149
  unstableStartFieldRef: handleStartFieldRef,
155
- unstableEndFieldRef: handleEndFieldRef
150
+ unstableEndFieldRef: handleEndFieldRef,
151
+ slots,
152
+ slotProps
156
153
  });
157
154
  return enrichedFieldProps;
158
155
  };
@@ -161,49 +158,50 @@ const useSingleInputFieldSlotProps = ({
161
158
  open,
162
159
  actions,
163
160
  readOnly,
164
- inputRef: inInputRef,
165
161
  labelId,
166
162
  disableOpenPicker,
167
163
  label,
168
164
  onBlur,
169
165
  rangePosition,
170
166
  onRangePositionChange,
171
- singleInputFieldRef,
167
+ startFieldRef,
168
+ endFieldRef,
172
169
  pickerSlots,
173
170
  pickerSlotProps,
174
171
  fieldProps,
175
172
  anchorRef,
176
173
  currentView
177
174
  }) => {
178
- const inputRef = React.useRef(null);
179
- const handleInputRef = (0, _useForkRef.default)(inInputRef, inputRef);
180
- const handleFieldRef = (0, _useForkRef.default)(fieldProps.unstableFieldRef, singleInputFieldRef);
175
+ const handleFieldRef = (0, _useForkRef.default)(fieldProps.unstableFieldRef, startFieldRef, endFieldRef);
181
176
  React.useEffect(() => {
182
- if (!open) {
177
+ if (!open || !startFieldRef.current) {
183
178
  return;
184
179
  }
185
- inputRef.current?.focus();
186
- if (!singleInputFieldRef.current || !currentView) {
180
+ if (startFieldRef.current.isFieldFocused()) {
187
181
  return;
188
182
  }
189
- const sections = singleInputFieldRef.current.getSections().map(section => section.type);
183
+
190
184
  // bring back focus to the field with the current view section selected
191
- singleInputFieldRef.current.setSelectedSections(rangePosition === 'start' ? sections.indexOf(currentView) : sections.lastIndexOf(currentView));
192
- }, [rangePosition, open, currentView, singleInputFieldRef]);
185
+ if (currentView) {
186
+ const sections = startFieldRef.current.getSections().map(section => section.type);
187
+ const newSelectedSection = rangePosition === 'start' ? sections.indexOf(currentView) : sections.lastIndexOf(currentView);
188
+ startFieldRef.current?.focusField(newSelectedSection);
189
+ }
190
+ }, [rangePosition, open, currentView, startFieldRef]);
193
191
  const updateRangePosition = () => {
194
- if (!singleInputFieldRef.current || inputRef.current !== (0, _internals.getActiveElement)(document)) {
192
+ if (!startFieldRef.current?.isFieldFocused()) {
195
193
  return;
196
194
  }
197
- const sections = singleInputFieldRef.current.getSections();
198
- const activeSectionIndex = singleInputFieldRef.current?.getActiveSectionIndex();
195
+ const sections = startFieldRef.current.getSections();
196
+ const activeSectionIndex = startFieldRef.current?.getActiveSectionIndex();
199
197
  const domRangePosition = activeSectionIndex == null || activeSectionIndex < sections.length / 2 ? 'start' : 'end';
200
198
  if (domRangePosition != null && domRangePosition !== rangePosition) {
201
199
  onRangePositionChange(domRangePosition);
202
200
  }
203
201
  };
204
- const handleSelectedSectionsChange = (0, _useEventCallback.default)(selectedSections => {
202
+ const handleSelectedSectionsChange = (0, _useEventCallback.default)(selectedSection => {
205
203
  setTimeout(updateRangePosition);
206
- fieldProps.onSelectedSectionsChange?.(selectedSections);
204
+ fieldProps.onSelectedSectionsChange?.(selectedSection);
207
205
  });
208
206
  const openPicker = event => {
209
207
  event.stopPropagation();
@@ -226,7 +224,6 @@ const useSingleInputFieldSlotProps = ({
226
224
  slotProps,
227
225
  label,
228
226
  unstableFieldRef: handleFieldRef,
229
- inputRef: handleInputRef,
230
227
  onKeyDown: (0, _internals.onSpaceOrEnter)(openPicker, fieldProps.onKeyDown),
231
228
  onSelectedSectionsChange: handleSelectedSectionsChange,
232
229
  onBlur,
@@ -9,7 +9,7 @@ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends")
9
9
  var _objectWithoutPropertiesLoose2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutPropertiesLoose"));
10
10
  var React = _interopRequireWildcard(require("react"));
11
11
  var _utils = require("@mui/base/utils");
12
- var _xLicensePro = require("@mui/x-license-pro");
12
+ var _xLicense = require("@mui/x-license");
13
13
  var _LocalizationProvider = require("@mui/x-date-pickers/LocalizationProvider");
14
14
  var _PickersLayout = require("@mui/x-date-pickers/PickersLayout");
15
15
  var _internals = require("@mui/x-date-pickers/internals");
@@ -27,7 +27,7 @@ const useMobileRangePicker = _ref => {
27
27
  props
28
28
  } = _ref,
29
29
  pickerParams = (0, _objectWithoutPropertiesLoose2.default)(_ref, _excluded);
30
- (0, _xLicensePro.useLicenseVerifier)('x-date-pickers-pro', releaseInfo);
30
+ (0, _xLicense.useLicenseVerifier)('x-date-pickers-pro', releaseInfo);
31
31
  const {
32
32
  slots,
33
33
  slotProps: innerSlotProps,
@@ -35,6 +35,9 @@ const useMobileRangePicker = _ref => {
35
35
  sx,
36
36
  format,
37
37
  formatDensity,
38
+ enableAccessibleFieldDOMStructure,
39
+ selectedSections,
40
+ onSelectedSectionsChange,
38
41
  timezone,
39
42
  label,
40
43
  inputRef,
@@ -44,11 +47,13 @@ const useMobileRangePicker = _ref => {
44
47
  disableOpenPicker,
45
48
  localeText
46
49
  } = props;
50
+ const startFieldRef = React.useRef(null);
51
+ const endFieldRef = React.useRef(null);
52
+ const fieldType = slots.field.fieldType ?? 'multi-input';
47
53
  const {
48
54
  rangePosition,
49
- onRangePositionChange,
50
- singleInputFieldRef
51
- } = (0, _useRangePosition.useRangePosition)(props);
55
+ onRangePositionChange
56
+ } = (0, _useRangePosition.useRangePosition)(props, fieldType === 'single-input' ? startFieldRef : undefined);
52
57
  const labelId = (0, _useId.default)();
53
58
  const contextLocaleText = (0, _internals.useLocaleText)();
54
59
  const {
@@ -61,13 +66,13 @@ const useMobileRangePicker = _ref => {
61
66
  props,
62
67
  wrapperVariant: 'mobile',
63
68
  autoFocusView: true,
69
+ fieldRef: rangePosition === 'start' ? startFieldRef : endFieldRef,
64
70
  additionalViewProps: {
65
71
  rangePosition,
66
72
  onRangePositionChange
67
73
  }
68
74
  }));
69
75
  const Field = slots.field;
70
- const fieldType = Field.fieldType ?? 'multi-input';
71
76
  const fieldProps = (0, _utils.useSlotProps)({
72
77
  elementType: Field,
73
78
  externalSlotProps: innerSlotProps?.field,
@@ -78,11 +83,14 @@ const useMobileRangePicker = _ref => {
78
83
  sx,
79
84
  format,
80
85
  formatDensity,
86
+ enableAccessibleFieldDOMStructure,
87
+ selectedSections,
88
+ onSelectedSectionsChange,
81
89
  timezone
82
- }, fieldType === 'single-input' && {
90
+ }, inputRef ? {
83
91
  inputRef,
84
92
  name
85
- }),
93
+ } : {}),
86
94
  ownerState: props
87
95
  });
88
96
  const isToolbarHidden = innerSlotProps?.toolbar?.hidden ?? false;
@@ -98,10 +106,11 @@ const useMobileRangePicker = _ref => {
98
106
  localeText,
99
107
  rangePosition,
100
108
  onRangePositionChange,
101
- singleInputFieldRef,
102
109
  pickerSlots: slots,
103
110
  pickerSlotProps: innerSlotProps,
104
- fieldProps
111
+ fieldProps,
112
+ startFieldRef,
113
+ endFieldRef
105
114
  });
106
115
  const slotPropsForLayout = (0, _extends2.default)({}, innerSlotProps, {
107
116
  tabs: (0, _extends2.default)({}, innerSlotProps?.tabs, {
@@ -0,0 +1,50 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.useMultiInputFieldSelectedSections = void 0;
8
+ var React = _interopRequireWildcard(require("react"));
9
+ var _useForkRef = _interopRequireDefault(require("@mui/utils/useForkRef"));
10
+ var _useEventCallback = _interopRequireDefault(require("@mui/utils/useEventCallback"));
11
+ function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
12
+ function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
13
+ const useMultiInputFieldSelectedSections = params => {
14
+ const unstableEndFieldRef = React.useRef(null);
15
+ const handleUnstableEndFieldRef = (0, _useForkRef.default)(params.unstableEndFieldRef, unstableEndFieldRef);
16
+ const [startSelectedSection, setStartSelectedSection] = React.useState(params.selectedSections ?? null);
17
+ const [endSelectedSection, setEndSelectedSection] = React.useState(null);
18
+ const getActiveField = () => {
19
+ if (unstableEndFieldRef.current && unstableEndFieldRef.current.isFieldFocused()) {
20
+ return 'end';
21
+ }
22
+ return 'start';
23
+ };
24
+ const handleStartSelectedSectionChange = (0, _useEventCallback.default)(newSelectedSections => {
25
+ setStartSelectedSection(newSelectedSections);
26
+ if (getActiveField() === 'start') {
27
+ params.onSelectedSectionsChange?.(newSelectedSections);
28
+ }
29
+ });
30
+ const handleEndSelectedSectionChange = (0, _useEventCallback.default)(newSelectedSections => {
31
+ setEndSelectedSection(newSelectedSections);
32
+ if (getActiveField() === 'end') {
33
+ params.onSelectedSectionsChange?.(newSelectedSections);
34
+ }
35
+ });
36
+ const activeField = getActiveField();
37
+ return {
38
+ start: {
39
+ unstableFieldRef: params.unstableStartFieldRef,
40
+ selectedSections: activeField === 'start' && params.selectedSections !== undefined ? params.selectedSections : startSelectedSection,
41
+ onSelectedSectionsChange: handleStartSelectedSectionChange
42
+ },
43
+ end: {
44
+ unstableFieldRef: handleUnstableEndFieldRef,
45
+ selectedSections: activeField === 'end' && params.selectedSections !== undefined ? params.selectedSections : endSelectedSection,
46
+ onSelectedSectionsChange: handleEndSelectedSectionChange
47
+ }
48
+ };
49
+ };
50
+ exports.useMultiInputFieldSelectedSections = useMultiInputFieldSelectedSections;
@@ -9,10 +9,10 @@ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends")
9
9
  var _useEventCallback = _interopRequireDefault(require("@mui/utils/useEventCallback"));
10
10
  var _DateField = require("@mui/x-date-pickers/DateField");
11
11
  var _internals = require("@mui/x-date-pickers/internals");
12
- var _useSingleInputDateRangeField = require("../../../SingleInputDateRangeField/useSingleInputDateRangeField");
13
12
  var _validateDateRange = require("../../utils/validation/validateDateRange");
14
13
  var _valueManagers = require("../../utils/valueManagers");
15
14
  var _shared = require("./shared");
15
+ var _useMultiInputFieldSelectedSections = require("../useMultiInputFieldSelectedSections");
16
16
  const useMultiInputDateRangeField = ({
17
17
  sharedProps: inSharedProps,
18
18
  startTextFieldProps,
@@ -20,7 +20,7 @@ const useMultiInputDateRangeField = ({
20
20
  endTextFieldProps,
21
21
  unstableEndFieldRef
22
22
  }) => {
23
- const sharedProps = (0, _useSingleInputDateRangeField.useDefaultizedDateRangeFieldProps)(inSharedProps);
23
+ const sharedProps = (0, _internals.useDefaultizedDateField)(inSharedProps);
24
24
  const adapter = (0, _internals.useLocalizationContext)();
25
25
  const {
26
26
  value: valueProp,
@@ -33,7 +33,9 @@ const useMultiInputDateRangeField = ({
33
33
  readOnly,
34
34
  selectedSections,
35
35
  onSelectedSectionsChange,
36
- timezone: timezoneProp
36
+ timezone: timezoneProp,
37
+ enableAccessibleFieldDOMStructure,
38
+ autoFocus
37
39
  } = sharedProps;
38
40
  const {
39
41
  value,
@@ -70,37 +72,40 @@ const useMultiInputDateRangeField = ({
70
72
  value,
71
73
  timezone
72
74
  }), _validateDateRange.validateDateRange, _valueManagers.rangeValueManager.isSameError, _valueManagers.rangeValueManager.defaultErrorState);
75
+ const selectedSectionsResponse = (0, _useMultiInputFieldSelectedSections.useMultiInputFieldSelectedSections)({
76
+ selectedSections,
77
+ onSelectedSectionsChange,
78
+ unstableStartFieldRef,
79
+ unstableEndFieldRef
80
+ });
73
81
  const startFieldProps = (0, _extends2.default)({
74
82
  error: !!validationError[0]
75
- }, startTextFieldProps, {
83
+ }, startTextFieldProps, selectedSectionsResponse.start, {
76
84
  disabled,
77
85
  readOnly,
78
86
  format,
79
87
  formatDensity,
80
88
  shouldRespectLeadingZeros,
81
89
  timezone,
82
- unstableFieldRef: unstableStartFieldRef,
83
90
  value: valueProp === undefined ? undefined : valueProp[0],
84
91
  defaultValue: defaultValue === undefined ? undefined : defaultValue[0],
85
92
  onChange: handleStartDateChange,
86
- selectedSections,
87
- onSelectedSectionsChange
93
+ enableAccessibleFieldDOMStructure,
94
+ autoFocus // Do not add on end field.
88
95
  });
89
96
  const endFieldProps = (0, _extends2.default)({
90
97
  error: !!validationError[1]
91
- }, endTextFieldProps, {
98
+ }, endTextFieldProps, selectedSectionsResponse.end, {
92
99
  format,
93
100
  formatDensity,
94
101
  shouldRespectLeadingZeros,
95
102
  disabled,
96
103
  readOnly,
97
104
  timezone,
98
- unstableFieldRef: unstableEndFieldRef,
99
105
  value: valueProp === undefined ? undefined : valueProp[1],
100
106
  defaultValue: defaultValue === undefined ? undefined : defaultValue[1],
101
107
  onChange: handleEndDateChange,
102
- selectedSections,
103
- onSelectedSectionsChange
108
+ enableAccessibleFieldDOMStructure
104
109
  });
105
110
  const startDateResponse = (0, _DateField.unstable_useDateField)(startFieldProps);
106
111
  const endDateResponse = (0, _DateField.unstable_useDateField)(endFieldProps);
@@ -4,7 +4,7 @@ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefau
4
4
  Object.defineProperty(exports, "__esModule", {
5
5
  value: true
6
6
  });
7
- exports.useMultiInputDateTimeRangeField = exports.useDefaultizedDateTimeRangeFieldProps = void 0;
7
+ exports.useMultiInputDateTimeRangeField = void 0;
8
8
  var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
9
9
  var _useEventCallback = _interopRequireDefault(require("@mui/utils/useEventCallback"));
10
10
  var _DateTimeField = require("@mui/x-date-pickers/DateTimeField");
@@ -12,23 +12,7 @@ var _internals = require("@mui/x-date-pickers/internals");
12
12
  var _validateDateTimeRange = require("../../utils/validation/validateDateTimeRange");
13
13
  var _valueManagers = require("../../utils/valueManagers");
14
14
  var _shared = require("./shared");
15
- const useDefaultizedDateTimeRangeFieldProps = props => {
16
- const utils = (0, _internals.useUtils)();
17
- const defaultDates = (0, _internals.useDefaultDates)();
18
- const ampm = props.ampm ?? utils.is12HourCycleInCurrentLocale();
19
- const defaultFormat = ampm ? utils.formats.keyboardDateTime12h : utils.formats.keyboardDateTime24h;
20
- return (0, _extends2.default)({}, props, {
21
- disablePast: props.disablePast ?? false,
22
- disableFuture: props.disableFuture ?? false,
23
- format: props.format ?? defaultFormat,
24
- minDate: (0, _internals.applyDefaultDate)(utils, props.minDateTime ?? props.minDate, defaultDates.minDate),
25
- maxDate: (0, _internals.applyDefaultDate)(utils, props.maxDateTime ?? props.maxDate, defaultDates.maxDate),
26
- minTime: props.minDateTime ?? props.minTime,
27
- maxTime: props.maxDateTime ?? props.maxTime,
28
- disableIgnoringDatePartForTimeValidation: Boolean(props.minDateTime || props.maxDateTime)
29
- });
30
- };
31
- exports.useDefaultizedDateTimeRangeFieldProps = useDefaultizedDateTimeRangeFieldProps;
15
+ var _useMultiInputFieldSelectedSections = require("../useMultiInputFieldSelectedSections");
32
16
  const useMultiInputDateTimeRangeField = ({
33
17
  sharedProps: inSharedProps,
34
18
  startTextFieldProps,
@@ -36,19 +20,22 @@ const useMultiInputDateTimeRangeField = ({
36
20
  endTextFieldProps,
37
21
  unstableEndFieldRef
38
22
  }) => {
39
- const sharedProps = useDefaultizedDateTimeRangeFieldProps(inSharedProps);
23
+ const sharedProps = (0, _internals.useDefaultizedDateTimeField)(inSharedProps);
40
24
  const adapter = (0, _internals.useLocalizationContext)();
41
25
  const {
42
26
  value: valueProp,
43
27
  defaultValue,
44
28
  format,
29
+ formatDensity,
45
30
  shouldRespectLeadingZeros,
46
- timezone: timezoneProp,
47
31
  onChange,
48
32
  disabled,
49
33
  readOnly,
50
34
  selectedSections,
51
- onSelectedSectionsChange
35
+ onSelectedSectionsChange,
36
+ timezone: timezoneProp,
37
+ enableAccessibleFieldDOMStructure,
38
+ autoFocus
52
39
  } = sharedProps;
53
40
  const {
54
41
  value,
@@ -85,35 +72,40 @@ const useMultiInputDateTimeRangeField = ({
85
72
  value,
86
73
  timezone
87
74
  }), _validateDateTimeRange.validateDateTimeRange, _valueManagers.rangeValueManager.isSameError, _valueManagers.rangeValueManager.defaultErrorState);
75
+ const selectedSectionsResponse = (0, _useMultiInputFieldSelectedSections.useMultiInputFieldSelectedSections)({
76
+ selectedSections,
77
+ onSelectedSectionsChange,
78
+ unstableStartFieldRef,
79
+ unstableEndFieldRef
80
+ });
88
81
  const startFieldProps = (0, _extends2.default)({
89
82
  error: !!validationError[0]
90
- }, startTextFieldProps, {
91
- format,
92
- shouldRespectLeadingZeros,
83
+ }, startTextFieldProps, selectedSectionsResponse.start, {
93
84
  disabled,
94
85
  readOnly,
86
+ format,
87
+ formatDensity,
88
+ shouldRespectLeadingZeros,
95
89
  timezone,
96
- unstableFieldRef: unstableStartFieldRef,
97
90
  value: valueProp === undefined ? undefined : valueProp[0],
98
91
  defaultValue: defaultValue === undefined ? undefined : defaultValue[0],
99
92
  onChange: handleStartDateChange,
100
- selectedSections,
101
- onSelectedSectionsChange
93
+ enableAccessibleFieldDOMStructure,
94
+ autoFocus // Do not add on end field.
102
95
  });
103
96
  const endFieldProps = (0, _extends2.default)({
104
97
  error: !!validationError[1]
105
- }, endTextFieldProps, {
98
+ }, endTextFieldProps, selectedSectionsResponse.end, {
106
99
  format,
100
+ formatDensity,
107
101
  shouldRespectLeadingZeros,
108
102
  disabled,
109
103
  readOnly,
110
104
  timezone,
111
- unstableFieldRef: unstableEndFieldRef,
112
105
  value: valueProp === undefined ? undefined : valueProp[1],
113
106
  defaultValue: defaultValue === undefined ? undefined : defaultValue[1],
114
107
  onChange: handleEndDateChange,
115
- selectedSections,
116
- onSelectedSectionsChange
108
+ enableAccessibleFieldDOMStructure
117
109
  });
118
110
  const startDateResponse = (0, _DateTimeField.unstable_useDateTimeField)(startFieldProps);
119
111
  const endDateResponse = (0, _DateTimeField.unstable_useDateTimeField)(endFieldProps);