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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (365) hide show
  1. package/CHANGELOG.md +423 -96
  2. package/DateRangeCalendar/DateRangeCalendar.js +1 -2
  3. package/DateRangePicker/DateRangePicker.js +1 -1
  4. package/DateRangePickerDay/DateRangePickerDay.js +1 -3
  5. package/DateTimeRangePicker/DateTimeRangePicker.js +1 -1
  6. package/DateTimeRangePicker/DateTimeRangePickerTimeWrapper.js +1 -8
  7. package/DesktopDateRangePicker/DesktopDateRangePicker.js +4 -8
  8. package/DesktopDateTimeRangePicker/DesktopDateTimeRangePicker.js +10 -3
  9. package/DesktopTimeRangePicker/DesktopTimeRangePicker.js +10 -2
  10. package/MobileDateRangePicker/MobileDateRangePicker.js +3 -2
  11. package/MobileDateTimeRangePicker/MobileDateTimeRangePicker.js +16 -3
  12. package/MobileTimeRangePicker/MobileTimeRangePicker.js +10 -2
  13. package/SingleInputDateRangeField/SingleInputDateRangeField.js +4 -4
  14. package/SingleInputDateTimeRangeField/SingleInputDateTimeRangeField.js +4 -4
  15. package/SingleInputTimeRangeField/SingleInputTimeRangeField.js +4 -4
  16. package/StaticDateRangePicker/StaticDateRangePicker.js +2 -1
  17. package/TimeRangePicker/TimeRangePicker.js +1 -1
  18. package/TimeRangePicker/TimeRangePickerTimeWrapper.js +1 -6
  19. package/esm/DateRangeCalendar/DateRangeCalendar.js +1 -2
  20. package/esm/DateRangePicker/DateRangePicker.js +1 -1
  21. package/esm/DateRangePickerDay/DateRangePickerDay.js +1 -3
  22. package/esm/DateTimeRangePicker/DateTimeRangePicker.js +1 -1
  23. package/esm/DateTimeRangePicker/DateTimeRangePickerTimeWrapper.js +2 -9
  24. package/esm/DesktopDateRangePicker/DesktopDateRangePicker.js +4 -8
  25. package/esm/DesktopDateTimeRangePicker/DesktopDateTimeRangePicker.js +10 -3
  26. package/esm/DesktopTimeRangePicker/DesktopTimeRangePicker.js +10 -2
  27. package/esm/MobileDateRangePicker/MobileDateRangePicker.js +3 -2
  28. package/esm/MobileDateTimeRangePicker/MobileDateTimeRangePicker.js +17 -4
  29. package/esm/MobileTimeRangePicker/MobileTimeRangePicker.js +10 -2
  30. package/esm/SingleInputDateRangeField/SingleInputDateRangeField.js +4 -4
  31. package/esm/SingleInputDateTimeRangeField/SingleInputDateTimeRangeField.js +4 -4
  32. package/esm/SingleInputTimeRangeField/SingleInputTimeRangeField.js +4 -4
  33. package/esm/StaticDateRangePicker/StaticDateRangePicker.js +2 -1
  34. package/esm/TimeRangePicker/TimeRangePicker.js +1 -1
  35. package/esm/TimeRangePicker/TimeRangePickerTimeWrapper.js +1 -6
  36. package/esm/index.js +1 -1
  37. package/esm/internals/hooks/useDesktopRangePicker/useDesktopRangePicker.d.ts +1 -0
  38. package/esm/internals/hooks/useDesktopRangePicker/useDesktopRangePicker.js +17 -7
  39. package/esm/internals/hooks/useDesktopRangePicker/useDesktopRangePicker.types.d.ts +3 -3
  40. package/esm/internals/hooks/useMobileRangePicker/useMobileRangePicker.d.ts +1 -0
  41. package/esm/internals/hooks/useMobileRangePicker/useMobileRangePicker.js +13 -6
  42. package/esm/internals/hooks/useMobileRangePicker/useMobileRangePicker.types.d.ts +3 -3
  43. package/esm/internals/hooks/useStaticRangePicker/useStaticRangePicker.d.ts +1 -0
  44. package/esm/internals/hooks/useStaticRangePicker/useStaticRangePicker.js +10 -3
  45. package/esm/internals/hooks/useStaticRangePicker/useStaticRangePicker.types.d.ts +7 -0
  46. package/esm/internals/models/rangePickerProps.d.ts +14 -0
  47. package/esm/internals/utils/createMultiInputRangeField/useTextFieldProps.js +1 -0
  48. package/esm/internals/utils/createRangePickerStepNavigation.d.ts +16 -0
  49. package/esm/internals/utils/createRangePickerStepNavigation.js +31 -0
  50. package/esm/internals/utils/date-fields-utils.d.ts +1 -0
  51. package/index.js +1 -1
  52. package/internals/hooks/useDesktopRangePicker/useDesktopRangePicker.d.ts +1 -0
  53. package/internals/hooks/useDesktopRangePicker/useDesktopRangePicker.js +17 -7
  54. package/internals/hooks/useDesktopRangePicker/useDesktopRangePicker.types.d.ts +3 -3
  55. package/internals/hooks/useMobileRangePicker/useMobileRangePicker.d.ts +1 -0
  56. package/internals/hooks/useMobileRangePicker/useMobileRangePicker.js +13 -6
  57. package/internals/hooks/useMobileRangePicker/useMobileRangePicker.types.d.ts +3 -3
  58. package/internals/hooks/useStaticRangePicker/useStaticRangePicker.d.ts +1 -0
  59. package/internals/hooks/useStaticRangePicker/useStaticRangePicker.js +10 -3
  60. package/internals/hooks/useStaticRangePicker/useStaticRangePicker.types.d.ts +7 -0
  61. package/internals/models/rangePickerProps.d.ts +14 -0
  62. package/internals/utils/createMultiInputRangeField/useTextFieldProps.js +1 -0
  63. package/internals/utils/createRangePickerStepNavigation.d.ts +16 -0
  64. package/internals/utils/createRangePickerStepNavigation.js +37 -0
  65. package/internals/utils/date-fields-utils.d.ts +1 -0
  66. package/package.json +8 -16
  67. package/esm/internals/hooks/models/index.d.ts +0 -1
  68. package/esm/internals/hooks/models/index.js +0 -1
  69. package/esm/internals/hooks/models/useRangePicker.d.ts +0 -8
  70. package/esm/internals/hooks/models/useRangePicker.js +0 -1
  71. package/esm/internals/utils/releaseInfo.d.ts +0 -1
  72. package/esm/internals/utils/releaseInfo.js +0 -13
  73. package/internals/hooks/models/index.d.ts +0 -1
  74. package/internals/hooks/models/index.js +0 -5
  75. package/internals/hooks/models/useRangePicker.d.ts +0 -8
  76. package/internals/hooks/models/useRangePicker.js +0 -5
  77. package/internals/utils/releaseInfo.d.ts +0 -1
  78. package/internals/utils/releaseInfo.js +0 -20
  79. package/modern/AdapterDateFns/index.d.ts +0 -1
  80. package/modern/AdapterDateFns/index.js +0 -1
  81. package/modern/AdapterDateFnsJalali/index.d.ts +0 -1
  82. package/modern/AdapterDateFnsJalali/index.js +0 -1
  83. package/modern/AdapterDateFnsJalaliV2/index.d.ts +0 -1
  84. package/modern/AdapterDateFnsJalaliV2/index.js +0 -1
  85. package/modern/AdapterDateFnsV2/index.d.ts +0 -1
  86. package/modern/AdapterDateFnsV2/index.js +0 -1
  87. package/modern/AdapterDayjs/index.d.ts +0 -1
  88. package/modern/AdapterDayjs/index.js +0 -1
  89. package/modern/AdapterLuxon/index.d.ts +0 -1
  90. package/modern/AdapterLuxon/index.js +0 -1
  91. package/modern/AdapterMoment/index.d.ts +0 -1
  92. package/modern/AdapterMoment/index.js +0 -1
  93. package/modern/AdapterMomentHijri/index.d.ts +0 -1
  94. package/modern/AdapterMomentHijri/index.js +0 -1
  95. package/modern/AdapterMomentJalaali/index.d.ts +0 -1
  96. package/modern/AdapterMomentJalaali/index.js +0 -1
  97. package/modern/DateRangeCalendar/DateRangeCalendar.d.ts +0 -17
  98. package/modern/DateRangeCalendar/DateRangeCalendar.js +0 -748
  99. package/modern/DateRangeCalendar/DateRangeCalendar.types.d.ts +0 -113
  100. package/modern/DateRangeCalendar/DateRangeCalendar.types.js +0 -1
  101. package/modern/DateRangeCalendar/dateRangeCalendarClasses.d.ts +0 -11
  102. package/modern/DateRangeCalendar/dateRangeCalendarClasses.js +0 -3
  103. package/modern/DateRangeCalendar/index.d.ts +0 -4
  104. package/modern/DateRangeCalendar/index.js +0 -2
  105. package/modern/DateRangeCalendar/useDragRange.d.ts +0 -40
  106. package/modern/DateRangeCalendar/useDragRange.js +0 -250
  107. package/modern/DateRangePicker/DateRangePicker.d.ts +0 -17
  108. package/modern/DateRangePicker/DateRangePicker.js +0 -344
  109. package/modern/DateRangePicker/DateRangePicker.types.d.ts +0 -33
  110. package/modern/DateRangePicker/DateRangePicker.types.js +0 -1
  111. package/modern/DateRangePicker/DateRangePickerToolbar.d.ts +0 -25
  112. package/modern/DateRangePicker/DateRangePickerToolbar.js +0 -131
  113. package/modern/DateRangePicker/dateRangePickerToolbarClasses.d.ts +0 -9
  114. package/modern/DateRangePicker/dateRangePickerToolbarClasses.js +0 -5
  115. package/modern/DateRangePicker/index.d.ts +0 -6
  116. package/modern/DateRangePicker/index.js +0 -3
  117. package/modern/DateRangePicker/shared.d.ts +0 -40
  118. package/modern/DateRangePicker/shared.js +0 -26
  119. package/modern/DateRangePickerDay/DateRangePickerDay.d.ts +0 -14
  120. package/modern/DateRangePickerDay/DateRangePickerDay.js +0 -472
  121. package/modern/DateRangePickerDay/DateRangePickerDay.types.d.ts +0 -91
  122. package/modern/DateRangePickerDay/DateRangePickerDay.types.js +0 -1
  123. package/modern/DateRangePickerDay/dateRangePickerDayClasses.d.ts +0 -41
  124. package/modern/DateRangePickerDay/dateRangePickerDayClasses.js +0 -5
  125. package/modern/DateRangePickerDay/index.d.ts +0 -4
  126. package/modern/DateRangePickerDay/index.js +0 -2
  127. package/modern/DateTimeRangePicker/DateTimeRangePicker.d.ts +0 -17
  128. package/modern/DateTimeRangePicker/DateTimeRangePicker.js +0 -431
  129. package/modern/DateTimeRangePicker/DateTimeRangePicker.types.d.ts +0 -28
  130. package/modern/DateTimeRangePicker/DateTimeRangePicker.types.js +0 -1
  131. package/modern/DateTimeRangePicker/DateTimeRangePickerTabs.d.ts +0 -30
  132. package/modern/DateTimeRangePicker/DateTimeRangePickerTabs.js +0 -193
  133. package/modern/DateTimeRangePicker/DateTimeRangePickerTimeWrapper.d.ts +0 -17
  134. package/modern/DateTimeRangePicker/DateTimeRangePickerTimeWrapper.js +0 -60
  135. package/modern/DateTimeRangePicker/DateTimeRangePickerToolbar.d.ts +0 -17
  136. package/modern/DateTimeRangePicker/DateTimeRangePickerToolbar.js +0 -200
  137. package/modern/DateTimeRangePicker/dateTimeRangePickerTabsClasses.d.ts +0 -13
  138. package/modern/DateTimeRangePicker/dateTimeRangePickerTabsClasses.js +0 -6
  139. package/modern/DateTimeRangePicker/dateTimeRangePickerToolbarClasses.d.ts +0 -11
  140. package/modern/DateTimeRangePicker/dateTimeRangePickerToolbarClasses.js +0 -5
  141. package/modern/DateTimeRangePicker/index.d.ts +0 -10
  142. package/modern/DateTimeRangePicker/index.js +0 -5
  143. package/modern/DateTimeRangePicker/shared.d.ts +0 -63
  144. package/modern/DateTimeRangePicker/shared.js +0 -51
  145. package/modern/DesktopDateRangePicker/DesktopDateRangePicker.d.ts +0 -17
  146. package/modern/DesktopDateRangePicker/DesktopDateRangePicker.js +0 -357
  147. package/modern/DesktopDateRangePicker/DesktopDateRangePicker.types.d.ts +0 -27
  148. package/modern/DesktopDateRangePicker/DesktopDateRangePicker.types.js +0 -1
  149. package/modern/DesktopDateRangePicker/index.d.ts +0 -2
  150. package/modern/DesktopDateRangePicker/index.js +0 -1
  151. package/modern/DesktopDateTimeRangePicker/DesktopDateTimeRangePicker.d.ts +0 -17
  152. package/modern/DesktopDateTimeRangePicker/DesktopDateTimeRangePicker.js +0 -512
  153. package/modern/DesktopDateTimeRangePicker/DesktopDateTimeRangePicker.types.d.ts +0 -22
  154. package/modern/DesktopDateTimeRangePicker/DesktopDateTimeRangePicker.types.js +0 -1
  155. package/modern/DesktopDateTimeRangePicker/index.d.ts +0 -2
  156. package/modern/DesktopDateTimeRangePicker/index.js +0 -1
  157. package/modern/DesktopTimeRangePicker/DesktopTimeRangePicker.d.ts +0 -7
  158. package/modern/DesktopTimeRangePicker/DesktopTimeRangePicker.js +0 -389
  159. package/modern/DesktopTimeRangePicker/DesktopTimeRangePicker.types.d.ts +0 -18
  160. package/modern/DesktopTimeRangePicker/DesktopTimeRangePicker.types.js +0 -1
  161. package/modern/DesktopTimeRangePicker/index.d.ts +0 -2
  162. package/modern/DesktopTimeRangePicker/index.js +0 -1
  163. package/modern/LocalizationProvider/index.d.ts +0 -1
  164. package/modern/LocalizationProvider/index.js +0 -1
  165. package/modern/MobileDateRangePicker/MobileDateRangePicker.d.ts +0 -17
  166. package/modern/MobileDateRangePicker/MobileDateRangePicker.js +0 -349
  167. package/modern/MobileDateRangePicker/MobileDateRangePicker.types.d.ts +0 -17
  168. package/modern/MobileDateRangePicker/MobileDateRangePicker.types.js +0 -1
  169. package/modern/MobileDateRangePicker/index.d.ts +0 -2
  170. package/modern/MobileDateRangePicker/index.js +0 -1
  171. package/modern/MobileDateTimeRangePicker/MobileDateTimeRangePicker.d.ts +0 -17
  172. package/modern/MobileDateTimeRangePicker/MobileDateTimeRangePicker.js +0 -512
  173. package/modern/MobileDateTimeRangePicker/MobileDateTimeRangePicker.types.d.ts +0 -17
  174. package/modern/MobileDateTimeRangePicker/MobileDateTimeRangePicker.types.js +0 -1
  175. package/modern/MobileDateTimeRangePicker/index.d.ts +0 -2
  176. package/modern/MobileDateTimeRangePicker/index.js +0 -1
  177. package/modern/MobileTimeRangePicker/MobileTimeRangePicker.d.ts +0 -7
  178. package/modern/MobileTimeRangePicker/MobileTimeRangePicker.js +0 -372
  179. package/modern/MobileTimeRangePicker/MobileTimeRangePicker.types.d.ts +0 -17
  180. package/modern/MobileTimeRangePicker/MobileTimeRangePicker.types.js +0 -1
  181. package/modern/MobileTimeRangePicker/index.d.ts +0 -2
  182. package/modern/MobileTimeRangePicker/index.js +0 -1
  183. package/modern/MultiInputDateRangeField/MultiInputDateRangeField.d.ts +0 -25
  184. package/modern/MultiInputDateRangeField/MultiInputDateRangeField.js +0 -215
  185. package/modern/MultiInputDateRangeField/index.d.ts +0 -5
  186. package/modern/MultiInputDateRangeField/index.js +0 -2
  187. package/modern/MultiInputDateRangeField/multiInputDateRangeFieldClasses.d.ts +0 -5
  188. package/modern/MultiInputDateRangeField/multiInputDateRangeFieldClasses.js +0 -4
  189. package/modern/MultiInputDateTimeRangeField/MultiInputDateTimeRangeField.d.ts +0 -25
  190. package/modern/MultiInputDateTimeRangeField/MultiInputDateTimeRangeField.js +0 -255
  191. package/modern/MultiInputDateTimeRangeField/index.d.ts +0 -5
  192. package/modern/MultiInputDateTimeRangeField/index.js +0 -2
  193. package/modern/MultiInputDateTimeRangeField/multiInputDateTimeRangeFieldClasses.d.ts +0 -5
  194. package/modern/MultiInputDateTimeRangeField/multiInputDateTimeRangeFieldClasses.js +0 -4
  195. package/modern/MultiInputTimeRangeField/MultiInputTimeRangeField.d.ts +0 -25
  196. package/modern/MultiInputTimeRangeField/MultiInputTimeRangeField.js +0 -228
  197. package/modern/MultiInputTimeRangeField/index.d.ts +0 -5
  198. package/modern/MultiInputTimeRangeField/index.js +0 -2
  199. package/modern/MultiInputTimeRangeField/multiInputTimeRangeFieldClasses.d.ts +0 -5
  200. package/modern/MultiInputTimeRangeField/multiInputTimeRangeFieldClasses.js +0 -4
  201. package/modern/PickersRangeCalendarHeader/PickersRangeCalendarHeader.d.ts +0 -7
  202. package/modern/PickersRangeCalendarHeader/PickersRangeCalendarHeader.js +0 -137
  203. package/modern/PickersRangeCalendarHeader/PickersRangeCalendarHeader.types.d.ts +0 -17
  204. package/modern/PickersRangeCalendarHeader/PickersRangeCalendarHeader.types.js +0 -1
  205. package/modern/PickersRangeCalendarHeader/index.d.ts +0 -2
  206. package/modern/PickersRangeCalendarHeader/index.js +0 -1
  207. package/modern/SingleInputDateRangeField/SingleInputDateRangeField.d.ts +0 -19
  208. package/modern/SingleInputDateRangeField/SingleInputDateRangeField.js +0 -316
  209. package/modern/SingleInputDateRangeField/SingleInputDateRangeField.types.d.ts +0 -18
  210. package/modern/SingleInputDateRangeField/SingleInputDateRangeField.types.js +0 -1
  211. package/modern/SingleInputDateRangeField/index.d.ts +0 -3
  212. package/modern/SingleInputDateRangeField/index.js +0 -2
  213. package/modern/SingleInputDateRangeField/useSingleInputDateRangeField.d.ts +0 -2
  214. package/modern/SingleInputDateRangeField/useSingleInputDateRangeField.js +0 -11
  215. package/modern/SingleInputDateTimeRangeField/SingleInputDateTimeRangeField.d.ts +0 -19
  216. package/modern/SingleInputDateTimeRangeField/SingleInputDateTimeRangeField.js +0 -356
  217. package/modern/SingleInputDateTimeRangeField/SingleInputDateTimeRangeField.types.d.ts +0 -18
  218. package/modern/SingleInputDateTimeRangeField/SingleInputDateTimeRangeField.types.js +0 -1
  219. package/modern/SingleInputDateTimeRangeField/index.d.ts +0 -3
  220. package/modern/SingleInputDateTimeRangeField/index.js +0 -2
  221. package/modern/SingleInputDateTimeRangeField/useSingleInputDateTimeRangeField.d.ts +0 -2
  222. package/modern/SingleInputDateTimeRangeField/useSingleInputDateTimeRangeField.js +0 -11
  223. package/modern/SingleInputTimeRangeField/SingleInputTimeRangeField.d.ts +0 -19
  224. package/modern/SingleInputTimeRangeField/SingleInputTimeRangeField.js +0 -328
  225. package/modern/SingleInputTimeRangeField/SingleInputTimeRangeField.types.d.ts +0 -18
  226. package/modern/SingleInputTimeRangeField/SingleInputTimeRangeField.types.js +0 -1
  227. package/modern/SingleInputTimeRangeField/index.d.ts +0 -3
  228. package/modern/SingleInputTimeRangeField/index.js +0 -2
  229. package/modern/SingleInputTimeRangeField/useSingleInputTimeRangeField.d.ts +0 -2
  230. package/modern/SingleInputTimeRangeField/useSingleInputTimeRangeField.js +0 -11
  231. package/modern/StaticDateRangePicker/StaticDateRangePicker.d.ts +0 -17
  232. package/modern/StaticDateRangePicker/StaticDateRangePicker.js +0 -285
  233. package/modern/StaticDateRangePicker/StaticDateRangePicker.types.d.ts +0 -22
  234. package/modern/StaticDateRangePicker/StaticDateRangePicker.types.js +0 -1
  235. package/modern/StaticDateRangePicker/index.d.ts +0 -2
  236. package/modern/StaticDateRangePicker/index.js +0 -1
  237. package/modern/TimeRangePicker/TimeRangePicker.d.ts +0 -17
  238. package/modern/TimeRangePicker/TimeRangePicker.js +0 -333
  239. package/modern/TimeRangePicker/TimeRangePicker.types.d.ts +0 -22
  240. package/modern/TimeRangePicker/TimeRangePicker.types.js +0 -1
  241. package/modern/TimeRangePicker/TimeRangePickerTabs.d.ts +0 -35
  242. package/modern/TimeRangePicker/TimeRangePickerTabs.js +0 -138
  243. package/modern/TimeRangePicker/TimeRangePickerTimeWrapper.d.ts +0 -17
  244. package/modern/TimeRangePicker/TimeRangePickerTimeWrapper.js +0 -58
  245. package/modern/TimeRangePicker/TimeRangePickerToolbar.d.ts +0 -14
  246. package/modern/TimeRangePicker/TimeRangePickerToolbar.js +0 -256
  247. package/modern/TimeRangePicker/index.d.ts +0 -10
  248. package/modern/TimeRangePicker/index.js +0 -5
  249. package/modern/TimeRangePicker/shared.d.ts +0 -73
  250. package/modern/TimeRangePicker/shared.js +0 -61
  251. package/modern/TimeRangePicker/timeRangePickerTabsClasses.d.ts +0 -9
  252. package/modern/TimeRangePicker/timeRangePickerTabsClasses.js +0 -5
  253. package/modern/TimeRangePicker/timeRangePickerToolbarClasses.d.ts +0 -13
  254. package/modern/TimeRangePicker/timeRangePickerToolbarClasses.js +0 -5
  255. package/modern/dateRangeViewRenderers/dateRangeViewRenderers.d.ts +0 -49
  256. package/modern/dateRangeViewRenderers/dateRangeViewRenderers.js +0 -85
  257. package/modern/dateRangeViewRenderers/index.d.ts +0 -2
  258. package/modern/dateRangeViewRenderers/index.js +0 -1
  259. package/modern/hooks/index.d.ts +0 -3
  260. package/modern/hooks/index.js +0 -2
  261. package/modern/hooks/useMultiInputRangeField/index.d.ts +0 -2
  262. package/modern/hooks/useMultiInputRangeField/index.js +0 -1
  263. package/modern/hooks/useMultiInputRangeField/useMultiInputRangeField.d.ts +0 -72
  264. package/modern/hooks/useMultiInputRangeField/useMultiInputRangeField.js +0 -140
  265. package/modern/hooks/useMultiInputRangeField/useMultiInputRangeFieldRootProps.d.ts +0 -11
  266. package/modern/hooks/useMultiInputRangeField/useMultiInputRangeFieldRootProps.js +0 -25
  267. package/modern/hooks/useMultiInputRangeField/useMultiInputRangeFieldSelectedSections.d.ts +0 -19
  268. package/modern/hooks/useMultiInputRangeField/useMultiInputRangeFieldSelectedSections.js +0 -43
  269. package/modern/hooks/useMultiInputRangeField/useTextFieldProps.d.ts +0 -30
  270. package/modern/hooks/useMultiInputRangeField/useTextFieldProps.js +0 -129
  271. package/modern/hooks/usePickerRangePositionContext.d.ts +0 -7
  272. package/modern/hooks/usePickerRangePositionContext.js +0 -15
  273. package/modern/index.d.ts +0 -25
  274. package/modern/index.js +0 -40
  275. package/modern/internals/constants/dimensions.d.ts +0 -3
  276. package/modern/internals/constants/dimensions.js +0 -5
  277. package/modern/internals/hooks/models/index.d.ts +0 -1
  278. package/modern/internals/hooks/models/index.js +0 -1
  279. package/modern/internals/hooks/models/useRangePicker.d.ts +0 -8
  280. package/modern/internals/hooks/models/useRangePicker.js +0 -1
  281. package/modern/internals/hooks/useDesktopRangePicker/index.d.ts +0 -2
  282. package/modern/internals/hooks/useDesktopRangePicker/index.js +0 -1
  283. package/modern/internals/hooks/useDesktopRangePicker/useDesktopRangePicker.d.ts +0 -9
  284. package/modern/internals/hooks/useDesktopRangePicker/useDesktopRangePicker.js +0 -72
  285. package/modern/internals/hooks/useDesktopRangePicker/useDesktopRangePicker.types.d.ts +0 -35
  286. package/modern/internals/hooks/useDesktopRangePicker/useDesktopRangePicker.types.js +0 -1
  287. package/modern/internals/hooks/useMobileRangePicker/index.d.ts +0 -2
  288. package/modern/internals/hooks/useMobileRangePicker/index.js +0 -1
  289. package/modern/internals/hooks/useMobileRangePicker/useMobileRangePicker.d.ts +0 -9
  290. package/modern/internals/hooks/useMobileRangePicker/useMobileRangePicker.js +0 -110
  291. package/modern/internals/hooks/useMobileRangePicker/useMobileRangePicker.types.d.ts +0 -31
  292. package/modern/internals/hooks/useMobileRangePicker/useMobileRangePicker.types.js +0 -1
  293. package/modern/internals/hooks/useNullablePickerRangePositionContext.d.ts +0 -5
  294. package/modern/internals/hooks/useNullablePickerRangePositionContext.js +0 -10
  295. package/modern/internals/hooks/useRangePosition.d.ts +0 -24
  296. package/modern/internals/hooks/useRangePosition.js +0 -18
  297. package/modern/internals/hooks/useStaticRangePicker/index.d.ts +0 -2
  298. package/modern/internals/hooks/useStaticRangePicker/index.js +0 -1
  299. package/modern/internals/hooks/useStaticRangePicker/useStaticRangePicker.d.ts +0 -13
  300. package/modern/internals/hooks/useStaticRangePicker/useStaticRangePicker.js +0 -64
  301. package/modern/internals/hooks/useStaticRangePicker/useStaticRangePicker.types.d.ts +0 -23
  302. package/modern/internals/hooks/useStaticRangePicker/useStaticRangePicker.types.js +0 -1
  303. package/modern/internals/models/dateRange.d.ts +0 -16
  304. package/modern/internals/models/dateRange.js +0 -1
  305. package/modern/internals/models/dateTimeRange.d.ts +0 -3
  306. package/modern/internals/models/dateTimeRange.js +0 -1
  307. package/modern/internals/models/fields.d.ts +0 -22
  308. package/modern/internals/models/fields.js +0 -1
  309. package/modern/internals/models/index.d.ts +0 -3
  310. package/modern/internals/models/index.js +0 -3
  311. package/modern/internals/models/managers.d.ts +0 -3
  312. package/modern/internals/models/managers.js +0 -1
  313. package/modern/internals/models/rangePickerProps.d.ts +0 -22
  314. package/modern/internals/models/rangePickerProps.js +0 -1
  315. package/modern/internals/utils/createMultiInputRangeField/createMultiInputRangeField.d.ts +0 -8
  316. package/modern/internals/utils/createMultiInputRangeField/createMultiInputRangeField.js +0 -133
  317. package/modern/internals/utils/createMultiInputRangeField/createMultiInputRangeField.types.d.ts +0 -73
  318. package/modern/internals/utils/createMultiInputRangeField/createMultiInputRangeField.types.js +0 -1
  319. package/modern/internals/utils/createMultiInputRangeField/index.d.ts +0 -3
  320. package/modern/internals/utils/createMultiInputRangeField/index.js +0 -2
  321. package/modern/internals/utils/createMultiInputRangeField/useTextFieldProps.d.ts +0 -14
  322. package/modern/internals/utils/createMultiInputRangeField/useTextFieldProps.js +0 -43
  323. package/modern/internals/utils/date-fields-utils.d.ts +0 -23
  324. package/modern/internals/utils/date-fields-utils.js +0 -28
  325. package/modern/internals/utils/date-range-manager.d.ts +0 -32
  326. package/modern/internals/utils/date-range-manager.js +0 -61
  327. package/modern/internals/utils/date-utils.d.ts +0 -7
  328. package/modern/internals/utils/date-utils.js +0 -18
  329. package/modern/internals/utils/releaseInfo.d.ts +0 -1
  330. package/modern/internals/utils/releaseInfo.js +0 -13
  331. package/modern/internals/utils/valueManagers.d.ts +0 -10
  332. package/modern/internals/utils/valueManagers.js +0 -119
  333. package/modern/locales/index.d.ts +0 -1
  334. package/modern/locales/index.js +0 -1
  335. package/modern/managers/index.d.ts +0 -6
  336. package/modern/managers/index.js +0 -3
  337. package/modern/managers/useDateRangeManager.d.ts +0 -11
  338. package/modern/managers/useDateRangeManager.js +0 -40
  339. package/modern/managers/useDateTimeRangeManager.d.ts +0 -11
  340. package/modern/managers/useDateTimeRangeManager.js +0 -41
  341. package/modern/managers/useTimeRangeManager.d.ts +0 -11
  342. package/modern/managers/useTimeRangeManager.js +0 -45
  343. package/modern/models/fields.d.ts +0 -34
  344. package/modern/models/fields.js +0 -1
  345. package/modern/models/index.d.ts +0 -4
  346. package/modern/models/index.js +0 -4
  347. package/modern/models/range.d.ts +0 -2
  348. package/modern/models/range.js +0 -1
  349. package/modern/models/validation.d.ts +0 -6
  350. package/modern/models/validation.js +0 -1
  351. package/modern/package.json +0 -1
  352. package/modern/themeAugmentation/components.d.ts +0 -79
  353. package/modern/themeAugmentation/index.d.ts +0 -4
  354. package/modern/themeAugmentation/index.js +0 -1
  355. package/modern/themeAugmentation/overrides.d.ts +0 -27
  356. package/modern/themeAugmentation/props.d.ts +0 -54
  357. package/modern/validation/index.d.ts +0 -6
  358. package/modern/validation/index.js +0 -3
  359. package/modern/validation/validateDateRange.d.ts +0 -18
  360. package/modern/validation/validateDateRange.js +0 -59
  361. package/modern/validation/validateDateTimeRange.d.ts +0 -15
  362. package/modern/validation/validateDateTimeRange.js +0 -55
  363. package/modern/validation/validateTimeRange.d.ts +0 -17
  364. package/modern/validation/validateTimeRange.js +0 -48
  365. package/tsconfig.build.tsbuildinfo +0 -1
