@mui/x-date-pickers 5.0.0-alpha.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (616) hide show
  1. package/AdapterDateFns/index.d.ts +1 -0
  2. package/AdapterDateFns/index.js +1 -0
  3. package/AdapterDateFns/package.json +6 -0
  4. package/AdapterDayjs/index.d.ts +1 -0
  5. package/AdapterDayjs/index.js +1 -0
  6. package/AdapterDayjs/package.json +6 -0
  7. package/AdapterLuxon/index.d.ts +1 -0
  8. package/AdapterLuxon/index.js +1 -0
  9. package/AdapterLuxon/package.json +6 -0
  10. package/AdapterMoment/index.d.ts +1 -0
  11. package/AdapterMoment/index.js +1 -0
  12. package/AdapterMoment/package.json +6 -0
  13. package/CHANGELOG.md +3785 -0
  14. package/CalendarPicker/CalendarPicker.d.ts +103 -0
  15. package/CalendarPicker/CalendarPicker.js +390 -0
  16. package/CalendarPicker/DayPicker.d.ts +51 -0
  17. package/CalendarPicker/DayPicker.js +140 -0
  18. package/CalendarPicker/PickersCalendarHeader.d.ts +44 -0
  19. package/CalendarPicker/PickersCalendarHeader.js +162 -0
  20. package/CalendarPicker/PickersFadeTransitionGroup.d.ts +12 -0
  21. package/CalendarPicker/PickersFadeTransitionGroup.js +42 -0
  22. package/CalendarPicker/PickersSlideTransition.d.ts +15 -0
  23. package/CalendarPicker/PickersSlideTransition.js +101 -0
  24. package/CalendarPicker/calendarPickerClasses.d.ts +9 -0
  25. package/CalendarPicker/calendarPickerClasses.js +3 -0
  26. package/CalendarPicker/index.d.ts +5 -0
  27. package/CalendarPicker/index.js +2 -0
  28. package/CalendarPicker/package.json +6 -0
  29. package/CalendarPicker/useCalendarState.d.ts +33 -0
  30. package/CalendarPicker/useCalendarState.js +110 -0
  31. package/CalendarPickerSkeleton/CalendarPickerSkeleton.d.ts +31 -0
  32. package/CalendarPickerSkeleton/CalendarPickerSkeleton.js +119 -0
  33. package/CalendarPickerSkeleton/calendarPickerSkeletonClasses.d.ts +11 -0
  34. package/CalendarPickerSkeleton/calendarPickerSkeletonClasses.js +3 -0
  35. package/CalendarPickerSkeleton/index.d.ts +4 -0
  36. package/CalendarPickerSkeleton/index.js +2 -0
  37. package/CalendarPickerSkeleton/package.json +6 -0
  38. package/ClockPicker/Clock.d.ts +26 -0
  39. package/ClockPicker/Clock.js +262 -0
  40. package/ClockPicker/ClockNumber.d.ts +18 -0
  41. package/ClockPicker/ClockNumber.js +70 -0
  42. package/ClockPicker/ClockNumbers.d.ts +24 -0
  43. package/ClockPicker/ClockNumbers.js +80 -0
  44. package/ClockPicker/ClockPicker.d.ts +138 -0
  45. package/ClockPicker/ClockPicker.js +407 -0
  46. package/ClockPicker/ClockPointer.d.ts +23 -0
  47. package/ClockPicker/ClockPointer.js +102 -0
  48. package/ClockPicker/clockPickerClasses.d.ts +9 -0
  49. package/ClockPicker/clockPickerClasses.js +5 -0
  50. package/ClockPicker/index.d.ts +5 -0
  51. package/ClockPicker/index.js +2 -0
  52. package/ClockPicker/package.json +6 -0
  53. package/ClockPicker/shared.d.ts +4 -0
  54. package/ClockPicker/shared.js +57 -0
  55. package/DatePicker/DatePicker.d.ts +27 -0
  56. package/DatePicker/DatePicker.js +456 -0
  57. package/DatePicker/DatePickerToolbar.d.ts +10 -0
  58. package/DatePicker/DatePickerToolbar.js +81 -0
  59. package/DatePicker/index.d.ts +2 -0
  60. package/DatePicker/index.js +1 -0
  61. package/DatePicker/package.json +6 -0
  62. package/DatePicker/shared.d.ts +47 -0
  63. package/DatePicker/shared.js +54 -0
  64. package/DateTimePicker/DateTimePicker.d.ts +27 -0
  65. package/DateTimePicker/DateTimePicker.js +542 -0
  66. package/DateTimePicker/DateTimePickerTabs.d.ts +12 -0
  67. package/DateTimePicker/DateTimePickerTabs.js +80 -0
  68. package/DateTimePicker/DateTimePickerToolbar.d.ts +6 -0
  69. package/DateTimePicker/DateTimePickerToolbar.js +134 -0
  70. package/DateTimePicker/index.d.ts +2 -0
  71. package/DateTimePicker/index.js +1 -0
  72. package/DateTimePicker/package.json +6 -0
  73. package/DateTimePicker/shared.d.ts +70 -0
  74. package/DateTimePicker/shared.js +58 -0
  75. package/DesktopDatePicker/DesktopDatePicker.d.ts +20 -0
  76. package/DesktopDatePicker/DesktopDatePicker.js +431 -0
  77. package/DesktopDatePicker/index.d.ts +2 -0
  78. package/DesktopDatePicker/index.js +1 -0
  79. package/DesktopDatePicker/package.json +6 -0
  80. package/DesktopDateTimePicker/DesktopDateTimePicker.d.ts +20 -0
  81. package/DesktopDateTimePicker/DesktopDateTimePicker.js +512 -0
  82. package/DesktopDateTimePicker/index.d.ts +2 -0
  83. package/DesktopDateTimePicker/index.js +1 -0
  84. package/DesktopDateTimePicker/package.json +6 -0
  85. package/DesktopTimePicker/DesktopTimePicker.d.ts +20 -0
  86. package/DesktopTimePicker/DesktopTimePicker.js +361 -0
  87. package/DesktopTimePicker/index.d.ts +2 -0
  88. package/DesktopTimePicker/index.js +1 -0
  89. package/DesktopTimePicker/package.json +6 -0
  90. package/LocalizationProvider/LocalizationProvider.d.ts +34 -0
  91. package/LocalizationProvider/LocalizationProvider.js +100 -0
  92. package/LocalizationProvider/index.d.ts +2 -0
  93. package/LocalizationProvider/index.js +1 -0
  94. package/LocalizationProvider/package.json +6 -0
  95. package/MobileDatePicker/MobileDatePicker.d.ts +20 -0
  96. package/MobileDatePicker/MobileDatePicker.js +436 -0
  97. package/MobileDatePicker/index.d.ts +2 -0
  98. package/MobileDatePicker/index.js +1 -0
  99. package/MobileDatePicker/package.json +6 -0
  100. package/MobileDateTimePicker/MobileDateTimePicker.d.ts +20 -0
  101. package/MobileDateTimePicker/MobileDateTimePicker.js +523 -0
  102. package/MobileDateTimePicker/index.d.ts +2 -0
  103. package/MobileDateTimePicker/index.js +1 -0
  104. package/MobileDateTimePicker/package.json +6 -0
  105. package/MobileTimePicker/MobileTimePicker.d.ts +20 -0
  106. package/MobileTimePicker/MobileTimePicker.js +372 -0
  107. package/MobileTimePicker/index.d.ts +2 -0
  108. package/MobileTimePicker/index.js +1 -0
  109. package/MobileTimePicker/package.json +6 -0
  110. package/MonthPicker/MonthPicker.d.ts +41 -0
  111. package/MonthPicker/MonthPicker.js +161 -0
  112. package/MonthPicker/PickersMonth.d.ts +15 -0
  113. package/MonthPicker/PickersMonth.js +70 -0
  114. package/MonthPicker/index.d.ts +4 -0
  115. package/MonthPicker/index.js +2 -0
  116. package/MonthPicker/monthPickerClasses.d.ts +7 -0
  117. package/MonthPicker/monthPickerClasses.js +5 -0
  118. package/MonthPicker/package.json +6 -0
  119. package/PickersDay/PickersDay.d.ts +79 -0
  120. package/PickersDay/PickersDay.js +344 -0
  121. package/PickersDay/index.d.ts +4 -0
  122. package/PickersDay/index.js +2 -0
  123. package/PickersDay/package.json +6 -0
  124. package/PickersDay/pickersDayClasses.d.ts +19 -0
  125. package/PickersDay/pickersDayClasses.js +5 -0
  126. package/README.md +29 -0
  127. package/StaticDatePicker/StaticDatePicker.d.ts +25 -0
  128. package/StaticDatePicker/StaticDatePicker.js +397 -0
  129. package/StaticDatePicker/index.d.ts +2 -0
  130. package/StaticDatePicker/index.js +1 -0
  131. package/StaticDatePicker/package.json +6 -0
  132. package/StaticDateTimePicker/StaticDateTimePicker.d.ts +25 -0
  133. package/StaticDateTimePicker/StaticDateTimePicker.js +484 -0
  134. package/StaticDateTimePicker/index.d.ts +2 -0
  135. package/StaticDateTimePicker/index.js +1 -0
  136. package/StaticDateTimePicker/package.json +6 -0
  137. package/StaticTimePicker/StaticTimePicker.d.ts +25 -0
  138. package/StaticTimePicker/StaticTimePicker.js +332 -0
  139. package/StaticTimePicker/index.d.ts +2 -0
  140. package/StaticTimePicker/index.js +1 -0
  141. package/StaticTimePicker/package.json +6 -0
  142. package/TimePicker/TimePicker.d.ts +27 -0
  143. package/TimePicker/TimePicker.js +395 -0
  144. package/TimePicker/TimePickerToolbar.d.ts +10 -0
  145. package/TimePicker/TimePickerToolbar.js +167 -0
  146. package/TimePicker/index.d.ts +2 -0
  147. package/TimePicker/index.js +1 -0
  148. package/TimePicker/package.json +6 -0
  149. package/TimePicker/shared.d.ts +39 -0
  150. package/TimePicker/shared.js +45 -0
  151. package/TimePicker/timePickerToolbarClasses.d.ts +13 -0
  152. package/TimePicker/timePickerToolbarClasses.js +5 -0
  153. package/YearPicker/PickersYear.d.ts +26 -0
  154. package/YearPicker/PickersYear.js +111 -0
  155. package/YearPicker/YearPicker.d.ts +37 -0
  156. package/YearPicker/YearPicker.js +188 -0
  157. package/YearPicker/index.d.ts +4 -0
  158. package/YearPicker/index.js +2 -0
  159. package/YearPicker/package.json +6 -0
  160. package/YearPicker/yearPickerClasses.d.ts +7 -0
  161. package/YearPicker/yearPickerClasses.js +5 -0
  162. package/index.d.ts +19 -0
  163. package/index.js +24 -0
  164. package/internals/components/CalendarOrClockPicker/CalendarOrClockPicker.d.ts +35 -0
  165. package/internals/components/CalendarOrClockPicker/CalendarOrClockPicker.js +125 -0
  166. package/internals/components/CalendarOrClockPicker/index.d.ts +1 -0
  167. package/internals/components/CalendarOrClockPicker/index.js +1 -0
  168. package/internals/components/KeyboardDateInput.d.ts +3 -0
  169. package/internals/components/KeyboardDateInput.js +58 -0
  170. package/internals/components/PickerStaticWrapper/PickerStaticWrapper.d.ts +14 -0
  171. package/internals/components/PickerStaticWrapper/PickerStaticWrapper.js +57 -0
  172. package/internals/components/PickerStaticWrapper/index.d.ts +4 -0
  173. package/internals/components/PickerStaticWrapper/index.js +2 -0
  174. package/internals/components/PickerStaticWrapper/pickerStaticWrapperClasses.d.ts +7 -0
  175. package/internals/components/PickerStaticWrapper/pickerStaticWrapperClasses.js +5 -0
  176. package/internals/components/PickerViewRoot/PickerViewRoot.d.ts +2 -0
  177. package/internals/components/PickerViewRoot/PickerViewRoot.js +10 -0
  178. package/internals/components/PickerViewRoot/index.d.ts +1 -0
  179. package/internals/components/PickerViewRoot/index.js +1 -0
  180. package/internals/components/PickersArrowSwitcher.d.ts +41 -0
  181. package/internals/components/PickersArrowSwitcher.js +89 -0
  182. package/internals/components/PickersModalDialog.d.ts +46 -0
  183. package/internals/components/PickersModalDialog.js +75 -0
  184. package/internals/components/PickersPopper.d.ts +43 -0
  185. package/internals/components/PickersPopper.js +262 -0
  186. package/internals/components/PickersToolbar.d.ts +15 -0
  187. package/internals/components/PickersToolbar.js +82 -0
  188. package/internals/components/PickersToolbarButton.d.ts +12 -0
  189. package/internals/components/PickersToolbarButton.js +38 -0
  190. package/internals/components/PickersToolbarText.d.ts +7 -0
  191. package/internals/components/PickersToolbarText.js +35 -0
  192. package/internals/components/PureDateInput.d.ts +87 -0
  193. package/internals/components/PureDateInput.js +50 -0
  194. package/internals/components/icons/index.d.ts +48 -0
  195. package/internals/components/icons/index.js +68 -0
  196. package/internals/components/wrappers/DesktopTooltipWrapper.d.ts +3 -0
  197. package/internals/components/wrappers/DesktopTooltipWrapper.js +52 -0
  198. package/internals/components/wrappers/DesktopWrapper.d.ts +15 -0
  199. package/internals/components/wrappers/DesktopWrapper.js +42 -0
  200. package/internals/components/wrappers/MobileWrapper.d.ts +13 -0
  201. package/internals/components/wrappers/MobileWrapper.js +47 -0
  202. package/internals/components/wrappers/ResponsiveWrapper.d.ts +23 -0
  203. package/internals/components/wrappers/ResponsiveWrapper.js +44 -0
  204. package/internals/components/wrappers/WrapperProps.d.ts +13 -0
  205. package/internals/components/wrappers/WrapperProps.js +1 -0
  206. package/internals/components/wrappers/WrapperVariantContext.d.ts +11 -0
  207. package/internals/components/wrappers/WrapperVariantContext.js +12 -0
  208. package/internals/constants/dimensions.d.ts +4 -0
  209. package/internals/constants/dimensions.js +4 -0
  210. package/internals/hooks/date-helpers-hooks.d.ts +16 -0
  211. package/internals/hooks/date-helpers-hooks.js +37 -0
  212. package/internals/hooks/useIsLandscape.d.ts +4 -0
  213. package/internals/hooks/useIsLandscape.js +42 -0
  214. package/internals/hooks/useMaskedInput.d.ts +7 -0
  215. package/internals/hooks/useMaskedInput.js +92 -0
  216. package/internals/hooks/useOpenState.d.ts +9 -0
  217. package/internals/hooks/useOpenState.js +37 -0
  218. package/internals/hooks/usePickerState.d.ts +39 -0
  219. package/internals/hooks/usePickerState.js +117 -0
  220. package/internals/hooks/useUtils.d.ts +6 -0
  221. package/internals/hooks/useUtils.js +20 -0
  222. package/internals/hooks/useViews.d.ts +19 -0
  223. package/internals/hooks/useViews.js +50 -0
  224. package/internals/hooks/validation/useDateTimeValidation.d.ts +8 -0
  225. package/internals/hooks/validation/useDateTimeValidation.js +35 -0
  226. package/internals/hooks/validation/useDateValidation.d.ts +34 -0
  227. package/internals/hooks/validation/useDateValidation.js +42 -0
  228. package/internals/hooks/validation/useTimeValidation.d.ts +32 -0
  229. package/internals/hooks/validation/useTimeValidation.js +42 -0
  230. package/internals/hooks/validation/useValidation.d.ts +21 -0
  231. package/internals/hooks/validation/useValidation.js +19 -0
  232. package/internals/index.d.ts +40 -0
  233. package/internals/index.js +22 -0
  234. package/internals/models/helpers.d.ts +9 -0
  235. package/internals/models/helpers.js +1 -0
  236. package/internals/models/index.d.ts +2 -0
  237. package/internals/models/index.js +2 -0
  238. package/internals/models/muiPickersAdapter.d.ts +2 -0
  239. package/internals/models/muiPickersAdapter.js +1 -0
  240. package/internals/models/parseableDate.d.ts +1 -0
  241. package/internals/models/parseableDate.js +1 -0
  242. package/internals/models/props/basePickerProps.d.ts +79 -0
  243. package/internals/models/props/basePickerProps.js +1 -0
  244. package/internals/models/props/baseToolbarProps.d.ts +23 -0
  245. package/internals/models/props/baseToolbarProps.js +1 -0
  246. package/internals/models/views.d.ts +3 -0
  247. package/internals/models/views.js +1 -0
  248. package/internals/package.json +6 -0
  249. package/internals/utils/date-utils.d.ts +13 -0
  250. package/internals/utils/date-utils.js +67 -0
  251. package/internals/utils/defaultReduceAnimations.d.ts +1 -0
  252. package/internals/utils/defaultReduceAnimations.js +1 -0
  253. package/internals/utils/text-field-helper.d.ts +11 -0
  254. package/internals/utils/text-field-helper.js +66 -0
  255. package/internals/utils/time-utils.d.ts +8 -0
  256. package/internals/utils/time-utils.js +32 -0
  257. package/internals/utils/utils.d.ts +7 -0
  258. package/internals/utils/utils.js +36 -0
  259. package/legacy/AdapterDateFns/index.js +1 -0
  260. package/legacy/AdapterDayjs/index.js +1 -0
  261. package/legacy/AdapterLuxon/index.js +1 -0
  262. package/legacy/AdapterMoment/index.js +1 -0
  263. package/legacy/CalendarPicker/CalendarPicker.js +402 -0
  264. package/legacy/CalendarPicker/DayPicker.js +154 -0
  265. package/legacy/CalendarPicker/PickersCalendarHeader.js +173 -0
  266. package/legacy/CalendarPicker/PickersFadeTransitionGroup.js +42 -0
  267. package/legacy/CalendarPicker/PickersSlideTransition.js +97 -0
  268. package/legacy/CalendarPicker/calendarPickerClasses.js +5 -0
  269. package/legacy/CalendarPicker/index.js +2 -0
  270. package/legacy/CalendarPicker/useCalendarState.js +120 -0
  271. package/legacy/CalendarPickerSkeleton/CalendarPickerSkeleton.js +126 -0
  272. package/legacy/CalendarPickerSkeleton/calendarPickerSkeletonClasses.js +5 -0
  273. package/legacy/CalendarPickerSkeleton/index.js +2 -0
  274. package/legacy/ClockPicker/Clock.js +268 -0
  275. package/legacy/ClockPicker/ClockNumber.js +70 -0
  276. package/legacy/ClockPicker/ClockNumbers.js +83 -0
  277. package/legacy/ClockPicker/ClockPicker.js +454 -0
  278. package/legacy/ClockPicker/ClockPointer.js +130 -0
  279. package/legacy/ClockPicker/clockPickerClasses.js +5 -0
  280. package/legacy/ClockPicker/index.js +2 -0
  281. package/legacy/ClockPicker/shared.js +61 -0
  282. package/legacy/DatePicker/DatePicker.js +455 -0
  283. package/legacy/DatePicker/DatePickerToolbar.js +82 -0
  284. package/legacy/DatePicker/index.js +1 -0
  285. package/legacy/DatePicker/shared.js +58 -0
  286. package/legacy/DateTimePicker/DateTimePicker.js +541 -0
  287. package/legacy/DateTimePicker/DateTimePickerTabs.js +81 -0
  288. package/legacy/DateTimePicker/DateTimePickerToolbar.js +147 -0
  289. package/legacy/DateTimePicker/index.js +1 -0
  290. package/legacy/DateTimePicker/shared.js +59 -0
  291. package/legacy/DesktopDatePicker/DesktopDatePicker.js +434 -0
  292. package/legacy/DesktopDatePicker/index.js +1 -0
  293. package/legacy/DesktopDateTimePicker/DesktopDateTimePicker.js +515 -0
  294. package/legacy/DesktopDateTimePicker/index.js +1 -0
  295. package/legacy/DesktopTimePicker/DesktopTimePicker.js +364 -0
  296. package/legacy/DesktopTimePicker/index.js +1 -0
  297. package/legacy/LocalizationProvider/LocalizationProvider.js +100 -0
  298. package/legacy/LocalizationProvider/index.js +1 -0
  299. package/legacy/MobileDatePicker/MobileDatePicker.js +440 -0
  300. package/legacy/MobileDatePicker/index.js +1 -0
  301. package/legacy/MobileDateTimePicker/MobileDateTimePicker.js +527 -0
  302. package/legacy/MobileDateTimePicker/index.js +1 -0
  303. package/legacy/MobileTimePicker/MobileTimePicker.js +376 -0
  304. package/legacy/MobileTimePicker/index.js +1 -0
  305. package/legacy/MonthPicker/MonthPicker.js +159 -0
  306. package/legacy/MonthPicker/PickersMonth.js +69 -0
  307. package/legacy/MonthPicker/index.js +2 -0
  308. package/legacy/MonthPicker/monthPickerClasses.js +5 -0
  309. package/legacy/PickersDay/PickersDay.js +348 -0
  310. package/legacy/PickersDay/index.js +2 -0
  311. package/legacy/PickersDay/pickersDayClasses.js +5 -0
  312. package/legacy/StaticDatePicker/StaticDatePicker.js +402 -0
  313. package/legacy/StaticDatePicker/index.js +1 -0
  314. package/legacy/StaticDateTimePicker/StaticDateTimePicker.js +489 -0
  315. package/legacy/StaticDateTimePicker/index.js +1 -0
  316. package/legacy/StaticTimePicker/StaticTimePicker.js +336 -0
  317. package/legacy/StaticTimePicker/index.js +1 -0
  318. package/legacy/TimePicker/TimePicker.js +394 -0
  319. package/legacy/TimePicker/TimePickerToolbar.js +175 -0
  320. package/legacy/TimePicker/index.js +1 -0
  321. package/legacy/TimePicker/shared.js +45 -0
  322. package/legacy/TimePicker/timePickerToolbarClasses.js +5 -0
  323. package/legacy/YearPicker/PickersYear.js +114 -0
  324. package/legacy/YearPicker/YearPicker.js +193 -0
  325. package/legacy/YearPicker/index.js +2 -0
  326. package/legacy/YearPicker/yearPickerClasses.js +5 -0
  327. package/legacy/index.js +24 -0
  328. package/legacy/internals/components/CalendarOrClockPicker/CalendarOrClockPicker.js +133 -0
  329. package/legacy/internals/components/CalendarOrClockPicker/index.js +1 -0
  330. package/legacy/internals/components/KeyboardDateInput.js +57 -0
  331. package/legacy/internals/components/PickerStaticWrapper/PickerStaticWrapper.js +56 -0
  332. package/legacy/internals/components/PickerStaticWrapper/index.js +2 -0
  333. package/legacy/internals/components/PickerStaticWrapper/pickerStaticWrapperClasses.js +5 -0
  334. package/legacy/internals/components/PickerViewRoot/PickerViewRoot.js +10 -0
  335. package/legacy/internals/components/PickerViewRoot/index.js +1 -0
  336. package/legacy/internals/components/PickersArrowSwitcher.js +91 -0
  337. package/legacy/internals/components/PickersModalDialog.js +82 -0
  338. package/legacy/internals/components/PickersPopper.js +276 -0
  339. package/legacy/internals/components/PickersToolbar.js +86 -0
  340. package/legacy/internals/components/PickersToolbarButton.js +36 -0
  341. package/legacy/internals/components/PickersToolbarText.js +34 -0
  342. package/legacy/internals/components/PureDateInput.js +52 -0
  343. package/legacy/internals/components/icons/index.js +68 -0
  344. package/legacy/internals/components/wrappers/DesktopTooltipWrapper.js +50 -0
  345. package/legacy/internals/components/wrappers/DesktopWrapper.js +40 -0
  346. package/legacy/internals/components/wrappers/MobileWrapper.js +45 -0
  347. package/legacy/internals/components/wrappers/ResponsiveWrapper.js +43 -0
  348. package/legacy/internals/components/wrappers/WrapperProps.js +1 -0
  349. package/legacy/internals/components/wrappers/WrapperVariantContext.js +12 -0
  350. package/legacy/internals/constants/dimensions.js +4 -0
  351. package/legacy/internals/hooks/date-helpers-hooks.js +35 -0
  352. package/legacy/internals/hooks/useIsLandscape.js +47 -0
  353. package/legacy/internals/hooks/useMaskedInput.js +107 -0
  354. package/legacy/internals/hooks/useOpenState.js +42 -0
  355. package/legacy/internals/hooks/usePickerState.js +147 -0
  356. package/legacy/internals/hooks/useUtils.js +24 -0
  357. package/legacy/internals/hooks/useViews.js +55 -0
  358. package/legacy/internals/hooks/validation/useDateTimeValidation.js +35 -0
  359. package/legacy/internals/hooks/validation/useDateValidation.js +45 -0
  360. package/legacy/internals/hooks/validation/useTimeValidation.js +45 -0
  361. package/legacy/internals/hooks/validation/useValidation.js +17 -0
  362. package/legacy/internals/index.js +22 -0
  363. package/legacy/internals/models/helpers.js +1 -0
  364. package/legacy/internals/models/index.js +2 -0
  365. package/legacy/internals/models/muiPickersAdapter.js +1 -0
  366. package/legacy/internals/models/parseableDate.js +1 -0
  367. package/legacy/internals/models/props/basePickerProps.js +1 -0
  368. package/legacy/internals/models/props/baseToolbarProps.js +1 -0
  369. package/legacy/internals/models/views.js +1 -0
  370. package/legacy/internals/utils/date-utils.js +66 -0
  371. package/legacy/internals/utils/defaultReduceAnimations.js +1 -0
  372. package/legacy/internals/utils/text-field-helper.js +68 -0
  373. package/legacy/internals/utils/time-utils.js +34 -0
  374. package/legacy/internals/utils/utils.js +52 -0
  375. package/legacy/themeAugmentation/index.js +3 -0
  376. package/modern/AdapterDateFns/index.js +1 -0
  377. package/modern/AdapterDayjs/index.js +1 -0
  378. package/modern/AdapterLuxon/index.js +1 -0
  379. package/modern/AdapterMoment/index.js +1 -0
  380. package/modern/CalendarPicker/CalendarPicker.js +390 -0
  381. package/modern/CalendarPicker/DayPicker.js +140 -0
  382. package/modern/CalendarPicker/PickersCalendarHeader.js +162 -0
  383. package/modern/CalendarPicker/PickersFadeTransitionGroup.js +42 -0
  384. package/modern/CalendarPicker/PickersSlideTransition.js +101 -0
  385. package/modern/CalendarPicker/calendarPickerClasses.js +3 -0
  386. package/modern/CalendarPicker/index.js +2 -0
  387. package/modern/CalendarPicker/useCalendarState.js +108 -0
  388. package/modern/CalendarPickerSkeleton/CalendarPickerSkeleton.js +119 -0
  389. package/modern/CalendarPickerSkeleton/calendarPickerSkeletonClasses.js +3 -0
  390. package/modern/CalendarPickerSkeleton/index.js +2 -0
  391. package/modern/ClockPicker/Clock.js +262 -0
  392. package/modern/ClockPicker/ClockNumber.js +70 -0
  393. package/modern/ClockPicker/ClockNumbers.js +80 -0
  394. package/modern/ClockPicker/ClockPicker.js +407 -0
  395. package/modern/ClockPicker/ClockPointer.js +102 -0
  396. package/modern/ClockPicker/clockPickerClasses.js +5 -0
  397. package/modern/ClockPicker/index.js +2 -0
  398. package/modern/ClockPicker/shared.js +57 -0
  399. package/modern/DatePicker/DatePicker.js +456 -0
  400. package/modern/DatePicker/DatePickerToolbar.js +81 -0
  401. package/modern/DatePicker/index.js +1 -0
  402. package/modern/DatePicker/shared.js +54 -0
  403. package/modern/DateTimePicker/DateTimePicker.js +542 -0
  404. package/modern/DateTimePicker/DateTimePickerTabs.js +80 -0
  405. package/modern/DateTimePicker/DateTimePickerToolbar.js +134 -0
  406. package/modern/DateTimePicker/index.js +1 -0
  407. package/modern/DateTimePicker/shared.js +58 -0
  408. package/modern/DesktopDatePicker/DesktopDatePicker.js +431 -0
  409. package/modern/DesktopDatePicker/index.js +1 -0
  410. package/modern/DesktopDateTimePicker/DesktopDateTimePicker.js +512 -0
  411. package/modern/DesktopDateTimePicker/index.js +1 -0
  412. package/modern/DesktopTimePicker/DesktopTimePicker.js +361 -0
  413. package/modern/DesktopTimePicker/index.js +1 -0
  414. package/modern/LocalizationProvider/LocalizationProvider.js +100 -0
  415. package/modern/LocalizationProvider/index.js +1 -0
  416. package/modern/MobileDatePicker/MobileDatePicker.js +436 -0
  417. package/modern/MobileDatePicker/index.js +1 -0
  418. package/modern/MobileDateTimePicker/MobileDateTimePicker.js +523 -0
  419. package/modern/MobileDateTimePicker/index.js +1 -0
  420. package/modern/MobileTimePicker/MobileTimePicker.js +372 -0
  421. package/modern/MobileTimePicker/index.js +1 -0
  422. package/modern/MonthPicker/MonthPicker.js +161 -0
  423. package/modern/MonthPicker/PickersMonth.js +70 -0
  424. package/modern/MonthPicker/index.js +2 -0
  425. package/modern/MonthPicker/monthPickerClasses.js +5 -0
  426. package/modern/PickersDay/PickersDay.js +344 -0
  427. package/modern/PickersDay/index.js +2 -0
  428. package/modern/PickersDay/pickersDayClasses.js +5 -0
  429. package/modern/StaticDatePicker/StaticDatePicker.js +397 -0
  430. package/modern/StaticDatePicker/index.js +1 -0
  431. package/modern/StaticDateTimePicker/StaticDateTimePicker.js +484 -0
  432. package/modern/StaticDateTimePicker/index.js +1 -0
  433. package/modern/StaticTimePicker/StaticTimePicker.js +332 -0
  434. package/modern/StaticTimePicker/index.js +1 -0
  435. package/modern/TimePicker/TimePicker.js +395 -0
  436. package/modern/TimePicker/TimePickerToolbar.js +167 -0
  437. package/modern/TimePicker/index.js +1 -0
  438. package/modern/TimePicker/shared.js +45 -0
  439. package/modern/TimePicker/timePickerToolbarClasses.js +5 -0
  440. package/modern/YearPicker/PickersYear.js +111 -0
  441. package/modern/YearPicker/YearPicker.js +188 -0
  442. package/modern/YearPicker/index.js +2 -0
  443. package/modern/YearPicker/yearPickerClasses.js +5 -0
  444. package/modern/index.js +24 -0
  445. package/modern/internals/components/CalendarOrClockPicker/CalendarOrClockPicker.js +125 -0
  446. package/modern/internals/components/CalendarOrClockPicker/index.js +1 -0
  447. package/modern/internals/components/KeyboardDateInput.js +58 -0
  448. package/modern/internals/components/PickerStaticWrapper/PickerStaticWrapper.js +57 -0
  449. package/modern/internals/components/PickerStaticWrapper/index.js +2 -0
  450. package/modern/internals/components/PickerStaticWrapper/pickerStaticWrapperClasses.js +5 -0
  451. package/modern/internals/components/PickerViewRoot/PickerViewRoot.js +10 -0
  452. package/modern/internals/components/PickerViewRoot/index.js +1 -0
  453. package/modern/internals/components/PickersArrowSwitcher.js +89 -0
  454. package/modern/internals/components/PickersModalDialog.js +75 -0
  455. package/modern/internals/components/PickersPopper.js +262 -0
  456. package/modern/internals/components/PickersToolbar.js +82 -0
  457. package/modern/internals/components/PickersToolbarButton.js +38 -0
  458. package/modern/internals/components/PickersToolbarText.js +35 -0
  459. package/modern/internals/components/PureDateInput.js +50 -0
  460. package/modern/internals/components/icons/index.js +68 -0
  461. package/modern/internals/components/wrappers/DesktopTooltipWrapper.js +50 -0
  462. package/modern/internals/components/wrappers/DesktopWrapper.js +42 -0
  463. package/modern/internals/components/wrappers/MobileWrapper.js +47 -0
  464. package/modern/internals/components/wrappers/ResponsiveWrapper.js +44 -0
  465. package/modern/internals/components/wrappers/WrapperProps.js +1 -0
  466. package/modern/internals/components/wrappers/WrapperVariantContext.js +12 -0
  467. package/modern/internals/constants/dimensions.js +4 -0
  468. package/modern/internals/hooks/date-helpers-hooks.js +37 -0
  469. package/modern/internals/hooks/useIsLandscape.js +42 -0
  470. package/modern/internals/hooks/useMaskedInput.js +92 -0
  471. package/modern/internals/hooks/useOpenState.js +37 -0
  472. package/modern/internals/hooks/usePickerState.js +117 -0
  473. package/modern/internals/hooks/useUtils.js +20 -0
  474. package/modern/internals/hooks/useViews.js +48 -0
  475. package/modern/internals/hooks/validation/useDateTimeValidation.js +35 -0
  476. package/modern/internals/hooks/validation/useDateValidation.js +42 -0
  477. package/modern/internals/hooks/validation/useTimeValidation.js +42 -0
  478. package/modern/internals/hooks/validation/useValidation.js +19 -0
  479. package/modern/internals/index.js +22 -0
  480. package/modern/internals/models/helpers.js +1 -0
  481. package/modern/internals/models/index.js +2 -0
  482. package/modern/internals/models/muiPickersAdapter.js +1 -0
  483. package/modern/internals/models/parseableDate.js +1 -0
  484. package/modern/internals/models/props/basePickerProps.js +1 -0
  485. package/modern/internals/models/props/baseToolbarProps.js +1 -0
  486. package/modern/internals/models/views.js +1 -0
  487. package/modern/internals/utils/date-utils.js +67 -0
  488. package/modern/internals/utils/defaultReduceAnimations.js +1 -0
  489. package/modern/internals/utils/text-field-helper.js +66 -0
  490. package/modern/internals/utils/time-utils.js +32 -0
  491. package/modern/internals/utils/utils.js +36 -0
  492. package/modern/themeAugmentation/index.js +3 -0
  493. package/node/AdapterDateFns/index.js +15 -0
  494. package/node/AdapterDayjs/index.js +15 -0
  495. package/node/AdapterLuxon/index.js +15 -0
  496. package/node/AdapterMoment/index.js +15 -0
  497. package/node/CalendarPicker/CalendarPicker.js +420 -0
  498. package/node/CalendarPicker/DayPicker.js +161 -0
  499. package/node/CalendarPicker/PickersCalendarHeader.js +185 -0
  500. package/node/CalendarPicker/PickersFadeTransitionGroup.js +64 -0
  501. package/node/CalendarPicker/PickersSlideTransition.js +126 -0
  502. package/node/CalendarPicker/calendarPickerClasses.js +14 -0
  503. package/node/CalendarPicker/index.js +27 -0
  504. package/node/CalendarPicker/useCalendarState.js +132 -0
  505. package/node/CalendarPickerSkeleton/CalendarPickerSkeleton.js +142 -0
  506. package/node/CalendarPickerSkeleton/calendarPickerSkeletonClasses.js +14 -0
  507. package/node/CalendarPickerSkeleton/index.js +27 -0
  508. package/node/ClockPicker/Clock.js +285 -0
  509. package/node/ClockPicker/ClockNumber.js +93 -0
  510. package/node/ClockPicker/ClockNumbers.js +98 -0
  511. package/node/ClockPicker/ClockPicker.js +437 -0
  512. package/node/ClockPicker/ClockPointer.js +123 -0
  513. package/node/ClockPicker/clockPickerClasses.js +16 -0
  514. package/node/ClockPicker/index.js +27 -0
  515. package/node/ClockPicker/shared.js +70 -0
  516. package/node/DatePicker/DatePicker.js +477 -0
  517. package/node/DatePicker/DatePickerToolbar.js +105 -0
  518. package/node/DatePicker/index.js +13 -0
  519. package/node/DatePicker/shared.js +73 -0
  520. package/node/DateTimePicker/DateTimePicker.js +562 -0
  521. package/node/DateTimePicker/DateTimePickerTabs.js +100 -0
  522. package/node/DateTimePicker/DateTimePickerToolbar.js +160 -0
  523. package/node/DateTimePicker/index.js +13 -0
  524. package/node/DateTimePicker/shared.js +72 -0
  525. package/node/DesktopDatePicker/DesktopDatePicker.js +456 -0
  526. package/node/DesktopDatePicker/index.js +13 -0
  527. package/node/DesktopDateTimePicker/DesktopDateTimePicker.js +537 -0
  528. package/node/DesktopDateTimePicker/index.js +13 -0
  529. package/node/DesktopTimePicker/DesktopTimePicker.js +386 -0
  530. package/node/DesktopTimePicker/index.js +13 -0
  531. package/node/LocalizationProvider/LocalizationProvider.js +119 -0
  532. package/node/LocalizationProvider/index.js +13 -0
  533. package/node/MobileDatePicker/MobileDatePicker.js +462 -0
  534. package/node/MobileDatePicker/index.js +13 -0
  535. package/node/MobileDateTimePicker/MobileDateTimePicker.js +549 -0
  536. package/node/MobileDateTimePicker/index.js +13 -0
  537. package/node/MobileTimePicker/MobileTimePicker.js +398 -0
  538. package/node/MobileTimePicker/index.js +13 -0
  539. package/node/MonthPicker/MonthPicker.js +184 -0
  540. package/node/MonthPicker/PickersMonth.js +95 -0
  541. package/node/MonthPicker/index.js +27 -0
  542. package/node/MonthPicker/monthPickerClasses.js +16 -0
  543. package/node/PickersDay/PickersDay.js +372 -0
  544. package/node/PickersDay/index.js +27 -0
  545. package/node/PickersDay/pickersDayClasses.js +16 -0
  546. package/node/StaticDatePicker/StaticDatePicker.js +422 -0
  547. package/node/StaticDatePicker/index.js +13 -0
  548. package/node/StaticDateTimePicker/StaticDateTimePicker.js +509 -0
  549. package/node/StaticDateTimePicker/index.js +13 -0
  550. package/node/StaticTimePicker/StaticTimePicker.js +356 -0
  551. package/node/StaticTimePicker/index.js +13 -0
  552. package/node/TimePicker/TimePicker.js +416 -0
  553. package/node/TimePicker/TimePickerToolbar.js +192 -0
  554. package/node/TimePicker/index.js +13 -0
  555. package/node/TimePicker/shared.js +59 -0
  556. package/node/TimePicker/timePickerToolbarClasses.js +16 -0
  557. package/node/YearPicker/PickersYear.js +135 -0
  558. package/node/YearPicker/YearPicker.js +212 -0
  559. package/node/YearPicker/index.js +27 -0
  560. package/node/YearPicker/yearPickerClasses.js +16 -0
  561. package/node/index.js +257 -0
  562. package/node/internals/components/CalendarOrClockPicker/CalendarOrClockPicker.js +151 -0
  563. package/node/internals/components/CalendarOrClockPicker/index.js +13 -0
  564. package/node/internals/components/KeyboardDateInput.js +83 -0
  565. package/node/internals/components/PickerStaticWrapper/PickerStaticWrapper.js +78 -0
  566. package/node/internals/components/PickerStaticWrapper/index.js +27 -0
  567. package/node/internals/components/PickerStaticWrapper/pickerStaticWrapperClasses.js +16 -0
  568. package/node/internals/components/PickerViewRoot/PickerViewRoot.js +20 -0
  569. package/node/internals/components/PickerViewRoot/index.js +13 -0
  570. package/node/internals/components/PickersArrowSwitcher.js +110 -0
  571. package/node/internals/components/PickersModalDialog.js +99 -0
  572. package/node/internals/components/PickersPopper.js +287 -0
  573. package/node/internals/components/PickersToolbar.js +105 -0
  574. package/node/internals/components/PickersToolbarButton.js +59 -0
  575. package/node/internals/components/PickersToolbarText.js +57 -0
  576. package/node/internals/components/PureDateInput.js +70 -0
  577. package/node/internals/components/icons/index.js +88 -0
  578. package/node/internals/components/wrappers/DesktopTooltipWrapper.js +71 -0
  579. package/node/internals/components/wrappers/DesktopWrapper.js +60 -0
  580. package/node/internals/components/wrappers/MobileWrapper.js +65 -0
  581. package/node/internals/components/wrappers/ResponsiveWrapper.js +64 -0
  582. package/node/internals/components/wrappers/WrapperProps.js +5 -0
  583. package/node/internals/components/wrappers/WrapperVariantContext.js +25 -0
  584. package/node/internals/constants/dimensions.js +14 -0
  585. package/node/internals/hooks/date-helpers-hooks.js +55 -0
  586. package/node/internals/hooks/useIsLandscape.js +57 -0
  587. package/node/internals/hooks/useMaskedInput.js +113 -0
  588. package/node/internals/hooks/useOpenState.js +51 -0
  589. package/node/internals/hooks/usePickerState.js +136 -0
  590. package/node/internals/hooks/useUtils.js +40 -0
  591. package/node/internals/hooks/useViews.js +64 -0
  592. package/node/internals/hooks/validation/useDateTimeValidation.js +51 -0
  593. package/node/internals/hooks/validation/useDateValidation.js +54 -0
  594. package/node/internals/hooks/validation/useTimeValidation.js +55 -0
  595. package/node/internals/hooks/validation/useValidation.js +32 -0
  596. package/node/internals/index.js +193 -0
  597. package/node/internals/models/helpers.js +5 -0
  598. package/node/internals/models/index.js +31 -0
  599. package/node/internals/models/muiPickersAdapter.js +5 -0
  600. package/node/internals/models/parseableDate.js +5 -0
  601. package/node/internals/models/props/basePickerProps.js +5 -0
  602. package/node/internals/models/props/baseToolbarProps.js +5 -0
  603. package/node/internals/models/views.js +5 -0
  604. package/node/internals/utils/date-utils.js +79 -0
  605. package/node/internals/utils/defaultReduceAnimations.js +8 -0
  606. package/node/internals/utils/text-field-helper.js +86 -0
  607. package/node/internals/utils/time-utils.js +53 -0
  608. package/node/internals/utils/utils.js +58 -0
  609. package/node/themeAugmentation/index.js +44 -0
  610. package/package.json +78 -0
  611. package/themeAugmentation/components.d.ts +53 -0
  612. package/themeAugmentation/index.d.ts +3 -0
  613. package/themeAugmentation/index.js +3 -0
  614. package/themeAugmentation/overrides.d.ts +27 -0
  615. package/themeAugmentation/package.json +6 -0
  616. package/themeAugmentation/props.d.ts +46 -0
