@mui/x-date-pickers-pro 8.0.0-alpha.1 → 8.0.0-alpha.10

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 (291) hide show
  1. package/{AdapterDateFnsJalaliV3 → AdapterDateFnsJalaliV2}/index.d.ts +1 -1
  2. package/{AdapterDateFnsJalaliV3 → AdapterDateFnsJalaliV2}/index.js +1 -1
  3. package/{AdapterDateFnsJalaliV3 → AdapterDateFnsJalaliV2}/package.json +1 -1
  4. package/{AdapterDateFnsV3 → AdapterDateFnsV2}/index.d.ts +1 -1
  5. package/{AdapterDateFnsV3 → AdapterDateFnsV2}/index.js +1 -1
  6. package/{AdapterDateFnsV3 → AdapterDateFnsV2}/package.json +1 -1
  7. package/CHANGELOG.md +1903 -231
  8. package/DateRangeCalendar/DateRangeCalendar.js +15 -13
  9. package/DateRangePicker/DateRangePicker.js +1 -4
  10. package/DateRangePicker/DateRangePicker.types.d.ts +6 -2
  11. package/DateRangePicker/DateRangePickerToolbar.d.ts +2 -3
  12. package/DateRangePicker/DateRangePickerToolbar.js +33 -41
  13. package/DateRangePicker/shared.d.ts +4 -3
  14. package/DateTimeRangePicker/DateTimeRangePicker.js +2 -5
  15. package/DateTimeRangePicker/DateTimeRangePicker.types.d.ts +1 -2
  16. package/DateTimeRangePicker/DateTimeRangePickerTabs.d.ts +4 -5
  17. package/DateTimeRangePicker/DateTimeRangePickerTabs.js +35 -33
  18. package/DateTimeRangePicker/DateTimeRangePickerTimeWrapper.d.ts +8 -10
  19. package/DateTimeRangePicker/DateTimeRangePickerTimeWrapper.js +8 -6
  20. package/DateTimeRangePicker/DateTimeRangePickerToolbar.d.ts +2 -5
  21. package/DateTimeRangePicker/DateTimeRangePickerToolbar.js +81 -109
  22. package/DateTimeRangePicker/shared.d.ts +6 -5
  23. package/DesktopDateRangePicker/DesktopDateRangePicker.js +11 -9
  24. package/DesktopDateRangePicker/DesktopDateRangePicker.types.d.ts +7 -2
  25. package/DesktopDateTimeRangePicker/DesktopDateTimeRangePicker.js +20 -22
  26. package/DesktopDateTimeRangePicker/DesktopDateTimeRangePicker.types.d.ts +2 -3
  27. package/MobileDateRangePicker/MobileDateRangePicker.js +4 -8
  28. package/MobileDateRangePicker/MobileDateRangePicker.types.d.ts +2 -2
  29. package/MobileDateTimeRangePicker/MobileDateTimeRangePicker.js +18 -16
  30. package/MobileDateTimeRangePicker/MobileDateTimeRangePicker.types.d.ts +2 -3
  31. package/MultiInputDateRangeField/MultiInputDateRangeField.d.ts +9 -4
  32. package/MultiInputDateRangeField/MultiInputDateRangeField.js +15 -121
  33. package/MultiInputDateRangeField/index.d.ts +5 -3
  34. package/MultiInputDateRangeField/index.js +2 -2
  35. package/MultiInputDateRangeField/multiInputDateRangeFieldClasses.d.ts +6 -0
  36. package/MultiInputDateRangeField/multiInputDateRangeFieldClasses.js +4 -0
  37. package/MultiInputDateTimeRangeField/MultiInputDateTimeRangeField.d.ts +9 -4
  38. package/MultiInputDateTimeRangeField/MultiInputDateTimeRangeField.js +15 -121
  39. package/MultiInputDateTimeRangeField/index.d.ts +5 -3
  40. package/MultiInputDateTimeRangeField/index.js +2 -2
  41. package/MultiInputDateTimeRangeField/multiInputDateTimeRangeFieldClasses.d.ts +6 -0
  42. package/MultiInputDateTimeRangeField/multiInputDateTimeRangeFieldClasses.js +4 -0
  43. package/MultiInputTimeRangeField/MultiInputTimeRangeField.d.ts +9 -4
  44. package/MultiInputTimeRangeField/MultiInputTimeRangeField.js +16 -122
  45. package/MultiInputTimeRangeField/index.d.ts +5 -3
  46. package/MultiInputTimeRangeField/index.js +2 -2
  47. package/MultiInputTimeRangeField/multiInputTimeRangeFieldClasses.d.ts +6 -0
  48. package/MultiInputTimeRangeField/multiInputTimeRangeFieldClasses.js +4 -0
  49. package/README.md +8 -5
  50. package/SingleInputDateRangeField/SingleInputDateRangeField.js +23 -33
  51. package/SingleInputDateRangeField/SingleInputDateRangeField.types.d.ts +6 -16
  52. package/SingleInputDateRangeField/useSingleInputDateRangeField.d.ts +1 -1
  53. package/SingleInputDateRangeField/useSingleInputDateRangeField.js +14 -14
  54. package/SingleInputDateTimeRangeField/SingleInputDateTimeRangeField.js +23 -33
  55. package/SingleInputDateTimeRangeField/SingleInputDateTimeRangeField.types.d.ts +6 -17
  56. package/SingleInputDateTimeRangeField/useSingleInputDateTimeRangeField.d.ts +1 -1
  57. package/SingleInputDateTimeRangeField/useSingleInputDateTimeRangeField.js +14 -14
  58. package/SingleInputTimeRangeField/SingleInputTimeRangeField.js +23 -33
  59. package/SingleInputTimeRangeField/SingleInputTimeRangeField.types.d.ts +6 -17
  60. package/SingleInputTimeRangeField/useSingleInputTimeRangeField.d.ts +1 -1
  61. package/SingleInputTimeRangeField/useSingleInputTimeRangeField.js +14 -14
  62. package/StaticDateRangePicker/StaticDateRangePicker.js +2 -2
  63. package/StaticDateRangePicker/StaticDateRangePicker.types.d.ts +2 -2
  64. package/dateRangeViewRenderers/dateRangeViewRenderers.d.ts +2 -2
  65. package/dateRangeViewRenderers/dateRangeViewRenderers.js +0 -6
  66. package/hooks/index.d.ts +2 -0
  67. package/hooks/index.js +2 -0
  68. package/hooks/package.json +6 -0
  69. package/hooks/useMultiInputRangeField/index.d.ts +1 -0
  70. package/hooks/useMultiInputRangeField/index.js +1 -0
  71. package/hooks/useMultiInputRangeField/useMultiInputRangeField.d.ts +53 -0
  72. package/hooks/useMultiInputRangeField/useMultiInputRangeField.js +149 -0
  73. package/hooks/useMultiInputRangeField/useMultiInputRangeFieldSelectedSections.d.ts +17 -0
  74. package/{modern/internals/hooks/useMultiInputFieldSelectedSections.js → hooks/useMultiInputRangeField/useMultiInputRangeFieldSelectedSections.js} +10 -8
  75. package/hooks/useMultiInputRangeField/useMultiInputRangeFieldTextFieldProps.d.ts +17 -0
  76. package/hooks/useMultiInputRangeField/useMultiInputRangeFieldTextFieldProps.js +59 -0
  77. package/hooks/usePickerRangePositionContext.d.ts +7 -0
  78. package/hooks/usePickerRangePositionContext.js +15 -0
  79. package/index.d.ts +2 -0
  80. package/index.js +4 -2
  81. package/internals/hooks/models/index.d.ts +1 -1
  82. package/internals/hooks/models/useRangePicker.d.ts +8 -11
  83. package/internals/hooks/useDesktopRangePicker/useDesktopRangePicker.js +68 -100
  84. package/internals/hooks/useDesktopRangePicker/useDesktopRangePicker.types.d.ts +8 -10
  85. package/internals/hooks/{useEnrichedRangePickerFieldProps.d.ts → useEnrichedRangePickerField.d.ts} +25 -16
  86. package/internals/hooks/{useEnrichedRangePickerFieldProps.js → useEnrichedRangePickerField.js} +50 -63
  87. package/internals/hooks/useMobileRangePicker/useMobileRangePicker.js +57 -80
  88. package/internals/hooks/useMobileRangePicker/useMobileRangePicker.types.d.ts +7 -9
  89. package/internals/hooks/useNullablePickerRangePositionContext.d.ts +5 -0
  90. package/internals/hooks/useNullablePickerRangePositionContext.js +10 -0
  91. package/internals/hooks/useRangePosition.d.ts +4 -3
  92. package/internals/hooks/useRangePosition.js +1 -1
  93. package/internals/hooks/useStaticRangePicker/useStaticRangePicker.d.ts +1 -1
  94. package/internals/hooks/useStaticRangePicker/useStaticRangePicker.js +17 -30
  95. package/internals/hooks/useStaticRangePicker/useStaticRangePicker.types.d.ts +6 -12
  96. package/internals/models/dateTimeRange.d.ts +1 -6
  97. package/internals/models/fields.d.ts +7 -11
  98. package/internals/models/index.d.ts +0 -1
  99. package/internals/models/index.js +0 -1
  100. package/internals/models/managers.d.ts +3 -0
  101. package/internals/utils/createMultiInputRangeField/createMultiInputRangeField.d.ts +3 -0
  102. package/internals/utils/createMultiInputRangeField/createMultiInputRangeField.js +136 -0
  103. package/internals/utils/createMultiInputRangeField/createMultiInputRangeField.types.d.ts +72 -0
  104. package/internals/utils/createMultiInputRangeField/index.d.ts +3 -0
  105. package/internals/utils/createMultiInputRangeField/index.js +2 -0
  106. package/internals/utils/date-fields-utils.d.ts +6 -6
  107. package/internals/utils/date-range-manager.js +2 -1
  108. package/internals/utils/releaseInfo.js +1 -1
  109. package/internals/utils/valueManagers.d.ts +4 -3
  110. package/internals/utils/valueManagers.js +7 -7
  111. package/managers/index.d.ts +6 -0
  112. package/managers/index.js +3 -0
  113. package/managers/package.json +6 -0
  114. package/managers/useDateRangeManager.d.ts +15 -0
  115. package/managers/useDateRangeManager.js +33 -0
  116. package/managers/useDateTimeRangeManager.d.ts +15 -0
  117. package/managers/useDateTimeRangeManager.js +33 -0
  118. package/managers/useTimeRangeManager.d.ts +15 -0
  119. package/managers/useTimeRangeManager.js +31 -0
  120. package/models/fields.d.ts +7 -11
  121. package/models/index.d.ts +1 -2
  122. package/models/index.js +1 -2
  123. package/models/range.d.ts +0 -2
  124. package/modern/{AdapterDateFnsJalaliV3 → AdapterDateFnsJalaliV2}/index.js +1 -1
  125. package/modern/{AdapterDateFnsV3 → AdapterDateFnsV2}/index.js +1 -1
  126. package/modern/DateRangeCalendar/DateRangeCalendar.js +15 -13
  127. package/modern/DateRangePicker/DateRangePicker.js +1 -4
  128. package/modern/DateRangePicker/DateRangePickerToolbar.js +33 -41
  129. package/modern/DateTimeRangePicker/DateTimeRangePicker.js +2 -5
  130. package/modern/DateTimeRangePicker/DateTimeRangePickerTabs.js +35 -33
  131. package/modern/DateTimeRangePicker/DateTimeRangePickerTimeWrapper.js +8 -6
  132. package/modern/DateTimeRangePicker/DateTimeRangePickerToolbar.js +81 -109
  133. package/modern/DesktopDateRangePicker/DesktopDateRangePicker.js +11 -9
  134. package/modern/DesktopDateTimeRangePicker/DesktopDateTimeRangePicker.js +20 -22
  135. package/modern/MobileDateRangePicker/MobileDateRangePicker.js +4 -8
  136. package/modern/MobileDateTimeRangePicker/MobileDateTimeRangePicker.js +18 -16
  137. package/modern/MultiInputDateRangeField/MultiInputDateRangeField.js +15 -121
  138. package/modern/MultiInputDateRangeField/index.js +2 -2
  139. package/modern/MultiInputDateRangeField/multiInputDateRangeFieldClasses.js +4 -0
  140. package/modern/MultiInputDateTimeRangeField/MultiInputDateTimeRangeField.js +15 -121
  141. package/modern/MultiInputDateTimeRangeField/index.js +2 -2
  142. package/modern/MultiInputDateTimeRangeField/multiInputDateTimeRangeFieldClasses.js +4 -0
  143. package/modern/MultiInputTimeRangeField/MultiInputTimeRangeField.js +16 -122
  144. package/modern/MultiInputTimeRangeField/index.js +2 -2
  145. package/modern/MultiInputTimeRangeField/multiInputTimeRangeFieldClasses.js +4 -0
  146. package/modern/SingleInputDateRangeField/SingleInputDateRangeField.js +23 -33
  147. package/modern/SingleInputDateRangeField/useSingleInputDateRangeField.js +14 -14
  148. package/modern/SingleInputDateTimeRangeField/SingleInputDateTimeRangeField.js +23 -33
  149. package/modern/SingleInputDateTimeRangeField/useSingleInputDateTimeRangeField.js +14 -14
  150. package/modern/SingleInputTimeRangeField/SingleInputTimeRangeField.js +23 -33
  151. package/modern/SingleInputTimeRangeField/useSingleInputTimeRangeField.js +14 -14
  152. package/modern/StaticDateRangePicker/StaticDateRangePicker.js +2 -2
  153. package/modern/dateRangeViewRenderers/dateRangeViewRenderers.js +0 -6
  154. package/modern/hooks/index.js +2 -0
  155. package/modern/hooks/useMultiInputRangeField/index.js +1 -0
  156. package/modern/hooks/useMultiInputRangeField/useMultiInputRangeField.js +149 -0
  157. package/{internals/hooks/useMultiInputFieldSelectedSections.js → modern/hooks/useMultiInputRangeField/useMultiInputRangeFieldSelectedSections.js} +10 -8
  158. package/modern/hooks/useMultiInputRangeField/useMultiInputRangeFieldTextFieldProps.js +59 -0
  159. package/modern/hooks/usePickerRangePositionContext.js +15 -0
  160. package/modern/index.js +4 -2
  161. package/modern/internals/hooks/useDesktopRangePicker/useDesktopRangePicker.js +68 -100
  162. package/modern/internals/hooks/{useEnrichedRangePickerFieldProps.js → useEnrichedRangePickerField.js} +50 -63
  163. package/modern/internals/hooks/useMobileRangePicker/useMobileRangePicker.js +57 -80
  164. package/modern/internals/hooks/useNullablePickerRangePositionContext.js +10 -0
  165. package/modern/internals/hooks/useRangePosition.js +1 -1
  166. package/modern/internals/hooks/useStaticRangePicker/useStaticRangePicker.js +17 -30
  167. package/modern/internals/models/index.js +0 -1
  168. package/modern/internals/utils/createMultiInputRangeField/createMultiInputRangeField.js +136 -0
  169. package/modern/internals/utils/createMultiInputRangeField/index.js +2 -0
  170. package/modern/internals/utils/date-range-manager.js +2 -1
  171. package/modern/internals/utils/releaseInfo.js +1 -1
  172. package/modern/internals/utils/valueManagers.js +7 -7
  173. package/modern/managers/index.js +3 -0
  174. package/modern/managers/useDateRangeManager.js +33 -0
  175. package/modern/managers/useDateTimeRangeManager.js +33 -0
  176. package/modern/managers/useTimeRangeManager.js +31 -0
  177. package/modern/models/index.js +1 -2
  178. package/modern/validation/validateDateRange.js +8 -0
  179. package/modern/validation/validateDateTimeRange.js +4 -0
  180. package/modern/validation/validateTimeRange.js +8 -0
  181. package/node/{AdapterDateFnsJalaliV3 → AdapterDateFnsJalaliV2}/index.js +1 -1
  182. package/node/{AdapterDateFnsV3 → AdapterDateFnsV2}/index.js +1 -1
  183. package/node/DateRangeCalendar/DateRangeCalendar.js +14 -12
  184. package/node/DateRangePicker/DateRangePicker.js +1 -4
  185. package/node/DateRangePicker/DateRangePickerToolbar.js +31 -39
  186. package/node/DateTimeRangePicker/DateTimeRangePicker.js +2 -5
  187. package/node/DateTimeRangePicker/DateTimeRangePickerTabs.js +33 -31
  188. package/node/DateTimeRangePicker/DateTimeRangePickerTimeWrapper.js +8 -6
  189. package/node/DateTimeRangePicker/DateTimeRangePickerToolbar.js +80 -108
  190. package/node/DesktopDateRangePicker/DesktopDateRangePicker.js +11 -9
  191. package/node/DesktopDateTimeRangePicker/DesktopDateTimeRangePicker.js +20 -22
  192. package/node/MobileDateRangePicker/MobileDateRangePicker.js +4 -8
  193. package/node/MobileDateTimeRangePicker/MobileDateTimeRangePicker.js +18 -16
  194. package/node/MultiInputDateRangeField/MultiInputDateRangeField.js +14 -124
  195. package/node/MultiInputDateRangeField/index.js +3 -9
  196. package/node/MultiInputDateRangeField/multiInputDateRangeFieldClasses.js +12 -0
  197. package/node/MultiInputDateTimeRangeField/MultiInputDateTimeRangeField.js +14 -124
  198. package/node/MultiInputDateTimeRangeField/index.js +3 -9
  199. package/node/MultiInputDateTimeRangeField/multiInputDateTimeRangeFieldClasses.js +12 -0
  200. package/node/MultiInputTimeRangeField/MultiInputTimeRangeField.js +15 -125
  201. package/node/MultiInputTimeRangeField/index.js +3 -9
  202. package/node/MultiInputTimeRangeField/multiInputTimeRangeFieldClasses.js +12 -0
  203. package/node/SingleInputDateRangeField/SingleInputDateRangeField.js +22 -32
  204. package/node/SingleInputDateRangeField/useSingleInputDateRangeField.js +13 -14
  205. package/node/SingleInputDateTimeRangeField/SingleInputDateTimeRangeField.js +22 -32
  206. package/node/SingleInputDateTimeRangeField/useSingleInputDateTimeRangeField.js +13 -14
  207. package/node/SingleInputTimeRangeField/SingleInputTimeRangeField.js +22 -32
  208. package/node/SingleInputTimeRangeField/useSingleInputTimeRangeField.js +13 -14
  209. package/node/StaticDateRangePicker/StaticDateRangePicker.js +2 -2
  210. package/node/dateRangeViewRenderers/dateRangeViewRenderers.js +0 -6
  211. package/node/hooks/index.js +19 -0
  212. package/node/hooks/useMultiInputRangeField/index.js +12 -0
  213. package/node/hooks/useMultiInputRangeField/useMultiInputRangeField.js +155 -0
  214. package/node/{internals/hooks/useMultiInputFieldSelectedSections.js → hooks/useMultiInputRangeField/useMultiInputRangeFieldSelectedSections.js} +11 -10
  215. package/node/hooks/useMultiInputRangeField/useMultiInputRangeFieldTextFieldProps.js +66 -0
  216. package/node/hooks/usePickerRangePositionContext.js +22 -0
  217. package/node/index.js +23 -1
  218. package/node/internals/hooks/useDesktopRangePicker/useDesktopRangePicker.js +68 -100
  219. package/node/internals/hooks/{useEnrichedRangePickerFieldProps.js → useEnrichedRangePickerField.js} +52 -65
  220. package/node/internals/hooks/useMobileRangePicker/useMobileRangePicker.js +57 -80
  221. package/node/internals/hooks/useNullablePickerRangePositionContext.js +16 -0
  222. package/node/internals/hooks/useRangePosition.js +1 -1
  223. package/node/internals/hooks/useStaticRangePicker/useStaticRangePicker.js +16 -29
  224. package/node/internals/models/index.js +0 -11
  225. package/node/internals/utils/createMultiInputRangeField/createMultiInputRangeField.js +143 -0
  226. package/node/internals/utils/createMultiInputRangeField/index.js +19 -0
  227. package/node/internals/utils/date-range-manager.js +2 -1
  228. package/node/internals/utils/releaseInfo.js +1 -1
  229. package/node/internals/utils/valueManagers.js +7 -7
  230. package/node/managers/index.js +26 -0
  231. package/node/managers/useDateRangeManager.js +40 -0
  232. package/node/managers/useDateTimeRangeManager.js +40 -0
  233. package/node/managers/useTimeRangeManager.js +38 -0
  234. package/node/models/index.js +0 -22
  235. package/node/validation/validateDateRange.js +8 -0
  236. package/node/validation/validateDateTimeRange.js +4 -0
  237. package/node/validation/validateTimeRange.js +8 -0
  238. package/package.json +6 -6
  239. package/themeAugmentation/overrides.d.ts +6 -4
  240. package/themeAugmentation/props.d.ts +2 -2
  241. package/validation/validateDateRange.d.ts +9 -1
  242. package/validation/validateDateRange.js +8 -0
  243. package/validation/validateDateTimeRange.d.ts +6 -2
  244. package/validation/validateDateTimeRange.js +4 -0
  245. package/validation/validateTimeRange.d.ts +9 -1
  246. package/validation/validateTimeRange.js +8 -0
  247. package/MultiInputDateRangeField/MultiInputDateRangeField.types.d.ts +0 -53
  248. package/MultiInputDateTimeRangeField/MultiInputDateTimeRangeField.types.d.ts +0 -54
  249. package/MultiInputTimeRangeField/MultiInputTimeRangeField.types.d.ts +0 -54
  250. package/internals/hooks/useMultiInputFieldSelectedSections.d.ts +0 -21
  251. package/internals/hooks/useMultiInputRangeField/shared.d.ts +0 -1
  252. package/internals/hooks/useMultiInputRangeField/shared.js +0 -9
  253. package/internals/hooks/useMultiInputRangeField/useMultiInputDateRangeField.d.ts +0 -3
  254. package/internals/hooks/useMultiInputRangeField/useMultiInputDateRangeField.js +0 -113
  255. package/internals/hooks/useMultiInputRangeField/useMultiInputDateTimeRangeField.d.ts +0 -3
  256. package/internals/hooks/useMultiInputRangeField/useMultiInputDateTimeRangeField.js +0 -113
  257. package/internals/hooks/useMultiInputRangeField/useMultiInputRangeField.types.d.ts +0 -11
  258. package/internals/hooks/useMultiInputRangeField/useMultiInputTimeRangeField.d.ts +0 -3
  259. package/internals/hooks/useMultiInputRangeField/useMultiInputTimeRangeField.js +0 -113
  260. package/internals/models/timeRange.d.ts +0 -6
  261. package/internals/models/timeRange.js +0 -1
  262. package/models/dateRange.d.ts +0 -7
  263. package/models/dateRange.js +0 -1
  264. package/models/multiInputRangeFieldClasses.d.ts +0 -7
  265. package/models/multiInputRangeFieldClasses.js +0 -1
  266. package/modern/MultiInputDateRangeField/MultiInputDateRangeField.types.js +0 -1
  267. package/modern/MultiInputDateTimeRangeField/MultiInputDateTimeRangeField.types.js +0 -1
  268. package/modern/MultiInputTimeRangeField/MultiInputTimeRangeField.types.js +0 -1
  269. package/modern/internals/hooks/useMultiInputRangeField/shared.js +0 -9
  270. package/modern/internals/hooks/useMultiInputRangeField/useMultiInputDateRangeField.js +0 -113
  271. package/modern/internals/hooks/useMultiInputRangeField/useMultiInputDateTimeRangeField.js +0 -113
  272. package/modern/internals/hooks/useMultiInputRangeField/useMultiInputRangeField.types.js +0 -1
  273. package/modern/internals/hooks/useMultiInputRangeField/useMultiInputTimeRangeField.js +0 -113
  274. package/modern/internals/models/timeRange.js +0 -1
  275. package/modern/models/dateRange.js +0 -1
  276. package/modern/models/multiInputRangeFieldClasses.js +0 -1
  277. package/node/MultiInputTimeRangeField/MultiInputTimeRangeField.types.js +0 -5
  278. package/node/internals/hooks/useMultiInputRangeField/shared.js +0 -16
  279. package/node/internals/hooks/useMultiInputRangeField/useMultiInputDateRangeField.js +0 -121
  280. package/node/internals/hooks/useMultiInputRangeField/useMultiInputDateTimeRangeField.js +0 -121
  281. package/node/internals/hooks/useMultiInputRangeField/useMultiInputRangeField.types.js +0 -5
  282. package/node/internals/hooks/useMultiInputRangeField/useMultiInputTimeRangeField.js +0 -121
  283. package/node/internals/models/timeRange.js +0 -5
  284. package/node/models/dateRange.js +0 -5
  285. package/node/models/multiInputRangeFieldClasses.js +0 -5
  286. /package/{MultiInputDateRangeField/MultiInputDateRangeField.types.js → internals/models/managers.js} +0 -0
  287. /package/{MultiInputDateTimeRangeField/MultiInputDateTimeRangeField.types.js → internals/utils/createMultiInputRangeField/createMultiInputRangeField.types.js} +0 -0
  288. /package/{MultiInputTimeRangeField/MultiInputTimeRangeField.types.js → modern/internals/models/managers.js} +0 -0
  289. /package/{internals/hooks/useMultiInputRangeField/useMultiInputRangeField.types.js → modern/internals/utils/createMultiInputRangeField/createMultiInputRangeField.types.js} +0 -0
  290. /package/node/{MultiInputDateRangeField/MultiInputDateRangeField.types.js → internals/models/managers.js} +0 -0
  291. /package/node/{MultiInputDateTimeRangeField/MultiInputDateTimeRangeField.types.js → internals/utils/createMultiInputRangeField/createMultiInputRangeField.types.js} +0 -0