@@ -20,6 +20,13 @@ import { validateTimeRange } from "../validation/validateTimeRange.js";
20
20
  import { RANGE_VIEW_HEIGHT } from "../internals/constants/dimensions.js";
21
21
  import { TimeRangePickerTimeWrapper } from "../TimeRangePicker/TimeRangePickerTimeWrapper.js";
22
22
  import { jsx as _jsx } from "react/jsx-runtime";
23
+ const STEPS = [{
24
+ views: null,
25
+ rangePosition: 'start'
26
+ }, {
27
+ views: null,
28
+ rangePosition: 'end'
29
+ }];
23
30
  const rendererInterceptor = function RendererInterceptor(props) {
24
31
  const {
25
32
  viewRenderers,
@@ -101,7 +108,8 @@ const DesktopTimeRangePicker = /*#__PURE__*/React.forwardRef(function DesktopTim
101
108
  valueManager: rangeValueManager,
102
109
  valueType: 'time',
103
110
  validator: validateTimeRange,
104
- rendererInterceptor
111
+ rendererInterceptor,
112
+ steps: STEPS
105
113
  });
106
114
  return renderPicker();
107
115
  });
@@ -157,7 +165,7 @@ DesktopTimeRangePicker.propTypes = {
157
165
  disableIgnoringDatePartForTimeValidation: PropTypes.bool,
158
166
  /**
159
167
  * If `true`, the button to open the Picker will not be rendered (it will only render the field).
160
- * @deprecated Use the [field component](https://next.mui.com/x/react-date-pickers/fields/) instead.
168
+ * @deprecated Use the [field component](https://mui.com/x/react-date-pickers/fields/) instead.
161
169
  * @default false
162
170
  */
163
171
  disableOpenPicker: PropTypes.bool,
@@ -57,7 +57,8 @@ const MobileDateRangePicker = /*#__PURE__*/React.forwardRef(function MobileDateR
57
57
  props,
58
58
  valueManager: rangeValueManager,
59
59
  valueType: 'date',
60
- validator: validateDateRange
60
+ validator: validateDateRange,
61
+ steps: null
61
62
  });