@@ -0,0 +1,47 @@
1
+ import * as React from 'react';
2
+ import { ParseableDate } from '../internals/models/parseableDate';
3
+ import { OverrideParseableDateProps } from '../internals/hooks/date-helpers-hooks';
4
+ import { CalendarPickerView } from '../internals/models';
5
+ import { ExportedCalendarPickerProps } from '../CalendarPicker/CalendarPicker';
6
+ import { DateValidationError } from '../internals/hooks/validation/useDateValidation';
7
+ import { ValidationProps } from '../internals/hooks/validation/useValidation';
8
+ import { ExportedDateInputProps } from '../internals/components/PureDateInput';
9
+ import { BasePickerProps } from '../internals/models/props/basePickerProps';
10
+ import { BaseToolbarProps } from '../internals/models/props/baseToolbarProps';
11
+ export interface BaseDatePickerProps<TDate> extends ExportedCalendarPickerProps<TDate>, BasePickerProps<ParseableDate<TDate>, TDate | null>, ValidationProps<DateValidationError, ParseableDate<TDate>>, ExportedDateInputProps<ParseableDate<TDate>, TDate | null> {
12
+ /**
13
+ * The components used for each slot.
14
+ * Either a string to use a HTML element or a component.
15
+ * @default {}
16
+ */
17
+ components?: OverrideParseableDateProps<TDate, ExportedCalendarPickerProps<TDate>, 'minDate' | 'maxDate'>['components'] & ExportedDateInputProps<ParseableDate<TDate>, TDate | null>['components'];
18
+ /**
19
+ * Callback fired on view change.
20
+ * @param {CalendarPickerView} view The new view.
21
+ */
22
+ onViewChange?: (view: CalendarPickerView) => void;
23
+ /**
24
+ * First view to show.
25
+ */
26
+ openTo?: CalendarPickerView;
27
+ /**
28
+ * Component that will replace default toolbar renderer.
29
+ * @default DatePickerToolbar
30
+ */
31
+ ToolbarComponent?: React.JSXElementConstructor<BaseToolbarProps<TDate | null>>;
32
+ /**
33
+ * Mobile picker title, displaying in the toolbar.
34
+ * @default 'Select date'
35
+ */
36
+ toolbarTitle?: React.ReactNode;
37
+ /**
38
+ * Array of views to show.
39
+ */
40
+ views?: readonly CalendarPickerView[];
41
+ }
42
+ export declare const isYearOnlyView: (views: readonly CalendarPickerView[]) => views is readonly "year"[];
43
+ export declare const isYearAndMonthViews: (views: readonly CalendarPickerView[]) => views is readonly ("month" | "year")[];
44
+ export declare type DefaultizedProps<Props> = Props & {
45
+ inputFormat: string;
46
+ };
47
+ export declare function useDatePickerDefaultizedProps<TDate, Props extends BaseDatePickerProps<TDate>>({ openTo, views, minDate: minDateProp, maxDate: maxDateProp, ...other }: Props, name: string): DefaultizedProps<Props> & Required<Pick<BaseDatePickerProps<unknown>, 'openTo' | 'views'>>;
@@ -0,0 +1,54 @@
1
+ import _extends from "@babel/runtime/helpers/esm/extends";
2
+ import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/esm/objectWithoutPropertiesLoose";
3
+ const _excluded = ["openTo", "views", "minDate", "maxDate"];
4
+ import { useThemeProps } from '@mui/material/styles';
5
+ import { useDefaultDates, useUtils } from '../internals/hooks/useUtils';
6
+ export const isYearOnlyView = views => views.length === 1 && views[0] === 'year';
7
+ export const isYearAndMonthViews = views => views.length === 2 && views.indexOf('month') !== -1 && views.indexOf('year') !== -1;
8
+
9
+ const getFormatAndMaskByViews = (views, utils) => {
10
+ if (isYearOnlyView(views)) {
11
+ return {
12
+ mask: '____',
13
+ inputFormat: utils.formats.year
14
+ };
15
+ }
16
+
17
+ if (isYearAndMonthViews(views)) {
18
+ return {
19
+ disableMaskedInput: true,
20
+ inputFormat: utils.formats.monthAndYear
21
+ };
22
+ }
23
+
24
+ return {
25
+ mask: '__/__/____',
26
+ inputFormat: utils.formats.keyboardDate
27
+ };
28
+ };
29
+
30
+ export function useDatePickerDefaultizedProps(_ref, name) {
31
+ let {
32
+ openTo = 'day',
33
+ views = ['year', 'day'],
34
+ minDate: minDateProp,
35
+ maxDate: maxDateProp
36
+ } = _ref,
37
+ other = _objectWithoutPropertiesLoose(_ref, _excluded);
38
+
39
+ const utils = useUtils();
40
+ const defaultDates = useDefaultDates();
41
+ const minDate = minDateProp != null ? minDateProp : defaultDates.minDate;
42
+ const maxDate = maxDateProp != null ? maxDateProp : defaultDates.maxDate; // This is technically unsound if the type parameters appear in optional props.
43
+ // Optional props can be filled by `useThemeProps` with types that don't match the type parameters.
44
+
45
+ return useThemeProps({
46
+ props: _extends({
47
+ views,
48
+ openTo,
49
+ minDate,
50
+ maxDate
51
+ }, getFormatAndMaskByViews(views, utils), other),
52
+ name
53
+ });
54
+ }
@@ -0,0 +1,27 @@
1
+ import * as React from 'react';
2
+ import { DesktopDateTimePickerProps } from '../DesktopDateTimePicker';
3
+ import { MobileDateTimePickerProps } from '../MobileDateTimePicker';
4
+ export interface DateTimePickerProps<TDate = unknown> extends DesktopDateTimePickerProps<TDate>, MobileDateTimePickerProps<TDate> {
5
+ /**
6
+ * CSS media query when `Mobile` mode will be changed to `Desktop`.
7
+ * @default '@media (pointer: fine)'
8
+ * @example '@media (min-width: 720px)' or theme.breakpoints.up("sm")
9
+ */
10
+ desktopModeMediaQuery?: string;
11
+ }
12
+ declare type DateTimePickerComponent = (<TDate>(props: DateTimePickerProps<TDate> & React.RefAttributes<HTMLDivElement>) => JSX.Element) & {
13
+ propTypes?: any;
14
+ };
15
+ /**
16
+ *
17
+ * Demos:
18
+ *
19
+ * - [Date Time Picker](https://mui.com/components/x/react-date-pickers/date-time-picker/)
20
+ * - [Pickers](https://mui.com/x/react-date-pickers/)
21
+ *
22
+ * API:
23
+ *
24
+ * - [DateTimePicker API](https://mui.com/api/date-time-picker/)
25
+ */
26
+ declare const DateTimePicker: DateTimePickerComponent;
27
+ export { DateTimePicker };
@@ -0,0 +1,542 @@
1
+ import _extends from "@babel/runtime/helpers/esm/extends";
2
+ import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/esm/objectWithoutPropertiesLoose";
3
+ const _excluded = ["cancelText", "clearable", "clearText", "desktopModeMediaQuery", "DialogProps", "okText", "PopperProps", "showTodayButton", "todayText", "TransitionComponent"];
4
+ import * as React from 'react';
5
+ import PropTypes from 'prop-types';
6
+ import { useThemeProps } from '@mui/material/styles';
7
+ import useMediaQuery from '@mui/material/useMediaQuery';
8
+ import { DesktopDateTimePicker } from '../DesktopDateTimePicker';
9
+ import { MobileDateTimePicker } from '../MobileDateTimePicker';
10
+ import { jsx as _jsx } from "react/jsx-runtime";
11
+
12
+ /**
13
+ *
14
+ * Demos:
15
+ *
16
+ * - [Date Time Picker](https://mui.com/components/x/react-date-pickers/date-time-picker/)
17
+ * - [Pickers](https://mui.com/x/react-date-pickers/)
18
+ *
19
+ * API:
20
+ *
21
+ * - [DateTimePicker API](https://mui.com/api/date-time-picker/)
22
+ */
23
+ const DateTimePicker = /*#__PURE__*/React.forwardRef(function DateTimePicker(inProps, ref) {
24
+ const props = useThemeProps({
25
+ props: inProps,
26
+ name: 'MuiDateTimePicker'
27
+ });
28
+
29
+ const {
30
+ cancelText,
31
+ clearable,
32
+ clearText,
33
+ desktopModeMediaQuery = '@media (pointer: fine)',
34
+ DialogProps,
35
+ okText,
36
+ PopperProps,
37
+ showTodayButton,
38
+ todayText,
39
+ TransitionComponent
40
+ } = props,
41
+ other = _objectWithoutPropertiesLoose(props, _excluded);
42
+
43
+ const isDesktop = useMediaQuery(desktopModeMediaQuery);
44
+ return isDesktop ? /*#__PURE__*/_jsx(DesktopDateTimePicker, _extends({
45
+ ref: ref,
46
+ PopperProps: PopperProps,
47
+ TransitionComponent: TransitionComponent
48
+ }, other)) : /*#__PURE__*/_jsx(MobileDateTimePicker, _extends({
49
+ ref: ref,
50
+ cancelText: cancelText,
51
+ clearable: clearable,
52
+ clearText: clearText,
53
+ DialogProps: DialogProps,
54
+ okText: okText,
55
+ showTodayButton: showTodayButton,
56
+ todayText: todayText
57
+ }, other));
58
+ });
59
+ process.env.NODE_ENV !== "production" ? DateTimePicker.propTypes = {
60
+ // ----------------------------- Warning --------------------------------
61
+ // | These PropTypes are generated from the TypeScript type definitions |
62
+ // | To update them edit the TypeScript types and run "yarn proptypes" |
63
+ // ----------------------------------------------------------------------
64
+
65
+ /**
66
+ * Regular expression to detect "accepted" symbols.
67
+ * @default /\dap/gi
68
+ */
69
+ acceptRegex: PropTypes.instanceOf(RegExp),
70
+
71
+ /**
72
+ * If `true`, `onChange` is fired on click even if the same date is selected.
73
+ * @default false
74
+ */
75
+ allowSameDateSelection: PropTypes.bool,
76
+
77
+ /**
78
+ * 12h/24h view for hour selection clock.
79
+ * @default false
80
+ */
81
+ ampm: PropTypes.bool,
82
+
83
+ /**
84
+ * Display ampm controls under the clock (instead of in the toolbar).
85
+ * @default false
86
+ */
87
+ ampmInClock: PropTypes.bool,
88
+ autoFocus: PropTypes.bool,
89
+
90
+ /**
91
+ * Cancel text message.
92
+ * @default 'Cancel'
93
+ */
94
+ cancelText: PropTypes.node,
95
+ children: PropTypes.node,
96
+
97
+ /**
98
+ * className applied to the root component.
99
+ */
100
+ className: PropTypes.string,
101
+
102
+ /**
103
+ * If `true`, it shows the clear action in the picker dialog.
104
+ * @default false
105
+ */
106
+ clearable: PropTypes.bool,
107
+
108
+ /**
109
+ * Clear text message.
110
+ * @default 'Clear'
111
+ */
112
+ clearText: PropTypes.node,
113
+
114
+ /**
115
+ * The components used for each slot.
116
+ * Either a string to use a HTML element or a component.
117
+ * @default {}
118
+ */
119
+ components: PropTypes.object,
120
+
121
+ /**
122
+ * The props used for each slot inside.
123
+ * @default {}
124
+ */
125
+ componentsProps: PropTypes.object,
126
+
127
+ /**
128
+ * Date tab icon.
129
+ */
130
+ dateRangeIcon: PropTypes.node,
131
+
132
+ /**
133
+ * Default calendar month displayed when `value={null}`.
134
+ */
135
+ defaultCalendarMonth: PropTypes.any,
136
+
137
+ /**
138
+ * CSS media query when `Mobile` mode will be changed to `Desktop`.
139
+ * @default '@media (pointer: fine)'
140
+ * @example '@media (min-width: 720px)' or theme.breakpoints.up("sm")
141
+ */
142
+ desktopModeMediaQuery: PropTypes.string,
143
+
144
+ /**
145
+ * Props applied to the [`Dialog`](/api/dialog/) element.
146
+ */
147
+ DialogProps: PropTypes.object,
148
+
149
+ /**
150
+ * If `true` the popup or dialog will immediately close after submitting full date.
151
+ * @default `true` for Desktop, `false` for Mobile (based on the chosen wrapper and `desktopModeMediaQuery` prop).
152
+ */
153
+ disableCloseOnSelect: PropTypes.bool,
154
+
155
+ /**
156
+ * If `true`, the picker and text field are disabled.
157
+ * @default false
158
+ */
159
+ disabled: PropTypes.bool,
160
+
161
+ /**
162
+ * @default false
163
+ */
164
+ disableFuture: PropTypes.bool,
165
+
166
+ /**
167
+ * If `true`, todays date is rendering without highlighting with circle.
168
+ * @default false
169
+ */
170
+ disableHighlightToday: PropTypes.bool,
171
+
172
+ /**
173
+ * Do not ignore date part when validating min/max time.
174
+ * @default false
175
+ */
176
+ disableIgnoringDatePartForTimeValidation: PropTypes.bool,
177
+
178
+ /**
179
+ * Disable mask on the keyboard, this should be used rarely. Consider passing proper mask for your format.
180
+ * @default false
181
+ */
182
+ disableMaskedInput: PropTypes.bool,
183
+
184
+ /**
185
+ * Do not render open picker button (renders only text field with validation).
186
+ * @default false
187
+ */
188
+ disableOpenPicker: PropTypes.bool,
189
+
190
+ /**
191
+ * @default false
192
+ */
193
+ disablePast: PropTypes.bool,
194
+
195
+ /**
196
+ * Accessible text that helps user to understand which time and view is selected.
197
+ * @param {ClockPickerView} view The current view rendered.
198
+ * @param {TDate | null} time The current time.
199
+ * @param {MuiPickersAdapter<TDate>} adapter The current date adapter.
200
+ * @returns {string} The clock label.
201
+ * @default <TDate extends any>(
202
+ * view: ClockView,
203
+ * time: TDate | null,
204
+ * adapter: MuiPickersAdapter<TDate>,
205
+ * ) =>
206
+ * `Select ${view}. ${
207
+ * time === null ? 'No time selected' : `Selected time is ${adapter.format(time, 'fullTime')}`
208
+ * }`
209
+ */
210
+ getClockLabelText: PropTypes.func,
211
+
212
+ /**
213
+ * Get aria-label text for control that opens picker dialog. Aria-label text must include selected date. @DateIOType
214
+ * @default (value, utils) => `Choose date, selected date is ${utils.format(utils.date(value), 'fullDate')}`
215
+ * @param {ParseableDate<TDateValue>} value The date from which we want to add an aria-text.
216
+ * @param {MuiPickersAdapter<TDateValue>} utils The utils to manipulate the date.
217
+ * @returns {string} The aria-text to render inside the dialog.
218
+ */
219
+ getOpenDialogAriaText: PropTypes.func,
220
+
221
+ /**
222
+ * Get aria-label text for switching between views button.
223
+ * @param {CalendarPickerView} currentView The view from which we want to get the button text.
224
+ * @returns {string} The label of the view.
225
+ */
226
+ getViewSwitchingButtonText: PropTypes.func,
227
+
228
+ /**
229
+ * To show tabs.
230
+ */
231
+ hideTabs: PropTypes.bool,
232
+ ignoreInvalidInputs: PropTypes.bool,
233
+
234
+ /**
235
+ * Props to pass to keyboard input adornment.
236
+ */
237
+ InputAdornmentProps: PropTypes.object,
238
+
239
+ /**
240
+ * Format string.
241
+ */
242
+ inputFormat: PropTypes.string,
243
+ InputProps: PropTypes.object,
244
+
245
+ /**
246
+ * Pass a ref to the `input` element.
247
+ */
248
+ inputRef: PropTypes.oneOfType([PropTypes.func, PropTypes.shape({
249
+ current: PropTypes.object
250
+ })]),
251
+ label: PropTypes.node,
252
+
253
+ /**
254
+ * Left arrow icon aria-label text.
255
+ */
256
+ leftArrowButtonText: PropTypes.string,
257
+
258
+ /**
259
+ * If `true` renders `LoadingComponent` in calendar instead of calendar view.
260
+ * Can be used to preload information and show it in calendar.
261
+ * @default false
262
+ */
263
+ loading: PropTypes.bool,
264
+
265
+ /**
266
+ * Custom mask. Can be used to override generate from format. (e.g. `__/__/____ __:__` or `__/__/____ __:__ _M`).
267
+ */
268
+ mask: PropTypes.string,
269
+
270
+ /**
271
+ * Max selectable date. @DateIOType
272
+ */
273
+ maxDate: PropTypes.any,
274
+
275
+ /**
276
+ * Minimal selectable moment of time with binding to date, to set max time in each day use `maxTime`.
277
+ */
278
+ maxDateTime: PropTypes.any,
279
+
280
+ /**
281
+ * Max time acceptable time.
282
+ * For input validation date part of passed object will be ignored if `disableIgnoringDatePartForTimeValidation` not specified.
283
+ */
284
+ maxTime: PropTypes.any,
285
+
286
+ /**
287
+ * Min selectable date. @DateIOType
288
+ */
289
+ minDate: PropTypes.any,
290
+
291
+ /**
292
+ * Minimal selectable moment of time with binding to date, to set min time in each day use `minTime`.
293
+ */
294
+ minDateTime: PropTypes.any,
295
+
296
+ /**
297
+ * Min time acceptable time.
298
+ * For input validation date part of passed object will be ignored if `disableIgnoringDatePartForTimeValidation` not specified.
299
+ */
300
+ minTime: PropTypes.any,
301
+
302
+ /**
303
+ * Step over minutes.
304
+ * @default 1
305
+ */
306
+ minutesStep: PropTypes.number,
307
+
308
+ /**
309
+ * Ok button text.
310
+ * @default 'OK'
311
+ */
312
+ okText: PropTypes.node,
313
+
314
+ /**
315
+ * Callback fired when date is accepted @DateIOType.
316
+ * @param {TDateValue} date The date that was just accepted.
317
+ */
318
+ onAccept: PropTypes.func,
319
+
320
+ /**
321
+ * Callback fired when the value (the selected date) changes @DateIOType.
322
+ * @param {DateRange<TDate>} date The new parsed date.
323
+ * @param {string} keyboardInputValue The current value of the keyboard input.
324
+ */
325
+ onChange: PropTypes.func.isRequired,
326
+
327
+ /**
328
+ * Callback fired when the popup requests to be closed.
329
+ * Use in controlled mode (see open).
330
+ */
331
+ onClose: PropTypes.func,
332
+
333
+ /**
334
+ * Callback that fired when input value or new `value` prop validation returns **new** validation error (or value is valid after error).
335
+ * In case of validation error detected `reason` prop return non-null value and `TextField` must be displayed in `error` state.
336
+ * This can be used to render appropriate form error.
337
+ *
338
+ * [Read the guide](https://next.material-ui-pickers.dev/guides/forms) about form integration and error displaying.
339
+ * @DateIOType
340
+ *
341
+ * @param {TError} reason The reason why the current value is not valid.
342
+ * @param {TDateValue} value The invalid value.
343
+ */
344
+ onError: PropTypes.func,
345
+
346
+ /**
347
+ * Callback firing on month change. @DateIOType
348
+ * @param {TDate} month The new month.
349
+ */
350
+ onMonthChange: PropTypes.func,
351
+
352
+ /**
353
+ * Callback fired when the popup requests to be opened.
354
+ * Use in controlled mode (see open).
355
+ */
356
+ onOpen: PropTypes.func,
357
+
358
+ /**
359
+ * Callback fired on view change.
360
+ * @param {CalendarOrClockPickerView} view The new view.
361
+ */
362
+ onViewChange: PropTypes.func,
363
+
364
+ /**
365
+ * Callback firing on year change @DateIOType.
366
+ * @param {TDate} year The new year.
367
+ */
368
+ onYearChange: PropTypes.func,
369
+
370
+ /**
371
+ * Control the popup or dialog open state.
372
+ */
373
+ open: PropTypes.bool,
374
+
375
+ /**
376
+ * Props to pass to keyboard adornment button.
377
+ */
378
+ OpenPickerButtonProps: PropTypes.object,
379
+
380
+ /**
381
+ * First view to show.
382
+ */
383
+ openTo: PropTypes.oneOf(['day', 'hours', 'minutes', 'month', 'seconds', 'year']),
384
+
385
+ /**
386
+ * Force rendering in particular orientation.
387
+ */
388
+ orientation: PropTypes.oneOf(['landscape', 'portrait']),
389
+
390
+ /**
391
+ * Paper props passed down to [Paper](https://mui.com/api/paper/) component.
392
+ */
393
+ PaperProps: PropTypes.object,
394
+
395
+ /**
396
+ * Popper props passed down to [Popper](https://mui.com/api/popper/) component.
397
+ */
398
+ PopperProps: PropTypes.object,
399
+
400
+ /**
401
+ * Make picker read only.
402
+ * @default false
403
+ */
404
+ readOnly: PropTypes.bool,
405
+
406
+ /**
407
+ * Disable heavy animations.
408
+ * @default typeof navigator !== 'undefined' && /(android)/i.test(navigator.userAgent)
409
+ */
410
+ reduceAnimations: PropTypes.bool,
411
+
412
+ /**
413
+ * Custom renderer for day. Check the [PickersDay](https://mui.com/api/pickers-day/) component.
414
+ * @param {TDate} day The day to render.
415
+ * @param {Array<TDate | null>} selectedDates The dates currently selected.
416
+ * @param {PickersDayProps<TDate>} pickersDayProps The props of the day to render.
417
+ * @returns {JSX.Element} The element representing the day.
418
+ */
419
+ renderDay: PropTypes.func,
420
+
421
+ /**
422
+ * The `renderInput` prop allows you to customize the rendered input.
423
+ * The `props` argument of this render prop contains props of [TextField](https://mui.com/api/text-field/#textfield-api) that you need to forward.
424
+ * Pay specific attention to the `ref` and `inputProps` keys.
425
+ * @example ```jsx
426
+ * renderInput={props => <TextField {...props} />}
427
+ * ````
428
+ * @param {MuiTextFieldPropsType} props The props of the input.
429
+ * @returns {React.ReactNode} The node to render as the input.
430
+ */
431
+ renderInput: PropTypes.func.isRequired,
432
+
433
+ /**
434
+ * Component displaying when passed `loading` true.
435
+ * @returns {React.ReactNode} The node to render when loading.
436
+ * @default () => <span data-mui-test="loading-progress">...</span>
437
+ */
438
+ renderLoading: PropTypes.func,
439
+
440
+ /**
441
+ * Custom formatter to be passed into Rifm component.
442
+ * @param {string} str The un-formatted string.
443
+ * @returns {string} The formatted string.
444
+ */
445
+ rifmFormatter: PropTypes.func,
446
+
447
+ /**
448
+ * Right arrow icon aria-label text.
449
+ */
450
+ rightArrowButtonText: PropTypes.string,
451
+
452
+ /**
453
+ * Disable specific date. @DateIOType
454
+ * @param {TDate} day The date to check.
455
+ * @returns {boolean} If `true` the day will be disabled.
456
+ */
457
+ shouldDisableDate: PropTypes.func,
458
+
459
+ /**
460
+ * Dynamically check if time is disabled or not.
461
+ * If returns `false` appropriate time point will ot be acceptable.
462
+ * @param {number} timeValue The value to check.
463
+ * @param {ClockPickerView} clockType The clock type of the timeValue.
464
+ * @returns {boolean} Returns `true` if the time should be disabled
465
+ */
466
+ shouldDisableTime: PropTypes.func,
467
+
468
+ /**
469
+ * Disable specific years dynamically.
470
+ * Works like `shouldDisableDate` but for year selection view @DateIOType.
471
+ * @param {TDate} year The year to test.
472
+ * @returns {boolean} Return `true` if the year should be disabled.
473
+ */
474
+ shouldDisableYear: PropTypes.func,
475
+
476
+ /**
477
+ * If `true`, days that have `outsideCurrentMonth={true}` are displayed.
478
+ * @default false
479
+ */
480
+ showDaysOutsideCurrentMonth: PropTypes.bool,
481
+
482
+ /**
483
+ * If `true`, the today button is displayed. **Note** that `showClearButton` has a higher priority.
484
+ * @default false
485
+ */
486
+ showTodayButton: PropTypes.bool,
487
+
488
+ /**
489
+ * If `true`, show the toolbar even in desktop mode.
490
+ */
491
+ showToolbar: PropTypes.bool,
492
+
493
+ /**
494
+ * Time tab icon.
495
+ */
496
+ timeIcon: PropTypes.node,
497
+
498
+ /**
499
+ * Today text message.
500
+ * @default 'Today'
501
+ */
502
+ todayText: PropTypes.node,
503
+
504
+ /**
505
+ * Component that will replace default toolbar renderer.
506
+ * @default DateTimePickerToolbar
507
+ */
508
+ ToolbarComponent: PropTypes.elementType,
509
+
510
+ /**
511
+ * Date format, that is displaying in toolbar.
512
+ */
513
+ toolbarFormat: PropTypes.string,
514
+
515
+ /**
516
+ * Mobile picker date value placeholder, displaying if `value` === `null`.
517
+ * @default '–'
518
+ */
519
+ toolbarPlaceholder: PropTypes.node,
520
+
521
+ /**
522
+ * Mobile picker title, displaying in the toolbar.
523
+ * @default 'Select date & time'
524
+ */
525
+ toolbarTitle: PropTypes.node,
526
+
527
+ /**
528
+ * Custom component for popper [Transition](https://mui.com/components/transitions/#transitioncomponent-prop).
529
+ */
530
+ TransitionComponent: PropTypes.elementType,
531
+
532
+ /**
533
+ * The value of the picker.
534
+ */
535
+ value: PropTypes.oneOfType([PropTypes.any, PropTypes.instanceOf(Date), PropTypes.number, PropTypes.string]),
536
+
537
+ /**
538
+ * Array of views to show.
539
+ */
540
+ views: PropTypes.arrayOf(PropTypes.oneOf(['day', 'hours', 'minutes', 'month', 'seconds', 'year']).isRequired)
541
+ } : void 0;
542
+ export { DateTimePicker };
@@ -0,0 +1,12 @@
1
+ import * as React from 'react';
2
+ import { CalendarOrClockPickerView } from '../internals/models';
3
+ export interface DateTimePickerTabsProps {
4
+ dateRangeIcon?: React.ReactNode;
5
+ onChange: (view: CalendarOrClockPickerView) => void;
6
+ timeIcon?: React.ReactNode;
7
+ view: CalendarOrClockPickerView;
8
+ }
9
+ /**
10
+ * @ignore - internal component.
11
+ */
12
+ export declare const DateTimePickerTabs: (props: DateTimePickerTabsProps) => JSX.Element;