@mui/lab 5.0.0-alpha.49 → 5.0.0-alpha.53

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 (336) hide show
  1. package/AdapterDateFns/index.d.ts +1 -1
  2. package/AdapterDayjs/index.d.ts +1 -1
  3. package/AdapterLuxon/index.d.ts +1 -1
  4. package/AdapterMoment/index.d.ts +1 -1
  5. package/CHANGELOG.md +251 -0
  6. package/CalendarPicker/CalendarPicker.d.ts +96 -96
  7. package/CalendarPicker/PickersCalendar.d.ts +45 -45
  8. package/CalendarPicker/PickersCalendarHeader.d.ts +42 -42
  9. package/CalendarPicker/PickersFadeTransitionGroup.d.ts +12 -12
  10. package/CalendarPicker/PickersFadeTransitionGroup.js +2 -2
  11. package/CalendarPicker/PickersSlideTransition.d.ts +16 -16
  12. package/CalendarPicker/index.d.ts +5 -5
  13. package/CalendarPicker/shared.d.ts +1 -1
  14. package/CalendarPicker/useCalendarState.d.ts +32 -32
  15. package/CalendarPickerSkeleton/CalendarPickerSkeleton.d.ts +41 -40
  16. package/CalendarPickerSkeleton/CalendarPickerSkeleton.js +1 -1
  17. package/CalendarPickerSkeleton/index.d.ts +3 -3
  18. package/ClockPicker/Clock.d.ts +28 -28
  19. package/ClockPicker/ClockNumber.d.ts +19 -19
  20. package/ClockPicker/ClockNumbers.d.ts +24 -24
  21. package/ClockPicker/ClockPicker.d.ts +121 -121
  22. package/ClockPicker/ClockPickerStandalone.d.ts +28 -28
  23. package/ClockPicker/ClockPointer.d.ts +23 -23
  24. package/ClockPicker/index.d.ts +5 -5
  25. package/ClockPicker/shared.d.ts +5 -5
  26. package/DatePicker/DatePicker.d.ts +27 -27
  27. package/DatePicker/DatePicker.js +5 -0
  28. package/DatePicker/DatePickerToolbar.d.ts +23 -23
  29. package/DatePicker/index.d.ts +2 -2
  30. package/DatePicker/shared.d.ts +45 -41
  31. package/DateRangePicker/DateRangePicker.d.ts +65 -65
  32. package/DateRangePicker/DateRangePicker.js +5 -0
  33. package/DateRangePicker/DateRangePickerInput.d.ts +35 -35
  34. package/DateRangePicker/DateRangePickerToolbar.d.ts +15 -15
  35. package/DateRangePicker/DateRangePickerView.d.ts +44 -44
  36. package/DateRangePicker/DateRangePickerViewDesktop.d.ts +29 -29
  37. package/DateRangePicker/DateRangePickerViewMobile.d.ts +17 -17
  38. package/DateRangePicker/RangeTypes.d.ts +8 -8
  39. package/DateRangePicker/date-range-manager.d.ts +14 -14
  40. package/DateRangePicker/index.d.ts +3 -3
  41. package/DateRangePickerDay/DateRangePickerDay.d.ts +79 -79
  42. package/DateRangePickerDay/DateRangePickerDay.js +1 -1
  43. package/DateRangePickerDay/index.d.ts +2 -2
  44. package/DateTimePicker/DateTimePicker.d.ts +27 -27
  45. package/DateTimePicker/DateTimePicker.js +5 -0
  46. package/DateTimePicker/DateTimePickerTabs.d.ts +13 -13
  47. package/DateTimePicker/DateTimePickerToolbar.d.ts +7 -7
  48. package/DateTimePicker/index.d.ts +2 -2
  49. package/DateTimePicker/shared.d.ts +67 -63
  50. package/DesktopDatePicker/DesktopDatePicker.d.ts +20 -20
  51. package/DesktopDatePicker/DesktopDatePicker.js +8 -1
  52. package/DesktopDatePicker/index.d.ts +2 -2
  53. package/DesktopDateRangePicker/DesktopDateRangePicker.d.ts +64 -64
  54. package/DesktopDateRangePicker/DesktopDateRangePicker.js +5 -0
  55. package/DesktopDateRangePicker/index.d.ts +2 -2
  56. package/DesktopDateTimePicker/DesktopDateTimePicker.d.ts +20 -20
  57. package/DesktopDateTimePicker/DesktopDateTimePicker.js +5 -0
  58. package/DesktopDateTimePicker/index.d.ts +2 -2
  59. package/DesktopTimePicker/DesktopTimePicker.d.ts +20 -20
  60. package/DesktopTimePicker/DesktopTimePicker.js +10 -0
  61. package/DesktopTimePicker/index.d.ts +2 -2
  62. package/LICENSE +21 -21
  63. package/LoadingButton/LoadingButton.js +37 -7
  64. package/LoadingButton/loadingButtonClasses.d.ts +22 -22
  65. package/LocalizationProvider/LocalizationProvider.d.ts +35 -35
  66. package/LocalizationProvider/index.d.ts +2 -2
  67. package/Masonry/Masonry.d.ts +13 -1
  68. package/Masonry/Masonry.js +246 -59
  69. package/Masonry/masonryClasses.d.ts +8 -8
  70. package/MobileDatePicker/MobileDatePicker.d.ts +20 -20
  71. package/MobileDatePicker/index.d.ts +2 -2
  72. package/MobileDateRangePicker/MobileDateRangePicker.d.ts +64 -64
  73. package/MobileDateRangePicker/index.d.ts +2 -2
  74. package/MobileDateTimePicker/MobileDateTimePicker.d.ts +20 -20
  75. package/MobileDateTimePicker/index.d.ts +2 -2
  76. package/MobileTimePicker/MobileTimePicker.d.ts +20 -20
  77. package/MobileTimePicker/MobileTimePicker.js +5 -0
  78. package/MobileTimePicker/index.d.ts +2 -2
  79. package/MonthPicker/MonthPicker.d.ts +49 -49
  80. package/MonthPicker/MonthPicker.js +1 -1
  81. package/MonthPicker/PickersMonth.d.ts +15 -15
  82. package/MonthPicker/index.d.ts +3 -3
  83. package/PickersDay/PickersDay.d.ts +93 -93
  84. package/PickersDay/PickersDay.js +1 -1
  85. package/PickersDay/index.d.ts +4 -4
  86. package/StaticDatePicker/StaticDatePicker.d.ts +25 -25
  87. package/StaticDatePicker/index.d.ts +2 -2
  88. package/StaticDateRangePicker/StaticDateRangePicker.d.ts +67 -67
  89. package/StaticDateRangePicker/index.d.ts +2 -2
  90. package/StaticDateTimePicker/StaticDateTimePicker.d.ts +25 -25
  91. package/StaticDateTimePicker/index.d.ts +2 -2
  92. package/StaticTimePicker/StaticTimePicker.d.ts +25 -25
  93. package/StaticTimePicker/StaticTimePicker.js +5 -0
  94. package/StaticTimePicker/index.d.ts +2 -2
  95. package/TabPanel/TabPanel.js +1 -1
  96. package/TabPanel/tabPanelClasses.d.ts +8 -8
  97. package/TimePicker/TimePicker.d.ts +27 -27
  98. package/TimePicker/TimePicker.js +10 -0
  99. package/TimePicker/TimePickerToolbar.d.ts +23 -23
  100. package/TimePicker/index.d.ts +2 -2
  101. package/TimePicker/shared.d.ts +36 -32
  102. package/Timeline/Timeline.d.ts +59 -59
  103. package/Timeline/Timeline.js +1 -1
  104. package/Timeline/TimelineContext.d.ts +6 -6
  105. package/Timeline/index.d.ts +5 -5
  106. package/Timeline/timelineClasses.d.ts +3 -3
  107. package/TimelineConnector/TimelineConnector.js +1 -1
  108. package/TimelineConnector/timelineConnectorClasses.d.ts +8 -8
  109. package/TimelineContent/TimelineContent.js +1 -1
  110. package/TimelineContent/timelineContentClasses.d.ts +14 -14
  111. package/TimelineDot/TimelineDot.js +1 -1
  112. package/TimelineDot/timelineDotClasses.d.ts +24 -24
  113. package/TimelineItem/TimelineItem.js +1 -1
  114. package/TimelineItem/timelineItemClasses.d.ts +16 -16
  115. package/TimelineOppositeContent/TimelineOppositeContent.js +1 -1
  116. package/TimelineOppositeContent/timelineOppositeContentClasses.d.ts +14 -14
  117. package/TimelineSeparator/TimelineSeparator.js +1 -1
  118. package/TimelineSeparator/timelineSeparatorClasses.d.ts +8 -8
  119. package/TreeItem/TreeItem.js +1 -1
  120. package/TreeItem/treeItemClasses.d.ts +24 -24
  121. package/TreeView/TreeView.js +1 -1
  122. package/TreeView/treeViewClasses.d.ts +8 -8
  123. package/YearPicker/PickersYear.d.ts +28 -28
  124. package/YearPicker/YearPicker.d.ts +42 -42
  125. package/YearPicker/index.d.ts +5 -5
  126. package/YearPicker/yearPickerClasses.d.ts +3 -3
  127. package/index.js +1 -1
  128. package/internal/pickers/KeyboardDateInput.d.ts +4 -4
  129. package/internal/pickers/Picker/Picker.d.ts +33 -33
  130. package/internal/pickers/Picker/Picker.js +12 -6
  131. package/internal/pickers/Picker/PickerView.d.ts +3 -7
  132. package/internal/pickers/PickersArrowSwitcher.d.ts +41 -41
  133. package/internal/pickers/PickersArrowSwitcher.js +1 -3
  134. package/internal/pickers/PickersModalDialog.d.ts +47 -47
  135. package/internal/pickers/PickersPopper.d.ts +33 -25
  136. package/internal/pickers/PickersPopper.js +31 -7
  137. package/internal/pickers/PickersToolbar.d.ts +14 -14
  138. package/internal/pickers/PickersToolbarButton.d.ts +13 -13
  139. package/internal/pickers/PickersToolbarText.d.ts +8 -8
  140. package/internal/pickers/PureDateInput.d.ts +80 -80
  141. package/internal/pickers/constants/dimensions.d.ts +4 -4
  142. package/internal/pickers/constants/prop-types.d.ts +1 -1
  143. package/internal/pickers/date-time-utils.d.ts +8 -8
  144. package/internal/pickers/date-utils.d.ts +52 -52
  145. package/internal/pickers/hooks/date-helpers-hooks.d.ts +16 -16
  146. package/internal/pickers/hooks/useIsLandscape.d.ts +4 -4
  147. package/internal/pickers/hooks/useMaskedInput.d.ts +7 -7
  148. package/internal/pickers/hooks/useOpenState.d.ts +10 -10
  149. package/internal/pickers/hooks/usePickerState.d.ts +38 -38
  150. package/internal/pickers/hooks/useUtils.d.ts +7 -7
  151. package/internal/pickers/hooks/useValidation.d.ts +23 -23
  152. package/internal/pickers/hooks/useViews.d.ts +19 -19
  153. package/internal/pickers/test-utils.js +18 -26
  154. package/internal/pickers/text-field-helper.d.ts +11 -11
  155. package/internal/pickers/time-utils.d.ts +33 -33
  156. package/internal/pickers/typings/BasePicker.d.ts +95 -95
  157. package/internal/pickers/typings/Views.d.ts +1 -1
  158. package/internal/pickers/typings/helpers.d.ts +9 -9
  159. package/internal/pickers/utils.d.ts +7 -7
  160. package/internal/pickers/wrappers/DesktopTooltipWrapper.d.ts +4 -4
  161. package/internal/pickers/wrappers/DesktopWrapper.d.ts +16 -16
  162. package/internal/pickers/wrappers/DesktopWrapper.js +2 -0
  163. package/internal/pickers/wrappers/MobileWrapper.d.ts +14 -14
  164. package/internal/pickers/wrappers/ResponsiveWrapper.d.ts +23 -23
  165. package/internal/pickers/wrappers/StaticWrapper.d.ts +10 -10
  166. package/internal/pickers/wrappers/WrapperProps.d.ts +13 -13
  167. package/internal/pickers/wrappers/WrapperVariantContext.d.ts +11 -11
  168. package/internal/svg-icons/ArrowDropDown.d.ts +7 -7
  169. package/internal/svg-icons/ArrowLeft.d.ts +7 -7
  170. package/internal/svg-icons/ArrowRight.d.ts +7 -7
  171. package/internal/svg-icons/Calendar.d.ts +7 -7
  172. package/internal/svg-icons/Clock.d.ts +7 -7
  173. package/internal/svg-icons/DateRange.d.ts +7 -7
  174. package/internal/svg-icons/Pen.d.ts +7 -7
  175. package/internal/svg-icons/Time.d.ts +7 -7
  176. package/legacy/CalendarPicker/PickersFadeTransitionGroup.js +3 -5
  177. package/legacy/CalendarPickerSkeleton/CalendarPickerSkeleton.js +1 -1
  178. package/legacy/DatePicker/DatePicker.js +5 -0
  179. package/legacy/DateRangePicker/DateRangePicker.js +5 -0
  180. package/legacy/DateRangePickerDay/DateRangePickerDay.js +1 -1
  181. package/legacy/DateTimePicker/DateTimePicker.js +5 -0
  182. package/legacy/DesktopDatePicker/DesktopDatePicker.js +8 -1
  183. package/legacy/DesktopDateRangePicker/DesktopDateRangePicker.js +5 -0
  184. package/legacy/DesktopDateTimePicker/DesktopDateTimePicker.js +5 -0
  185. package/legacy/DesktopTimePicker/DesktopTimePicker.js +10 -0
  186. package/legacy/LoadingButton/LoadingButton.js +36 -10
  187. package/legacy/Masonry/Masonry.js +255 -59
  188. package/legacy/MobileTimePicker/MobileTimePicker.js +5 -0
  189. package/legacy/MonthPicker/MonthPicker.js +1 -1
  190. package/legacy/PickersDay/PickersDay.js +1 -1
  191. package/legacy/StaticTimePicker/StaticTimePicker.js +5 -0
  192. package/legacy/TabPanel/TabPanel.js +1 -1
  193. package/legacy/TimePicker/TimePicker.js +10 -0
  194. package/legacy/Timeline/Timeline.js +1 -1
  195. package/legacy/TimelineConnector/TimelineConnector.js +1 -1
  196. package/legacy/TimelineContent/TimelineContent.js +1 -1
  197. package/legacy/TimelineDot/TimelineDot.js +1 -1
  198. package/legacy/TimelineItem/TimelineItem.js +1 -1
  199. package/legacy/TimelineOppositeContent/TimelineOppositeContent.js +1 -1
  200. package/legacy/TimelineSeparator/TimelineSeparator.js +1 -1
  201. package/legacy/TreeItem/TreeItem.js +1 -1
  202. package/legacy/TreeView/TreeView.js +1 -1
  203. package/legacy/index.js +1 -1
  204. package/legacy/internal/pickers/Picker/Picker.js +12 -8
  205. package/legacy/internal/pickers/PickersArrowSwitcher.js +1 -3
  206. package/legacy/internal/pickers/PickersPopper.js +29 -7
  207. package/legacy/internal/pickers/test-utils.js +22 -33
  208. package/legacy/internal/pickers/wrappers/DesktopWrapper.js +2 -0
  209. package/modern/CalendarPicker/PickersFadeTransitionGroup.js +2 -2
  210. package/modern/CalendarPickerSkeleton/CalendarPickerSkeleton.js +1 -1
  211. package/modern/DatePicker/DatePicker.js +5 -0
  212. package/modern/DateRangePicker/DateRangePicker.js +5 -0
  213. package/modern/DateRangePickerDay/DateRangePickerDay.js +1 -1
  214. package/modern/DateTimePicker/DateTimePicker.js +5 -0
  215. package/modern/DesktopDatePicker/DesktopDatePicker.js +8 -1
  216. package/modern/DesktopDateRangePicker/DesktopDateRangePicker.js +5 -0
  217. package/modern/DesktopDateTimePicker/DesktopDateTimePicker.js +5 -0
  218. package/modern/DesktopTimePicker/DesktopTimePicker.js +10 -0
  219. package/modern/LoadingButton/LoadingButton.js +37 -7
  220. package/modern/Masonry/Masonry.js +246 -59
  221. package/modern/MobileTimePicker/MobileTimePicker.js +5 -0
  222. package/modern/MonthPicker/MonthPicker.js +1 -1
  223. package/modern/PickersDay/PickersDay.js +1 -1
  224. package/modern/StaticTimePicker/StaticTimePicker.js +5 -0
  225. package/modern/TabPanel/TabPanel.js +1 -1
  226. package/modern/TimePicker/TimePicker.js +10 -0
  227. package/modern/Timeline/Timeline.js +1 -1
  228. package/modern/TimelineConnector/TimelineConnector.js +1 -1
  229. package/modern/TimelineContent/TimelineContent.js +1 -1
  230. package/modern/TimelineDot/TimelineDot.js +1 -1
  231. package/modern/TimelineItem/TimelineItem.js +1 -1
  232. package/modern/TimelineOppositeContent/TimelineOppositeContent.js +1 -1
  233. package/modern/TimelineSeparator/TimelineSeparator.js +1 -1
  234. package/modern/TreeItem/TreeItem.js +1 -1
  235. package/modern/TreeView/TreeView.js +1 -1
  236. package/modern/index.js +1 -1
  237. package/modern/internal/pickers/Picker/Picker.js +12 -6
  238. package/modern/internal/pickers/PickersArrowSwitcher.js +1 -3
  239. package/modern/internal/pickers/PickersPopper.js +31 -7
  240. package/modern/internal/pickers/test-utils.js +18 -26
  241. package/modern/internal/pickers/wrappers/DesktopWrapper.js +2 -0
  242. package/node/CalendarPicker/CalendarPicker.js +1 -1
  243. package/node/CalendarPicker/PickersFadeTransitionGroup.js +2 -2
  244. package/node/CalendarPicker/PickersSlideTransition.js +1 -1
  245. package/node/CalendarPicker/index.js +4 -4
  246. package/node/CalendarPicker/useCalendarState.js +1 -1
  247. package/node/CalendarPickerSkeleton/CalendarPickerSkeleton.js +2 -2
  248. package/node/CalendarPickerSkeleton/index.js +4 -4
  249. package/node/ClockPicker/ClockPicker.js +1 -1
  250. package/node/ClockPicker/index.js +4 -4
  251. package/node/ClockPicker/shared.js +1 -1
  252. package/node/DatePicker/DatePicker.js +5 -0
  253. package/node/DatePicker/shared.js +1 -1
  254. package/node/DateRangePicker/DateRangePicker.js +5 -0
  255. package/node/DateRangePickerDay/DateRangePickerDay.js +2 -2
  256. package/node/DateTimePicker/DateTimePicker.js +5 -0
  257. package/node/DesktopDatePicker/DesktopDatePicker.js +8 -1
  258. package/node/DesktopDateRangePicker/DesktopDateRangePicker.js +5 -0
  259. package/node/DesktopDateTimePicker/DesktopDateTimePicker.js +5 -0
  260. package/node/DesktopTimePicker/DesktopTimePicker.js +10 -0
  261. package/node/LoadingButton/LoadingButton.js +37 -7
  262. package/node/LoadingButton/loadingButtonClasses.js +1 -1
  263. package/node/Masonry/Masonry.js +247 -63
  264. package/node/Masonry/masonryClasses.js +1 -1
  265. package/node/MobileTimePicker/MobileTimePicker.js +5 -0
  266. package/node/MonthPicker/MonthPicker.js +3 -2
  267. package/node/PickersDay/PickersDay.js +3 -2
  268. package/node/PickersDay/index.js +4 -4
  269. package/node/StaticTimePicker/StaticTimePicker.js +5 -0
  270. package/node/TabContext/TabContext.js +1 -1
  271. package/node/TabPanel/TabPanel.js +1 -1
  272. package/node/TabPanel/tabPanelClasses.js +1 -1
  273. package/node/TimePicker/TimePicker.js +10 -0
  274. package/node/TimePicker/TimePickerToolbar.js +2 -1
  275. package/node/Timeline/Timeline.js +1 -1
  276. package/node/Timeline/timelineClasses.js +1 -1
  277. package/node/TimelineConnector/TimelineConnector.js +1 -1
  278. package/node/TimelineConnector/timelineConnectorClasses.js +1 -1
  279. package/node/TimelineContent/TimelineContent.js +1 -1
  280. package/node/TimelineContent/timelineContentClasses.js +1 -1
  281. package/node/TimelineDot/TimelineDot.js +1 -1
  282. package/node/TimelineDot/timelineDotClasses.js +1 -1
  283. package/node/TimelineItem/TimelineItem.js +1 -1
  284. package/node/TimelineItem/timelineItemClasses.js +1 -1
  285. package/node/TimelineOppositeContent/TimelineOppositeContent.js +1 -1
  286. package/node/TimelineOppositeContent/timelineOppositeContentClasses.js +1 -1
  287. package/node/TimelineSeparator/TimelineSeparator.js +1 -1
  288. package/node/TimelineSeparator/timelineSeparatorClasses.js +1 -1
  289. package/node/TreeItem/TreeItem.js +1 -1
  290. package/node/TreeItem/index.js +4 -4
  291. package/node/TreeItem/treeItemClasses.js +1 -1
  292. package/node/TreeView/TreeView.js +1 -1
  293. package/node/TreeView/descendants.js +1 -1
  294. package/node/TreeView/treeViewClasses.js +1 -1
  295. package/node/YearPicker/PickersYear.js +2 -1
  296. package/node/YearPicker/yearPickerClasses.js +1 -1
  297. package/node/index.js +7 -7
  298. package/node/internal/pickers/Picker/Picker.js +12 -6
  299. package/node/internal/pickers/PickersArrowSwitcher.js +1 -3
  300. package/node/internal/pickers/PickersPopper.js +31 -7
  301. package/node/internal/pickers/constants/dimensions.js +1 -1
  302. package/node/internal/pickers/date-utils.js +2 -1
  303. package/node/internal/pickers/hooks/date-helpers-hooks.js +1 -1
  304. package/node/internal/pickers/hooks/useIsLandscape.js +1 -1
  305. package/node/internal/pickers/hooks/useMaskedInput.js +1 -1
  306. package/node/internal/pickers/hooks/useOpenState.js +1 -1
  307. package/node/internal/pickers/hooks/useUtils.js +1 -1
  308. package/node/internal/pickers/hooks/useValidation.js +3 -3
  309. package/node/internal/pickers/test-utils.js +20 -39
  310. package/node/internal/pickers/text-field-helper.js +3 -2
  311. package/node/internal/pickers/time-utils.js +2 -1
  312. package/node/internal/pickers/utils.js +1 -1
  313. package/node/internal/pickers/wrappers/DesktopWrapper.js +2 -0
  314. package/node/internal/pickers/wrappers/WrapperVariantContext.js +1 -1
  315. package/node/useAutocomplete/index.js +4 -4
  316. package/package.json +9 -9
  317. package/Masonry/MasonryContext.js +0 -12
  318. package/MasonryItem/MasonryItem.d.ts +0 -49
  319. package/MasonryItem/MasonryItem.js +0 -196
  320. package/MasonryItem/index.d.ts +0 -5
  321. package/MasonryItem/index.js +0 -3
  322. package/MasonryItem/masonryItemClasses.d.ts +0 -8
  323. package/MasonryItem/masonryItemClasses.js +0 -6
  324. package/MasonryItem/package.json +0 -6
  325. package/legacy/Masonry/MasonryContext.js +0 -12
  326. package/legacy/MasonryItem/MasonryItem.js +0 -201
  327. package/legacy/MasonryItem/index.js +0 -3
  328. package/legacy/MasonryItem/masonryItemClasses.js +0 -6
  329. package/modern/Masonry/MasonryContext.js +0 -12
  330. package/modern/MasonryItem/MasonryItem.js +0 -196
  331. package/modern/MasonryItem/index.js +0 -3
  332. package/modern/MasonryItem/masonryItemClasses.js +0 -6
  333. package/node/Masonry/MasonryContext.js +0 -24
  334. package/node/MasonryItem/MasonryItem.js +0 -220
  335. package/node/MasonryItem/index.js +0 -42
  336. package/node/MasonryItem/masonryItemClasses.js +0 -17