62
63
  return renderPicker();
63
64
  });
@@ -130,7 +131,7 @@ MobileDateRangePicker.propTypes = {
130
131
  disableHighlightToday: PropTypes.bool,
131
132
  /**
132
133
  * If `true`, the button to open the Picker will not be rendered (it will only render the field).
133
- * @deprecated Use the [field component](https://next.mui.com/x/react-date-pickers/fields/) instead.
134
+ * @deprecated Use the [field component](https://mui.com/x/react-date-pickers/fields/) instead.
134
135
  * @default false
135
136
  */
136
137
  disableOpenPicker: PropTypes.bool,
@@ -6,7 +6,7 @@ const _excluded = ["view", "openTo"];
6
6
  import * as React from 'react';
7
7
  import PropTypes from 'prop-types';
8
8
  import { refType } from '@mui/utils';
9
- import { DIALOG_WIDTH, VIEW_HEIGHT, isInternalTimeView, isDatePickerView, resolveDateTimeFormat, useUtils } from '@mui/x-date-pickers/internals';
9
+ import { DIALOG_WIDTH, VIEW_HEIGHT, isInternalTimeView, isDatePickerView, resolveDateTimeFormat, useUtils, TIME_VIEWS } from '@mui/x-date-pickers/internals';
10
10
  import { extractValidationProps } from '@mui/x-date-pickers/validation';
11
11
  import resolveComponentProps from '@mui/utils/resolveComponentProps';
12
12
  import { renderDigitalClockTimeView, renderMultiSectionDigitalClockTimeView } from '@mui/x-date-pickers/timeViewRenderers';
@@ -22,6 +22,19 @@ import { DateTimeRangePickerTimeWrapper } from "../DateTimeRangePicker/DateTimeR
22
22
  import { RANGE_VIEW_HEIGHT } from "../internals/constants/dimensions.js";
23
23
  import { usePickerRangePositionContext } from "../hooks/index.js";
24
24
  import { jsx as _jsx } from "react/jsx-runtime";
25
+ const STEPS = [{
26
+ views: ['day'],
27
+ rangePosition: 'start'
28
+ }, {
29
+ views: TIME_VIEWS,
30
+ rangePosition: 'start'
31
+ }, {
32
+ views: ['day'],
33
+ rangePosition: 'end'
34
+ }, {
35
+ views: TIME_VIEWS,
36
+ rangePosition: 'end'
37
+ }];
25
38
  const rendererInterceptor = function RendererInterceptor(props) {
26
39
  const {
27
40
  viewRenderers,
@@ -37,7 +50,6 @@ const rendererInterceptor = function RendererInterceptor(props) {
37
50
  } = rendererProps,
38
51
  otherRendererProps = _objectWithoutPropertiesLoose(rendererProps, _excluded);
39
52
  const finalProps = _extends({}, otherRendererProps, {
40
- focusedView: null,
41
53
  sx: [{
42
54
  width: DIALOG_WIDTH,
43
55
  [`.${multiSectionDigitalClockSectionClasses.root}`]: {
@@ -133,7 +145,8 @@ const MobileDateTimeRangePicker = /*#__PURE__*/React.forwardRef(function MobileD
133
145
  valueManager: rangeValueManager,
134
146
  valueType: 'date-time',
135
147
  validator: validateDateTimeRange,
136
- rendererInterceptor
148
+ rendererInterceptor,
149
+ steps: STEPS
137
150
  });
138
151
  return renderPicker();
139
152
  });
@@ -216,7 +229,7 @@ MobileDateTimeRangePicker.propTypes = {
216
229
  disableIgnoringDatePartForTimeValidation: PropTypes.bool,
217
230
  /**
218
231
  * If `true`, the button to open the Picker will not be rendered (it will only render the field).
219
- * @deprecated Use the [field component](https://next.mui.com/x/react-date-pickers/fields/) instead.
232
+ * @deprecated Use the [field component](https://mui.com/x/react-date-pickers/fields/) instead.
220
233
  * @default false
221
234
  */
222
235
  disableOpenPicker: PropTypes.bool,
@@ -18,6 +18,13 @@ import { validateTimeRange } from "../validation/validateTimeRange.js";
18
18
  import { RANGE_VIEW_HEIGHT } from "../internals/constants/dimensions.js";
19
19
  import { TimeRangePickerTimeWrapper } from "../TimeRangePicker/TimeRangePickerTimeWrapper.js";
20
20
  import { jsx as _jsx } from "react/jsx-runtime";
21
+ const STEPS = [{
22
+ views: null,
23
+ rangePosition: 'start'
24
+ }, {
25
+ views: null,
26
+ rangePosition: 'end'
27
+ }];
21
28
  const rendererInterceptor = function rendererInterceptor(props) {
22
29
  const {
23
30
  viewRenderers,
@@ -91,7 +98,8 @@ const MobileTimeRangePicker = /*#__PURE__*/React.forwardRef(function MobileTimeR
91
98
  valueManager: rangeValueManager,
92
99
  valueType: 'time',
93
100
  validator: validateTimeRange,
94
- rendererInterceptor
101
+ rendererInterceptor,
102
+ steps: STEPS
95
103
  });
96
104
  return renderPicker();
97
105
  });
@@ -147,7 +155,7 @@ MobileTimeRangePicker.propTypes = {
147
155
  disableIgnoringDatePartForTimeValidation: PropTypes.bool,
148
156
  /**
149
157
  * If `true`, the button to open the Picker will not be rendered (it will only render the field).
150
- * @deprecated Use the [field component](https://next.mui.com/x/react-date-pickers/fields/) instead.
158
+ * @deprecated Use the [field component](https://mui.com/x/react-date-pickers/fields/) instead.
151
159
  * @default false
152
160
  */
153
161
  disableOpenPicker: PropTypes.bool,
@@ -119,7 +119,7 @@ process.env.NODE_ENV !== "production" ? SingleInputDateRangeField.propTypes = {
119
119
  formatDensity: PropTypes.oneOf(['dense', 'spacious']),
120
120
  /**
121
121
  * Props applied to the [`FormHelperText`](https://mui.com/material-ui/api/form-helper-text/) element.
122
- * @deprecated Use `slotProps.formHelperText` instead. This prop will be removed in v7. See [Migrating from deprecated APIs](https://mui.com/material-ui/migration/migrating-from-deprecated-apis/) for more details.
122
+ * @deprecated Use `slotProps.formHelperText` instead. This prop will be removed in a future major release. See [Migrating from deprecated APIs](https://mui.com/material-ui/migration/migrating-from-deprecated-apis/) for more details.
123
123
  */
124
124
  FormHelperTextProps: PropTypes.object,
125
125
  /**
@@ -146,12 +146,12 @@ process.env.NODE_ENV !== "production" ? SingleInputDateRangeField.propTypes = {
146
146
  /**
147
147
  * Props applied to the [`InputLabel`](https://mui.com/material-ui/api/input-label/) element.
148
148
  * Pointer events like `onClick` are enabled if and only if `shrink` is `true`.
149
- * @deprecated Use `slotProps.inputLabel` instead. This prop will be removed in v7. See [Migrating from deprecated APIs](https://mui.com/material-ui/migration/migrating-from-deprecated-apis/) for more details.
149
+ * @deprecated Use `slotProps.inputLabel` instead. This prop will be removed in a future major release. See [Migrating from deprecated APIs](https://mui.com/material-ui/migration/migrating-from-deprecated-apis/) for more details.
150
150
  */
151
151
  InputLabelProps: PropTypes.object,
152
152
  /**
153
153
  * [Attributes](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#Attributes) applied to the `input` element.
154
- * @deprecated Use `slotProps.htmlInput` instead. This prop will be removed in v7. See [Migrating from deprecated APIs](https://mui.com/material-ui/migration/migrating-from-deprecated-apis/) for more details.
154
+ * @deprecated Use `slotProps.htmlInput` instead. This prop will be removed in a future major release. See [Migrating from deprecated APIs](https://mui.com/material-ui/migration/migrating-from-deprecated-apis/) for more details.
155
155
  */
156
156
  inputProps: PropTypes.object,
157
157
  /**
@@ -159,7 +159,7 @@ process.env.NODE_ENV !== "production" ? SingleInputDateRangeField.propTypes = {
159
159
  * It will be a [`FilledInput`](https://mui.com/material-ui/api/filled-input/),
160
160
  * [`OutlinedInput`](https://mui.com/material-ui/api/outlined-input/) or [`Input`](https://mui.com/material-ui/api/input/)
161
161
  * component depending on the `variant` prop value.
162
- * @deprecated Use `slotProps.input` instead. This prop will be removed in v7. See [Migrating from deprecated APIs](https://mui.com/material-ui/migration/migrating-from-deprecated-apis/) for more details.
162
+ * @deprecated Use `slotProps.input` instead. This prop will be removed in a future major release. See [Migrating from deprecated APIs](https://mui.com/material-ui/migration/migrating-from-deprecated-apis/) for more details.
163
163
  */
164
164
  InputProps: PropTypes.object,
165
165
  /**
@@ -129,7 +129,7 @@ process.env.NODE_ENV !== "production" ? SingleInputDateTimeRangeField.propTypes
129
129
  formatDensity: PropTypes.oneOf(['dense', 'spacious']),
130
130
  /**
131
131
  * Props applied to the [`FormHelperText`](https://mui.com/material-ui/api/form-helper-text/) element.
132
- * @deprecated Use `slotProps.formHelperText` instead. This prop will be removed in v7. See [Migrating from deprecated APIs](https://mui.com/material-ui/migration/migrating-from-deprecated-apis/) for more details.
132
+ * @deprecated Use `slotProps.formHelperText` instead. This prop will be removed in a future major release. See [Migrating from deprecated APIs](https://mui.com/material-ui/migration/migrating-from-deprecated-apis/) for more details.
133
133
  */
134
134
  FormHelperTextProps: PropTypes.object,
135
135
  /**
@@ -156,12 +156,12 @@ process.env.NODE_ENV !== "production" ? SingleInputDateTimeRangeField.propTypes
156
156
  /**
157
157
  * Props applied to the [`InputLabel`](https://mui.com/material-ui/api/input-label/) element.
158
158
  * Pointer events like `onClick` are enabled if and only if `shrink` is `true`.
159
- * @deprecated Use `slotProps.inputLabel` instead. This prop will be removed in v7. See [Migrating from deprecated APIs](https://mui.com/material-ui/migration/migrating-from-deprecated-apis/) for more details.
159
+ * @deprecated Use `slotProps.inputLabel` instead. This prop will be removed in a future major release. See [Migrating from deprecated APIs](https://mui.com/material-ui/migration/migrating-from-deprecated-apis/) for more details.
160
160
  */
161
161
  InputLabelProps: PropTypes.object,
162
162
  /**
163
163
  * [Attributes](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#Attributes) applied to the `input` element.
164
- * @deprecated Use `slotProps.htmlInput` instead. This prop will be removed in v7. See [Migrating from deprecated APIs](https://mui.com/material-ui/migration/migrating-from-deprecated-apis/) for more details.
164
+ * @deprecated Use `slotProps.htmlInput` instead. This prop will be removed in a future major release. See [Migrating from deprecated APIs](https://mui.com/material-ui/migration/migrating-from-deprecated-apis/) for more details.
165
165
  */
166
166
  inputProps: PropTypes.object,
167
167
  /**
@@ -169,7 +169,7 @@ process.env.NODE_ENV !== "production" ? SingleInputDateTimeRangeField.propTypes
169
169
  * It will be a [`FilledInput`](https://mui.com/material-ui/api/filled-input/),
170
170
  * [`OutlinedInput`](https://mui.com/material-ui/api/outlined-input/) or [`Input`](https://mui.com/material-ui/api/input/)
171
171
  * component depending on the `variant` prop value.
172
- * @deprecated Use `slotProps.input` instead. This prop will be removed in v7. See [Migrating from deprecated APIs](https://mui.com/material-ui/migration/migrating-from-deprecated-apis/) for more details.
172
+ * @deprecated Use `slotProps.input` instead. This prop will be removed in a future major release. See [Migrating from deprecated APIs](https://mui.com/material-ui/migration/migrating-from-deprecated-apis/) for more details.
173
173
  */
174
174
  InputProps: PropTypes.object,
175
175
  /**
@@ -129,7 +129,7 @@ process.env.NODE_ENV !== "production" ? SingleInputTimeRangeField.propTypes = {
129
129
  formatDensity: PropTypes.oneOf(['dense', 'spacious']),
130
130
  /**
131
131
  * Props applied to the [`FormHelperText`](https://mui.com/material-ui/api/form-helper-text/) element.
132
- * @deprecated Use `slotProps.formHelperText` instead. This prop will be removed in v7. See [Migrating from deprecated APIs](https://mui.com/material-ui/migration/migrating-from-deprecated-apis/) for more details.
132
+ * @deprecated Use `slotProps.formHelperText` instead. This prop will be removed in a future major release. See [Migrating from deprecated APIs](https://mui.com/material-ui/migration/migrating-from-deprecated-apis/) for more details.
133
133
  */
134
134
  FormHelperTextProps: PropTypes.object,
135
135
  /**
@@ -156,12 +156,12 @@ process.env.NODE_ENV !== "production" ? SingleInputTimeRangeField.propTypes = {
156
156
  /**
157
157
  * Props applied to the [`InputLabel`](https://mui.com/material-ui/api/input-label/) element.
158
158
  * Pointer events like `onClick` are enabled if and only if `shrink` is `true`.
159
- * @deprecated Use `slotProps.inputLabel` instead. This prop will be removed in v7. See [Migrating from deprecated APIs](https://mui.com/material-ui/migration/migrating-from-deprecated-apis/) for more details.
159
+ * @deprecated Use `slotProps.inputLabel` instead. This prop will be removed in a future major release. See [Migrating from deprecated APIs](https://mui.com/material-ui/migration/migrating-from-deprecated-apis/) for more details.
160
160
  */
161
161
  InputLabelProps: PropTypes.object,
162
162
  /**
163
163
  * [Attributes](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#Attributes) applied to the `input` element.
164
- * @deprecated Use `slotProps.htmlInput` instead. This prop will be removed in v7. See [Migrating from deprecated APIs](https://mui.com/material-ui/migration/migrating-from-deprecated-apis/) for more details.
164
+ * @deprecated Use `slotProps.htmlInput` instead. This prop will be removed in a future major release. See [Migrating from deprecated APIs](https://mui.com/material-ui/migration/migrating-from-deprecated-apis/) for more details.
165
165
  */
166
166
  inputProps: PropTypes.object,
167
167
  /**
@@ -169,7 +169,7 @@ process.env.NODE_ENV !== "production" ? SingleInputTimeRangeField.propTypes = {
169
169
  * It will be a [`FilledInput`](https://mui.com/material-ui/api/filled-input/),
170
170
  * [`OutlinedInput`](https://mui.com/material-ui/api/outlined-input/) or [`Input`](https://mui.com/material-ui/api/input/)
171
171
  * component depending on the `variant` prop value.
172
- * @deprecated Use `slotProps.input` instead. This prop will be removed in v7. See [Migrating from deprecated APIs](https://mui.com/material-ui/migration/migrating-from-deprecated-apis/) for more details.
172
+ * @deprecated Use `slotProps.input` instead. This prop will be removed in a future major release. See [Migrating from deprecated APIs](https://mui.com/material-ui/migration/migrating-from-deprecated-apis/) for more details.
173
173
  */
174
174
  InputProps: PropTypes.object,
175
175
  /**
@@ -45,7 +45,8 @@ const StaticDateRangePicker = /*#__PURE__*/React.forwardRef(function StaticDateR
45
45
  props,
46
46
  valueManager: rangeValueManager,
47
47
  valueType: 'date',
48
- validator: validateDateRange
48
+ validator: validateDateRange,
49
+ steps: null
49
50
  });
50
51
  return renderPicker();
51
52
  });
@@ -103,7 +103,7 @@ process.env.NODE_ENV !== "production" ? TimeRangePicker.propTypes = {
103
103
  disableIgnoringDatePartForTimeValidation: PropTypes.bool,
104
104
  /**
105
105
  * If `true`, the button to open the Picker will not be rendered (it will only render the field).
106
- * @deprecated Use the [field component](https://next.mui.com/x/react-date-pickers/fields/) instead.
106
+ * @deprecated Use the [field component](https://mui.com/x/react-date-pickers/fields/) instead.
107
107
  * @default false
108
108
  */
109
109
  disableOpenPicker: PropTypes.bool,
@@ -20,8 +20,7 @@ function TimeRangePickerTimeWrapper(props) {
20
20
  } = props,
21
21
  other = _objectWithoutPropertiesLoose(props, _excluded);
22
22
  const {
23
- rangePosition,
24
- setRangePosition
23
+ rangePosition
25
24
  } = usePickerRangePositionContext();
26
25
  if (!viewRenderer) {
27
26
  return null;
@@ -41,10 +40,6 @@ function TimeRangePickerTimeWrapper(props) {
41
40
  rangePosition
42
41
  });
43
42
  const isFullRangeSelected = rangePosition === 'end' && isRangeValid(utils, newRange);
44
- if (selectionState === 'finish') {
45
- setRangePosition(rangePosition === 'start' ? 'end' : 'start');
46
- onViewChange?.(views[0]);
47
- }
48
43
  onChange(newRange, isFullRangeSelected ? 'finish' : 'partial', selectedView);
49
44
  };
50
45
  return viewRenderer(_extends({}, other, {
package/esm/index.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @mui/x-date-pickers-pro v8.0.0-beta.2
2
+ * @mui/x-date-pickers-pro v8.0.0
3
3
  *
4
4
  * @license MUI X Commercial
5
5
  * This source code is licensed under the commercial license found in the
@@ -3,6 +3,7 @@ import { DateOrTimeViewWithMeridiem } from '@mui/x-date-pickers/internals';
3
3
  import { UseDesktopRangePickerParams, UseDesktopRangePickerProps } from "./useDesktopRangePicker.types.js";
4
4
  export declare const useDesktopRangePicker: <TView extends DateOrTimeViewWithMeridiem, TEnableAccessibleFieldDOMStructure extends boolean, TExternalProps extends UseDesktopRangePickerProps<TView, TEnableAccessibleFieldDOMStructure, any, TExternalProps>>({
5
5
  props,
6
+ steps,
6
7
  ...pickerParams
7
8
  }: UseDesktopRangePickerParams<TView, TEnableAccessibleFieldDOMStructure, TExternalProps>) => {
8
9
  renderPicker: () => React.JSX.Element;
@@ -1,24 +1,25 @@
1
1
  import _extends from "@babel/runtime/helpers/esm/extends";
2
2
  import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/esm/objectWithoutPropertiesLoose";
3
- const _excluded = ["props"],
3
+ const _excluded = ["props", "steps"],
4
4
  _excluded2 = ["ownerState"];
5
5
  import * as React from 'react';
6
6
  import useSlotProps from '@mui/utils/useSlotProps';
7
+ import useEventCallback from '@mui/utils/useEventCallback';
7
8
  import { useLicenseVerifier } from '@mui/x-license';
8
9
  import { PickersLayout } from '@mui/x-date-pickers/PickersLayout';
9
10
  import { usePicker, PickerPopper, PickerProvider, PickerFieldUIContextProvider } from '@mui/x-date-pickers/internals';
10
- import { getReleaseInfo } from "../../utils/releaseInfo.js";
11
11
  import { useRangePosition } from "../useRangePosition.js";
12
12
  import { PickerRangePositionContext } from "../../../hooks/usePickerRangePositionContext.js";
13
13
  import { getRangeFieldType } from "../../utils/date-fields-utils.js";
14
+ import { createRangePickerStepNavigation } from "../../utils/createRangePickerStepNavigation.js";
14
15
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
15
- const releaseInfo = getReleaseInfo();
16
16
  export const useDesktopRangePicker = _ref => {
17
17
  let {
18
- props
18
+ props,
19
+ steps
19
20
  } = _ref,
20
21
  pickerParams = _objectWithoutPropertiesLoose(_ref, _excluded);
21
- useLicenseVerifier('x-date-pickers-pro', releaseInfo);
22
+ useLicenseVerifier('x-date-pickers-pro', "MTc0NDg0MDgwMDAwMA==");
22
23
  const {
23
24
  slots,
24
25
  slotProps,
@@ -28,6 +29,10 @@ export const useDesktopRangePicker = _ref => {
28
29
  const fieldType = getRangeFieldType(slots.field);
29
30
  const viewContainerRole = fieldType === 'single-input' ? 'dialog' : 'tooltip';
30
31
  const rangePositionResponse = useRangePosition(props);
32
+ const getStepNavigation = createRangePickerStepNavigation({
33
+ steps,
34
+ rangePositionResponse
35
+ });
31
36
  const {
32
37
  providerProps,
33
38
  renderCurrentView,
@@ -37,13 +42,18 @@ export const useDesktopRangePicker = _ref => {
37
42
  variant: 'desktop',
38
43
  autoFocusView: viewContainerRole === 'dialog',
39
44
  viewContainerRole,
40
- localeText
45
+ localeText,
46
+ getStepNavigation,
47
+ onPopperExited: useEventCallback(() => rangePositionResponse.setRangePosition('start'))
41
48
  }));
42
49
  const Field = slots.field;
43
50
  const _useSlotProps = useSlotProps({
44
51
  elementType: Field,
45
52
  externalSlotProps: slotProps?.field,
46
- ownerState
53
+ ownerState,
54
+ additionalProps: {
55
+ 'data-active-range-position': providerProps.contextValue.open ? rangePositionResponse.rangePosition : undefined
56
+ }
47
57
  }),
48
58
  fieldProps = _objectWithoutPropertiesLoose(_useSlotProps, _excluded2);
49
59
  const Layout = slots?.layout ?? PickersLayout;
@@ -2,7 +2,7 @@ import { SlotComponentPropsFromProps } from '@mui/x-internals/types';
2
2
  import { PickerFieldSlotProps, PickerOwnerState } from '@mui/x-date-pickers/models';
3
3
  import { PickerPopperSlots, PickerPopperSlotProps, UsePickerProps, DateOrTimeViewWithMeridiem, PickerRangeValue, PickerFieldUISlotsFromContext, PickerFieldUISlotPropsFromContext } from '@mui/x-date-pickers/internals';
4
4
  import { ExportedPickersLayoutSlotProps, ExportedPickersLayoutSlots } from '@mui/x-date-pickers/PickersLayout';
5
- import { RangeOnlyPickerProps, UseRangePickerParams, UseRangePickerProps } from "../models/useRangePicker.js";
5
+ import { NonStaticRangePickerProps, NonStaticRangePickerHookParameters, UseRangePickerProps } from "../../models/index.js";
6
6
  export interface UseDesktopRangePickerSlots extends PickerPopperSlots, ExportedPickersLayoutSlots<PickerRangeValue>, PickerFieldUISlotsFromContext {
7
7
  /**
8
8
  * Component used to enter the date with the keyboard.
@@ -14,7 +14,7 @@ export interface UseDesktopRangePickerSlotProps<TEnableAccessibleFieldDOMStructu
14
14
  dateSeparator?: string;
15
15
  }, {}, PickerOwnerState>;
16
16
  }
17
- export interface DesktopRangeOnlyPickerProps extends RangeOnlyPickerProps {
17
+ export interface DesktopRangeOnlyPickerProps extends NonStaticRangePickerProps {
18
18
  /**
19
19
  * If `true`, the start `input` element is focused during the first mount.
20
20
  */
@@ -32,4 +32,4 @@ export interface UseDesktopRangePickerProps<TView extends DateOrTimeViewWithMeri
32
32
  */
33
33
  slotProps?: UseDesktopRangePickerSlotProps<TEnableAccessibleFieldDOMStructure>;
34
34
  }
35
- export interface UseDesktopRangePickerParams<TView extends DateOrTimeViewWithMeridiem, TEnableAccessibleFieldDOMStructure extends boolean, TExternalProps extends UseDesktopRangePickerProps<TView, TEnableAccessibleFieldDOMStructure, any, TExternalProps>> extends UseRangePickerParams<TView, TExternalProps> {}
35
+ export interface UseDesktopRangePickerParams<TView extends DateOrTimeViewWithMeridiem, TEnableAccessibleFieldDOMStructure extends boolean, TExternalProps extends UseDesktopRangePickerProps<TView, TEnableAccessibleFieldDOMStructure, any, TExternalProps>> extends NonStaticRangePickerHookParameters<TView, TExternalProps> {}
@@ -3,6 +3,7 @@ import { DateOrTimeViewWithMeridiem } from '@mui/x-date-pickers/internals';
3
3
  import { UseMobileRangePickerParams, UseMobileRangePickerProps } from "./useMobileRangePicker.types.js";
4
4
  export declare const useMobileRangePicker: <TView extends DateOrTimeViewWithMeridiem, TEnableAccessibleFieldDOMStructure extends boolean, TExternalProps extends UseMobileRangePickerProps<TView, TEnableAccessibleFieldDOMStructure, any, TExternalProps>>({
5
5
  props,
6
+ steps,
6
7
  ...pickerParams
7
8
  }: UseMobileRangePickerParams<TView, TEnableAccessibleFieldDOMStructure, TExternalProps>) => {
8
9
  renderPicker: () => React.JSX.Element;
@@ -1,26 +1,27 @@
1
1
  import _extends from "@babel/runtime/helpers/esm/extends";
2
2
  import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/esm/objectWithoutPropertiesLoose";
3
- const _excluded = ["props"],
3
+ const _excluded = ["props", "steps"],
4
4
  _excluded2 = ["ownerState"];
5
5
  import * as React from 'react';
6
6
  import useSlotProps from '@mui/utils/useSlotProps';
7
+ import useEventCallback from '@mui/utils/useEventCallback';
7
8
  import resolveComponentProps from '@mui/utils/resolveComponentProps';
8
9
  import { useLicenseVerifier } from '@mui/x-license';
9
10
  import { PickersLayout } from '@mui/x-date-pickers/PickersLayout';
10
11
  import { usePicker, PickersModalDialog, PickerProvider, PickerFieldUIContextProvider } from '@mui/x-date-pickers/internals';
11
12
  import { usePickerTranslations } from '@mui/x-date-pickers/hooks';
12
- import { getReleaseInfo } from "../../utils/releaseInfo.js";
13
13
  import { useRangePosition } from "../useRangePosition.js";
14
14
  import { PickerRangePositionContext } from "../../../hooks/usePickerRangePositionContext.js";
15
15
  import { getRangeFieldType } from "../../utils/date-fields-utils.js";
16
+ import { createRangePickerStepNavigation } from "../../utils/createRangePickerStepNavigation.js";
16
17
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
17
- const releaseInfo = getReleaseInfo();
18
18
  export const useMobileRangePicker = _ref => {
19
19
  let {
20
- props
20
+ props,
21
+ steps
21
22
  } = _ref,
22
23
  pickerParams = _objectWithoutPropertiesLoose(_ref, _excluded);
23
- useLicenseVerifier('x-date-pickers-pro', releaseInfo);
24
+ useLicenseVerifier('x-date-pickers-pro', "MTc0NDg0MDgwMDAwMA==");
24
25
  const {
25
26
  slots,
26
27
  slotProps: innerSlotProps,
@@ -31,6 +32,10 @@ export const useMobileRangePicker = _ref => {
31
32
  const fieldType = getRangeFieldType(slots.field);
32
33
  const rangePositionResponse = useRangePosition(props);
33
34
  const contextTranslations = usePickerTranslations();
35
+ const getStepNavigation = createRangePickerStepNavigation({
36
+ steps,
37
+ rangePositionResponse
38
+ });
34
39
  const {
35
40
  providerProps,
36
41
  renderCurrentView,
@@ -40,7 +45,9 @@ export const useMobileRangePicker = _ref => {
40
45
  variant: 'mobile',
41
46
  autoFocusView: true,
42
47
  viewContainerRole: 'dialog',
43
- localeText
48
+ localeText,
49
+ getStepNavigation,
50
+ onPopperExited: useEventCallback(() => rangePositionResponse.setRangePosition('start'))
44
51
  }));
45
52
  const labelId = providerProps.privateContextValue.labelId;
46
53
  const isToolbarHidden = innerSlotProps?.toolbar?.hidden ?? false;
@@ -2,7 +2,7 @@ import { SlotComponentPropsFromProps } from '@mui/x-internals/types';
2
2
  import { PickerFieldSlotProps, PickerOwnerState } from '@mui/x-date-pickers/models';
3
3
  import { PickersModalDialogSlots, PickersModalDialogSlotProps, UsePickerProps, DateOrTimeViewWithMeridiem, PickerRangeValue, PickerFieldUISlotsFromContext, PickerFieldUISlotPropsFromContext } from '@mui/x-date-pickers/internals';
4
4
  import { ExportedPickersLayoutSlotProps, ExportedPickersLayoutSlots, PickersLayoutSlotProps } from '@mui/x-date-pickers/PickersLayout';
5
- import { RangeOnlyPickerProps, UseRangePickerParams, UseRangePickerProps } from "../models/useRangePicker.js";
5
+ import { NonStaticRangePickerProps, NonStaticRangePickerHookParameters, UseRangePickerProps } from "../../models/index.js";
6
6
  export interface UseMobileRangePickerSlots extends PickersModalDialogSlots, ExportedPickersLayoutSlots<PickerRangeValue>, PickerFieldUISlotsFromContext {
7
7
  /**
8
8
  * Component used to enter the date with the keyboard.
@@ -15,7 +15,7 @@ export interface ExportedUseMobileRangePickerSlotProps<TEnableAccessibleFieldDOM
15
15
  }, {}, PickerOwnerState>;
16
16
  }
17
17
  export interface UseMobileRangePickerSlotProps<TEnableAccessibleFieldDOMStructure extends boolean> extends ExportedUseMobileRangePickerSlotProps<TEnableAccessibleFieldDOMStructure>, Pick<PickersLayoutSlotProps<PickerRangeValue>, 'toolbar'> {}
18
- export interface MobileRangeOnlyPickerProps extends RangeOnlyPickerProps {}
18
+ export interface MobileRangeOnlyPickerProps extends NonStaticRangePickerProps {}
19
19
  export interface UseMobileRangePickerProps<TView extends DateOrTimeViewWithMeridiem, TEnableAccessibleFieldDOMStructure extends boolean, TError, TExternalProps extends UsePickerProps<PickerRangeValue, TView, TError, any>> extends UseRangePickerProps<TView, TError, TExternalProps> {
20
20
  /**
21
21
  * Overridable component slots.
@@ -28,4 +28,4 @@ export interface UseMobileRangePickerProps<TView extends DateOrTimeViewWithMerid
28
28
  */
29
29
  slotProps?: UseMobileRangePickerSlotProps<TEnableAccessibleFieldDOMStructure>;
30
30
  }
31
- export interface UseMobileRangePickerParams<TView extends DateOrTimeViewWithMeridiem, TEnableAccessibleFieldDOMStructure extends boolean, TExternalProps extends UseMobileRangePickerProps<TView, TEnableAccessibleFieldDOMStructure, any, TExternalProps>> extends UseRangePickerParams<TView, TExternalProps> {}
31
+ export interface UseMobileRangePickerParams<TView extends DateOrTimeViewWithMeridiem, TEnableAccessibleFieldDOMStructure extends boolean, TExternalProps extends UseMobileRangePickerProps<TView, TEnableAccessibleFieldDOMStructure, any, TExternalProps>> extends NonStaticRangePickerHookParameters<TView, TExternalProps> {}
@@ -7,6 +7,7 @@ import { UseStaticRangePickerParams, UseStaticRangePickerProps } from "./useStat
7
7
  */
8
8
  export declare const useStaticRangePicker: <TView extends DateOrTimeViewWithMeridiem, TExternalProps extends UseStaticRangePickerProps<TView, any, TExternalProps>>({
9
9
  props,
10
+ steps,
10
11
  ...pickerParams
11
12
  }: UseStaticRangePickerParams<TView, TExternalProps>) => {
12
13
  renderPicker: () => React.JSX.Element;
@@ -1,6 +1,6 @@
1
1
  import _extends from "@babel/runtime/helpers/esm/extends";
2
2
  import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/esm/objectWithoutPropertiesLoose";
3
- const _excluded = ["props"];
3
+ const _excluded = ["props", "steps"];
4
4
  import * as React from 'react';
5
5
  import clsx from 'clsx';
6
6
  import { styled } from '@mui/material/styles';
@@ -8,6 +8,7 @@ import { PickersLayout } from '@mui/x-date-pickers/PickersLayout';
8
8
  import { usePicker, DIALOG_WIDTH, PickerProvider, mergeSx } from '@mui/x-date-pickers/internals';
9
9
  import { useRangePosition } from "../useRangePosition.js";
10
10
  import { PickerRangePositionContext } from "../../../hooks/usePickerRangePositionContext.js";
11
+ import { createRangePickerStepNavigation } from "../../utils/createRangePickerStepNavigation.js";
11
12
  import { jsx as _jsx } from "react/jsx-runtime";
12
13
  const PickerStaticLayout = styled(PickersLayout)(({
13
14
  theme
@@ -23,7 +24,8 @@ const PickerStaticLayout = styled(PickersLayout)(({
23
24
  */
24
25
  export const useStaticRangePicker = _ref => {
25
26
  let {
26
- props
27
+ props,
28
+ steps
27
29
  } = _ref,
28
30
  pickerParams = _objectWithoutPropertiesLoose(_ref, _excluded);
29
31
  const {
@@ -34,6 +36,10 @@ export const useStaticRangePicker = _ref => {
34
36
  autoFocus
35
37
  } = props;
36
38
  const rangePositionResponse = useRangePosition(props);
39
+ const getStepNavigation = createRangePickerStepNavigation({
40
+ steps,
41
+ rangePositionResponse
42
+ });
37
43
  const {
38
44
  providerProps,
39
45
  renderCurrentView
@@ -42,7 +48,8 @@ export const useStaticRangePicker = _ref => {
42
48
  variant: displayStaticWrapperAs,
43
49
  autoFocusView: autoFocus ?? false,
44
50
  viewContainerRole: null,
45
- localeText
51
+ localeText,
52
+ getStepNavigation
46
53
  }));
47
54
  const Layout = slots?.layout ?? PickerStaticLayout;
48
55
  const renderPicker = () => /*#__PURE__*/_jsx(PickerRangePositionContext.Provider, {
@@ -1,6 +1,7 @@
1
1
  import { BasePickerProps, UsePickerParameters, ExportedBaseToolbarProps, StaticOnlyPickerProps, DateOrTimeViewWithMeridiem, PickerRangeValue } from '@mui/x-date-pickers/internals';
2
2
  import { ExportedPickersLayoutSlots, ExportedPickersLayoutSlotProps } from '@mui/x-date-pickers/PickersLayout';
3
3
  import { UseRangePositionProps } from "../useRangePosition.js";
4
+ import { PickerRangeStep } from "../../utils/createRangePickerStepNavigation.js";
4
5
  export interface UseStaticRangePickerSlots extends ExportedPickersLayoutSlots<PickerRangeValue> {}
5
6
  export interface UseStaticRangePickerSlotProps extends ExportedPickersLayoutSlotProps<PickerRangeValue> {
6
7
  toolbar?: ExportedBaseToolbarProps;
@@ -20,4 +21,10 @@ export interface UseStaticRangePickerProps<TView extends DateOrTimeViewWithMerid
20
21
  }
21
22
  export interface UseStaticRangePickerParams<TView extends DateOrTimeViewWithMeridiem, TExternalProps extends UseStaticRangePickerProps<TView, any, TExternalProps>> extends Pick<UsePickerParameters<PickerRangeValue, TView, TExternalProps>, 'valueManager' | 'valueType' | 'validator' | 'ref'> {
22
23
  props: TExternalProps;
24
+ /**
25
+ * Steps available for the picker.
26
+ * This will be used to define the behavior of navigation actions.
27
+ * If null, the picker will not have any step navigation.
28
+ */
29
+ steps: PickerRangeStep[] | null;
23
30
  }
@@ -1,4 +1,7 @@
1
+ import { BasePickerProps, DateOrTimeViewWithMeridiem, PickerRangeValue, UsePickerNonStaticProps, UsePickerParameters, UsePickerProps } from '@mui/x-date-pickers/internals';
1
2
  import * as React from 'react';
3
+ import { UseRangePositionProps } from "../hooks/useRangePosition.js";
4
+ import { PickerRangeStep } from "../utils/createRangePickerStepNavigation.js";
2
5
  /**
3
6
  * Props common to all range non-static pickers.
4
7
  * These props are handled by the headless wrappers.
@@ -19,4 +22,15 @@ export interface BaseRangeNonStaticPickerProps {
19
22
  * Ignored if the field has several inputs.
20
23
  */
21
24
  name?: string;
25
+ }
26
+ export interface NonStaticRangePickerProps extends UsePickerNonStaticProps, BaseRangeNonStaticPickerProps, UseRangePositionProps {}
27
+ export interface UseRangePickerProps<TView extends DateOrTimeViewWithMeridiem, TError, TExternalProps extends UsePickerProps<PickerRangeValue, TView, TError, any>> extends NonStaticRangePickerProps, BasePickerProps<PickerRangeValue, TView, TError, TExternalProps> {}
28
+ export interface NonStaticRangePickerHookParameters<TView extends DateOrTimeViewWithMeridiem, TExternalProps extends UseRangePickerProps<TView, any, TExternalProps>> extends Pick<UsePickerParameters<PickerRangeValue, TView, TExternalProps>, 'valueManager' | 'valueType' | 'validator' | 'rendererInterceptor' | 'ref'> {
29
+ props: TExternalProps;
30
+ /**
31
+ * Steps available for the picker.
32
+ * This will be used to define the behavior of navigation actions.
33
+ * If null, the picker will not have any step navigation.
34
+ */
35
+ steps: PickerRangeStep[] | null;
22
36
  }
@@ -39,5 +39,6 @@ export function useTextFieldProps({
39
39
  textFieldProps.InputProps.ref = pickerContext.triggerRef;
40
40
  }
41
41
  }
42
+ textFieldProps.InputProps['data-multi-input'] = position;
42
43
  return textFieldProps;
43
44
  }
@@ -0,0 +1,16 @@
1
+ import { DateOrTimeViewWithMeridiem, RangePosition } from '@mui/x-date-pickers/internals';
2
+ import { UseRangePositionResponse } from "../hooks/useRangePosition.js";
3
+ export declare function createRangePickerStepNavigation(parameters: CreateRangePickerStepNavigationParameters): import("@mui/x-date-pickers/internals/utils/createStepNavigation").CreateStepNavigationReturnValue;
4
+ export interface PickerRangeStep {
5
+ /**
6
+ * The views that are handled inside this step.
7
+ * If null, all views are handled by this step.
8
+ */
9
+ views: readonly DateOrTimeViewWithMeridiem[] | null;
10
+ rangePosition: RangePosition;
11
+ }
12
+ interface CreateRangePickerStepNavigationParameters {
13
+ steps: PickerRangeStep[] | null;
14
+ rangePositionResponse: UseRangePositionResponse;
15
+ }
16
+ export {};