@mui/x-date-pickers-pro 8.0.0-alpha.0 → 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 (292) 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 +2215 -119
  8. package/DateRangeCalendar/DateRangeCalendar.js +18 -14
  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 -53
  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 +85 -123
  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 +10 -7
  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 +70 -102
  84. package/internals/hooks/useDesktopRangePicker/useDesktopRangePicker.types.d.ts +8 -10
  85. package/internals/hooks/{useEnrichedRangePickerFieldProps.d.ts → useEnrichedRangePickerField.d.ts} +26 -17
  86. package/internals/hooks/{useEnrichedRangePickerFieldProps.js → useEnrichedRangePickerField.js} +55 -68
  87. package/internals/hooks/useMobileRangePicker/useMobileRangePicker.js +59 -82
  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 +18 -31
  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.d.ts +2 -1
  108. package/internals/utils/date-range-manager.js +13 -10
  109. package/internals/utils/releaseInfo.js +1 -1
  110. package/internals/utils/valueManagers.d.ts +4 -3
  111. package/internals/utils/valueManagers.js +7 -7
  112. package/managers/index.d.ts +6 -0
  113. package/managers/index.js +3 -0
  114. package/managers/package.json +6 -0
  115. package/managers/useDateRangeManager.d.ts +15 -0
  116. package/managers/useDateRangeManager.js +33 -0
  117. package/managers/useDateTimeRangeManager.d.ts +15 -0
  118. package/managers/useDateTimeRangeManager.js +33 -0
  119. package/managers/useTimeRangeManager.d.ts +15 -0
  120. package/managers/useTimeRangeManager.js +31 -0
  121. package/models/fields.d.ts +7 -11
  122. package/models/index.d.ts +1 -2
  123. package/models/index.js +1 -2
  124. package/models/range.d.ts +0 -2
  125. package/modern/{AdapterDateFnsJalaliV3 → AdapterDateFnsJalaliV2}/index.js +1 -1
  126. package/modern/{AdapterDateFnsV3 → AdapterDateFnsV2}/index.js +1 -1
  127. package/modern/DateRangeCalendar/DateRangeCalendar.js +18 -14
  128. package/modern/DateRangePicker/DateRangePicker.js +1 -4
  129. package/modern/DateRangePicker/DateRangePickerToolbar.js +33 -53
  130. package/modern/DateTimeRangePicker/DateTimeRangePicker.js +2 -5
  131. package/modern/DateTimeRangePicker/DateTimeRangePickerTabs.js +35 -33
  132. package/modern/DateTimeRangePicker/DateTimeRangePickerTimeWrapper.js +8 -6
  133. package/modern/DateTimeRangePicker/DateTimeRangePickerToolbar.js +85 -123
  134. package/modern/DesktopDateRangePicker/DesktopDateRangePicker.js +11 -9
  135. package/modern/DesktopDateTimeRangePicker/DesktopDateTimeRangePicker.js +20 -22
  136. package/modern/MobileDateRangePicker/MobileDateRangePicker.js +4 -8
  137. package/modern/MobileDateTimeRangePicker/MobileDateTimeRangePicker.js +18 -16
  138. package/modern/MultiInputDateRangeField/MultiInputDateRangeField.js +15 -121
  139. package/modern/MultiInputDateRangeField/index.js +2 -2
  140. package/modern/MultiInputDateRangeField/multiInputDateRangeFieldClasses.js +4 -0
  141. package/modern/MultiInputDateTimeRangeField/MultiInputDateTimeRangeField.js +15 -121
  142. package/modern/MultiInputDateTimeRangeField/index.js +2 -2
  143. package/modern/MultiInputDateTimeRangeField/multiInputDateTimeRangeFieldClasses.js +4 -0
  144. package/modern/MultiInputTimeRangeField/MultiInputTimeRangeField.js +16 -122
  145. package/modern/MultiInputTimeRangeField/index.js +2 -2
  146. package/modern/MultiInputTimeRangeField/multiInputTimeRangeFieldClasses.js +4 -0
  147. package/modern/SingleInputDateRangeField/SingleInputDateRangeField.js +23 -33
  148. package/modern/SingleInputDateRangeField/useSingleInputDateRangeField.js +14 -14
  149. package/modern/SingleInputDateTimeRangeField/SingleInputDateTimeRangeField.js +23 -33
  150. package/modern/SingleInputDateTimeRangeField/useSingleInputDateTimeRangeField.js +14 -14
  151. package/modern/SingleInputTimeRangeField/SingleInputTimeRangeField.js +23 -33
  152. package/modern/SingleInputTimeRangeField/useSingleInputTimeRangeField.js +14 -14
  153. package/modern/StaticDateRangePicker/StaticDateRangePicker.js +2 -2
  154. package/modern/dateRangeViewRenderers/dateRangeViewRenderers.js +0 -6
  155. package/modern/hooks/index.js +2 -0
  156. package/modern/hooks/useMultiInputRangeField/index.js +1 -0
  157. package/modern/hooks/useMultiInputRangeField/useMultiInputRangeField.js +149 -0
  158. package/{internals/hooks/useMultiInputFieldSelectedSections.js → modern/hooks/useMultiInputRangeField/useMultiInputRangeFieldSelectedSections.js} +10 -8
  159. package/modern/hooks/useMultiInputRangeField/useMultiInputRangeFieldTextFieldProps.js +59 -0
  160. package/modern/hooks/usePickerRangePositionContext.js +15 -0
  161. package/modern/index.js +4 -2
  162. package/modern/internals/hooks/useDesktopRangePicker/useDesktopRangePicker.js +70 -102
  163. package/modern/internals/hooks/{useEnrichedRangePickerFieldProps.js → useEnrichedRangePickerField.js} +55 -68
  164. package/modern/internals/hooks/useMobileRangePicker/useMobileRangePicker.js +59 -82
  165. package/modern/internals/hooks/useNullablePickerRangePositionContext.js +10 -0
  166. package/modern/internals/hooks/useRangePosition.js +1 -1
  167. package/modern/internals/hooks/useStaticRangePicker/useStaticRangePicker.js +18 -31
  168. package/modern/internals/models/index.js +0 -1
  169. package/modern/internals/utils/createMultiInputRangeField/createMultiInputRangeField.js +136 -0
  170. package/modern/internals/utils/createMultiInputRangeField/index.js +2 -0
  171. package/modern/internals/utils/date-range-manager.js +13 -10
  172. package/modern/internals/utils/releaseInfo.js +1 -1
  173. package/modern/internals/utils/valueManagers.js +7 -7
  174. package/modern/managers/index.js +3 -0
  175. package/modern/managers/useDateRangeManager.js +33 -0
  176. package/modern/managers/useDateTimeRangeManager.js +33 -0
  177. package/modern/managers/useTimeRangeManager.js +31 -0
  178. package/modern/models/index.js +1 -2
  179. package/modern/validation/validateDateRange.js +8 -0
  180. package/modern/validation/validateDateTimeRange.js +4 -0
  181. package/modern/validation/validateTimeRange.js +8 -0
  182. package/node/{AdapterDateFnsJalaliV3 → AdapterDateFnsJalaliV2}/index.js +1 -1
  183. package/node/{AdapterDateFnsV3 → AdapterDateFnsV2}/index.js +1 -1
  184. package/node/DateRangeCalendar/DateRangeCalendar.js +17 -13
  185. package/node/DateRangePicker/DateRangePicker.js +1 -4
  186. package/node/DateRangePicker/DateRangePickerToolbar.js +31 -51
  187. package/node/DateTimeRangePicker/DateTimeRangePicker.js +2 -5
  188. package/node/DateTimeRangePicker/DateTimeRangePickerTabs.js +33 -31
  189. package/node/DateTimeRangePicker/DateTimeRangePickerTimeWrapper.js +8 -6
  190. package/node/DateTimeRangePicker/DateTimeRangePickerToolbar.js +83 -121
  191. package/node/DesktopDateRangePicker/DesktopDateRangePicker.js +11 -9
  192. package/node/DesktopDateTimeRangePicker/DesktopDateTimeRangePicker.js +20 -22
  193. package/node/MobileDateRangePicker/MobileDateRangePicker.js +4 -8
  194. package/node/MobileDateTimeRangePicker/MobileDateTimeRangePicker.js +18 -16
  195. package/node/MultiInputDateRangeField/MultiInputDateRangeField.js +14 -124
  196. package/node/MultiInputDateRangeField/index.js +3 -9
  197. package/node/MultiInputDateRangeField/multiInputDateRangeFieldClasses.js +12 -0
  198. package/node/MultiInputDateTimeRangeField/MultiInputDateTimeRangeField.js +14 -124
  199. package/node/MultiInputDateTimeRangeField/index.js +3 -9
  200. package/node/MultiInputDateTimeRangeField/multiInputDateTimeRangeFieldClasses.js +12 -0
  201. package/node/MultiInputTimeRangeField/MultiInputTimeRangeField.js +15 -125
  202. package/node/MultiInputTimeRangeField/index.js +3 -9
  203. package/node/MultiInputTimeRangeField/multiInputTimeRangeFieldClasses.js +12 -0
  204. package/node/SingleInputDateRangeField/SingleInputDateRangeField.js +22 -32
  205. package/node/SingleInputDateRangeField/useSingleInputDateRangeField.js +13 -14
  206. package/node/SingleInputDateTimeRangeField/SingleInputDateTimeRangeField.js +22 -32
  207. package/node/SingleInputDateTimeRangeField/useSingleInputDateTimeRangeField.js +13 -14
  208. package/node/SingleInputTimeRangeField/SingleInputTimeRangeField.js +22 -32
  209. package/node/SingleInputTimeRangeField/useSingleInputTimeRangeField.js +13 -14
  210. package/node/StaticDateRangePicker/StaticDateRangePicker.js +2 -2
  211. package/node/dateRangeViewRenderers/dateRangeViewRenderers.js +0 -6
  212. package/node/hooks/index.js +19 -0
  213. package/node/hooks/useMultiInputRangeField/index.js +12 -0
  214. package/node/hooks/useMultiInputRangeField/useMultiInputRangeField.js +155 -0
  215. package/node/{internals/hooks/useMultiInputFieldSelectedSections.js → hooks/useMultiInputRangeField/useMultiInputRangeFieldSelectedSections.js} +11 -10
  216. package/node/hooks/useMultiInputRangeField/useMultiInputRangeFieldTextFieldProps.js +66 -0
  217. package/node/hooks/usePickerRangePositionContext.js +22 -0
  218. package/node/index.js +23 -1
  219. package/node/internals/hooks/useDesktopRangePicker/useDesktopRangePicker.js +70 -102
  220. package/node/internals/hooks/{useEnrichedRangePickerFieldProps.js → useEnrichedRangePickerField.js} +57 -70
  221. package/node/internals/hooks/useMobileRangePicker/useMobileRangePicker.js +59 -82
  222. package/node/internals/hooks/useNullablePickerRangePositionContext.js +16 -0
  223. package/node/internals/hooks/useRangePosition.js +1 -1
  224. package/node/internals/hooks/useStaticRangePicker/useStaticRangePicker.js +17 -30
  225. package/node/internals/models/index.js +0 -11
  226. package/node/internals/utils/createMultiInputRangeField/createMultiInputRangeField.js +143 -0
  227. package/node/internals/utils/createMultiInputRangeField/index.js +19 -0
  228. package/node/internals/utils/date-range-manager.js +13 -10
  229. package/node/internals/utils/releaseInfo.js +1 -1
  230. package/node/internals/utils/valueManagers.js +7 -7
  231. package/node/managers/index.js +26 -0
  232. package/node/managers/useDateRangeManager.js +40 -0
  233. package/node/managers/useDateTimeRangeManager.js +40 -0
  234. package/node/managers/useTimeRangeManager.js +38 -0
  235. package/node/models/index.js +0 -22
  236. package/node/validation/validateDateRange.js +8 -0
  237. package/node/validation/validateDateTimeRange.js +4 -0
  238. package/node/validation/validateTimeRange.js +8 -0
  239. package/package.json +8 -8
  240. package/themeAugmentation/overrides.d.ts +6 -4
  241. package/themeAugmentation/props.d.ts +2 -2
  242. package/validation/validateDateRange.d.ts +9 -1
  243. package/validation/validateDateRange.js +8 -0
  244. package/validation/validateDateTimeRange.d.ts +6 -2
  245. package/validation/validateDateTimeRange.js +4 -0
  246. package/validation/validateTimeRange.d.ts +9 -1
  247. package/validation/validateTimeRange.js +8 -0
  248. package/MultiInputDateRangeField/MultiInputDateRangeField.types.d.ts +0 -53
  249. package/MultiInputDateTimeRangeField/MultiInputDateTimeRangeField.types.d.ts +0 -54
  250. package/MultiInputTimeRangeField/MultiInputTimeRangeField.types.d.ts +0 -54
  251. package/internals/hooks/useMultiInputFieldSelectedSections.d.ts +0 -21
  252. package/internals/hooks/useMultiInputRangeField/shared.d.ts +0 -1
  253. package/internals/hooks/useMultiInputRangeField/shared.js +0 -9
  254. package/internals/hooks/useMultiInputRangeField/useMultiInputDateRangeField.d.ts +0 -3
  255. package/internals/hooks/useMultiInputRangeField/useMultiInputDateRangeField.js +0 -111
  256. package/internals/hooks/useMultiInputRangeField/useMultiInputDateTimeRangeField.d.ts +0 -3
  257. package/internals/hooks/useMultiInputRangeField/useMultiInputDateTimeRangeField.js +0 -111
  258. package/internals/hooks/useMultiInputRangeField/useMultiInputRangeField.types.d.ts +0 -11
  259. package/internals/hooks/useMultiInputRangeField/useMultiInputTimeRangeField.d.ts +0 -3
  260. package/internals/hooks/useMultiInputRangeField/useMultiInputTimeRangeField.js +0 -111
  261. package/internals/models/timeRange.d.ts +0 -6
  262. package/internals/models/timeRange.js +0 -1
  263. package/models/dateRange.d.ts +0 -7
  264. package/models/dateRange.js +0 -1
  265. package/models/multiInputRangeFieldClasses.d.ts +0 -7
  266. package/models/multiInputRangeFieldClasses.js +0 -1
  267. package/modern/MultiInputDateRangeField/MultiInputDateRangeField.types.js +0 -1
  268. package/modern/MultiInputDateTimeRangeField/MultiInputDateTimeRangeField.types.js +0 -1
  269. package/modern/MultiInputTimeRangeField/MultiInputTimeRangeField.types.js +0 -1
  270. package/modern/internals/hooks/useMultiInputRangeField/shared.js +0 -9
  271. package/modern/internals/hooks/useMultiInputRangeField/useMultiInputDateRangeField.js +0 -111
  272. package/modern/internals/hooks/useMultiInputRangeField/useMultiInputDateTimeRangeField.js +0 -111
  273. package/modern/internals/hooks/useMultiInputRangeField/useMultiInputRangeField.types.js +0 -1
  274. package/modern/internals/hooks/useMultiInputRangeField/useMultiInputTimeRangeField.js +0 -111
  275. package/modern/internals/models/timeRange.js +0 -1
  276. package/modern/models/dateRange.js +0 -1
  277. package/modern/models/multiInputRangeFieldClasses.js +0 -1
  278. package/node/MultiInputTimeRangeField/MultiInputTimeRangeField.types.js +0 -5
  279. package/node/internals/hooks/useMultiInputRangeField/shared.js +0 -16
  280. package/node/internals/hooks/useMultiInputRangeField/useMultiInputDateRangeField.js +0 -119
  281. package/node/internals/hooks/useMultiInputRangeField/useMultiInputDateTimeRangeField.js +0 -119
  282. package/node/internals/hooks/useMultiInputRangeField/useMultiInputRangeField.types.js +0 -5
  283. package/node/internals/hooks/useMultiInputRangeField/useMultiInputTimeRangeField.js +0 -119
  284. package/node/internals/models/timeRange.js +0 -5
  285. package/node/models/dateRange.js +0 -5
  286. package/node/models/multiInputRangeFieldClasses.js +0 -5
  287. /package/{MultiInputDateRangeField/MultiInputDateRangeField.types.js → internals/models/managers.js} +0 -0
  288. /package/{MultiInputDateTimeRangeField/MultiInputDateTimeRangeField.types.js → internals/utils/createMultiInputRangeField/createMultiInputRangeField.types.js} +0 -0
  289. /package/{MultiInputTimeRangeField/MultiInputTimeRangeField.types.js → modern/internals/models/managers.js} +0 -0
  290. /package/{internals/hooks/useMultiInputRangeField/useMultiInputRangeField.types.js → modern/internals/utils/createMultiInputRangeField/createMultiInputRangeField.types.js} +0 -0
  291. /package/node/{MultiInputDateRangeField/MultiInputDateRangeField.types.js → internals/models/managers.js} +0 -0
  292. /package/node/{MultiInputDateTimeRangeField/MultiInputDateTimeRangeField.types.js → internals/utils/createMultiInputRangeField/createMultiInputRangeField.types.js} +0 -0