@@ -1,42 +1,42 @@
1
- /// <reference types="react" />
2
- import { PickerOnChangeFn } from '../internal/pickers/hooks/useViews';
3
- export interface ExportedYearPickerProps<TDate> {
4
- /**
5
- * Callback firing on year change @DateIOType.
6
- */
7
- onYearChange?: (date: TDate) => void;
8
- /**
9
- * Disable specific years dynamically.
10
- * Works like `shouldDisableDate` but for year selection view @DateIOType.
11
- */
12
- shouldDisableYear?: (day: TDate) => boolean;
13
- }
14
- export declare type YearPickerClassKey = keyof NonNullable<YearPickerProps<any>['classes']>;
15
- export interface YearPickerProps<TDate> extends ExportedYearPickerProps<TDate> {
16
- autoFocus?: boolean;
17
- className?: string;
18
- classes?: {
19
- /** Styles applied to the root element. */
20
- root?: string;
21
- };
22
- date: TDate | null;
23
- disableFuture?: boolean | null;
24
- disablePast?: boolean | null;
25
- isDateDisabled: (day: TDate) => boolean;
26
- minDate: TDate;
27
- maxDate: TDate;
28
- onChange: PickerOnChangeFn<TDate>;
29
- onFocusedDayChange?: (day: TDate) => void;
30
- }
31
- declare const _default: <TDate>(props: YearPickerProps<TDate>) => JSX.Element;
32
- /**
33
- *
34
- * Demos:
35
- *
36
- * - [Date Picker](https://mui.com/components/date-picker/)
37
- *
38
- * API:
39
- *
40
- * - [YearPicker API](https://mui.com/api/year-picker/)
41
- */
42
- export default _default;
1
+ /// <reference types="react" />
2
+ import { PickerOnChangeFn } from '../internal/pickers/hooks/useViews';
3
+ export interface ExportedYearPickerProps<TDate> {
4
+ /**
5
+ * Callback firing on year change @DateIOType.
6
+ */
7
+ onYearChange?: (date: TDate) => void;
8
+ /**
9
+ * Disable specific years dynamically.
10
+ * Works like `shouldDisableDate` but for year selection view @DateIOType.
11
+ */
12
+ shouldDisableYear?: (day: TDate) => boolean;
13
+ }
14
+ export declare type YearPickerClassKey = keyof NonNullable<YearPickerProps<any>['classes']>;
15
+ export interface YearPickerProps<TDate> extends ExportedYearPickerProps<TDate> {
16
+ autoFocus?: boolean;
17
+ className?: string;
18
+ classes?: {
19
+ /** Styles applied to the root element. */
20
+ root?: string;
21
+ };
22
+ date: TDate | null;
23
+ disableFuture?: boolean | null;
24
+ disablePast?: boolean | null;
25
+ isDateDisabled: (day: TDate) => boolean;
26
+ minDate: TDate;
27
+ maxDate: TDate;
28
+ onChange: PickerOnChangeFn<TDate>;
29
+ onFocusedDayChange?: (day: TDate) => void;
30
+ }
31
+ declare const _default: <TDate>(props: YearPickerProps<TDate>) => JSX.Element;
32
+ /**
33
+ *
34
+ * Demos:
35
+ *
36
+ * - [Date Picker](https://mui.com/components/date-picker/)
37
+ *
38
+ * API:
39
+ *
40
+ * - [YearPicker API](https://mui.com/api/year-picker/)
41
+ */
42
+ export default _default;
@@ -1,5 +1,5 @@
1
- export { default } from './YearPicker';
2
- export declare type YearPickerClassKey = import('./YearPicker').YearPickerClassKey;
3
- export declare type YearPickerProps<TDate> = import('./YearPicker').YearPickerProps<TDate>;
4
- export { default as yearPickerClasses } from './yearPickerClasses';
5
- export * from './yearPickerClasses';
1
+ export { default } from './YearPicker';
2
+ export declare type YearPickerClassKey = import('./YearPicker').YearPickerClassKey;
3
+ export declare type YearPickerProps<TDate> = import('./YearPicker').YearPickerProps<TDate>;
4
+ export { default as yearPickerClasses } from './yearPickerClasses';
5
+ export * from './yearPickerClasses';
@@ -1,3 +1,3 @@
1
- export declare function getYearPickerUtilityClass(slot: string): string;
2
- declare const yearPickerClasses: Record<"root", string>;
3
- export default yearPickerClasses;
1
+ export declare function getYearPickerUtilityClass(slot: string): string;
2
+ declare const yearPickerClasses: Record<"root", string>;
3
+ export default yearPickerClasses;
package/index.js CHANGED
@@ -1,4 +1,4 @@
1
- /** @license MUI v5.0.0-alpha.49
1
+ /** @license MUI v5.0.0-alpha.53
2
2
  *
3
3
  * This source code is licensed under the MIT license found in the
4
4
  * LICENSE file in the root directory of this source tree.
@@ -1,4 +1,4 @@
1
- import * as React from 'react';
2
- import { DateInputProps } from './PureDateInput';
3
- export declare const KeyboardDateInput: React.ForwardRefExoticComponent<DateInputProps<unknown, unknown> & React.RefAttributes<HTMLDivElement>>;
4
- export default KeyboardDateInput;
1
+ import * as React from 'react';
2
+ import { DateInputProps } from './PureDateInput';
3
+ export declare const KeyboardDateInput: React.ForwardRefExoticComponent<DateInputProps<unknown, unknown> & React.RefAttributes<HTMLDivElement>>;
4
+ export default KeyboardDateInput;
@@ -1,33 +1,33 @@
1
- import * as React from 'react';
2
- import { WrapperVariant } from '../wrappers/WrapperVariantContext';
3
- import { DateInputPropsLike } from '../wrappers/WrapperProps';
4
- import { PickerSelectionState } from '../hooks/usePickerState';
5
- import { BasePickerProps, CalendarAndClockProps } from '../typings/BasePicker';
6
- import { AllAvailableViews } from '../typings/Views';
7
- export interface ExportedPickerProps extends Omit<BasePickerProps<unknown, unknown>, 'value' | 'onChange'>, CalendarAndClockProps<unknown> {
8
- dateRangeIcon?: React.ReactNode;
9
- /**
10
- * First view to show.
11
- */
12
- openTo?: AllAvailableViews;
13
- timeIcon?: React.ReactNode;
14
- /**
15
- * Array of views to show.
16
- */
17
- views?: readonly AllAvailableViews[];
18
- }
19
- export interface PickerProps<TDateValue = any> extends ExportedPickerProps {
20
- autoFocus?: boolean;
21
- date: TDateValue;
22
- DateInputProps: DateInputPropsLike;
23
- isMobileKeyboardViewOpen: boolean;
24
- onDateChange: (date: TDateValue, currentWrapperVariant: WrapperVariant, isFinish?: PickerSelectionState) => void;
25
- toggleMobileKeyboardView: () => void;
26
- }
27
- export declare const MobileKeyboardInputView: import("@mui/system").StyledComponent<{
28
- theme?: import("@mui/material/styles").Theme | undefined;
29
- as?: React.ElementType<any> | undefined;
30
- sx?: import("@mui/system").SxProps<import("@mui/material/styles").Theme> | undefined;
31
- }, React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, {}>;
32
- declare function Picker(props: PickerProps): JSX.Element;
33
- export default Picker;
1
+ import * as React from 'react';
2
+ import { WrapperVariant } from '../wrappers/WrapperVariantContext';
3
+ import { DateInputPropsLike } from '../wrappers/WrapperProps';
4
+ import { PickerSelectionState } from '../hooks/usePickerState';
5
+ import { BasePickerProps, CalendarAndClockProps } from '../typings/BasePicker';
6
+ import { AllAvailableViews } from '../typings/Views';
7
+ export interface ExportedPickerProps<View extends AllAvailableViews> extends Omit<BasePickerProps<unknown, unknown>, 'value' | 'onChange'>, Omit<CalendarAndClockProps<unknown>, 'onViewChange' | 'openTo' | 'view'> {
8
+ dateRangeIcon?: React.ReactNode;
9
+ /**
10
+ * Callback fired on view change.
11
+ */
12
+ onViewChange?: (view: View) => void;
13
+ /**
14
+ * First view to show.
15
+ */
16
+ openTo: View;
17
+ timeIcon?: React.ReactNode;
18
+ /**
19
+ * Array of views to show.
20
+ */
21
+ views: readonly View[];
22
+ }
23
+ export interface PickerProps<View extends AllAvailableViews> extends ExportedPickerProps<View> {
24
+ autoFocus?: boolean;
25
+ date: any;
26
+ DateInputProps: DateInputPropsLike;
27
+ isMobileKeyboardViewOpen: boolean;
28
+ onDateChange: (date: any, currentWrapperVariant: WrapperVariant, isFinish?: PickerSelectionState) => void;
29
+ toggleMobileKeyboardView: () => void;
30
+ }
31
+ export declare const MobileKeyboardInputView: import("@emotion/styled").StyledComponent<import("@mui/system").MUIStyledCommonProps<import("@mui/material/styles").Theme>, React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, {}>;
32
+ declare function Picker<View extends AllAvailableViews>(props: PickerProps<View>): JSX.Element;
33
+ export default Picker;
@@ -1,6 +1,6 @@
1
1
  import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/esm/objectWithoutPropertiesLoose";
