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

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 (278) hide show
  1. package/CHANGELOG.md +429 -30
  2. package/DateRangeCalendar/DateRangeCalendar.js +3 -1
  3. package/DateRangeCalendar/DateRangeCalendar.types.d.ts +3 -0
  4. package/DateRangePicker/DateRangePicker.d.ts +1 -1
  5. package/DateRangePicker/DateRangePicker.js +9 -9
  6. package/DateRangePicker/DateRangePicker.types.d.ts +3 -3
  7. package/DateRangePicker/DateRangePickerToolbar.d.ts +5 -2
  8. package/DateRangePicker/DateRangePickerToolbar.js +22 -2
  9. package/DateTimeRangePicker/DateTimeRangePicker.d.ts +1 -1
  10. package/DateTimeRangePicker/DateTimeRangePicker.js +11 -12
  11. package/DateTimeRangePicker/DateTimeRangePicker.types.d.ts +3 -3
  12. package/DateTimeRangePicker/DateTimeRangePickerTabs.js +7 -1
  13. package/DateTimeRangePicker/DateTimeRangePickerToolbar.d.ts +3 -0
  14. package/DateTimeRangePicker/DateTimeRangePickerToolbar.js +45 -9
  15. package/DateTimeRangePicker/shared.js +8 -3
  16. package/DesktopDateRangePicker/DesktopDateRangePicker.d.ts +1 -1
  17. package/DesktopDateRangePicker/DesktopDateRangePicker.js +9 -9
  18. package/DesktopDateRangePicker/DesktopDateRangePicker.types.d.ts +3 -3
  19. package/DesktopDateTimeRangePicker/DesktopDateTimeRangePicker.d.ts +1 -1
  20. package/DesktopDateTimeRangePicker/DesktopDateTimeRangePicker.js +11 -12
  21. package/DesktopDateTimeRangePicker/DesktopDateTimeRangePicker.types.d.ts +3 -3
  22. package/MobileDateRangePicker/MobileDateRangePicker.d.ts +1 -1
  23. package/MobileDateRangePicker/MobileDateRangePicker.js +9 -9
  24. package/MobileDateRangePicker/MobileDateRangePicker.types.d.ts +3 -3
  25. package/MobileDateTimeRangePicker/MobileDateTimeRangePicker.d.ts +1 -1
  26. package/MobileDateTimeRangePicker/MobileDateTimeRangePicker.js +11 -12
  27. package/MobileDateTimeRangePicker/MobileDateTimeRangePicker.types.d.ts +3 -3
  28. package/MultiInputDateRangeField/MultiInputDateRangeField.d.ts +1 -1
  29. package/MultiInputDateRangeField/MultiInputDateRangeField.js +17 -19
  30. package/MultiInputDateRangeField/MultiInputDateRangeField.types.d.ts +11 -14
  31. package/MultiInputDateTimeRangeField/MultiInputDateTimeRangeField.d.ts +1 -1
  32. package/MultiInputDateTimeRangeField/MultiInputDateTimeRangeField.js +17 -19
  33. package/MultiInputDateTimeRangeField/MultiInputDateTimeRangeField.types.d.ts +12 -16
  34. package/MultiInputTimeRangeField/MultiInputTimeRangeField.d.ts +1 -1
  35. package/MultiInputTimeRangeField/MultiInputTimeRangeField.js +17 -19
  36. package/MultiInputTimeRangeField/MultiInputTimeRangeField.types.d.ts +12 -16
  37. package/SingleInputDateRangeField/SingleInputDateRangeField.d.ts +2 -2
  38. package/SingleInputDateRangeField/SingleInputDateRangeField.js +12 -10
  39. package/SingleInputDateRangeField/SingleInputDateRangeField.types.d.ts +11 -14
  40. package/SingleInputDateRangeField/index.d.ts +1 -1
  41. package/SingleInputDateRangeField/useSingleInputDateRangeField.d.ts +2 -3
  42. package/SingleInputDateRangeField/useSingleInputDateRangeField.js +2 -15
  43. package/SingleInputDateTimeRangeField/SingleInputDateTimeRangeField.d.ts +2 -2
  44. package/SingleInputDateTimeRangeField/SingleInputDateTimeRangeField.js +12 -10
  45. package/SingleInputDateTimeRangeField/SingleInputDateTimeRangeField.types.d.ts +12 -15
  46. package/SingleInputDateTimeRangeField/index.d.ts +1 -1
  47. package/SingleInputDateTimeRangeField/useSingleInputDateTimeRangeField.d.ts +2 -3
  48. package/SingleInputDateTimeRangeField/useSingleInputDateTimeRangeField.js +2 -20
  49. package/SingleInputTimeRangeField/SingleInputTimeRangeField.d.ts +2 -2
  50. package/SingleInputTimeRangeField/SingleInputTimeRangeField.js +11 -9
  51. package/SingleInputTimeRangeField/SingleInputTimeRangeField.types.d.ts +12 -15
  52. package/SingleInputTimeRangeField/index.d.ts +1 -1
  53. package/SingleInputTimeRangeField/useSingleInputTimeRangeField.d.ts +2 -3
  54. package/SingleInputTimeRangeField/useSingleInputTimeRangeField.js +2 -14
  55. package/StaticDateRangePicker/StaticDateRangePicker.js +0 -1
  56. package/StaticDateRangePicker/StaticDateRangePicker.types.d.ts +1 -1
  57. package/index.d.ts +0 -1
  58. package/index.js +2 -1
  59. package/internals/hooks/models/useRangePicker.d.ts +5 -5
  60. package/internals/hooks/useDesktopRangePicker/useDesktopRangePicker.d.ts +1 -1
  61. package/internals/hooks/useDesktopRangePicker/useDesktopRangePicker.js +16 -7
  62. package/internals/hooks/useDesktopRangePicker/useDesktopRangePicker.types.d.ts +5 -5
  63. package/internals/hooks/useEnrichedRangePickerFieldProps.d.ts +15 -15
  64. package/internals/hooks/useEnrichedRangePickerFieldProps.js +37 -40
  65. package/internals/hooks/useMobileRangePicker/useMobileRangePicker.d.ts +1 -1
  66. package/internals/hooks/useMobileRangePicker/useMobileRangePicker.js +18 -9
  67. package/internals/hooks/useMobileRangePicker/useMobileRangePicker.types.d.ts +5 -5
  68. package/internals/hooks/useMultiInputFieldSelectedSections.d.ts +21 -0
  69. package/internals/hooks/useMultiInputFieldSelectedSections.js +43 -0
  70. package/internals/hooks/useMultiInputRangeField/useMultiInputDateRangeField.d.ts +1 -1
  71. package/internals/hooks/useMultiInputRangeField/useMultiInputDateRangeField.js +17 -12
  72. package/internals/hooks/useMultiInputRangeField/useMultiInputDateTimeRangeField.d.ts +2 -3
  73. package/internals/hooks/useMultiInputRangeField/useMultiInputDateTimeRangeField.js +23 -31
  74. package/internals/hooks/useMultiInputRangeField/useMultiInputRangeField.types.d.ts +4 -4
  75. package/internals/hooks/useMultiInputRangeField/useMultiInputTimeRangeField.d.ts +2 -3
  76. package/internals/hooks/useMultiInputRangeField/useMultiInputTimeRangeField.js +23 -25
  77. package/internals/hooks/useRangePosition.d.ts +2 -4
  78. package/internals/hooks/useRangePosition.js +3 -6
  79. package/internals/hooks/useStaticRangePicker/useStaticRangePicker.js +1 -0
  80. package/internals/hooks/useStaticRangePicker/useStaticRangePicker.types.d.ts +1 -2
  81. package/internals/models/dateRange.d.ts +3 -15
  82. package/internals/models/dateTimeRange.d.ts +4 -6
  83. package/internals/models/index.d.ts +0 -1
  84. package/internals/models/index.js +0 -1
  85. package/internals/models/timeRange.d.ts +3 -6
  86. package/internals/utils/date-fields-utils.d.ts +1 -5
  87. package/internals/utils/releaseInfo.js +1 -1
  88. package/internals/utils/valueManagers.d.ts +1 -2
  89. package/internals/utils/valueManagers.js +11 -6
  90. package/models/fields.d.ts +69 -0
  91. package/models/index.d.ts +1 -0
  92. package/models/index.js +1 -0
  93. package/modern/DateRangeCalendar/DateRangeCalendar.js +3 -1
  94. package/modern/DateRangePicker/DateRangePicker.js +9 -9
  95. package/modern/DateRangePicker/DateRangePickerToolbar.js +22 -2
  96. package/modern/DateTimeRangePicker/DateTimeRangePicker.js +11 -12
  97. package/modern/DateTimeRangePicker/DateTimeRangePickerTabs.js +7 -1
  98. package/modern/DateTimeRangePicker/DateTimeRangePickerToolbar.js +45 -9
  99. package/modern/DateTimeRangePicker/shared.js +7 -2
  100. package/modern/DesktopDateRangePicker/DesktopDateRangePicker.js +9 -9
  101. package/modern/DesktopDateTimeRangePicker/DesktopDateTimeRangePicker.js +11 -12
  102. package/modern/MobileDateRangePicker/MobileDateRangePicker.js +9 -9
  103. package/modern/MobileDateTimeRangePicker/MobileDateTimeRangePicker.js +11 -12
  104. package/modern/MultiInputDateRangeField/MultiInputDateRangeField.js +17 -19
  105. package/modern/MultiInputDateTimeRangeField/MultiInputDateTimeRangeField.js +17 -19
  106. package/modern/MultiInputTimeRangeField/MultiInputTimeRangeField.js +17 -19
  107. package/modern/SingleInputDateRangeField/SingleInputDateRangeField.js +12 -10
  108. package/modern/SingleInputDateRangeField/useSingleInputDateRangeField.js +2 -14
  109. package/modern/SingleInputDateTimeRangeField/SingleInputDateTimeRangeField.js +12 -10
  110. package/modern/SingleInputDateTimeRangeField/useSingleInputDateTimeRangeField.js +2 -19
  111. package/modern/SingleInputTimeRangeField/SingleInputTimeRangeField.js +11 -9
  112. package/modern/SingleInputTimeRangeField/useSingleInputTimeRangeField.js +2 -13
  113. package/modern/StaticDateRangePicker/StaticDateRangePicker.js +0 -1
  114. package/modern/index.js +2 -1
  115. package/modern/internals/hooks/useDesktopRangePicker/useDesktopRangePicker.js +16 -7
  116. package/modern/internals/hooks/useEnrichedRangePickerFieldProps.js +34 -37
  117. package/modern/internals/hooks/useMobileRangePicker/useMobileRangePicker.js +18 -9
  118. package/modern/internals/hooks/useMultiInputFieldSelectedSections.js +40 -0
  119. package/modern/internals/hooks/useMultiInputRangeField/useMultiInputDateRangeField.js +17 -12
  120. package/modern/internals/hooks/useMultiInputRangeField/useMultiInputDateTimeRangeField.js +23 -30
  121. package/modern/internals/hooks/useMultiInputRangeField/useMultiInputTimeRangeField.js +23 -24
  122. package/modern/internals/hooks/useRangePosition.js +3 -6
  123. package/modern/internals/hooks/useStaticRangePicker/useStaticRangePicker.js +1 -0
  124. package/modern/internals/models/index.js +0 -1
  125. package/modern/internals/utils/releaseInfo.js +1 -1
  126. package/modern/internals/utils/valueManagers.js +11 -6
  127. package/modern/models/index.js +1 -0
  128. package/node/DateRangeCalendar/DateRangeCalendar.js +3 -1
  129. package/node/DateRangePicker/DateRangePicker.js +9 -9
  130. package/node/DateRangePicker/DateRangePickerToolbar.js +22 -2
  131. package/node/DateTimeRangePicker/DateTimeRangePicker.js +11 -12
  132. package/node/DateTimeRangePicker/DateTimeRangePickerTabs.js +7 -1
  133. package/node/DateTimeRangePicker/DateTimeRangePickerToolbar.js +45 -9
  134. package/node/DateTimeRangePicker/shared.js +7 -2
  135. package/node/DesktopDateRangePicker/DesktopDateRangePicker.js +9 -9
  136. package/node/DesktopDateTimeRangePicker/DesktopDateTimeRangePicker.js +11 -12
  137. package/node/MobileDateRangePicker/MobileDateRangePicker.js +9 -9
  138. package/node/MobileDateTimeRangePicker/MobileDateTimeRangePicker.js +13 -14
  139. package/node/MultiInputDateRangeField/MultiInputDateRangeField.js +17 -19
  140. package/node/MultiInputDateTimeRangeField/MultiInputDateTimeRangeField.js +17 -19
  141. package/node/MultiInputTimeRangeField/MultiInputTimeRangeField.js +17 -19
  142. package/node/SingleInputDateRangeField/SingleInputDateRangeField.js +12 -10
  143. package/node/SingleInputDateRangeField/useSingleInputDateRangeField.js +2 -16
  144. package/node/SingleInputDateTimeRangeField/SingleInputDateTimeRangeField.js +15 -13
  145. package/node/SingleInputDateTimeRangeField/useSingleInputDateTimeRangeField.js +2 -21
  146. package/node/SingleInputTimeRangeField/SingleInputTimeRangeField.js +11 -9
  147. package/node/SingleInputTimeRangeField/useSingleInputTimeRangeField.js +2 -15
  148. package/node/StaticDateRangePicker/StaticDateRangePicker.js +0 -1
  149. package/node/index.js +1 -1
  150. package/node/internals/hooks/useDesktopRangePicker/useDesktopRangePicker.js +16 -7
  151. package/node/internals/hooks/useEnrichedRangePickerFieldProps.js +33 -36
  152. package/node/internals/hooks/useMobileRangePicker/useMobileRangePicker.js +18 -9
  153. package/node/internals/hooks/useMultiInputFieldSelectedSections.js +50 -0
  154. package/node/internals/hooks/useMultiInputRangeField/useMultiInputDateRangeField.js +16 -11
  155. package/node/internals/hooks/useMultiInputRangeField/useMultiInputDateTimeRangeField.js +23 -31
  156. package/node/internals/hooks/useMultiInputRangeField/useMultiInputTimeRangeField.js +23 -25
  157. package/node/internals/hooks/useRangePosition.js +3 -8
  158. package/node/internals/hooks/useStaticRangePicker/useStaticRangePicker.js +1 -0
  159. package/node/internals/models/index.js +0 -11
  160. package/node/internals/utils/releaseInfo.js +1 -1
  161. package/node/internals/utils/valueManagers.js +10 -5
  162. package/node/models/index.js +11 -0
  163. package/package.json +5 -5
  164. package/themeAugmentation/props.d.ts +15 -14
  165. package/internals/models/fields.d.ts +0 -49
  166. package/legacy/AdapterDateFns/index.js +0 -1
  167. package/legacy/AdapterDateFnsJalali/index.js +0 -1
  168. package/legacy/AdapterDateFnsV3/index.js +0 -1
  169. package/legacy/AdapterDayjs/index.js +0 -1
  170. package/legacy/AdapterLuxon/index.js +0 -1
  171. package/legacy/AdapterMoment/index.js +0 -1
  172. package/legacy/AdapterMomentHijri/index.js +0 -1
  173. package/legacy/AdapterMomentJalaali/index.js +0 -1
  174. package/legacy/DateRangeCalendar/DateRangeCalendar.js +0 -764
  175. package/legacy/DateRangeCalendar/DateRangeCalendar.types.js +0 -1
  176. package/legacy/DateRangeCalendar/dateRangeCalendarClasses.js +0 -5
  177. package/legacy/DateRangeCalendar/index.js +0 -2
  178. package/legacy/DateRangeCalendar/useDragRange.js +0 -258
  179. package/legacy/DateRangePicker/DateRangePicker.js +0 -334
  180. package/legacy/DateRangePicker/DateRangePicker.types.js +0 -1
  181. package/legacy/DateRangePicker/DateRangePickerToolbar.js +0 -127
  182. package/legacy/DateRangePicker/dateRangePickerToolbarClasses.js +0 -5
  183. package/legacy/DateRangePicker/index.js +0 -3
  184. package/legacy/DateRangePicker/shared.js +0 -33
  185. package/legacy/DateRangePickerDay/DateRangePickerDay.js +0 -366
  186. package/legacy/DateRangePickerDay/dateRangePickerDayClasses.js +0 -5
  187. package/legacy/DateRangePickerDay/index.js +0 -2
  188. package/legacy/DateTimeRangePicker/DateTimeRangePicker.js +0 -413
  189. package/legacy/DateTimeRangePicker/DateTimeRangePicker.types.js +0 -1
  190. package/legacy/DateTimeRangePicker/DateTimeRangePickerTabs.js +0 -191
  191. package/legacy/DateTimeRangePicker/DateTimeRangePickerTimeWrapper.js +0 -57
  192. package/legacy/DateTimeRangePicker/DateTimeRangePickerToolbar.js +0 -184
  193. package/legacy/DateTimeRangePicker/dateTimeRangePickerTabsClasses.js +0 -6
  194. package/legacy/DateTimeRangePicker/dateTimeRangePickerToolbarClasses.js +0 -5
  195. package/legacy/DateTimeRangePicker/index.js +0 -5
  196. package/legacy/DateTimeRangePicker/shared.js +0 -54
  197. package/legacy/DesktopDateRangePicker/DesktopDateRangePicker.js +0 -343
  198. package/legacy/DesktopDateRangePicker/DesktopDateRangePicker.types.js +0 -1
  199. package/legacy/DesktopDateRangePicker/index.js +0 -1
  200. package/legacy/DesktopDateTimeRangePicker/DesktopDateTimeRangePicker.js +0 -491
  201. package/legacy/DesktopDateTimeRangePicker/DesktopDateTimeRangePicker.types.js +0 -1
  202. package/legacy/DesktopDateTimeRangePicker/DesktopDateTimeRangePickerLayout.js +0 -48
  203. package/legacy/DesktopDateTimeRangePicker/index.js +0 -1
  204. package/legacy/MobileDateRangePicker/MobileDateRangePicker.js +0 -339
  205. package/legacy/MobileDateRangePicker/MobileDateRangePicker.types.js +0 -1
  206. package/legacy/MobileDateRangePicker/index.js +0 -1
  207. package/legacy/MobileDateTimeRangePicker/MobileDateTimeRangePicker.js +0 -484
  208. package/legacy/MobileDateTimeRangePicker/MobileDateTimeRangePicker.types.js +0 -1
  209. package/legacy/MobileDateTimeRangePicker/index.js +0 -1
  210. package/legacy/MultiInputDateRangeField/MultiInputDateRangeField.js +0 -316
  211. package/legacy/MultiInputDateRangeField/MultiInputDateRangeField.types.js +0 -1
  212. package/legacy/MultiInputDateRangeField/index.js +0 -2
  213. package/legacy/MultiInputDateTimeRangeField/MultiInputDateTimeRangeField.js +0 -357
  214. package/legacy/MultiInputDateTimeRangeField/MultiInputDateTimeRangeField.types.js +0 -1
  215. package/legacy/MultiInputDateTimeRangeField/index.js +0 -2
  216. package/legacy/MultiInputTimeRangeField/MultiInputTimeRangeField.js +0 -330
  217. package/legacy/MultiInputTimeRangeField/MultiInputTimeRangeField.types.js +0 -1
  218. package/legacy/MultiInputTimeRangeField/index.js +0 -2
  219. package/legacy/SingleInputDateRangeField/SingleInputDateRangeField.js +0 -307
  220. package/legacy/SingleInputDateRangeField/SingleInputDateRangeField.types.js +0 -1
  221. package/legacy/SingleInputDateRangeField/index.js +0 -2
  222. package/legacy/SingleInputDateRangeField/useSingleInputDateRangeField.js +0 -30
  223. package/legacy/SingleInputDateTimeRangeField/SingleInputDateTimeRangeField.js +0 -348
  224. package/legacy/SingleInputDateTimeRangeField/SingleInputDateTimeRangeField.types.js +0 -1
  225. package/legacy/SingleInputDateTimeRangeField/index.js +0 -2
  226. package/legacy/SingleInputDateTimeRangeField/useSingleInputDateTimeRangeField.js +0 -35
  227. package/legacy/SingleInputTimeRangeField/SingleInputTimeRangeField.js +0 -321
  228. package/legacy/SingleInputTimeRangeField/SingleInputTimeRangeField.types.js +0 -1
  229. package/legacy/SingleInputTimeRangeField/index.js +0 -2
  230. package/legacy/SingleInputTimeRangeField/useSingleInputTimeRangeField.js +0 -29
  231. package/legacy/StaticDateRangePicker/StaticDateRangePicker.js +0 -276
  232. package/legacy/StaticDateRangePicker/StaticDateRangePicker.types.js +0 -1
  233. package/legacy/StaticDateRangePicker/index.js +0 -1
  234. package/legacy/dateRangeViewRenderers/dateRangeViewRenderers.js +0 -87
  235. package/legacy/dateRangeViewRenderers/index.js +0 -1
  236. package/legacy/index.js +0 -52
  237. package/legacy/internals/constants/dimensions.js +0 -5
  238. package/legacy/internals/hooks/models/index.js +0 -1
  239. package/legacy/internals/hooks/models/useRangePicker.js +0 -1
  240. package/legacy/internals/hooks/useDesktopRangePicker/index.js +0 -1
  241. package/legacy/internals/hooks/useDesktopRangePicker/useDesktopRangePicker.js +0 -154
  242. package/legacy/internals/hooks/useDesktopRangePicker/useDesktopRangePicker.types.js +0 -1
  243. package/legacy/internals/hooks/useEnrichedRangePickerFieldProps.js +0 -258
  244. package/legacy/internals/hooks/useMobileRangePicker/index.js +0 -1
  245. package/legacy/internals/hooks/useMobileRangePicker/useMobileRangePicker.js +0 -144
  246. package/legacy/internals/hooks/useMobileRangePicker/useMobileRangePicker.types.js +0 -1
  247. package/legacy/internals/hooks/useMultiInputRangeField/shared.js +0 -9
  248. package/legacy/internals/hooks/useMultiInputRangeField/useMultiInputDateRangeField.js +0 -102
  249. package/legacy/internals/hooks/useMultiInputRangeField/useMultiInputDateTimeRangeField.js +0 -115
  250. package/legacy/internals/hooks/useMultiInputRangeField/useMultiInputRangeField.types.js +0 -1
  251. package/legacy/internals/hooks/useMultiInputRangeField/useMultiInputTimeRangeField.js +0 -109
  252. package/legacy/internals/hooks/useRangePosition.js +0 -39
  253. package/legacy/internals/hooks/useStaticRangePicker/index.js +0 -1
  254. package/legacy/internals/hooks/useStaticRangePicker/useStaticRangePicker.js +0 -76
  255. package/legacy/internals/hooks/useStaticRangePicker/useStaticRangePicker.types.js +0 -1
  256. package/legacy/internals/models/dateRange.js +0 -1
  257. package/legacy/internals/models/dateTimeRange.js +0 -1
  258. package/legacy/internals/models/index.js +0 -5
  259. package/legacy/internals/models/rangePickerProps.js +0 -1
  260. package/legacy/internals/models/timeRange.js +0 -1
  261. package/legacy/internals/utils/date-fields-utils.js +0 -26
  262. package/legacy/internals/utils/date-range-manager.js +0 -65
  263. package/legacy/internals/utils/date-utils.js +0 -12
  264. package/legacy/internals/utils/releaseInfo.js +0 -13
  265. package/legacy/internals/utils/validation/validateDateRange.js +0 -45
  266. package/legacy/internals/utils/validation/validateDateTimeRange.js +0 -45
  267. package/legacy/internals/utils/validation/validateTimeRange.js +0 -32
  268. package/legacy/internals/utils/valueManagers.js +0 -135
  269. package/legacy/locales/index.js +0 -1
  270. package/legacy/models/index.js +0 -3
  271. package/legacy/models/multiInputRangeFieldClasses.js +0 -1
  272. package/legacy/models/range.js +0 -1
  273. package/legacy/models/validation.js +0 -1
  274. package/legacy/themeAugmentation/index.js +0 -4
  275. package/modern/internals/models/fields.js +0 -1
  276. /package/{internals/models → models}/fields.js +0 -0
  277. /package/{legacy/internals → modern}/models/fields.js +0 -0
  278. /package/node/{internals/models → models}/fields.js +0 -0