@@ -2,58 +2,14 @@
2
2
  'use client';
3
3
 
4
4
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
5
- var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
6
5
  Object.defineProperty(exports, "__esModule", {
7
6
  value: true
8
7
  });
9
- exports.multiInputDateTimeRangeFieldClasses = exports.getMultiInputDateTimeRangeFieldUtilityClass = exports.MultiInputDateTimeRangeField = void 0;
10
- var _objectWithoutPropertiesLoose2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutPropertiesLoose"));
11
- var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
12
- var React = _interopRequireWildcard(require("react"));
8
+ exports.MultiInputDateTimeRangeField = void 0;
13
9
  var _propTypes = _interopRequireDefault(require("prop-types"));
14
- var _clsx = _interopRequireDefault(require("clsx"));
15
- var _Stack = _interopRequireDefault(require("@mui/material/Stack"));
16
- var _TextField = _interopRequireDefault(require("@mui/material/TextField"));
17
- var _Typography = _interopRequireDefault(require("@mui/material/Typography"));
18
- var _styles = require("@mui/material/styles");
19
- var _useSlotProps = _interopRequireDefault(require("@mui/utils/useSlotProps"));
20
- var _utils = require("@mui/utils");
21
- var _internals = require("@mui/x-date-pickers/internals");
22
- var _hooks = require("@mui/x-date-pickers/hooks");
23
- var _PickersTextField = require("@mui/x-date-pickers/PickersTextField");
24
- var _useMultiInputDateTimeRangeField = require("../internals/hooks/useMultiInputRangeField/useMultiInputDateTimeRangeField");
25
- var _jsxRuntime = require("react/jsx-runtime");
26
- const _excluded = ["slots", "slotProps", "unstableStartFieldRef", "unstableEndFieldRef", "className"];
27
- const multiInputDateTimeRangeFieldClasses = exports.multiInputDateTimeRangeFieldClasses = (0, _utils.unstable_generateUtilityClasses)('MuiMultiInputDateTimeRangeField', ['root', 'separator']);
28
- const getMultiInputDateTimeRangeFieldUtilityClass = slot => (0, _utils.unstable_generateUtilityClass)('MuiMultiInputDateTimeRangeField', slot);
29
- exports.getMultiInputDateTimeRangeFieldUtilityClass = getMultiInputDateTimeRangeFieldUtilityClass;
30
- const useUtilityClasses = ownerState => {
31
- const {
32
- classes
33
- } = ownerState;
34
- const slots = {
35
- root: ['root'],
36
- separator: ['separator']
37
- };
38
- return (0, _utils.unstable_composeClasses)(slots, getMultiInputDateTimeRangeFieldUtilityClass, classes);
39
- };
40
- const MultiInputDateTimeRangeFieldRoot = (0, _styles.styled)(/*#__PURE__*/React.forwardRef((props, ref) => /*#__PURE__*/(0, _jsxRuntime.jsx)(_Stack.default, (0, _extends2.default)({
41
- ref: ref,
42
- spacing: 2,
43
- direction: "row",
44
- alignItems: "center"
45
- }, props))), {
46
- name: 'MuiMultiInputDateTimeRangeField',
47
- slot: 'Root',
48
- overridesResolver: (props, styles) => styles.root
49
- })({});
50
- const MultiInputDateTimeRangeFieldSeparator = (0, _styles.styled)(_Typography.default, {
51
- name: 'MuiMultiInputDateTimeRangeField',
52
- slot: 'Separator',
53
- overridesResolver: (props, styles) => styles.separator
54
- })({
55
- lineHeight: '1.4375em' // 23px
56
- });
10
+ var _managers = require("../managers");
11
+ var _createMultiInputRangeField = require("../internals/utils/createMultiInputRangeField");
12
+ var _multiInputDateTimeRangeFieldClasses = require("./multiInputDateTimeRangeFieldClasses");
57
13
  /**
58
14
  * Demos:
59
15
  *
@@ -64,79 +20,12 @@ const MultiInputDateTimeRangeFieldSeparator = (0, _styles.styled)(_Typography.de
64
20
  *
65
21
  * - [MultiInputDateTimeRangeField API](https://mui.com/x/api/multi-input-date-time-range-field/)
66
22
  */