@@ -1,32 +1,31 @@
1
1
  "use strict";
2
2
  'use client';
3
3
 
4
- var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
5
4
  Object.defineProperty(exports, "__esModule", {
6
5
  value: true
7
6
  });
8
7
  exports.useSingleInputTimeRangeField = void 0;
9
- var React = _interopRequireWildcard(require("react"));
10
8
  var _internals = require("@mui/x-date-pickers/internals");
11
9
  var _hooks = require("@mui/x-date-pickers/hooks");
12
- var _valueManagers = require("../internals/utils/valueManagers");
13
- var _validation = require("../validation");
14
- const useSingleInputTimeRangeField = inProps => {
15
- const props = (0, _internals.useDefaultizedTimeField)(inProps);
10
+ var _managers = require("../managers");
11
+ const useSingleInputTimeRangeField = props => {
12
+ const manager = (0, _managers.useTimeRangeManager)(props);
16
13
  const {
17
14
  forwardedProps,
18
15
  internalProps
19
16
  } = (0, _hooks.useSplitFieldProps)(props, 'time');
20
- const fieldValueManager = React.useMemo(() => (0, _valueManagers.getRangeFieldValueManager)({
21
- dateSeparator: internalProps.dateSeparator
22
- }), [internalProps.dateSeparator]);
17
+ const internalPropsWithDefaults = (0, _internals.useFieldInternalPropsWithDefaults)({
18
+ manager,
19
+ internalProps
20
+ });
23
21
  return (0, _internals.useField)({
24
22
  forwardedProps,
25
- internalProps,
26
- valueManager: _valueManagers.rangeValueManager,
27
- fieldValueManager,
28
- validator: _validation.validateTimeRange,
29
- valueType: 'time'
23
+ internalProps: internalPropsWithDefaults,
24
+ valueManager: manager.internal_valueManager,
25
+ fieldValueManager: manager.internal_fieldValueManager,
26
+ validator: manager.validator,
27
+ valueType: manager.valueType,
28
+ getOpenPickerButtonAriaLabel: manager.internal_getOpenPickerButtonAriaLabel
30
29
  });
31
30
  };
32
31
  exports.useSingleInputTimeRangeField = useSingleInputTimeRangeField;
@@ -48,11 +48,11 @@ const StaticDateRangePicker = exports.StaticDateRangePicker = /*#__PURE__*/React
48
48
  const {
49
49
  renderPicker
50
50
  } = (0, _useStaticRangePicker.useStaticRangePicker)({
51
+ ref,
51
52
  props,
52
53
  valueManager: _valueManagers.rangeValueManager,
53
54
  valueType: 'date',
54
- validator: _validation.validateDateRange,
55
- ref
55
+ validator: _validation.validateDateRange
56
56
  });
57
57
  return renderPicker();
58
58
  });