2
2
  import _extends from "@babel/runtime/helpers/esm/extends";
3
- const _excluded = ["autoFocus", "className", "date", "DateInputProps", "isMobileKeyboardViewOpen", "onDateChange", "openTo", "orientation", "showToolbar", "toggleMobileKeyboardView", "ToolbarComponent", "toolbarFormat", "toolbarPlaceholder", "toolbarTitle", "views"];
3
+ const _excluded = ["autoFocus", "className", "date", "DateInputProps", "isMobileKeyboardViewOpen", "onDateChange", "onViewChange", "openTo", "orientation", "showToolbar", "toggleMobileKeyboardView", "ToolbarComponent", "toolbarFormat", "toolbarPlaceholder", "toolbarTitle", "views"];
4
4
  import * as React from 'react';
5
5
  import { styled } from '@mui/material/styles';
6
6
  import { useViews } from '../hooks/useViews';
@@ -40,7 +40,8 @@ function Picker(props) {
40
40
  DateInputProps,
41
41
  isMobileKeyboardViewOpen,
42
42
  onDateChange,
43
- openTo = 'day',
43
+ onViewChange,
44
+ openTo,
44
45
  orientation,
45
46
  showToolbar,
46
47
  toggleMobileKeyboardView,
@@ -48,7 +49,7 @@ function Picker(props) {
48
49
  toolbarFormat,
49
50
  toolbarPlaceholder,
50
51
  toolbarTitle,
51
- views = ['year', 'month', 'day', 'hours', 'minutes', 'seconds']
52
+ views
52
53
  } = props,
53
54
  other = _objectWithoutPropertiesLoose(props, _excluded);
54
55
 
@@ -58,11 +59,15 @@ function Picker(props) {
58
59
  const handleDateChange = React.useCallback((newDate, selectionState) => {
59
60
  onDateChange(newDate, wrapperVariant, selectionState);
60
61
  }, [onDateChange, wrapperVariant]);
61
- const handleViewChange = React.useCallback(() => {
62
+ const handleViewChange = React.useCallback(newView => {
62
63
  if (isMobileKeyboardViewOpen) {
63
64
  toggleMobileKeyboardView();
64
65
  }
65
- }, [isMobileKeyboardViewOpen, toggleMobileKeyboardView]);
66
+
67
+ if (onViewChange) {
68
+ onViewChange(newView);
69
+ }
70
+ }, [isMobileKeyboardViewOpen, onViewChange, toggleMobileKeyboardView]);
66
71
  const {
67
72
  openView,
68
73
  nextView,
@@ -105,7 +110,8 @@ function Picker(props) {
105
110
  date: date,
106
111
  onViewChange: setOpenView,
107
112
  onChange: handleChangeAndOpenNext,
108
- view: openView,
113
+ view: openView // Unclear why the predicate `isDatePickerView` does not imply the casted type
114
+ ,
109
115
  views: views.filter(isDatePickerView)
110
116
  }, other)), isTimePickerView(openView) && /*#__PURE__*/_jsx(ClockPicker, _extends({}, other, {
111
117
  autoFocus: autoFocus,
@@ -1,7 +1,3 @@
1
- /// <reference types="react" />
2
- declare const PickerView: import("@mui/system").StyledComponent<{
3
- theme?: import("@mui/material/styles").Theme | undefined;
4
- as?: import("react").ElementType<any> | undefined;
5
- sx?: import("@mui/system").SxProps<import("@mui/material/styles").Theme> | undefined;
6
- }, import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, {}>;
7
- export default PickerView;
1
+ /// <reference types="react" />
2
+ declare const PickerView: import("@emotion/styled").StyledComponent<import("@mui/system").MUIStyledCommonProps<import("@mui/material/styles").Theme>, import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, {}>;
3
+ export default PickerView;
@@ -1,41 +1,41 @@
1
- import * as React from 'react';
2
- export interface ExportedArrowSwitcherProps {
3
- /**
4
- * The components used for each slot.
5
- * Either a string to use a HTML element or a component.
6
- * @default {}
7
- */
8
- components?: {
9
- LeftArrowButton?: React.ElementType;
10
- LeftArrowIcon?: React.ElementType;
11
- RightArrowButton?: React.ElementType;
12
- RightArrowIcon?: React.ElementType;
13
- };
14
- /**
15
- * The props used for each slot inside.
16
- * @default {}
17
- */
18
- componentsProps?: {
19
- leftArrowButton?: Record<string, any>;
20
- rightArrowButton?: Record<string, any>;
21
- };
22
- /**
23
- * Left arrow icon aria-label text.
24
- */
25
- leftArrowButtonText?: string;
26
- /**
27
- * Right arrow icon aria-label text.
28
- */
29
- rightArrowButtonText?: string;
30
- }
31
- interface ArrowSwitcherProps extends ExportedArrowSwitcherProps, React.HTMLProps<HTMLDivElement> {
32
- children?: React.ReactNode;
33
- isLeftDisabled: boolean;
34
- isLeftHidden?: boolean;
35
- isRightDisabled: boolean;
36
- isRightHidden?: boolean;
37
- onLeftClick: () => void;
38
- onRightClick: () => void;
39
- }
40
- declare const PickersArrowSwitcher: React.ForwardRefExoticComponent<Pick<Omit<ArrowSwitcherProps, "as">, "cite" | "data" | "form" | "label" | "slot" | "span" | "style" | "summary" | "title" | "pattern" | "hidden" | "selected" | "color" | "width" | "height" | "content" | "translate" | "className" | "key" | "defaultChecked" | "defaultValue" | "suppressContentEditableWarning" | "suppressHydrationWarning" | "accessKey" | "contentEditable" | "contextMenu" | "dir" | "draggable" | "id" | "lang" | "placeholder" | "spellCheck" | "tabIndex" | "radioGroup" | "role" | "about" | "datatype" | "inlist" | "prefix" | "property" | "resource" | "typeof" | "vocab" | "autoCapitalize" | "autoCorrect" | "autoSave" | "itemProp" | "itemScope" | "itemType" | "itemID" | "itemRef" | "results" | "security" | "unselectable" | "inputMode" | "is" | "aria-activedescendant" | "aria-atomic" | "aria-autocomplete" | "aria-busy" | "aria-checked" | "aria-colcount" | "aria-colindex" | "aria-colspan" | "aria-controls" | "aria-current" | "aria-describedby" | "aria-details" | "aria-disabled" | "aria-dropeffect" | "aria-errormessage" | "aria-expanded" | "aria-flowto" | "aria-grabbed" | "aria-haspopup" | "aria-hidden" | "aria-invalid" | "aria-keyshortcuts" | "aria-label" | "aria-labelledby" | "aria-level" | "aria-live" | "aria-modal" | "aria-multiline" | "aria-multiselectable" | "aria-orientation" | "aria-owns" | "aria-placeholder" | "aria-posinset" | "aria-pressed" | "aria-readonly" | "aria-relevant" | "aria-required" | "aria-roledescription" | "aria-rowcount" | "aria-rowindex" | "aria-rowspan" | "aria-selected" | "aria-setsize" | "aria-sort" | "aria-valuemax" | "aria-valuemin" | "aria-valuenow" | "aria-valuetext" | "children" | "dangerouslySetInnerHTML" | "onCopy" | "onCopyCapture" | "onCut" | "onCutCapture" | "onPaste" | "onPasteCapture" | "onCompositionEnd" | "onCompositionEndCapture" | "onCompositionStart" | "onCompositionStartCapture" | "onCompositionUpdate" | "onCompositionUpdateCapture" | "onFocus" | "onFocusCapture" | "onBlur" | "onBlurCapture" | "onChange" | "onChangeCapture" | "onBeforeInput" | "onBeforeInputCapture" | "onInput" | "onInputCapture" | "onReset" | "onResetCapture" | "onSubmit" | "onSubmitCapture" | "onInvalid" | "onInvalidCapture" | "onLoad" | "onLoadCapture" | "onError" | "onErrorCapture" | "onKeyDown" | "onKeyDownCapture" | "onKeyPress" | "onKeyPressCapture" | "onKeyUp" | "onKeyUpCapture" | "onAbort" | "onAbortCapture" | "onCanPlay" | "onCanPlayCapture" | "onCanPlayThrough" | "onCanPlayThroughCapture" | "onDurationChange" | "onDurationChangeCapture" | "onEmptied" | "onEmptiedCapture" | "onEncrypted" | "onEncryptedCapture" | "onEnded" | "onEndedCapture" | "onLoadedData" | "onLoadedDataCapture" | "onLoadedMetadata" | "onLoadedMetadataCapture" | "onLoadStart" | "onLoadStartCapture" | "onPause" | "onPauseCapture" | "onPlay" | "onPlayCapture" | "onPlaying" | "onPlayingCapture" | "onProgress" | "onProgressCapture" | "onRateChange" | "onRateChangeCapture" | "onSeeked" | "onSeekedCapture" | "onSeeking" | "onSeekingCapture" | "onStalled" | "onStalledCapture" | "onSuspend" | "onSuspendCapture" | "onTimeUpdate" | "onTimeUpdateCapture" | "onVolumeChange" | "onVolumeChangeCapture" | "onWaiting" | "onWaitingCapture" | "onAuxClick" | "onAuxClickCapture" | "onClick" | "onClickCapture" | "onContextMenu" | "onContextMenuCapture" | "onDoubleClick" | "onDoubleClickCapture" | "onDrag" | "onDragCapture" | "onDragEnd" | "onDragEndCapture" | "onDragEnter" | "onDragEnterCapture" | "onDragExit" | "onDragExitCapture" | "onDragLeave" | "onDragLeaveCapture" | "onDragOver" | "onDragOverCapture" | "onDragStart" | "onDragStartCapture" | "onDrop" | "onDropCapture" | "onMouseDown" | "onMouseDownCapture" | "onMouseEnter" | "onMouseLeave" | "onMouseMove" | "onMouseMoveCapture" | "onMouseOut" | "onMouseOutCapture" | "onMouseOver" | "onMouseOverCapture" | "onMouseUp" | "onMouseUpCapture" | "onSelect" | "onSelectCapture" | "onTouchCancel" | "onTouchCancelCapture" | "onTouchEnd" | "onTouchEndCapture" | "onTouchMove" | "onTouchMoveCapture" | "onTouchStart" | "onTouchStartCapture" | "onPointerDown" | "onPointerDownCapture" | "onPointerMove" | "onPointerMoveCapture" | "onPointerUp" | "onPointerUpCapture" | "onPointerCancel" | "onPointerCancelCapture" | "onPointerEnter" | "onPointerEnterCapture" | "onPointerLeave" | "onPointerLeaveCapture" | "onPointerOver" | "onPointerOverCapture" | "onPointerOut" | "onPointerOutCapture" | "onGotPointerCapture" | "onGotPointerCaptureCapture" | "onLostPointerCapture" | "onLostPointerCaptureCapture" | "onScroll" | "onScrollCapture" | "onWheel" | "onWheelCapture" | "onAnimationStart" | "onAnimationStartCapture" | "onAnimationEnd" | "onAnimationEndCapture" | "onAnimationIteration" | "onAnimationIterationCapture" | "onTransitionEnd" | "onTransitionEndCapture" | "list" | "disabled" | "step" | "start" | "size" | "default" | "wrap" | "open" | "multiple" | "value" | "name" | "components" | "componentsProps" | "leftArrowButtonText" | "rightArrowButtonText" | "action" | "autoFocus" | "formAction" | "formEncType" | "formMethod" | "formNoValidate" | "formTarget" | "type" | "download" | "href" | "hrefLang" | "media" | "rel" | "target" | "max" | "method" | "min" | "crossOrigin" | "classID" | "useMap" | "wmode" | "alt" | "coords" | "shape" | "autoPlay" | "controls" | "loop" | "mediaGroup" | "muted" | "playsInline" | "preload" | "src" | "dateTime" | "acceptCharset" | "autoComplete" | "encType" | "noValidate" | "manifest" | "allowFullScreen" | "allowTransparency" | "frameBorder" | "marginHeight" | "marginWidth" | "sandbox" | "scrolling" | "seamless" | "srcDoc" | "sizes" | "srcSet" | "accept" | "capture" | "checked" | "maxLength" | "minLength" | "readOnly" | "required" | "challenge" | "keyType" | "keyParams" | "htmlFor" | "integrity" | "charSet" | "httpEquiv" | "high" | "low" | "optimum" | "reversed" | "async" | "defer" | "nonce" | "scoped" | "cellPadding" | "cellSpacing" | "colSpan" | "headers" | "rowSpan" | "scope" | "cols" | "rows" | "kind" | "srcLang" | "poster" | "isLeftDisabled" | "isLeftHidden" | "isRightDisabled" | "isRightHidden" | "onLeftClick" | "onRightClick"> & React.RefAttributes<HTMLDivElement>>;
41
- export default PickersArrowSwitcher;
1
+ import * as React from 'react';
2
+ export interface ExportedArrowSwitcherProps {
3
+ /**
4
+ * The components used for each slot.
5
+ * Either a string to use a HTML element or a component.
6
+ * @default {}
7
+ */
8
+ components?: {
9
+ LeftArrowButton?: React.ElementType;
10
+ LeftArrowIcon?: React.ElementType;
11
+ RightArrowButton?: React.ElementType;
12
+ RightArrowIcon?: React.ElementType;
13
+ };
14
+ /**
15
+ * The props used for each slot inside.
16
+ * @default {}
17
+ */
18
+ componentsProps?: {
19
+ leftArrowButton?: Record<string, any>;
20
+ rightArrowButton?: Record<string, any>;
21
+ };
22
+ /**
23
+ * Left arrow icon aria-label text.
24
+ */
25
+ leftArrowButtonText?: string;
26
+ /**
27
+ * Right arrow icon aria-label text.
28
+ */
29
+ rightArrowButtonText?: string;
30
+ }
31
+ interface ArrowSwitcherProps extends ExportedArrowSwitcherProps, Omit<React.HTMLProps<HTMLDivElement>, 'ref'> {
32
+ children?: React.ReactNode;
33
+ isLeftDisabled: boolean;
34
+ isLeftHidden?: boolean;
35
+ isRightDisabled: boolean;
36
+ isRightHidden?: boolean;
37
+ onLeftClick: () => void;
38
+ onRightClick: () => void;
39
+ }
40
+ declare const PickersArrowSwitcher: React.ForwardRefExoticComponent<Omit<ArrowSwitcherProps, "as"> & React.RefAttributes<HTMLDivElement>>;
41
+ export default PickersArrowSwitcher;
@@ -9,9 +9,7 @@ import ArrowLeftIcon from '../svg-icons/ArrowLeft';
9
9
  import ArrowRightIcon from '../svg-icons/ArrowRight';
10
10
  import { jsx as _jsx } from "react/jsx-runtime";
11
11
  import { jsxs as _jsxs } from "react/jsx-runtime";
12
- const PickersArrowSwitcherRoot = styled('div', {
13
- skipSx: true
14
- })({
12
+ const PickersArrowSwitcherRoot = styled('div')({
15
13
  display: 'flex'
16
14
  });
17
15
  const PickersArrowSwitcherSpacer = styled('div', {
@@ -1,47 +1,47 @@
1
- import * as React from 'react';
2
- import { DialogProps as MuiDialogProps } from '@mui/material/Dialog';
3
- export interface ExportedPickerModalProps {
4
- /**
5
- * Ok button text.
6
- * @default 'OK'
7
- */
8
- okText?: React.ReactNode;
9
- /**
10
- * Cancel text message.
11
- * @default 'Cancel'
12
- */
13
- cancelText?: React.ReactNode;
14
- /**
15
- * Clear text message.
16
- * @default 'Clear'
17
- */
18
- clearText?: React.ReactNode;
19
- /**
20
- * Today text message.
21
- * @default 'Today'
22
- */
23
- todayText?: React.ReactNode;
24
- /**
25
- * If `true`, it shows the clear action in the picker dialog.
26
- * @default false
27
- */
28
- clearable?: boolean;
29
- /**
30
- * If `true`, the today button is displayed. **Note** that `showClearButton` has a higher priority.
31
- * @default false
32
- */
33
- showTodayButton?: boolean;
34
- /**
35
- * Props applied to the [`Dialog`](/api/dialog/) element.
36
- */
37
- DialogProps?: Partial<MuiDialogProps>;
38
- }
39
- export interface PickersModalDialogProps extends ExportedPickerModalProps {
40
- onAccept: () => void;
41
- onClear: () => void;
42
- onDismiss: () => void;
43
- onSetToday: () => void;
44
- open: boolean;
45
- }
46
- declare const PickersModalDialog: (props: React.PropsWithChildren<PickersModalDialogProps>) => JSX.Element;
47
- export default PickersModalDialog;
1
+ import * as React from 'react';
2
+ import { DialogProps as MuiDialogProps } from '@mui/material/Dialog';
3
+ export interface ExportedPickerModalProps {
4
+ /**
5
+ * Ok button text.
6
+ * @default 'OK'
7
+ */
8
+ okText?: React.ReactNode;
9
+ /**
10
+ * Cancel text message.
11
+ * @default 'Cancel'
12
+ */
13
+ cancelText?: React.ReactNode;
14
+ /**
15
+ * Clear text message.
16
+ * @default 'Clear'
17
+ */
18
+ clearText?: React.ReactNode;
19
+ /**
20
+ * Today text message.
21
+ * @default 'Today'
22
+ */
23
+ todayText?: React.ReactNode;
24
+ /**
25
+ * If `true`, it shows the clear action in the picker dialog.
26
+ * @default false
27
+ */
28
+ clearable?: boolean;
29
+ /**
30
+ * If `true`, the today button is displayed. **Note** that `showClearButton` has a higher priority.
31
+ * @default false
32
+ */
33
+ showTodayButton?: boolean;
34
+ /**
35
+ * Props applied to the [`Dialog`](/api/dialog/) element.
36
+ */
37
+ DialogProps?: Partial<MuiDialogProps>;
38
+ }
39
+ export interface PickersModalDialogProps extends ExportedPickerModalProps {
40
+ onAccept: () => void;
41
+ onClear: () => void;
42
+ onDismiss: () => void;
43
+ onSetToday: () => void;
44
+ open: boolean;
45
+ }
46
+ declare const PickersModalDialog: (props: React.PropsWithChildren<PickersModalDialogProps>) => JSX.Element;
47
+ export default PickersModalDialog;
@@ -1,25 +1,33 @@
1
- import * as React from 'react';
2
- import { PaperProps as MuiPaperProps } from '@mui/material/Paper';
3
- import { PopperProps as MuiPopperProps } from '@mui/material/Popper';
4
- import { TrapFocusProps as MuiTrapFocusProps } from '@mui/material/Unstable_TrapFocus';
5
- import { TransitionProps as MuiTransitionProps } from '@mui/material/transitions';
6
- export interface ExportedPickerPopperProps {
7
- /**
8
- * Popper props passed down to [Popper](https://mui.com/api/popper/) component.
9
- */
10
- PopperProps?: Partial<MuiPopperProps>;
11
- /**
12
- * Custom component for popper [Transition](https://mui.com/components/transitions/#transitioncomponent-prop).
13
- */
14
- TransitionComponent?: React.JSXElementConstructor<MuiTransitionProps>;
15
- }
16
- export interface PickerPopperProps extends ExportedPickerPopperProps, MuiPaperProps {
17
- role: 'tooltip' | 'dialog';
18
- TrapFocusProps?: Partial<MuiTrapFocusProps>;
19
- anchorEl: MuiPopperProps['anchorEl'];
20
- open: MuiPopperProps['open'];
21
- containerRef?: React.Ref<HTMLDivElement>;
22
- onClose: () => void;
23
- }
24
- declare const PickersPopper: (props: PickerPopperProps) => JSX.Element;
25
- export default PickersPopper;
1
+ import * as React from 'react';
2
+ import { PaperProps as MuiPaperProps } from '@mui/material/Paper';
3
+ import { PopperProps as MuiPopperProps } from '@mui/material/Popper';
4
+ import { TrapFocusProps as MuiTrapFocusProps } from '@mui/material/Unstable_TrapFocus';
5
+ import { TransitionProps as MuiTransitionProps } from '@mui/material/transitions';
6
+ export interface ExportedPickerPaperProps {
7
+ /**
8
+ * Paper props passed down to [Paper](https://mui.com/api/paper/) component.
9
+ */
10
+ PaperProps?: Partial<MuiPaperProps>;
11
+ }
12
+ export interface ExportedPickerPopperProps {
13
+ /**
14
+ * Popper props passed down to [Popper](https://mui.com/api/popper/) component.
15
+ */
16
+ PopperProps?: Partial<MuiPopperProps>;
17
+ /**
18
+ * Custom component for popper [Transition](https://mui.com/components/transitions/#transitioncomponent-prop).
19
+ */
20
+ TransitionComponent?: React.JSXElementConstructor<MuiTransitionProps>;
21
+ }
22
+ export interface PickerPopperProps extends ExportedPickerPopperProps, ExportedPickerPaperProps {
23
+ role: 'tooltip' | 'dialog';
24
+ TrapFocusProps?: Partial<MuiTrapFocusProps>;
25
+ anchorEl: MuiPopperProps['anchorEl'];
26
+ open: MuiPopperProps['open'];
27
+ containerRef?: React.Ref<HTMLDivElement>;
28
+ children?: React.ReactNode;
29
+ onClose: () => void;
30
+ onBlur?: () => void;
31
+ }
32
+ declare const PickersPopper: (props: PickerPopperProps) => JSX.Element;
33
+ export default PickersPopper;
@@ -1,4 +1,6 @@
1
+ import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/esm/objectWithoutPropertiesLoose";
1
2
  import _extends from "@babel/runtime/helpers/esm/extends";
3
+ const _excluded = ["onClick", "onTouchStart"];
2
4
  import * as React from 'react';
3
5
  import Grow from '@mui/material/Grow';
4
6
  import Paper from '@mui/material/Paper';
@@ -80,7 +82,8 @@ function useClickAwayListener(active, onClickAway) {
80
82
  // 2. The child might render null.
81
83
  // 3. Behave like a blur listener.
82
84
 
83
- if (!nodeRef.current || 'clientX' in event && clickedRootScrollbar(event, doc)) {
85
+ if (!nodeRef.current || // is a TouchEvent?
86
+ 'clientX' in event && clickedRootScrollbar(event, doc)) {
84
87
  return;
85
88
  } // Do not act if user performed touchmove
86
89
 
@@ -155,7 +158,8 @@ const PickersPopper = props => {
155
158
  PopperProps,
156
159
  role,
157
160
  TransitionComponent = Grow,
158
- TrapFocusProps
161
+ TrapFocusProps,
162
+ PaperProps = {}
159
163
  } = props;
160
164
  React.useEffect(() => {
161
165
  function handleKeyDown(nativeEvent) {
@@ -187,6 +191,13 @@ const PickersPopper = props => {
187
191
  const handleRef = useForkRef(paperRef, containerRef);
188
192
  const handlePaperRef = useForkRef(handleRef, clickAwayRef);
189
193
  const ownerState = props;
194
+
195
+ const {
196
+ onClick: onPaperClickProp,
197
+ onTouchStart: onPaperTouchStartProp
198
+ } = PaperProps,
199
+ otherPaperProps = _objectWithoutPropertiesLoose(PaperProps, _excluded);
200
+
190
201
  return /*#__PURE__*/_jsx(PickersPopperRoot, _extends({
191
202
  transition: true,
192
203
  role: role,
@@ -204,17 +215,30 @@ const PickersPopper = props => {
204
215
  isEnabled: () => true
205
216
  }, TrapFocusProps, {
206
217
  children: /*#__PURE__*/_jsx(TransitionComponent, _extends({}, TransitionProps, {
207
- children: /*#__PURE__*/_jsx(PickersPopperPaper, {
218
+ children: /*#__PURE__*/_jsx(PickersPopperPaper, _extends({
208
219
  tabIndex: -1,
209
220
  elevation: 8,
210
221
  ref: handlePaperRef,
211
- onClick: onPaperClick,
212
- onTouchStart: onPaperTouchStart,
222
+ onClick: event => {
223
+ onPaperClick(event);
224
+
225
+ if (onPaperClickProp) {
226
+ onPaperClickProp(event);
227
+ }
228
+ },
229
+ onTouchStart: event => {
230
+ onPaperTouchStart(event);
231
+
232
+ if (onPaperTouchStartProp) {
233
+ onPaperTouchStartProp(event);
234
+ }
235
+ },
213
236
  ownerState: _extends({}, ownerState, {
214
237
  placement
215
- }),
238
+ })
239
+ }, otherPaperProps, {
216
240
  children: children
217
- })
241
+ }))
218
242
  }))
219
243
  }))
220
244
  }));
@@ -1,14 +1,14 @@
1
- import * as React from 'react';
2
- import { ToolbarComponentProps } from './typings/BasePicker';
3
- export interface PickersToolbarProps extends Pick<ToolbarComponentProps, 'getMobileKeyboardInputViewButtonText' | 'isMobileKeyboardViewOpen' | 'toggleMobileKeyboardView'> {
4
- className?: string;
5
- viewType?: 'calendar' | 'clock';
6
- isLandscape: boolean;
7
- landscapeDirection?: 'row' | 'column';
8
- penIconClassName?: string;
9
- toolbarTitle: React.ReactNode;
10
- }
11
- declare const PickersToolbar: React.ForwardRefExoticComponent<PickersToolbarProps & {
12
- children?: React.ReactNode;
13
- } & React.RefAttributes<HTMLDivElement>>;
14
- export default PickersToolbar;
1
+ import * as React from 'react';
2
+ import { ToolbarComponentProps } from './typings/BasePicker';
3
+ export interface PickersToolbarProps extends Pick<ToolbarComponentProps, 'getMobileKeyboardInputViewButtonText' | 'isMobileKeyboardViewOpen' | 'toggleMobileKeyboardView'> {
4
+ className?: string;
5
+ viewType?: 'calendar' | 'clock';
6
+ isLandscape: boolean;
7
+ landscapeDirection?: 'row' | 'column';
8
+ penIconClassName?: string;
9
+ toolbarTitle: React.ReactNode;
10
+ }
11
+ declare const PickersToolbar: React.ForwardRefExoticComponent<PickersToolbarProps & {
12
+ children?: React.ReactNode;
13
+ } & React.RefAttributes<HTMLDivElement>>;
14
+ export default PickersToolbar;