67
- const MultiInputDateTimeRangeField = exports.MultiInputDateTimeRangeField = /*#__PURE__*/React.forwardRef(function MultiInputDateTimeRangeField(inProps, ref) {
68
- const themeProps = (0, _styles.useThemeProps)({
69
- props: inProps,
70
- name: 'MuiMultiInputDateTimeRangeField'
71
- });
72
- const {
73
- internalProps,
74
- forwardedProps
75
- } = (0, _hooks.useSplitFieldProps)(themeProps, 'date-time');
76
- const {
77
- slots,
78
- slotProps,
79
- unstableStartFieldRef,
80
- unstableEndFieldRef,
81
- className
82
- } = forwardedProps,
83
- otherForwardedProps = (0, _objectWithoutPropertiesLoose2.default)(forwardedProps, _excluded);
84
- const ownerState = themeProps;
85
- const classes = useUtilityClasses(ownerState);
86
- const Root = slots?.root ?? MultiInputDateTimeRangeFieldRoot;
87
- const rootProps = (0, _useSlotProps.default)({
88
- elementType: Root,
89
- externalSlotProps: slotProps?.root,
90
- externalForwardedProps: otherForwardedProps,
91
- additionalProps: {
92
- ref
93
- },
94
- ownerState,
95
- className: (0, _clsx.default)(className, classes.root)
96
- });
97
- const TextField = slots?.textField ?? (inProps.enableAccessibleFieldDOMStructure === false ? _TextField.default : _PickersTextField.PickersTextField);
98
- const startTextFieldProps = (0, _useSlotProps.default)({
99
- elementType: TextField,
100
- externalSlotProps: slotProps?.textField,
101
- ownerState: (0, _extends2.default)({}, ownerState, {
102
- position: 'start'
103
- })
104
- });
105
- const endTextFieldProps = (0, _useSlotProps.default)({
106
- elementType: TextField,
107
- externalSlotProps: slotProps?.textField,
108
- ownerState: (0, _extends2.default)({}, ownerState, {
109
- position: 'end'
110
- })
111
- });
112
- const Separator = slots?.separator ?? MultiInputDateTimeRangeFieldSeparator;
113
- const separatorProps = (0, _useSlotProps.default)({
114
- elementType: Separator,
115
- externalSlotProps: slotProps?.separator,
116
- additionalProps: {
117
- children: ` ${internalProps.dateSeparator ?? '–'} `
118
- },
119
- ownerState,
120
- className: classes.separator
121
- });
122
- const fieldResponse = (0, _useMultiInputDateTimeRangeField.useMultiInputDateTimeRangeField)({
123
- sharedProps: internalProps,
124
- startTextFieldProps,
125
- endTextFieldProps,
126
- unstableStartFieldRef,
127
- unstableEndFieldRef
128
- });
129
- const startDateProps = (0, _internals.convertFieldResponseIntoMuiTextFieldProps)(fieldResponse.startDate);
130
- const endDateProps = (0, _internals.convertFieldResponseIntoMuiTextFieldProps)(fieldResponse.endDate);
131
- return /*#__PURE__*/(0, _jsxRuntime.jsxs)(Root, (0, _extends2.default)({}, rootProps, {
132
- children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(TextField, (0, _extends2.default)({
133
- fullWidth: true
134
- }, startDateProps)), /*#__PURE__*/(0, _jsxRuntime.jsx)(Separator, (0, _extends2.default)({}, separatorProps)), /*#__PURE__*/(0, _jsxRuntime.jsx)(TextField, (0, _extends2.default)({
135
- fullWidth: true
136
- }, endDateProps))]
137
- }));
23
+ const MultiInputDateTimeRangeField = exports.MultiInputDateTimeRangeField = (0, _createMultiInputRangeField.createMultiInputRangeField)({
24
+ name: 'MuiMultiInputDateTimeRangeField',
25
+ getUtilityClass: _multiInputDateTimeRangeFieldClasses.getMultiInputDateTimeRangeFieldUtilityClass,
26
+ useManager: _managers.useDateTimeRangeManager
138
27
  });
139
- process.env.NODE_ENV !== "production" ? MultiInputDateTimeRangeField.propTypes = {
28
+ MultiInputDateTimeRangeField.propTypes = {
140
29
  // ----------------------------- Warning --------------------------------
141
30
  // | These PropTypes are generated from the TypeScript type definitions |
142
31
  // | To update them edit the TypeScript types and run "pnpm proptypes" |
@@ -148,6 +37,7 @@ process.env.NODE_ENV !== "production" ? MultiInputDateTimeRangeField.propTypes =
148
37
  ampm: _propTypes.default.bool,
149
38
  /**
150
39
  * If `true`, the `input` element is focused during the first mount.
40
+ * @default false
151
41
  */
152
42
  autoFocus: _propTypes.default.bool,
153
43
  /**
@@ -306,10 +196,10 @@ process.env.NODE_ENV !== "production" ? MultiInputDateTimeRangeField.propTypes =
306
196
  */
307
197
  shouldDisableTime: _propTypes.default.func,
308
198
  /**
309
- * If `true`, the format will respect the leading zeroes (e.g: on dayjs, the format `M/D/YYYY` will render `8/16/2018`)
310
- * If `false`, the format will always add leading zeroes (e.g: on dayjs, the format `M/D/YYYY` will render `08/16/2018`)
199
+ * If `true`, the format will respect the leading zeroes (for example on dayjs, the format `M/D/YYYY` will render `8/16/2018`)
200
+ * If `false`, the format will always add leading zeroes (for example on dayjs, the format `M/D/YYYY` will render `08/16/2018`)
311
201
  *
312
- * Warning n°1: Luxon is not able to respect the leading zeroes when using macro tokens (e.g: "DD"), so `shouldRespectLeadingZeros={true}` might lead to inconsistencies when using `AdapterLuxon`.
202
+ * Warning n°1: Luxon is not able to respect the leading zeroes when using macro tokens (for example "DD"), so `shouldRespectLeadingZeros={true}` might lead to inconsistencies when using `AdapterLuxon`.
313
203
  *
314
204
  * Warning n°2: When `shouldRespectLeadingZeros={true}`, the field will add an invisible character on the sections containing a single digit to make sure `onChange` is fired.
315
205
  * If you need to get the clean value from the input, you can remove this character using `input.value.replace(/\u200e/g, '')`.
@@ -365,4 +255,4 @@ process.env.NODE_ENV !== "production" ? MultiInputDateTimeRangeField.propTypes =
365
255
  * Used when the component is controlled.
366
256
  */
367
257
  value: _propTypes.default.arrayOf(_propTypes.default.object)
368
- } : void 0;
258
+ };
@@ -12,20 +12,14 @@ Object.defineProperty(exports, "MultiInputDateTimeRangeField", {
12
12
  Object.defineProperty(exports, "getMultiInputDateTimeRangeFieldUtilityClass", {
13
13
  enumerable: true,
14
14
  get: function () {
15
- return _MultiInputDateTimeRangeField.getMultiInputDateTimeRangeFieldUtilityClass;
15
+ return _multiInputDateTimeRangeFieldClasses.getMultiInputDateTimeRangeFieldUtilityClass;
16
16
  }
17
17
  });
18
18
  Object.defineProperty(exports, "multiInputDateTimeRangeFieldClasses", {
19
19
  enumerable: true,
20
20
  get: function () {
21
- return _MultiInputDateTimeRangeField.multiInputDateTimeRangeFieldClasses;
22
- }
23
- });
24
- Object.defineProperty(exports, "unstable_useMultiInputDateTimeRangeField", {
25
- enumerable: true,
26
- get: function () {
27
- return _useMultiInputDateTimeRangeField.useMultiInputDateTimeRangeField;
21
+ return _multiInputDateTimeRangeFieldClasses.multiInputDateTimeRangeFieldClasses;
28
22
  }
29
23
  });
30
24
  var _MultiInputDateTimeRangeField = require("./MultiInputDateTimeRangeField");
31
- var _useMultiInputDateTimeRangeField = require("../internals/hooks/useMultiInputRangeField/useMultiInputDateTimeRangeField");
25
+ var _multiInputDateTimeRangeFieldClasses = require("./multiInputDateTimeRangeFieldClasses");
@@ -0,0 +1,12 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.multiInputDateTimeRangeFieldClasses = exports.getMultiInputDateTimeRangeFieldUtilityClass = void 0;
8
+ var _generateUtilityClass = _interopRequireDefault(require("@mui/utils/generateUtilityClass"));
9
+ var _generateUtilityClasses = _interopRequireDefault(require("@mui/utils/generateUtilityClasses"));
10
+ const multiInputDateTimeRangeFieldClasses = exports.multiInputDateTimeRangeFieldClasses = (0, _generateUtilityClasses.default)('MuiMultiInputDateTimeRangeField', ['root', 'separator']);
11
+ const getMultiInputDateTimeRangeFieldUtilityClass = slot => (0, _generateUtilityClass.default)('MuiMultiInputDateTimeRangeField', slot);
12
+ exports.getMultiInputDateTimeRangeFieldUtilityClass = getMultiInputDateTimeRangeFieldUtilityClass;
@@ -2,58 +2,14 @@
2
2
  'use client';
3
3
 
4
4
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
5
- var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
6
5
  Object.defineProperty(exports, "__esModule", {
7
6
  value: true
8
7
  });
9
- exports.multiInputTimeRangeFieldClasses = exports.getMultiInputTimeRangeFieldUtilityClass = exports.MultiInputTimeRangeField = void 0;
10
- var _objectWithoutPropertiesLoose2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutPropertiesLoose"));
11
- var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
12
- var React = _interopRequireWildcard(require("react"));
8
+ exports.MultiInputTimeRangeField = void 0;
13
9
  var _propTypes = _interopRequireDefault(require("prop-types"));
14
- var _clsx = require("clsx");
15
- var _Stack = _interopRequireDefault(require("@mui/material/Stack"));
16
- var _TextField = _interopRequireDefault(require("@mui/material/TextField"));
17
- var _Typography = _interopRequireDefault(require("@mui/material/Typography"));
18
- var _styles = require("@mui/material/styles");
19
- var _useSlotProps = _interopRequireDefault(require("@mui/utils/useSlotProps"));
20
- var _utils = require("@mui/utils");
21
- var _internals = require("@mui/x-date-pickers/internals");
22
- var _hooks = require("@mui/x-date-pickers/hooks");
23
- var _PickersTextField = require("@mui/x-date-pickers/PickersTextField");
24
- var _useMultiInputTimeRangeField = require("../internals/hooks/useMultiInputRangeField/useMultiInputTimeRangeField");
25
- var _jsxRuntime = require("react/jsx-runtime");
26
- const _excluded = ["slots", "slotProps", "unstableStartFieldRef", "unstableEndFieldRef", "className"];
27
- const multiInputTimeRangeFieldClasses = exports.multiInputTimeRangeFieldClasses = (0, _utils.unstable_generateUtilityClasses)('MuiMultiInputTimeRangeField', ['root', 'separator']);
28
- const getMultiInputTimeRangeFieldUtilityClass = slot => (0, _utils.unstable_generateUtilityClass)('MuiMultiInputTimeRangeField', slot);
29
- exports.getMultiInputTimeRangeFieldUtilityClass = getMultiInputTimeRangeFieldUtilityClass;
30
- const useUtilityClasses = ownerState => {
31
- const {
32
- classes
33
- } = ownerState;
34
- const slots = {
35
- root: ['root'],
36
- separator: ['separator']
37
- };
38
- return (0, _utils.unstable_composeClasses)(slots, getMultiInputTimeRangeFieldUtilityClass, classes);
39
- };
40
- const MultiInputTimeRangeFieldRoot = (0, _styles.styled)(/*#__PURE__*/React.forwardRef((props, ref) => /*#__PURE__*/(0, _jsxRuntime.jsx)(_Stack.default, (0, _extends2.default)({
41
- ref: ref,
42
- spacing: 2,
43
- direction: "row",
44
- alignItems: "center"
45
- }, props))), {
46
- name: 'MuiMultiInputTimeRangeField',
47
- slot: 'Root',
48
- overridesResolver: (props, styles) => styles.root
49
- })({});
50
- const MultiInputTimeRangeFieldSeparator = (0, _styles.styled)(_Typography.default, {
51
- name: 'MuiMultiInputTimeRangeField',
52
- slot: 'Separator',
53
- overridesResolver: (props, styles) => styles.separator
54
- })({
55
- lineHeight: '1.4375em' // 23px
56
- });
10
+ var _managers = require("../managers");
11
+ var _createMultiInputRangeField = require("../internals/utils/createMultiInputRangeField");
12
+ var _multiInputTimeRangeFieldClasses = require("./multiInputTimeRangeFieldClasses");
57
13
  /**
58
14
  * Demos:
59
15
  *
@@ -64,79 +20,12 @@ const MultiInputTimeRangeFieldSeparator = (0, _styles.styled)(_Typography.defaul
64
20
  *
65
21
  * - [MultiInputTimeRangeField API](https://mui.com/x/api/multi-input-time-range-field/)
66
22
  */
67
- const MultiInputTimeRangeField = exports.MultiInputTimeRangeField = /*#__PURE__*/React.forwardRef(function MultiInputTimeRangeField(inProps, ref) {
68
- const themeProps = (0, _styles.useThemeProps)({
69
- props: inProps,
70
- name: 'MuiMultiInputTimeRangeField'
71
- });
72
- const {
73
- internalProps,
74
- forwardedProps
75
- } = (0, _hooks.useSplitFieldProps)(themeProps, 'time');
76
- const {
77
- slots,
78
- slotProps,
79
- unstableStartFieldRef,
80
- unstableEndFieldRef,
81
- className
82
- } = forwardedProps,
83
- otherForwardedProps = (0, _objectWithoutPropertiesLoose2.default)(forwardedProps, _excluded);
84
- const ownerState = themeProps;
85
- const classes = useUtilityClasses(ownerState);
86
- const Root = slots?.root ?? MultiInputTimeRangeFieldRoot;
87
- const rootProps = (0, _useSlotProps.default)({
88
- elementType: Root,
89
- externalSlotProps: slotProps?.root,
90
- externalForwardedProps: otherForwardedProps,
91
- additionalProps: {
92
- ref
93
- },
94
- ownerState,
95
- className: (0, _clsx.clsx)(className, classes.root)
96
- });
97
- const TextField = slots?.textField ?? (inProps.enableAccessibleFieldDOMStructure === false ? _TextField.default : _PickersTextField.PickersTextField);
98
- const startTextFieldProps = (0, _useSlotProps.default)({
99
- elementType: TextField,
100
- externalSlotProps: slotProps?.textField,
101
- ownerState: (0, _extends2.default)({}, ownerState, {
102
- position: 'start'
103
- })
104
- });
105
- const endTextFieldProps = (0, _useSlotProps.default)({
106
- elementType: TextField,
107
- externalSlotProps: slotProps?.textField,
108
- ownerState: (0, _extends2.default)({}, ownerState, {
109
- position: 'end'
110
- })
111
- });
112
- const Separator = slots?.separator ?? MultiInputTimeRangeFieldSeparator;
113
- const separatorProps = (0, _useSlotProps.default)({
114
- elementType: Separator,
115
- externalSlotProps: slotProps?.separator,
116
- additionalProps: {
117
- children: ` ${internalProps.dateSeparator ?? '–'} `
118
- },
119
- ownerState,
120
- className: classes.separator
121
- });
122
- const fieldResponse = (0, _useMultiInputTimeRangeField.useMultiInputTimeRangeField)({
123
- sharedProps: internalProps,
124
- startTextFieldProps,
125
- endTextFieldProps,
126
- unstableStartFieldRef,
127
- unstableEndFieldRef
128
- });
129
- const startDateProps = (0, _internals.convertFieldResponseIntoMuiTextFieldProps)(fieldResponse.startDate);
130
- const endDateProps = (0, _internals.convertFieldResponseIntoMuiTextFieldProps)(fieldResponse.endDate);
131
- return /*#__PURE__*/(0, _jsxRuntime.jsxs)(Root, (0, _extends2.default)({}, rootProps, {
132
- children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(TextField, (0, _extends2.default)({
133
- fullWidth: true
134
- }, startDateProps)), /*#__PURE__*/(0, _jsxRuntime.jsx)(Separator, (0, _extends2.default)({}, separatorProps)), /*#__PURE__*/(0, _jsxRuntime.jsx)(TextField, (0, _extends2.default)({
135
- fullWidth: true
136
- }, endDateProps))]
137
- }));
23
+ const MultiInputTimeRangeField = exports.MultiInputTimeRangeField = (0, _createMultiInputRangeField.createMultiInputRangeField)({
24
+ name: 'MuiMultiInputTimeRangeField',
25
+ getUtilityClass: _multiInputTimeRangeFieldClasses.getMultiInputTimeRangeFieldUtilityClass,
26
+ useManager: _managers.useTimeRangeManager
138
27
  });
139
- process.env.NODE_ENV !== "production" ? MultiInputTimeRangeField.propTypes = {
28
+ MultiInputTimeRangeField.propTypes = {
140
29
  // ----------------------------- Warning --------------------------------
141
30
  // | These PropTypes are generated from the TypeScript type definitions |
142
31
  // | To update them edit the TypeScript types and run "pnpm proptypes" |
@@ -148,6 +37,7 @@ process.env.NODE_ENV !== "production" ? MultiInputTimeRangeField.propTypes = {
148
37
  ampm: _propTypes.default.bool,
149
38
  /**
150
39
  * If `true`, the `input` element is focused during the first mount.
40
+ * @default false
151
41
  */
152
42
  autoFocus: _propTypes.default.bool,
153
43
  /**
@@ -278,10 +168,10 @@ process.env.NODE_ENV !== "production" ? MultiInputTimeRangeField.propTypes = {
278
168
  */
279
169
  shouldDisableTime: _propTypes.default.func,
280
170
  /**
281
- * If `true`, the format will respect the leading zeroes (e.g: on dayjs, the format `M/D/YYYY` will render `8/16/2018`)
282
- * If `false`, the format will always add leading zeroes (e.g: on dayjs, the format `M/D/YYYY` will render `08/16/2018`)
171
+ * If `true`, the format will respect the leading zeroes (for example on dayjs, the format `M/D/YYYY` will render `8/16/2018`)
172
+ * If `false`, the format will always add leading zeroes (for example on dayjs, the format `M/D/YYYY` will render `08/16/2018`)
283
173
  *
284
- * Warning n°1: Luxon is not able to respect the leading zeroes when using macro tokens (e.g: "DD"), so `shouldRespectLeadingZeros={true}` might lead to inconsistencies when using `AdapterLuxon`.
174
+ * Warning n°1: Luxon is not able to respect the leading zeroes when using macro tokens (for example "DD"), so `shouldRespectLeadingZeros={true}` might lead to inconsistencies when using `AdapterLuxon`.
285
175
  *
286
176
  * Warning n°2: When `shouldRespectLeadingZeros={true}`, the field will add an invisible character on the sections containing a single digit to make sure `onChange` is fired.
287
177
  * If you need to get the clean value from the input, you can remove this character using `input.value.replace(/\u200e/g, '')`.
@@ -298,7 +188,7 @@ process.env.NODE_ENV !== "production" ? MultiInputTimeRangeField.propTypes = {
298
188
  */
299
189
  slotProps: _propTypes.default.object,
300
190
  /**
301
- * Overridable slots.
191
+ * Overridable component slots.
302
192
  * @default {}
303
193
  */
304
194
  slots: _propTypes.default.object,
@@ -337,4 +227,4 @@ process.env.NODE_ENV !== "production" ? MultiInputTimeRangeField.propTypes = {
337
227
  * Used when the component is controlled.
338
228
  */
339
229
  value: _propTypes.default.arrayOf(_propTypes.default.object)
340
- } : void 0;
230
+ };
@@ -12,20 +12,14 @@ Object.defineProperty(exports, "MultiInputTimeRangeField", {
12
12
  Object.defineProperty(exports, "getMultiInputTimeRangeFieldUtilityClass", {
13
13
  enumerable: true,
14
14
  get: function () {
15
- return _MultiInputTimeRangeField.getMultiInputTimeRangeFieldUtilityClass;
15
+ return _multiInputTimeRangeFieldClasses.getMultiInputTimeRangeFieldUtilityClass;
16
16
  }
17
17
  });
18
18
  Object.defineProperty(exports, "multiInputTimeRangeFieldClasses", {
19
19
  enumerable: true,
20
20
  get: function () {
21
- return _MultiInputTimeRangeField.multiInputTimeRangeFieldClasses;
22
- }
23
- });
24
- Object.defineProperty(exports, "unstable_useMultiInputTimeRangeField", {
25
- enumerable: true,
26
- get: function () {
27
- return _useMultiInputTimeRangeField.useMultiInputTimeRangeField;
21
+ return _multiInputTimeRangeFieldClasses.multiInputTimeRangeFieldClasses;
28
22
  }
29
23
  });
30
24
  var _MultiInputTimeRangeField = require("./MultiInputTimeRangeField");
31
- var _useMultiInputTimeRangeField = require("../internals/hooks/useMultiInputRangeField/useMultiInputTimeRangeField");
25
+ var _multiInputTimeRangeFieldClasses = require("./multiInputTimeRangeFieldClasses");
@@ -0,0 +1,12 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.multiInputTimeRangeFieldClasses = exports.getMultiInputTimeRangeFieldUtilityClass = void 0;
8
+ var _generateUtilityClass = _interopRequireDefault(require("@mui/utils/generateUtilityClass"));
9
+ var _generateUtilityClasses = _interopRequireDefault(require("@mui/utils/generateUtilityClasses"));
10
+ const multiInputTimeRangeFieldClasses = exports.multiInputTimeRangeFieldClasses = (0, _generateUtilityClasses.default)('MuiMultiInputTimeRangeField', ['root', 'separator']);
11
+ const getMultiInputTimeRangeFieldUtilityClass = slot => (0, _generateUtilityClass.default)('MuiMultiInputTimeRangeField', slot);
12
+ exports.getMultiInputTimeRangeFieldUtilityClass = getMultiInputTimeRangeFieldUtilityClass;
@@ -7,20 +7,16 @@ Object.defineProperty(exports, "__esModule", {
7
7
  value: true
8
8
  });
9
9
  exports.SingleInputDateRangeField = void 0;
10
- var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
11
10
  var _objectWithoutPropertiesLoose2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutPropertiesLoose"));
12
11
  var React = _interopRequireWildcard(require("react"));
13
12
  var _propTypes = _interopRequireDefault(require("prop-types"));
14
- var _TextField = _interopRequireDefault(require("@mui/material/TextField"));
15
13
  var _styles = require("@mui/material/styles");
16
- var _useSlotProps = _interopRequireDefault(require("@mui/utils/useSlotProps"));
17
14
  var _utils = require("@mui/utils");
18
- var _hooks = require("@mui/x-date-pickers/hooks");
15
+ var _icons = require("@mui/x-date-pickers/icons");
19
16
  var _internals = require("@mui/x-date-pickers/internals");
20
- var _PickersTextField = require("@mui/x-date-pickers/PickersTextField");
21
17
  var _useSingleInputDateRangeField = require("./useSingleInputDateRangeField");
22
18
  var _jsxRuntime = require("react/jsx-runtime");
23
- const _excluded = ["slots", "slotProps", "InputProps", "inputProps"];
19
+ const _excluded = ["slots", "slotProps"];
24
20
  /**
25
21
  * Demos:
26
22
  *
@@ -38,33 +34,21 @@ const SingleInputDateRangeField = exports.SingleInputDateRangeField = /*#__PURE_
38
34
  });
39
35
  const {
40
36
  slots,
41
- slotProps,
42
- InputProps,
43
- inputProps
37
+ slotProps
44
38
  } = themeProps,
45
39
  other = (0, _objectWithoutPropertiesLoose2.default)(themeProps, _excluded);
46
- const ownerState = themeProps;
47
- const TextField = slots?.textField ?? (inProps.enableAccessibleFieldDOMStructure === false ? _TextField.default : _PickersTextField.PickersTextField);
48
- const textFieldProps = (0, _useSlotProps.default)({
49
- elementType: TextField,
50
- externalSlotProps: slotProps?.textField,
51
- externalForwardedProps: other,
52
- ownerState,
53
- additionalProps: {
54
- ref: inRef
55
- }
40
+ const textFieldProps = (0, _internals.useFieldTextFieldProps)({
41
+ slotProps,
42
+ ref: inRef,
43
+ externalForwardedProps: other
56
44
  });
57
-
58
- // TODO: Remove when mui/material-ui#35088 will be merged
59
- textFieldProps.inputProps = (0, _extends2.default)({}, inputProps, textFieldProps.inputProps);
60
- textFieldProps.InputProps = (0, _extends2.default)({}, InputProps, textFieldProps.InputProps);
61
45
  const fieldResponse = (0, _useSingleInputDateRangeField.useSingleInputDateRangeField)(textFieldProps);
62
- const convertedFieldResponse = (0, _internals.convertFieldResponseIntoMuiTextFieldProps)(fieldResponse);
63
- const processedFieldProps = (0, _hooks.useClearableField)((0, _extends2.default)({}, convertedFieldResponse, {
64
- slots,
65
- slotProps
66
- }));
67
- return /*#__PURE__*/(0, _jsxRuntime.jsx)(TextField, (0, _extends2.default)({}, processedFieldProps));
46
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_internals.PickerFieldUI, {
47
+ slots: slots,
48
+ slotProps: slotProps,
49
+ fieldResponse: fieldResponse,
50
+ defaultOpenPickerIcon: _icons.DateRangeIcon
51
+ });
68
52
  });
69
53
  SingleInputDateRangeField.fieldType = 'single-input';
70
54
  process.env.NODE_ENV !== "production" ? SingleInputDateRangeField.propTypes = {
@@ -83,6 +67,12 @@ process.env.NODE_ENV !== "production" ? SingleInputDateRangeField.propTypes = {
83
67
  * @default false
84
68
  */
85
69
  clearable: _propTypes.default.bool,
70
+ /**
71
+ * The position at which the clear button is placed.
72
+ * If the field is not clearable, the button is not rendered.
73
+ * @default 'end'
74
+ */
75
+ clearButtonPosition: _propTypes.default.oneOf(['end', 'start']),
86
76
  /**
87
77
  * The color of the component.
88
78
  * It supports both default and custom theme colors, which can be added as shown in the
@@ -269,10 +259,10 @@ process.env.NODE_ENV !== "production" ? SingleInputDateRangeField.propTypes = {
269
259
  */
270
260
  shouldDisableDate: _propTypes.default.func,
271
261
  /**
272
- * If `true`, the format will respect the leading zeroes (e.g: on dayjs, the format `M/D/YYYY` will render `8/16/2018`)
273
- * If `false`, the format will always add leading zeroes (e.g: on dayjs, the format `M/D/YYYY` will render `08/16/2018`)
262
+ * If `true`, the format will respect the leading zeroes (for example on dayjs, the format `M/D/YYYY` will render `8/16/2018`)
263
+ * If `false`, the format will always add leading zeroes (for example on dayjs, the format `M/D/YYYY` will render `08/16/2018`)
274
264
  *
275
- * Warning n°1: Luxon is not able to respect the leading zeroes when using macro tokens (e.g: "DD"), so `shouldRespectLeadingZeros={true}` might lead to inconsistencies when using `AdapterLuxon`.
265
+ * Warning n°1: Luxon is not able to respect the leading zeroes when using macro tokens (for example "DD"), so `shouldRespectLeadingZeros={true}` might lead to inconsistencies when using `AdapterLuxon`.
276
266
  *
277
267
  * Warning n°2: When `shouldRespectLeadingZeros={true}`, the field will add an invisible character on the sections containing a single digit to make sure `onChange` is fired.
278
268
  * If you need to get the clean value from the input, you can remove this character using `input.value.replace(/\u200e/g, '')`.
@@ -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.useSingleInputDateRangeField = 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 useSingleInputDateRangeField = inProps => {
15
- const props = (0, _internals.useDefaultizedDateField)(inProps);
10
+ var _managers = require("../managers");
11
+ const useSingleInputDateRangeField = props => {
12
+ const manager = (0, _managers.useDateRangeManager)(props);
16
13
  const {
17
14
  forwardedProps,
18
15
  internalProps
19
16
  } = (0, _hooks.useSplitFieldProps)(props, 'date');
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.validateDateRange,
29
- valueType: 'date'
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.useSingleInputDateRangeField = useSingleInputDateRangeField;