@@ -1,339 +0,0 @@
1
- import _extends from "@babel/runtime/helpers/esm/extends";
2
- import * as React from 'react';
3
- import PropTypes from 'prop-types';
4
- import { extractValidationProps } from '@mui/x-date-pickers/internals';
5
- import { resolveComponentProps } from '@mui/base/utils';
6
- import { refType } from '@mui/utils';
7
- import { rangeValueManager } from '../internals/utils/valueManagers';
8
- import { useDateRangePickerDefaultizedProps } from '../DateRangePicker/shared';
9
- import { renderDateRangeViewCalendar } from '../dateRangeViewRenderers';
10
- import { MultiInputDateRangeField } from '../MultiInputDateRangeField';
11
- import { useMobileRangePicker } from '../internals/hooks/useMobileRangePicker';
12
- import { validateDateRange } from '../internals/utils/validation/validateDateRange';
13
- /**
14
- * Demos:
15
- *
16
- * - [DateRangePicker](https://mui.com/x/react-date-pickers/date-range-picker/)
17
- * - [Validation](https://mui.com/x/react-date-pickers/validation/)
18
- *
19
- * API:
20
- *
21
- * - [MobileDateRangePicker API](https://mui.com/x/api/date-pickers/mobile-date-range-picker/)
22
- */
23
- var MobileDateRangePicker = /*#__PURE__*/React.forwardRef(function MobileDateRangePicker(inProps, ref) {
24
- var _defaultizedProps$slo2;
25
- // Props with the default values common to all date time pickers
26
- var defaultizedProps = useDateRangePickerDefaultizedProps(inProps, 'MuiMobileDateRangePicker');
27
- var viewRenderers = _extends({
28
- day: renderDateRangeViewCalendar
29
- }, defaultizedProps.viewRenderers);
30
- var props = _extends({}, defaultizedProps, {
31
- viewRenderers: viewRenderers,
32
- // Force one calendar on mobile to avoid layout issues
33
- calendars: 1,
34
- views: ['day'],
35
- openTo: 'day',
36
- slots: _extends({
37
- field: MultiInputDateRangeField
38
- }, defaultizedProps.slots),
39
- slotProps: _extends({}, defaultizedProps.slotProps, {
40
- field: function field(ownerState) {
41
- var _defaultizedProps$slo;
42
- return _extends({}, resolveComponentProps((_defaultizedProps$slo = defaultizedProps.slotProps) == null ? void 0 : _defaultizedProps$slo.field, ownerState), extractValidationProps(defaultizedProps), {
43
- ref: ref
44
- });
45
- },
46
- toolbar: _extends({
47
- hidden: false
48
- }, (_defaultizedProps$slo2 = defaultizedProps.slotProps) == null ? void 0 : _defaultizedProps$slo2.toolbar)
49
- })
50
- });
51
- var _useMobileRangePicker = useMobileRangePicker({
52
- props: props,
53
- valueManager: rangeValueManager,
54
- valueType: 'date',
55
- validator: validateDateRange
56
- }),
57
- renderPicker = _useMobileRangePicker.renderPicker;
58
- return renderPicker();
59
- });
60
- MobileDateRangePicker.propTypes = {
61
- // ----------------------------- Warning --------------------------------
62
- // | These PropTypes are generated from the TypeScript type definitions |
63
- // | To update them edit the TypeScript types and run "yarn proptypes" |
64
- // ----------------------------------------------------------------------
65
- /**
66
- * If `true`, the main element is focused during the first mount.
67
- * This main element is:
68
- * - the element chosen by the visible view if any (i.e: the selected day on the `day` view).
69
- * - the `input` element if there is a field rendered.
70
- */
71
- autoFocus: PropTypes.bool,
72
- className: PropTypes.string,
73
- /**
74
- * If `true`, the popover or modal will close after submitting the full date.
75
- * @default `true` for desktop, `false` for mobile (based on the chosen wrapper and `desktopModeMediaQuery` prop).
76
- */
77
- closeOnSelect: PropTypes.bool,
78
- /**
79
- * Position the current month is rendered in.
80
- * @default 1
81
- */
82
- currentMonthCalendarPosition: PropTypes.oneOf([1, 2, 3]),
83
- /**
84
- * Formats the day of week displayed in the calendar header.
85
- * @param {TDate} date The date of the day of week provided by the adapter.
86
- * @returns {string} The name to display.
87
- * @default (_day: string, date: TDate) => adapter.format(date, 'weekdayShort').charAt(0).toUpperCase()
88
- */
89
- dayOfWeekFormatter: PropTypes.func,
90
- /**
91
- * The initial position in the edited date range.
92
- * Used when the component is not controlled.
93
- * @default 'start'
94
- */
95
- defaultRangePosition: PropTypes.oneOf(['end', 'start']),
96
- /**
97
- * The default value.
98
- * Used when the component is not controlled.
99
- */
100
- defaultValue: PropTypes.arrayOf(PropTypes.object),
101
- /**
102
- * If `true`, after selecting `start` date calendar will not automatically switch to the month of `end` date.
103
- * @default false
104
- */
105
- disableAutoMonthSwitching: PropTypes.bool,
106
- /**
107
- * If `true`, the picker and text field are disabled.
108
- * @default false
109
- */
110
- disabled: PropTypes.bool,
111
- /**
112
- * If `true`, editing dates by dragging is disabled.
113
- * @default false
114
- */
115
- disableDragEditing: PropTypes.bool,
116
- /**
117
- * If `true`, disable values after the current date for date components, time for time components and both for date time components.
118
- * @default false
119
- */
120
- disableFuture: PropTypes.bool,
121
- /**
122
- * If `true`, today's date is rendering without highlighting with circle.
123
- * @default false
124
- */
125
- disableHighlightToday: PropTypes.bool,
126
- /**
127
- * If `true`, the open picker button will not be rendered (renders only the field).
128
- * @default false
129
- */
130
- disableOpenPicker: PropTypes.bool,
131
- /**
132
- * If `true`, disable values before the current date for date components, time for time components and both for date time components.
133
- * @default false
134
- */
135
- disablePast: PropTypes.bool,
136
- /**
137
- * If `true`, the week number will be display in the calendar.
138
- */
139
- displayWeekNumber: PropTypes.bool,
140
- /**
141
- * The day view will show as many weeks as needed after the end of the current month to match this value.
142
- * Put it to 6 to have a fixed number of weeks in Gregorian calendars
143
- * @default undefined
144
- */
145
- fixedWeekNumber: PropTypes.number,
146
- /**
147
- * Format of the date when rendered in the input(s).
148
- * Defaults to localized format based on the used `views`.
149
- */
150
- format: PropTypes.string,
151
- /**
152
- * Density of the format when rendered in the input.
153
- * Setting `formatDensity` to `"spacious"` will add a space before and after each `/`, `-` and `.` character.
154
- * @default "dense"
155
- */
156
- formatDensity: PropTypes.oneOf(['dense', 'spacious']),
157
- /**
158
- * Pass a ref to the `input` element.
159
- * Ignored if the field has several inputs.
160
- */
161
- inputRef: refType,
162
- /**
163
- * The label content.
164
- * Ignored if the field has several inputs.
165
- */
166
- label: PropTypes.node,
167
- /**
168
- * If `true`, calls `renderLoading` instead of rendering the day calendar.
169
- * Can be used to preload information and show it in calendar.
170
- * @default false
171
- */
172
- loading: PropTypes.bool,
173
- /**
174
- * Locale for components texts.
175
- * Allows overriding texts coming from `LocalizationProvider` and `theme`.
176
- */
177
- localeText: PropTypes.object,
178
- /**
179
- * Maximal selectable date.
180
- */
181
- maxDate: PropTypes.object,
182
- /**
183
- * Minimal selectable date.
184
- */
185
- minDate: PropTypes.object,
186
- /**
187
- * Name attribute used by the `input` element in the Field.
188
- * Ignored if the field has several inputs.
189
- */
190
- name: PropTypes.string,
191
- /**
192
- * Callback fired when the value is accepted.
193
- * @template TValue The value type. Will be either the same type as `value` or `null`. Can be in `[start, end]` format in case of range value.
194
- * @param {TValue} value The value that was just accepted.
195
- */
196
- onAccept: PropTypes.func,
197
- /**
198
- * Callback fired when the value changes.
199
- * @template TValue The value type. Will be either the same type as `value` or `null`. Can be in `[start, end]` format in case of range value.
200
- * @template TError The validation error type. Will be either `string` or a `null`. Can be in `[start, end]` format in case of range value.
201
- * @param {TValue} value The new value.
202
- * @param {FieldChangeHandlerContext<TError>} context The context containing the validation result of the current value.
203
- */
204
- onChange: PropTypes.func,
205
- /**
206
- * Callback fired when the popup requests to be closed.
207
- * Use in controlled mode (see `open`).
208
- */
209
- onClose: PropTypes.func,
210
- /**
211
- * Callback fired when the error associated to the current value changes.
212
- * If the error has a non-null value, then the `TextField` will be rendered in `error` state.
213
- *
214
- * @template TValue The value type. Will be either the same type as `value` or `null`. Can be in `[start, end]` format in case of range value.
215
- * @template TError The validation error type. Will be either `string` or a `null`. Can be in `[start, end]` format in case of range value.
216
- * @param {TError} error The new error describing why the current value is not valid.
217
- * @param {TValue} value The value associated to the error.
218
- */
219
- onError: PropTypes.func,
220
- /**
221
- * Callback fired on month change.
222
- * @template TDate
223
- * @param {TDate} month The new month.
224
- */
225
- onMonthChange: PropTypes.func,
226
- /**
227
- * Callback fired when the popup requests to be opened.
228
- * Use in controlled mode (see `open`).
229
- */
230
- onOpen: PropTypes.func,
231
- /**
232
- * Callback fired when the range position changes.
233
- * @param {RangePosition} rangePosition The new range position.
234
- */
235
- onRangePositionChange: PropTypes.func,
236
- /**
237
- * Callback fired when the selected sections change.
238
- * @param {FieldSelectedSections} newValue The new selected sections.
239
- */
240
- onSelectedSectionsChange: PropTypes.func,
241
- /**
242
- * Control the popup or dialog open state.
243
- * @default false
244
- */
245
- open: PropTypes.bool,
246
- /**
247
- * The position in the currently edited date range.
248
- * Used when the component position is controlled.
249
- */
250
- rangePosition: PropTypes.oneOf(['end', 'start']),
251
- readOnly: PropTypes.bool,
252
- /**
253
- * If `true`, disable heavy animations.
254
- * @default `@media(prefers-reduced-motion: reduce)` || `navigator.userAgent` matches Android <10 or iOS <13
255
- */
256
- reduceAnimations: PropTypes.bool,
257
- /**
258
- * The date used to generate the new value when both `value` and `defaultValue` are empty.
259
- * @default The closest valid date-time using the validation props, except callbacks like `shouldDisable<...>`.
260
- */
261
- referenceDate: PropTypes.object,
262
- /**
263
- * Component rendered on the "day" view when `props.loading` is true.
264
- * @returns {React.ReactNode} The node to render when loading.
265
- * @default () => "..."
266
- */
267
- renderLoading: PropTypes.func,
268
- /**
269
- * The currently selected sections.
270
- * This prop accept four formats:
271
- * 1. If a number is provided, the section at this index will be selected.
272
- * 2. If an object with a `startIndex` and `endIndex` properties are provided, the sections between those two indexes will be selected.
273
- * 3. If a string of type `FieldSectionType` is provided, the first section with that name will be selected.
274
- * 4. If `null` is provided, no section will be selected
275
- * If not provided, the selected sections will be handled internally.
276
- */
277
- selectedSections: PropTypes.oneOfType([PropTypes.oneOf(['all', 'day', 'empty', 'hours', 'meridiem', 'minutes', 'month', 'seconds', 'weekDay', 'year']), PropTypes.number, PropTypes.shape({
278
- endIndex: PropTypes.number.isRequired,
279
- startIndex: PropTypes.number.isRequired
280
- })]),
281
- /**
282
- * Disable specific date.
283
- *
284
- * Warning: This function can be called multiple times (e.g. when rendering date calendar, checking if focus can be moved to a certain date, etc.). Expensive computations can impact performance.
285
- *
286
- * @template TDate
287
- * @param {TDate} day The date to test.
288
- * @param {string} position The date to test, 'start' or 'end'.
289
- * @returns {boolean} Returns `true` if the date should be disabled.
290
- */
291
- shouldDisableDate: PropTypes.func,
292
- /**
293
- * If `true`, days outside the current month are rendered:
294
- *
295
- * - if `fixedWeekNumber` is defined, renders days to have the weeks requested.
296
- *
297
- * - if `fixedWeekNumber` is not defined, renders day to fill the first and last week of the current month.
298
- *
299
- * - ignored if `calendars` equals more than `1` on range pickers.
300
- * @default false
301
- */
302
- showDaysOutsideCurrentMonth: PropTypes.bool,
303
- /**
304
- * The props used for each component slot.
305
- * @default {}
306
- */
307
- slotProps: PropTypes.object,
308
- /**
309
- * Overridable component slots.
310
- * @default {}
311
- */
312
- slots: PropTypes.object,
313
- /**
314
- * The system prop that allows defining system overrides as well as additional CSS styles.
315
- */
316
- sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object]),
317
- /**
318
- * Choose which timezone to use for the value.
319
- * Example: "default", "system", "UTC", "America/New_York".
320
- * If you pass values from other timezones to some props, they will be converted to this timezone before being used.
321
- * @see See the {@link https://mui.com/x/react-date-pickers/timezone/ timezones documentation} for more details.
322
- * @default The timezone of the `value` or `defaultValue` prop is defined, 'default' otherwise.
323
- */
324
- timezone: PropTypes.string,
325
- /**
326
- * The selected value.
327
- * Used when the component is controlled.
328
- */
329
- value: PropTypes.arrayOf(PropTypes.object),
330
- /**
331
- * Define custom view renderers for each section.
332
- * If `null`, the section will only have field editing.
333
- * If `undefined`, internally defined view will be the used.
334
- */
335
- viewRenderers: PropTypes.shape({
336
- day: PropTypes.func
337
- })
338
- };
339
- export { MobileDateRangePicker };
@@ -1 +0,0 @@
1
- export { MobileDateRangePicker } from './MobileDateRangePicker';