@@ -26,9 +26,6 @@ const renderDateRangeViewCalendar = ({
26
26
  shouldDisableDate,
27
27
  reduceAnimations,
28
28
  onMonthChange,
29
- rangePosition,
30
- defaultRangePosition,
31
- onRangePositionChange,
32
29
  calendars,
33
30
  currentMonthCalendarPosition,
34
31
  slots,
@@ -65,9 +62,6 @@ const renderDateRangeViewCalendar = ({
65
62
  shouldDisableDate: shouldDisableDate,
66
63
  reduceAnimations: reduceAnimations,
67
64
  onMonthChange: onMonthChange,
68
- rangePosition: rangePosition,
69
- defaultRangePosition: defaultRangePosition,
70
- onRangePositionChange: onRangePositionChange,
71
65
  calendars: calendars,
72
66
  currentMonthCalendarPosition: currentMonthCalendarPosition,
73
67
  slots: slots,
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ Object.defineProperty(exports, "unstable_useMultiInputRangeField", {
7
+ enumerable: true,
8
+ get: function () {
9
+ return _useMultiInputRangeField.useMultiInputRangeField;
10
+ }
11
+ });
12
+ Object.defineProperty(exports, "usePickerRangePositionContext", {
13
+ enumerable: true,
14
+ get: function () {
15
+ return _usePickerRangePositionContext.usePickerRangePositionContext;
16
+ }
17
+ });
18
+ var _usePickerRangePositionContext = require("./usePickerRangePositionContext");
19
+ var _useMultiInputRangeField = require("./useMultiInputRangeField");
@@ -0,0 +1,12 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ Object.defineProperty(exports, "useMultiInputRangeField", {
7
+ enumerable: true,
8
+ get: function () {
9
+ return _useMultiInputRangeField.useMultiInputRangeField;
10
+ }
11
+ });
12
+ var _useMultiInputRangeField = require("./useMultiInputRangeField");
@@ -0,0 +1,155 @@
1
+ "use strict";
2
+ 'use client';
3
+
4
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.useMultiInputRangeField = useMultiInputRangeField;
9
+ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
10
+ var _useEventCallback = _interopRequireDefault(require("@mui/utils/useEventCallback"));
11
+ var _internals = require("@mui/x-date-pickers/internals");
12
+ var _validation = require("@mui/x-date-pickers/validation");
13
+ var _useMultiInputRangeFieldTextFieldProps = require("./useMultiInputRangeFieldTextFieldProps");
14
+ var _useMultiInputRangeFieldSelectedSections = require("./useMultiInputRangeFieldSelectedSections");
15
+ /**
16
+ * Basic example:
17
+ *
18
+ * ```tsx
19
+ * import Box from '@mui/material/Box';
20
+ * import { useSplitFieldProps } from '@mui/x-date-pickers/hooks';
21
+ * import { PickersTextField } from '@mui/x-date-pickers/PickersTextField';
22
+ * import { useDateRangeManager } from '@mui/x-date-pickers-pro/managers';
23
+ *
24
+ * function MultiInputField(props) {
25
+ * const manager = useDateRangeManager();
26
+ * const { internalProps, forwardedProps } = useSplitFieldProps(props, 'date');
27
+ * const { startDate, endDate } = useMultiInputRangeField({
28
+ * manager,
29
+ * internalProps,
30
+ * startForwardedProps: forwardedProps,
31
+ * endForwardedProps: forwardedProps,
32
+ * });
33
+ *
34
+ * return (
35
+ * <Box {...forwardedProps}>
36
+ * <PickersTextField {...startDate} />
37
+ * <span>{' – '}</span>
38
+ * <PickersTextField {...endDate} />
39
+ * </Box>
40
+ * );
41
+ * }
42
+ * ```
43
+ *
44
+ * @param {UseMultiInputRangeFieldParameters<TManager, TForwardedProps>} parameters The parameters of the hook.
45
+ * @param {TManager} parameters.manager The manager of the field.
46
+ * @param {PickerManagerFieldInternalProps<TManager>} parameters.internalProps The internal props of the field.
47
+ * @param {TForwardedProps} parameters.startForwardedProps The forwarded props of the start field.
48
+ * @param {TForwardedProps} parameters.endForwardedProps The forwarded props of the end field.
49
+ * @returns {UseMultiInputRangeFieldReturnValue<TManager, TForwardedProps>} The props to pass to the start and the end components.
50
+ */
51
+ function useMultiInputRangeField(parameters) {
52
+ const {
53
+ manager,
54
+ internalProps,
55
+ startForwardedProps,
56
+ endForwardedProps
57
+ } = parameters;
58
+ const internalPropsWithDefaults = (0, _internals.useFieldInternalPropsWithDefaults)({
59
+ manager,
60
+ internalProps
61
+ });
62
+ const {
63
+ value: valueProp,
64
+ defaultValue,
65
+ format,
66
+ formatDensity,
67
+ shouldRespectLeadingZeros,
68
+ onChange,
69
+ disabled,
70
+ readOnly,
71
+ selectedSections,
72
+ onSelectedSectionsChange,
73
+ timezone: timezoneProp,
74
+ enableAccessibleFieldDOMStructure,
75
+ autoFocus,
76
+ referenceDate,
77
+ unstableStartFieldRef,
78
+ unstableEndFieldRef
79
+ } = internalPropsWithDefaults;
80
+ const {
81
+ value,
82
+ handleValueChange,
83
+ timezone
84
+ } = (0, _internals.useControlledValueWithTimezone)({
85
+ name: 'useMultiInputRangeField',
86
+ timezone: timezoneProp,
87
+ value: valueProp,
88
+ defaultValue,
89
+ referenceDate,
90
+ onChange,
91
+ valueManager: manager.internal_valueManager
92
+ });
93
+ const {
94
+ validationError,
95
+ getValidationErrorForNewValue
96
+ } = (0, _validation.useValidation)({
97
+ props: internalPropsWithDefaults,
98
+ value,
99
+ timezone,
100
+ validator: manager.validator,
101
+ onError: internalPropsWithDefaults.onError
102
+ });
103
+ const buildChangeHandler = index => {
104
+ return (newSingleValue, rawContext) => {
105
+ const newRange = index === 0 ? [newSingleValue, value[1]] : [value[0], newSingleValue];
106
+ const context = (0, _extends2.default)({}, rawContext, {
107
+ validationError: getValidationErrorForNewValue(newRange)
108
+ });
109
+ handleValueChange(newRange, context);
110
+ };
111
+ };
112
+ const handleStartDateChange = (0, _useEventCallback.default)(buildChangeHandler(0));
113
+ const handleEndDateChange = (0, _useEventCallback.default)(buildChangeHandler(1));
114
+ const selectedSectionsResponse = (0, _useMultiInputRangeFieldSelectedSections.useMultiInputRangeFieldSelectedSections)({
115
+ selectedSections,
116
+ onSelectedSectionsChange,
117
+ unstableStartFieldRef,
118
+ unstableEndFieldRef
119
+ });
120
+ const sharedProps = {
121
+ disabled,
122
+ readOnly,
123
+ timezone,
124
+ format,
125
+ formatDensity,
126
+ shouldRespectLeadingZeros,
127
+ enableAccessibleFieldDOMStructure
128
+ };
129
+ const startDateProps = (0, _useMultiInputRangeFieldTextFieldProps.useMultiInputRangeFieldTextFieldProps)({
130
+ valueType: manager.valueType,
131
+ fieldProps: (0, _extends2.default)({
132
+ error: !!validationError[0]
133
+ }, startForwardedProps, selectedSectionsResponse.start, sharedProps, {
134
+ value: valueProp === undefined ? undefined : valueProp[0],
135
+ defaultValue: defaultValue === undefined ? undefined : defaultValue[0],
136
+ onChange: handleStartDateChange,
137
+ autoFocus // Do not add on end field.
138
+ })
139
+ });
140
+ const endDateProps = (0, _useMultiInputRangeFieldTextFieldProps.useMultiInputRangeFieldTextFieldProps)({
141
+ valueType: manager.valueType,
142
+ fieldProps: (0, _extends2.default)({
143
+ error: !!validationError[1]
144
+ }, endForwardedProps, selectedSectionsResponse.end, sharedProps, {
145
+ value: valueProp === undefined ? undefined : valueProp[1],
146
+ defaultValue: defaultValue === undefined ? undefined : defaultValue[1],
147
+ onChange: handleEndDateChange
148
+ })
149
+ });
150
+ return {
151
+ startDate: startDateProps,
152
+ endDate: endDateProps,
153
+ enableAccessibleFieldDOMStructure
154
+ };
155
+ }
@@ -1,18 +1,19 @@
1
1
  "use strict";
2
+ 'use client';
2
3
 
3
4
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
5
  var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
5
6
  Object.defineProperty(exports, "__esModule", {
6
7
  value: true
7
8
  });
8
- exports.useMultiInputFieldSelectedSections = void 0;
9
+ exports.useMultiInputRangeFieldSelectedSections = void 0;
9
10
  var React = _interopRequireWildcard(require("react"));
10
11
  var _useForkRef = _interopRequireDefault(require("@mui/utils/useForkRef"));
11
12
  var _useEventCallback = _interopRequireDefault(require("@mui/utils/useEventCallback"));
12
- const useMultiInputFieldSelectedSections = params => {
13
+ const useMultiInputRangeFieldSelectedSections = parameters => {
13
14
  const unstableEndFieldRef = React.useRef(null);
14
- const handleUnstableEndFieldRef = (0, _useForkRef.default)(params.unstableEndFieldRef, unstableEndFieldRef);
15
- const [startSelectedSection, setStartSelectedSection] = React.useState(params.selectedSections ?? null);
15
+ const handleUnstableEndFieldRef = (0, _useForkRef.default)(parameters.unstableEndFieldRef, unstableEndFieldRef);
16
+ const [startSelectedSection, setStartSelectedSection] = React.useState(parameters.selectedSections ?? null);
16
17
  const [endSelectedSection, setEndSelectedSection] = React.useState(null);
17
18
  const getActiveField = () => {
18
19
  if (unstableEndFieldRef.current && unstableEndFieldRef.current.isFieldFocused()) {
@@ -23,27 +24,27 @@ const useMultiInputFieldSelectedSections = params => {
23
24
  const handleStartSelectedSectionChange = (0, _useEventCallback.default)(newSelectedSections => {
24
25
  setStartSelectedSection(newSelectedSections);
25
26
  if (getActiveField() === 'start') {
26
- params.onSelectedSectionsChange?.(newSelectedSections);
27
+ parameters.onSelectedSectionsChange?.(newSelectedSections);
27
28
  }
28
29
  });
29
30
  const handleEndSelectedSectionChange = (0, _useEventCallback.default)(newSelectedSections => {
30
31
  setEndSelectedSection(newSelectedSections);
31
32
  if (getActiveField() === 'end') {
32
- params.onSelectedSectionsChange?.(newSelectedSections);
33
+ parameters.onSelectedSectionsChange?.(newSelectedSections);
33
34
  }
34
35
  });
35
36
  const activeField = getActiveField();
36
37
  return {
37
38
  start: {
38
- unstableFieldRef: params.unstableStartFieldRef,
39
- selectedSections: activeField === 'start' && params.selectedSections !== undefined ? params.selectedSections : startSelectedSection,
39
+ unstableFieldRef: parameters.unstableStartFieldRef,
40
+ selectedSections: activeField === 'start' && parameters.selectedSections !== undefined ? parameters.selectedSections : startSelectedSection,
40
41
  onSelectedSectionsChange: handleStartSelectedSectionChange
41
42
  },
42
43
  end: {
43
44
  unstableFieldRef: handleUnstableEndFieldRef,
44
- selectedSections: activeField === 'end' && params.selectedSections !== undefined ? params.selectedSections : endSelectedSection,
45
+ selectedSections: activeField === 'end' && parameters.selectedSections !== undefined ? parameters.selectedSections : endSelectedSection,
45
46
  onSelectedSectionsChange: handleEndSelectedSectionChange
46
47
  }
47
48
  };
48
49
  };
49
- exports.useMultiInputFieldSelectedSections = useMultiInputFieldSelectedSections;
50
+ exports.useMultiInputRangeFieldSelectedSections = useMultiInputRangeFieldSelectedSections;
@@ -0,0 +1,66 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.useMultiInputRangeFieldTextFieldProps = useMultiInputRangeFieldTextFieldProps;
8
+ var _objectWithoutPropertiesLoose2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutPropertiesLoose"));
9
+ var _managers = require("@mui/x-date-pickers/managers");
10
+ var _hooks = require("@mui/x-date-pickers/hooks");
11
+ var _internals = require("@mui/x-date-pickers/internals");
12
+ const _excluded = ["clearable", "onClear"];
13
+ /**
14
+ * @ignore - internal hook.
15
+ */
16
+ function useMultiInputRangeFieldTextFieldProps(parameters) {
17
+ const {
18
+ fieldProps,
19
+ valueType
20
+ } = parameters;
21
+ let useManager;
22
+ switch (valueType) {
23
+ case 'date':
24
+ {
25
+ useManager = _managers.useDateManager;
26
+ break;
27
+ }
28
+ case 'time':
29
+ {
30
+ useManager = _managers.useTimeManager;
31
+ break;
32
+ }
33
+ case 'date-time':
34
+ {
35
+ useManager = _managers.useDateTimeManager;
36
+ break;
37
+ }
38
+ default:
39
+ {
40
+ throw new Error(`Unknown valueType: ${valueType}`);
41
+ }
42
+ }
43
+ const manager = useManager({
44
+ enableAccessibleFieldDOMStructure: fieldProps.enableAccessibleFieldDOMStructure
45
+ });
46
+ const {
47
+ forwardedProps,
48
+ internalProps
49
+ } = (0, _hooks.useSplitFieldProps)(fieldProps, 'date');
50
+ const internalPropsWithDefaults = (0, _internals.useFieldInternalPropsWithDefaults)({
51
+ manager,
52
+ internalProps
53
+ });
54
+ const _ref = (0, _internals.useField)({
55
+ forwardedProps,
56
+ internalProps: internalPropsWithDefaults,
57
+ valueManager: manager.internal_valueManager,
58
+ fieldValueManager: manager.internal_fieldValueManager,
59
+ validator: manager.validator,
60
+ valueType: manager.valueType,
61
+ // TODO v8: Add a real aria label before moving the opening logic to the field on range pickers.
62
+ getOpenPickerButtonAriaLabel: () => ''
63
+ }),
64
+ fieldResponse = (0, _objectWithoutPropertiesLoose2.default)(_ref, _excluded);
65
+ return fieldResponse;
66
+ }
@@ -0,0 +1,22 @@
1
+ "use strict";
2
+ 'use client';
3
+
4
+ var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.PickerRangePositionContext = void 0;
9
+ exports.usePickerRangePositionContext = usePickerRangePositionContext;
10
+ var React = _interopRequireWildcard(require("react"));
11
+ const PickerRangePositionContext = exports.PickerRangePositionContext = /*#__PURE__*/React.createContext(null);
12
+
13
+ /**
14
+ * Returns information about the range position of the picker that wraps the current component.
15
+ */
16
+ function usePickerRangePositionContext() {
17
+ const value = React.useContext(PickerRangePositionContext);
18
+ if (value == null) {
19
+ throw new Error(['MUI X: The `usePickerRangePositionContext` can only be called in components that are used inside a picker component'].join('\n'));
20
+ }
21
+ return value;
22
+ }
package/node/index.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @mui/x-date-pickers-pro v8.0.0-alpha.1
2
+ * @mui/x-date-pickers-pro v8.0.0-alpha.10
3
3
  *
4
4
  * @license MUI X Commercial
5
5
  * This source code is licensed under the commercial license found in the
@@ -219,6 +219,17 @@ Object.keys(_models).forEach(function (key) {
219
219
  }
220
220
  });
221
221
  });
222
+ var _hooks = require("./hooks");
223
+ Object.keys(_hooks).forEach(function (key) {
224
+ if (key === "default" || key === "__esModule") return;
225
+ if (key in exports && exports[key] === _hooks[key]) return;
226
+ Object.defineProperty(exports, key, {
227
+ enumerable: true,
228
+ get: function () {
229
+ return _hooks[key];
230
+ }
231
+ });
232
+ });
222
233
  var _validation = require("./validation");
223
234
  Object.keys(_validation).forEach(function (key) {
224
235
  if (key === "default" || key === "__esModule") return;
@@ -229,4 +240,15 @@ Object.keys(_validation).forEach(function (key) {
229
240
  return _validation[key];
230
241
  }
231
242
  });
243
+ });
244
+ var _managers = require("./managers");
245
+ Object.keys(_managers).forEach(function (key) {
246
+ if (key === "default" || key === "__esModule") return;
247
+ if (key in exports && exports[key] === _managers[key]) return;
248
+ Object.defineProperty(exports, key, {
249
+ enumerable: true,
250
+ get: function () {
251
+ return _managers[key];
252
+ }
253
+ });
232
254
  });