@mui/lab 5.0.0-alpha.54 → 5.0.0-alpha.58

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 (328) 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 +257 -10
  6. package/CalendarPicker/CalendarPicker.d.ts +106 -106
  7. package/CalendarPicker/CalendarPicker.js +1 -1
  8. package/CalendarPicker/PickersCalendar.d.ts +47 -47
  9. package/CalendarPicker/PickersCalendarHeader.d.ts +43 -43
  10. package/CalendarPicker/PickersFadeTransitionGroup.d.ts +12 -12
  11. package/CalendarPicker/PickersFadeTransitionGroup.js +1 -1
  12. package/CalendarPicker/PickersSlideTransition.d.ts +16 -16
  13. package/CalendarPicker/PickersSlideTransition.js +1 -1
  14. package/CalendarPicker/index.d.ts +5 -5
  15. package/CalendarPicker/shared.d.ts +1 -1
  16. package/CalendarPicker/useCalendarState.d.ts +32 -32
  17. package/CalendarPickerSkeleton/CalendarPickerSkeleton.d.ts +41 -41
  18. package/CalendarPickerSkeleton/CalendarPickerSkeleton.js +1 -1
  19. package/CalendarPickerSkeleton/index.d.ts +3 -3
  20. package/ClockPicker/Clock.d.ts +28 -28
  21. package/ClockPicker/ClockNumber.d.ts +19 -19
  22. package/ClockPicker/ClockNumber.js +1 -1
  23. package/ClockPicker/ClockNumbers.d.ts +24 -24
  24. package/ClockPicker/ClockPicker.d.ts +121 -121
  25. package/ClockPicker/ClockPicker.js +1 -1
  26. package/ClockPicker/ClockPickerStandalone.d.ts +28 -28
  27. package/ClockPicker/ClockPointer.d.ts +23 -23
  28. package/ClockPicker/index.d.ts +5 -5
  29. package/ClockPicker/shared.d.ts +5 -5
  30. package/DatePicker/DatePicker.d.ts +27 -27
  31. package/DatePicker/DatePickerToolbar.d.ts +23 -23
  32. package/DatePicker/DatePickerToolbar.js +1 -1
  33. package/DatePicker/index.d.ts +2 -2
  34. package/DatePicker/shared.d.ts +45 -45
  35. package/DateRangePicker/DateRangePicker.d.ts +65 -65
  36. package/DateRangePicker/DateRangePickerInput.d.ts +35 -35
  37. package/DateRangePicker/DateRangePickerToolbar.d.ts +15 -15
  38. package/DateRangePicker/DateRangePickerToolbar.js +1 -1
  39. package/DateRangePicker/DateRangePickerView.d.ts +44 -44
  40. package/DateRangePicker/DateRangePickerViewDesktop.d.ts +29 -29
  41. package/DateRangePicker/DateRangePickerViewMobile.d.ts +17 -17
  42. package/DateRangePicker/RangeTypes.d.ts +8 -8
  43. package/DateRangePicker/date-range-manager.d.ts +14 -14
  44. package/DateRangePicker/index.d.ts +3 -3
  45. package/DateRangePickerDay/DateRangePickerDay.d.ts +79 -79
  46. package/DateRangePickerDay/DateRangePickerDay.js +1 -1
  47. package/DateRangePickerDay/index.d.ts +2 -2
  48. package/DateTimePicker/DateTimePicker.d.ts +27 -27
  49. package/DateTimePicker/DateTimePickerTabs.d.ts +13 -13
  50. package/DateTimePicker/DateTimePickerToolbar.d.ts +7 -7
  51. package/DateTimePicker/DateTimePickerToolbar.js +1 -1
  52. package/DateTimePicker/index.d.ts +2 -2
  53. package/DateTimePicker/shared.d.ts +67 -67
  54. package/DesktopDatePicker/DesktopDatePicker.d.ts +20 -20
  55. package/DesktopDatePicker/index.d.ts +2 -2
  56. package/DesktopDateRangePicker/DesktopDateRangePicker.d.ts +64 -64
  57. package/DesktopDateRangePicker/index.d.ts +2 -2
  58. package/DesktopDateTimePicker/DesktopDateTimePicker.d.ts +20 -20
  59. package/DesktopDateTimePicker/index.d.ts +2 -2
  60. package/DesktopTimePicker/DesktopTimePicker.d.ts +20 -20
  61. package/DesktopTimePicker/index.d.ts +2 -2
  62. package/LoadingButton/LoadingButton.js +20 -7
  63. package/LoadingButton/loadingButtonClasses.d.ts +22 -22
  64. package/LoadingButton/loadingButtonClasses.js +1 -1
  65. package/LocalizationProvider/LocalizationProvider.d.ts +35 -35
  66. package/LocalizationProvider/index.d.ts +2 -2
  67. package/Masonry/Masonry.js +73 -51
  68. package/Masonry/masonryClasses.d.ts +8 -8
  69. package/Masonry/masonryClasses.js +1 -1
  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/index.d.ts +2 -2
  78. package/MonthPicker/MonthPicker.d.ts +53 -53
  79. package/MonthPicker/MonthPicker.js +3 -2
  80. package/MonthPicker/PickersMonth.d.ts +15 -15
  81. package/MonthPicker/PickersMonth.js +19 -14
  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/index.d.ts +2 -2
  94. package/TabPanel/TabPanel.js +1 -1
  95. package/TabPanel/tabPanelClasses.d.ts +8 -8
  96. package/TabPanel/tabPanelClasses.js +1 -1
  97. package/TimePicker/TimePicker.d.ts +27 -27
  98. package/TimePicker/TimePickerToolbar.d.ts +23 -23
  99. package/TimePicker/TimePickerToolbar.js +1 -1
  100. package/TimePicker/index.d.ts +2 -2
  101. package/TimePicker/shared.d.ts +36 -36
  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/Timeline/timelineClasses.js +1 -1
  108. package/TimelineConnector/TimelineConnector.js +1 -1
  109. package/TimelineConnector/timelineConnectorClasses.d.ts +8 -8
  110. package/TimelineConnector/timelineConnectorClasses.js +1 -1
  111. package/TimelineContent/TimelineContent.js +1 -1
  112. package/TimelineContent/timelineContentClasses.d.ts +14 -14
  113. package/TimelineContent/timelineContentClasses.js +1 -1
  114. package/TimelineDot/TimelineDot.js +1 -1
  115. package/TimelineDot/timelineDotClasses.d.ts +24 -24
  116. package/TimelineDot/timelineDotClasses.js +1 -1
  117. package/TimelineItem/TimelineItem.js +1 -1
  118. package/TimelineItem/timelineItemClasses.d.ts +16 -16
  119. package/TimelineItem/timelineItemClasses.js +1 -1
  120. package/TimelineOppositeContent/TimelineOppositeContent.js +1 -1
  121. package/TimelineOppositeContent/timelineOppositeContentClasses.d.ts +14 -14
  122. package/TimelineOppositeContent/timelineOppositeContentClasses.js +1 -1
  123. package/TimelineSeparator/TimelineSeparator.js +1 -1
  124. package/TimelineSeparator/timelineSeparatorClasses.d.ts +8 -8
  125. package/TimelineSeparator/timelineSeparatorClasses.js +1 -1
  126. package/TreeItem/TreeItem.js +1 -1
  127. package/TreeItem/treeItemClasses.d.ts +24 -24
  128. package/TreeItem/treeItemClasses.js +1 -1
  129. package/TreeView/TreeView.js +1 -1
  130. package/TreeView/treeViewClasses.d.ts +8 -8
  131. package/TreeView/treeViewClasses.js +1 -1
  132. package/YearPicker/PickersYear.d.ts +28 -28
  133. package/YearPicker/PickersYear.js +2 -2
  134. package/YearPicker/YearPicker.d.ts +44 -44
  135. package/YearPicker/YearPicker.js +1 -1
  136. package/YearPicker/index.d.ts +5 -5
  137. package/YearPicker/yearPickerClasses.d.ts +3 -3
  138. package/YearPicker/yearPickerClasses.js +1 -1
  139. package/index.d.ts +3 -0
  140. package/index.js +4 -2
  141. package/internal/pickers/KeyboardDateInput.d.ts +4 -4
  142. package/internal/pickers/Picker/Picker.d.ts +33 -33
  143. package/internal/pickers/Picker/PickerView.d.ts +3 -3
  144. package/internal/pickers/PickersArrowSwitcher.d.ts +41 -41
  145. package/internal/pickers/PickersModalDialog.d.ts +47 -47
  146. package/internal/pickers/PickersPopper.d.ts +33 -33
  147. package/internal/pickers/PickersToolbar.d.ts +14 -14
  148. package/internal/pickers/PickersToolbar.js +1 -1
  149. package/internal/pickers/PickersToolbarButton.d.ts +13 -13
  150. package/internal/pickers/PickersToolbarText.d.ts +8 -8
  151. package/internal/pickers/PickersToolbarText.js +1 -1
  152. package/internal/pickers/PureDateInput.d.ts +80 -80
  153. package/internal/pickers/constants/dimensions.d.ts +4 -4
  154. package/internal/pickers/constants/prop-types.d.ts +1 -1
  155. package/internal/pickers/date-time-utils.d.ts +8 -8
  156. package/internal/pickers/date-utils.d.ts +52 -52
  157. package/internal/pickers/hooks/date-helpers-hooks.d.ts +16 -16
  158. package/internal/pickers/hooks/useIsLandscape.d.ts +4 -4
  159. package/internal/pickers/hooks/useMaskedInput.d.ts +7 -7
  160. package/internal/pickers/hooks/useOpenState.d.ts +10 -10
  161. package/internal/pickers/hooks/usePickerState.d.ts +38 -38
  162. package/internal/pickers/hooks/useUtils.d.ts +7 -7
  163. package/internal/pickers/hooks/useValidation.d.ts +23 -23
  164. package/internal/pickers/hooks/useViews.d.ts +19 -19
  165. package/internal/pickers/test-utils.js +14 -6
  166. package/internal/pickers/text-field-helper.d.ts +11 -11
  167. package/internal/pickers/time-utils.d.ts +33 -33
  168. package/internal/pickers/typings/BasePicker.d.ts +95 -95
  169. package/internal/pickers/typings/Views.d.ts +1 -1
  170. package/internal/pickers/typings/helpers.d.ts +9 -9
  171. package/internal/pickers/utils.d.ts +7 -7
  172. package/internal/pickers/wrappers/DesktopTooltipWrapper.d.ts +4 -4
  173. package/internal/pickers/wrappers/DesktopWrapper.d.ts +16 -16
  174. package/internal/pickers/wrappers/MobileWrapper.d.ts +14 -14
  175. package/internal/pickers/wrappers/ResponsiveWrapper.d.ts +23 -23
  176. package/internal/pickers/wrappers/StaticWrapper.d.ts +10 -10
  177. package/internal/pickers/wrappers/WrapperProps.d.ts +13 -13
  178. package/internal/pickers/wrappers/WrapperVariantContext.d.ts +11 -11
  179. package/internal/svg-icons/ArrowDropDown.d.ts +7 -7
  180. package/internal/svg-icons/ArrowLeft.d.ts +7 -7
  181. package/internal/svg-icons/ArrowRight.d.ts +7 -7
  182. package/internal/svg-icons/Calendar.d.ts +7 -7
  183. package/internal/svg-icons/Clock.d.ts +7 -7
  184. package/internal/svg-icons/DateRange.d.ts +7 -7
  185. package/internal/svg-icons/Pen.d.ts +7 -7
  186. package/internal/svg-icons/Time.d.ts +7 -7
  187. package/legacy/CalendarPicker/CalendarPicker.js +1 -1
  188. package/legacy/CalendarPicker/PickersFadeTransitionGroup.js +1 -1
  189. package/legacy/CalendarPicker/PickersSlideTransition.js +1 -1
  190. package/legacy/CalendarPickerSkeleton/CalendarPickerSkeleton.js +1 -1
  191. package/legacy/ClockPicker/ClockNumber.js +1 -1
  192. package/legacy/ClockPicker/ClockPicker.js +1 -1
  193. package/legacy/DatePicker/DatePickerToolbar.js +1 -1
  194. package/legacy/DateRangePicker/DateRangePickerToolbar.js +1 -1
  195. package/legacy/DateRangePickerDay/DateRangePickerDay.js +1 -1
  196. package/legacy/DateTimePicker/DateTimePickerToolbar.js +1 -1
  197. package/legacy/LoadingButton/LoadingButton.js +20 -6
  198. package/legacy/LoadingButton/loadingButtonClasses.js +1 -1
  199. package/legacy/Masonry/Masonry.js +73 -49
  200. package/legacy/Masonry/masonryClasses.js +1 -1
  201. package/legacy/MonthPicker/MonthPicker.js +3 -2
  202. package/legacy/MonthPicker/PickersMonth.js +20 -15
  203. package/legacy/PickersDay/PickersDay.js +1 -1
  204. package/legacy/TabPanel/TabPanel.js +1 -1
  205. package/legacy/TabPanel/tabPanelClasses.js +1 -1
  206. package/legacy/TimePicker/TimePickerToolbar.js +1 -1
  207. package/legacy/Timeline/Timeline.js +1 -1
  208. package/legacy/Timeline/timelineClasses.js +1 -1
  209. package/legacy/TimelineConnector/TimelineConnector.js +1 -1
  210. package/legacy/TimelineConnector/timelineConnectorClasses.js +1 -1
  211. package/legacy/TimelineContent/TimelineContent.js +1 -1
  212. package/legacy/TimelineContent/timelineContentClasses.js +1 -1
  213. package/legacy/TimelineDot/TimelineDot.js +1 -1
  214. package/legacy/TimelineDot/timelineDotClasses.js +1 -1
  215. package/legacy/TimelineItem/TimelineItem.js +1 -1
  216. package/legacy/TimelineItem/timelineItemClasses.js +1 -1
  217. package/legacy/TimelineOppositeContent/TimelineOppositeContent.js +1 -1
  218. package/legacy/TimelineOppositeContent/timelineOppositeContentClasses.js +1 -1
  219. package/legacy/TimelineSeparator/TimelineSeparator.js +1 -1
  220. package/legacy/TimelineSeparator/timelineSeparatorClasses.js +1 -1
  221. package/legacy/TreeItem/TreeItem.js +1 -1
  222. package/legacy/TreeItem/treeItemClasses.js +1 -1
  223. package/legacy/TreeView/TreeView.js +1 -1
  224. package/legacy/TreeView/treeViewClasses.js +1 -1
  225. package/legacy/YearPicker/PickersYear.js +2 -2
  226. package/legacy/YearPicker/YearPicker.js +1 -1
  227. package/legacy/YearPicker/yearPickerClasses.js +1 -1
  228. package/legacy/index.js +4 -2
  229. package/legacy/internal/pickers/PickersToolbar.js +1 -1
  230. package/legacy/internal/pickers/PickersToolbarText.js +1 -1
  231. package/legacy/internal/pickers/test-utils.js +11 -7
  232. package/legacy/useAutocomplete/index.js +1 -1
  233. package/modern/CalendarPicker/CalendarPicker.js +1 -1
  234. package/modern/CalendarPicker/PickersFadeTransitionGroup.js +1 -1
  235. package/modern/CalendarPicker/PickersSlideTransition.js +1 -1
  236. package/modern/CalendarPickerSkeleton/CalendarPickerSkeleton.js +1 -1
  237. package/modern/ClockPicker/ClockNumber.js +1 -1
  238. package/modern/ClockPicker/ClockPicker.js +1 -1
  239. package/modern/DatePicker/DatePickerToolbar.js +1 -1
  240. package/modern/DateRangePicker/DateRangePickerToolbar.js +1 -1
  241. package/modern/DateRangePickerDay/DateRangePickerDay.js +1 -1
  242. package/modern/DateTimePicker/DateTimePickerToolbar.js +1 -1
  243. package/modern/LoadingButton/LoadingButton.js +20 -7
  244. package/modern/LoadingButton/loadingButtonClasses.js +1 -1
  245. package/modern/Masonry/Masonry.js +69 -51
  246. package/modern/Masonry/masonryClasses.js +1 -1
  247. package/modern/MonthPicker/MonthPicker.js +3 -2
  248. package/modern/MonthPicker/PickersMonth.js +19 -14
  249. package/modern/PickersDay/PickersDay.js +1 -1
  250. package/modern/TabPanel/TabPanel.js +1 -1
  251. package/modern/TabPanel/tabPanelClasses.js +1 -1
  252. package/modern/TimePicker/TimePickerToolbar.js +1 -1
  253. package/modern/Timeline/Timeline.js +1 -1
  254. package/modern/Timeline/timelineClasses.js +1 -1
  255. package/modern/TimelineConnector/TimelineConnector.js +1 -1
  256. package/modern/TimelineConnector/timelineConnectorClasses.js +1 -1
  257. package/modern/TimelineContent/TimelineContent.js +1 -1
  258. package/modern/TimelineContent/timelineContentClasses.js +1 -1
  259. package/modern/TimelineDot/TimelineDot.js +1 -1
  260. package/modern/TimelineDot/timelineDotClasses.js +1 -1
  261. package/modern/TimelineItem/TimelineItem.js +1 -1
  262. package/modern/TimelineItem/timelineItemClasses.js +1 -1
  263. package/modern/TimelineOppositeContent/TimelineOppositeContent.js +1 -1
  264. package/modern/TimelineOppositeContent/timelineOppositeContentClasses.js +1 -1
  265. package/modern/TimelineSeparator/TimelineSeparator.js +1 -1
  266. package/modern/TimelineSeparator/timelineSeparatorClasses.js +1 -1
  267. package/modern/TreeItem/TreeItem.js +1 -1
  268. package/modern/TreeItem/treeItemClasses.js +1 -1
  269. package/modern/TreeView/TreeView.js +1 -1
  270. package/modern/TreeView/treeViewClasses.js +1 -1
  271. package/modern/YearPicker/PickersYear.js +2 -2
  272. package/modern/YearPicker/YearPicker.js +1 -1
  273. package/modern/YearPicker/yearPickerClasses.js +1 -1
  274. package/modern/index.js +4 -2
  275. package/modern/internal/pickers/PickersToolbar.js +1 -1
  276. package/modern/internal/pickers/PickersToolbarText.js +1 -1
  277. package/modern/internal/pickers/test-utils.js +14 -6
  278. package/modern/useAutocomplete/index.js +1 -1
  279. package/node/CalendarPicker/CalendarPicker.js +4 -4
  280. package/node/CalendarPicker/PickersFadeTransitionGroup.js +2 -2
  281. package/node/CalendarPicker/PickersSlideTransition.js +2 -2
  282. package/node/CalendarPickerSkeleton/CalendarPickerSkeleton.js +4 -4
  283. package/node/ClockPicker/ClockNumber.js +2 -2
  284. package/node/ClockPicker/ClockPicker.js +4 -4
  285. package/node/DatePicker/DatePickerToolbar.js +2 -2
  286. package/node/DateRangePicker/DateRangePickerToolbar.js +2 -2
  287. package/node/DateRangePickerDay/DateRangePickerDay.js +4 -4
  288. package/node/DateTimePicker/DateTimePickerToolbar.js +2 -2
  289. package/node/LoadingButton/LoadingButton.js +21 -8
  290. package/node/LoadingButton/loadingButtonClasses.js +3 -3
  291. package/node/Masonry/Masonry.js +74 -52
  292. package/node/Masonry/masonryClasses.js +3 -3
  293. package/node/MonthPicker/MonthPicker.js +6 -5
  294. package/node/MonthPicker/PickersMonth.js +20 -15
  295. package/node/PickersDay/PickersDay.js +4 -4
  296. package/node/TabPanel/TabPanel.js +2 -2
  297. package/node/TabPanel/tabPanelClasses.js +3 -3
  298. package/node/TimePicker/TimePickerToolbar.js +4 -4
  299. package/node/Timeline/Timeline.js +2 -2
  300. package/node/Timeline/timelineClasses.js +3 -3
  301. package/node/TimelineConnector/TimelineConnector.js +2 -2
  302. package/node/TimelineConnector/timelineConnectorClasses.js +3 -3
  303. package/node/TimelineContent/TimelineContent.js +2 -2
  304. package/node/TimelineContent/timelineContentClasses.js +3 -3
  305. package/node/TimelineDot/TimelineDot.js +2 -2
  306. package/node/TimelineDot/timelineDotClasses.js +3 -3
  307. package/node/TimelineItem/TimelineItem.js +2 -2
  308. package/node/TimelineItem/timelineItemClasses.js +3 -3
  309. package/node/TimelineOppositeContent/TimelineOppositeContent.js +2 -2
  310. package/node/TimelineOppositeContent/timelineOppositeContentClasses.js +3 -3
  311. package/node/TimelineSeparator/TimelineSeparator.js +2 -2
  312. package/node/TimelineSeparator/timelineSeparatorClasses.js +3 -3
  313. package/node/TreeItem/TreeItem.js +2 -2
  314. package/node/TreeItem/treeItemClasses.js +3 -3
  315. package/node/TreeView/TreeView.js +2 -2
  316. package/node/TreeView/treeViewClasses.js +3 -3
  317. package/node/YearPicker/PickersYear.js +5 -5
  318. package/node/YearPicker/YearPicker.js +2 -2
  319. package/node/YearPicker/yearPickerClasses.js +3 -3
  320. package/node/index.js +23 -2
  321. package/node/internal/pickers/PickersToolbar.js +2 -2
  322. package/node/internal/pickers/PickersToolbarText.js +2 -2
  323. package/node/internal/pickers/test-utils.js +15 -7
  324. package/node/useAutocomplete/index.js +3 -3
  325. package/package.json +7 -7
  326. package/themeAugmentation/components.d.ts +10 -0
  327. package/useAutocomplete/index.d.ts +1 -1
  328. package/useAutocomplete/index.js +1 -1
@@ -5,7 +5,7 @@ import PropTypes from 'prop-types';
5
5
  import clsx from 'clsx';
6
6
  import { styled, useThemeProps } from '@mui/material/styles';
7
7
  import { capitalize } from '@mui/material/utils';
8
- import { unstable_composeClasses as composeClasses } from '@mui/core';
8
+ import { unstable_composeClasses as composeClasses } from '@mui/base';
9
9
  import { getTimelineDotUtilityClass } from './timelineDotClasses';
10
10
  import { jsx as _jsx } from "react/jsx-runtime";
11
11
 
@@ -1,4 +1,4 @@
1
- import { generateUtilityClass, generateUtilityClasses } from '@mui/core';
1
+ import { generateUtilityClass, generateUtilityClasses } from '@mui/base';
2
2
  export function getTimelineDotUtilityClass(slot) {
3
3
  return generateUtilityClass('MuiTimelineDot', slot);
4
4
  }
@@ -6,7 +6,7 @@ import PropTypes from 'prop-types';
6
6
  import clsx from 'clsx';
7
7
  import { capitalize, isMuiElement } from '@mui/material/utils';
8
8
  import { styled, useThemeProps } from '@mui/material/styles';
9
- import { unstable_composeClasses as composeClasses } from '@mui/core';
9
+ import { unstable_composeClasses as composeClasses } from '@mui/base';
10
10
  import { timelineContentClasses } from '../TimelineContent';
11
11
  import { timelineOppositeContentClasses } from '../TimelineOppositeContent';
12
12
  import TimelineContext from '../Timeline/TimelineContext';
@@ -1,4 +1,4 @@
1
- import { generateUtilityClass, generateUtilityClasses } from '@mui/core';
1
+ import { generateUtilityClass, generateUtilityClasses } from '@mui/base';
2
2
  export function getTimelineItemUtilityClass(slot) {
3
3
  return generateUtilityClass('MuiTimelineItem', slot);
4
4
  }
@@ -5,7 +5,7 @@ import PropTypes from 'prop-types';
5
5
  import clsx from 'clsx';
6
6
  import { styled, useThemeProps } from '@mui/material/styles';
7
7
  import { capitalize } from '@mui/material/utils';
8
- import { unstable_composeClasses as composeClasses } from '@mui/core';
8
+ import { unstable_composeClasses as composeClasses } from '@mui/base';
9
9
  import Typography from '@mui/material/Typography';
10
10
  import TimelineContext from '../Timeline/TimelineContext';
11
11
  import { getTimelineOppositeContentUtilityClass } from './timelineOppositeContentClasses';
@@ -1,4 +1,4 @@
1
- import { generateUtilityClass, generateUtilityClasses } from '@mui/core';
1
+ import { generateUtilityClass, generateUtilityClasses } from '@mui/base';
2
2
  export function getTimelineOppositeContentUtilityClass(slot) {
3
3
  return generateUtilityClass('MuiTimelineOppositeContent', slot);
4
4
  }
@@ -3,7 +3,7 @@ import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutPr
3
3
  import * as React from 'react';
4
4
  import PropTypes from 'prop-types';
5
5
  import clsx from 'clsx';
6
- import { unstable_composeClasses as composeClasses } from '@mui/core';
6
+ import { unstable_composeClasses as composeClasses } from '@mui/base';
7
7
  import { styled, useThemeProps } from '@mui/material/styles';
8
8
  import { getTimelineSeparatorUtilityClass } from './timelineSeparatorClasses';
9
9
  import { jsx as _jsx } from "react/jsx-runtime";
@@ -1,4 +1,4 @@
1
- import { generateUtilityClass, generateUtilityClasses } from '@mui/core';
1
+ import { generateUtilityClass, generateUtilityClasses } from '@mui/base';
2
2
  export function getTimelineSeparatorUtilityClass(slot) {
3
3
  return generateUtilityClass('MuiTimelineSeparator', slot);
4
4
  }
@@ -8,7 +8,7 @@ import { elementTypeAcceptingRef } from '@mui/utils';
8
8
  import Collapse from '@mui/material/Collapse';
9
9
  import { alpha, styled, useThemeProps } from '@mui/material/styles';
10
10
  import { ownerDocument, useForkRef, unsupportedProp } from '@mui/material/utils';
11
- import { unstable_composeClasses as composeClasses } from '@mui/core';
11
+ import { unstable_composeClasses as composeClasses } from '@mui/base';
12
12
  import TreeViewContext from '../TreeView/TreeViewContext';
13
13
  import { DescendantProvider, useDescendant } from '../TreeView/descendants';
14
14
  import TreeItemContent from './TreeItemContent';
@@ -1,4 +1,4 @@
1
- import { generateUtilityClass, generateUtilityClasses } from '@mui/core';
1
+ import { generateUtilityClass, generateUtilityClasses } from '@mui/base';
2
2
  export function getTreeItemUtilityClass(slot) {
3
3
  return generateUtilityClass('MuiTreeItem', slot);
4
4
  }
@@ -5,7 +5,7 @@ import * as React from 'react';
5
5
  import clsx from 'clsx';
6
6
  import PropTypes from 'prop-types';
7
7
  import { styled, useTheme, useThemeProps } from '@mui/material/styles';
8
- import { unstable_composeClasses as composeClasses } from '@mui/core';
8
+ import { unstable_composeClasses as composeClasses } from '@mui/base';
9
9
  import { useControlled, useForkRef, ownerDocument, unstable_useId as useId } from '@mui/material/utils';
10
10
  import TreeViewContext from './TreeViewContext';
11
11
  import { DescendantProvider } from './descendants';
@@ -1,4 +1,4 @@
1
- import { generateUtilityClass, generateUtilityClasses } from '@mui/core';
1
+ import { generateUtilityClass, generateUtilityClasses } from '@mui/base';
2
2
  export function getTreeViewUtilityClass(slot) {
3
3
  return generateUtilityClass('MuiTreeView', slot);
4
4
  }
@@ -4,7 +4,7 @@ import * as React from 'react';
4
4
  import clsx from 'clsx';
5
5
  import { useForkRef, capitalize } from '@mui/material/utils';
6
6
  import { alpha, styled } from '@mui/material/styles';
7
- import { unstable_composeClasses as composeClasses, generateUtilityClass, generateUtilityClasses } from '@mui/core';
7
+ import { unstable_composeClasses as composeClasses, generateUtilityClass, generateUtilityClasses } from '@mui/base';
8
8
  import { WrapperVariantContext } from '../internal/pickers/wrappers/WrapperVariantContext';
9
9
  import { jsx as _jsx } from "react/jsx-runtime";
10
10
  export function getPickersYearUtilityClass(slot) {
@@ -52,7 +52,7 @@ var PickersYearButton = styled('button', {
52
52
  margin: '8px 0',
53
53
  height: 36,
54
54
  width: 72,
55
- borderRadius: 16,
55
+ borderRadius: 18,
56
56
  cursor: 'pointer',
57
57
  '&:focus, &:hover': {
58
58
  backgroundColor: alpha(theme.palette.action.active, theme.palette.action.hoverOpacity)
@@ -1,7 +1,7 @@
1
1
  import * as React from 'react';
2
2
  import PropTypes from 'prop-types';
3
3
  import { useTheme, styled, useThemeProps as useThemProps } from '@mui/material/styles';
4
- import { unstable_composeClasses as composeClasses } from '@mui/core';
4
+ import { unstable_composeClasses as composeClasses } from '@mui/base';
5
5
  import clsx from 'clsx';
6
6
  import PickersYear from './PickersYear';
7
7
  import { useUtils, useNow } from '../internal/pickers/hooks/useUtils';
@@ -1,4 +1,4 @@
1
- import { generateUtilityClass, generateUtilityClasses } from '@mui/core';
1
+ import { generateUtilityClass, generateUtilityClasses } from '@mui/base';
2
2
  export function getYearPickerUtilityClass(slot) {
3
3
  return generateUtilityClass('MuiYearPicker', slot);
4
4
  }
package/legacy/index.js CHANGED
@@ -1,4 +1,4 @@
1
- /** @license MUI v5.0.0-alpha.54
1
+ /** @license MUI v5.0.0-alpha.58
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.
@@ -105,4 +105,6 @@ export * from './TreeView';
105
105
  export { default as YearPicker } from './YearPicker';
106
106
  export * from './YearPicker'; // createFilterOptions is exported from Autocomplete
107
107
 
108
- export { default as useAutocomplete } from './useAutocomplete';
108
+ export { default as useAutocomplete } from './useAutocomplete';
109
+ export { default as Masonry } from './Masonry';
110
+ export * from './Masonry';
@@ -8,7 +8,7 @@ import Grid from '@mui/material/Grid';
8
8
  import Typography from '@mui/material/Typography';
9
9
  import IconButton from '@mui/material/IconButton';
10
10
  import { styled } from '@mui/material/styles';
11
- import { generateUtilityClasses } from '@mui/core';
11
+ import { generateUtilityClasses } from '@mui/base';
12
12
  import PenIcon from '../svg-icons/Pen';
13
13
  import CalendarIcon from '../svg-icons/Calendar';
14
14
  import ClockIcon from '../svg-icons/Clock';
@@ -5,7 +5,7 @@ import * as React from 'react';
5
5
  import clsx from 'clsx';
6
6
  import Typography from '@mui/material/Typography';
7
7
  import { styled } from '@mui/material/styles';
8
- import { generateUtilityClasses } from '@mui/core';
8
+ import { generateUtilityClasses } from '@mui/base';
9
9
  import { jsx as _jsx } from "react/jsx-runtime";
10
10
  var classes = generateUtilityClasses('PrivatePickersToolbarText', ['selected']);
11
11
  var PickersToolbarTextRoot = styled(Typography, {
@@ -78,13 +78,14 @@ export function wrapPickerMount(mount) {
78
78
  }));
79
79
  };
80
80
  }
81
- export function createPickerRender() {
81
+ export function createPickerRenderer() {
82
82
  var _ref2 = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
83
83
 
84
84
  var locale = _ref2.locale,
85
- renderOptions = _objectWithoutProperties(_ref2, ["locale"]);
85
+ createRendererOptions = _objectWithoutProperties(_ref2, ["locale"]);
86
86
 
87
- var _createRenderer = createRenderer(renderOptions),
87
+ var _createRenderer = createRenderer(createRendererOptions),
88
+ clock = _createRenderer.clock,
88
89
  clientRender = _createRenderer.render;
89
90
 
90
91
  function Wrapper(_ref3) {
@@ -96,10 +97,13 @@ export function createPickerRender() {
96
97
  });
97
98
  }
98
99
 
99
- return function (node, options) {
100
- return clientRender(node, _extends({}, options, {
101
- wrapper: Wrapper
102
- }));
100
+ return {
101
+ clock: clock,
102
+ render: function render(node, options) {
103
+ return clientRender(node, _extends({}, options, {
104
+ wrapper: Wrapper
105
+ }));
106
+ }
103
107
  };
104
108
  }
105
109
  export function openMobilePicker() {
@@ -1 +1 @@
1
- export { useAutocomplete as default, createFilterOptions } from '@mui/core';
1
+ export { useAutocomplete as default, createFilterOptions } from '@mui/base';
@@ -8,7 +8,7 @@ import * as React from 'react';
8
8
  import PropTypes from 'prop-types';
9
9
  import clsx from 'clsx';
10
10
  import { styled, useThemeProps } from '@mui/material/styles';
11
- import { unstable_composeClasses as composeClasses, generateUtilityClass, generateUtilityClasses } from '@mui/core';
11
+ import { unstable_composeClasses as composeClasses, generateUtilityClass, generateUtilityClasses } from '@mui/base';
12
12
  import MonthPicker from '../MonthPicker/MonthPicker';
13
13
  import { useCalendarState } from './useCalendarState';
14
14
  import { useDefaultDates, useUtils } from '../internal/pickers/hooks/useUtils';
@@ -2,7 +2,7 @@ import * as React from 'react';
2
2
  import clsx from 'clsx';
3
3
  import Fade from '@mui/material/Fade';
4
4
  import { styled } from '@mui/material/styles';
5
- import { generateUtilityClasses } from '@mui/core';
5
+ import { generateUtilityClasses } from '@mui/base';
6
6
  import { TransitionGroup } from 'react-transition-group';
7
7
  import { jsx as _jsx } from "react/jsx-runtime";
8
8
  const classes = generateUtilityClasses('PrivatePickersFadeTransitionGroup', ['root']);
@@ -4,7 +4,7 @@ const _excluded = ["children", "className", "reduceAnimations", "slideDirection"
4
4
  import * as React from 'react';
5
5
  import clsx from 'clsx';
6
6
  import { styled } from '@mui/material/styles';
7
- import { generateUtilityClasses } from '@mui/core';
7
+ import { generateUtilityClasses } from '@mui/base';
8
8
  import { CSSTransition, TransitionGroup } from 'react-transition-group';
9
9
  import { jsx as _jsx } from "react/jsx-runtime";
10
10
  const classes = generateUtilityClasses('PrivatePickersSlideTransition', ['root', 'slideEnter-left', 'slideEnter-right', 'slideEnterActive', 'slideEnterActive', 'slideExit', 'slideExitActiveLeft-left', 'slideExitActiveLeft-right']);
@@ -6,7 +6,7 @@ import PropTypes from 'prop-types';
6
6
  import clsx from 'clsx';
7
7
  import Skeleton from '@mui/material/Skeleton';
8
8
  import { styled, useThemeProps } from '@mui/material/styles';
9
- import { unstable_composeClasses as composeClasses, generateUtilityClass, generateUtilityClasses } from '@mui/core';
9
+ import { unstable_composeClasses as composeClasses, generateUtilityClass, generateUtilityClasses } from '@mui/base';
10
10
  import { DAY_SIZE, DAY_MARGIN } from '../internal/pickers/constants/dimensions';
11
11
  import { jsx as _jsx } from "react/jsx-runtime";
12
12
  export function getCalendarPickerSkeletonUtilityClass(slot) {
@@ -4,7 +4,7 @@ const _excluded = ["className", "disabled", "index", "inner", "label", "selected
4
4
  import * as React from 'react';
5
5
  import clsx from 'clsx';
6
6
  import { styled } from '@mui/material/styles';
7
- import { generateUtilityClasses } from '@mui/core';
7
+ import { generateUtilityClasses } from '@mui/base';
8
8
  import { CLOCK_WIDTH, CLOCK_HOUR_WIDTH } from './shared';
9
9
  import { jsx as _jsx } from "react/jsx-runtime";
10
10
  export const classes = generateUtilityClasses('PrivateClockNumber', ['selected', 'disabled']);
@@ -3,7 +3,7 @@ import * as React from 'react';
3
3
  import PropTypes from 'prop-types';
4
4
  import { unstable_useId as useId } from '@mui/utils';
5
5
  import { styled, useThemeProps } from '@mui/material/styles';
6
- import { unstable_composeClasses as composeClasses, generateUtilityClass, generateUtilityClasses } from '@mui/core';
6
+ import { unstable_composeClasses as composeClasses, generateUtilityClass, generateUtilityClasses } from '@mui/base';
7
7
  import Clock from './Clock';
8
8
  import { pipe } from '../internal/pickers/utils';
9
9
  import { useUtils, useNow } from '../internal/pickers/hooks/useUtils';
@@ -4,7 +4,7 @@ const _excluded = ["date", "isLandscape", "isMobileKeyboardViewOpen", "onChange"
4
4
  import * as React from 'react';
5
5
  import Typography from '@mui/material/Typography';
6
6
  import { styled } from '@mui/material/styles';
7
- import { generateUtilityClasses } from '@mui/core';
7
+ import { generateUtilityClasses } from '@mui/base';
8
8
  import PickersToolbar from '../internal/pickers/PickersToolbar';
9
9
  import { useUtils } from '../internal/pickers/hooks/useUtils';
10
10
  import { isYearAndMonthViews, isYearOnlyView } from './shared';
@@ -3,7 +3,7 @@ var _Typography;
3
3
  import * as React from 'react';
4
4
  import Typography from '@mui/material/Typography';
5
5
  import { styled } from '@mui/material/styles';
6
- import { generateUtilityClasses } from '@mui/core';
6
+ import { generateUtilityClasses } from '@mui/base';
7
7
  import PickersToolbar from '../internal/pickers/PickersToolbar';
8
8
  import { useUtils } from '../internal/pickers/hooks/useUtils';
9
9
  import PickersToolbarButton from '../internal/pickers/PickersToolbarButton';
@@ -5,7 +5,7 @@ import * as React from 'react';
5
5
  import PropTypes from 'prop-types';
6
6
  import clsx from 'clsx';
7
7
  import { alpha, styled } from '@mui/material/styles';
8
- import { unstable_composeClasses as composeClasses, generateUtilityClass, generateUtilityClasses } from '@mui/core';
8
+ import { unstable_composeClasses as composeClasses, generateUtilityClass, generateUtilityClasses } from '@mui/base';
9
9
  import { DAY_MARGIN } from '../internal/pickers/constants/dimensions';
10
10
  import { useUtils } from '../internal/pickers/hooks/useUtils';
11
11
  import PickersDay, { areDayPropsEqual } from '../PickersDay/PickersDay';
@@ -6,7 +6,7 @@ var _DateTimePickerToolba, _DateTimePickerToolba2;
6
6
  const _excluded = ["ampm", "date", "dateRangeIcon", "hideTabs", "isMobileKeyboardViewOpen", "onChange", "openView", "setOpenView", "timeIcon", "toggleMobileKeyboardView", "toolbarFormat", "toolbarPlaceholder", "toolbarTitle", "views"];
7
7
  import * as React from 'react';
8
8
  import { styled } from '@mui/material/styles';
9
- import { generateUtilityClasses } from '@mui/core';
9
+ import { generateUtilityClasses } from '@mui/base';
10
10
  import PickersToolbarText from '../internal/pickers/PickersToolbarText';
11
11
  import PickersToolbar from '../internal/pickers/PickersToolbar';
12
12
  import PickersToolbarButton from '../internal/pickers/PickersToolbarButton';
@@ -1,11 +1,11 @@
1
1
  import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/esm/objectWithoutPropertiesLoose";
2
2
  import _extends from "@babel/runtime/helpers/esm/extends";
3
- const _excluded = ["children", "disabled", "loading", "loadingIndicator", "loadingPosition"];
3
+ const _excluded = ["children", "disabled", "loading", "loadingIndicator", "loadingPosition", "variant"];
4
4
  import * as React from 'react';
5
5
  import PropTypes from 'prop-types';
6
6
  import { chainPropTypes } from '@mui/utils';
7
7
  import { capitalize } from '@mui/material/utils';
8
- import { unstable_composeClasses as composeClasses } from '@mui/core';
8
+ import { unstable_composeClasses as composeClasses } from '@mui/base';
9
9
  import { styled, useThemeProps } from '@mui/material/styles';
10
10
  import Button from '@mui/material/Button';
11
11
  import CircularProgress from '@mui/material/CircularProgress';
@@ -93,14 +93,18 @@ const LoadingButtonLoadingIndicator = styled('div', {
93
93
  position: 'absolute',
94
94
  visibility: 'visible',
95
95
  display: 'flex'
96
- }, ownerState.loadingPosition === 'start' && {
96
+ }, ownerState.loadingPosition === 'start' && (ownerState.variant === 'outlined' || ownerState.variant === 'contained') && {
97
97
  left: 14
98
+ }, ownerState.loadingPosition === 'start' && ownerState.variant === 'text' && {
99
+ left: 6
98
100
  }, ownerState.loadingPosition === 'center' && {
99
101
  left: '50%',
100
102
  transform: 'translate(-50%)',
101
103
  color: theme.palette.action.disabled
102
- }, ownerState.loadingPosition === 'end' && {
104
+ }, ownerState.loadingPosition === 'end' && (ownerState.variant === 'outlined' || ownerState.variant === 'contained') && {
103
105
  right: 14
106
+ }, ownerState.loadingPosition === 'end' && ownerState.variant === 'text' && {
107
+ right: 6
104
108
  }, ownerState.loadingPosition === 'start' && ownerState.fullWidth && {
105
109
  position: 'relative',
106
110
  left: -10
@@ -125,7 +129,8 @@ const LoadingButton = /*#__PURE__*/React.forwardRef(function LoadingButton(inPro
125
129
  disabled = false,
126
130
  loading = false,
127
131
  loadingIndicator = LoadingIndicator,
128
- loadingPosition = 'center'
132
+ loadingPosition = 'center',
133
+ variant = 'text'
129
134
  } = props,
130
135
  other = _objectWithoutPropertiesLoose(props, _excluded);
131
136
 
@@ -133,7 +138,8 @@ const LoadingButton = /*#__PURE__*/React.forwardRef(function LoadingButton(inPro
133
138
  disabled,
134
139
  loading,
135
140
  loadingIndicator,
136
- loadingPosition
141
+ loadingPosition,
142
+ variant
137
143
  });
138
144
 
139
145
  const classes = useUtilityClasses(ownerState);
@@ -141,6 +147,7 @@ const LoadingButton = /*#__PURE__*/React.forwardRef(function LoadingButton(inPro
141
147
  disabled: disabled || loading,
142
148
  ref: ref
143
149
  }, other, {
150
+ variant: variant,
144
151
  classes: classes,
145
152
  ownerState: ownerState,
146
153
  children: ownerState.loadingPosition === 'end' ? /*#__PURE__*/_jsxs(React.Fragment, {
@@ -213,6 +220,12 @@ process.env.NODE_ENV !== "production" ? LoadingButton.propTypes
213
220
  /**
214
221
  * The system prop that allows defining system overrides as well as additional CSS styles.
215
222
  */
216
- sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object])), PropTypes.func, PropTypes.object])
223
+ sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object])), PropTypes.func, PropTypes.object]),
224
+
225
+ /**
226
+ * The variant to use.
227
+ * @default 'text'
228
+ */
229
+ variant: PropTypes.oneOf(['contained', 'outlined', 'text'])
217
230
  } : void 0;
218
231
  export default LoadingButton;
@@ -1,4 +1,4 @@
1
- import { generateUtilityClass, generateUtilityClasses } from '@mui/core';
1
+ import { generateUtilityClass, generateUtilityClasses } from '@mui/base';
2
2
  export function getLoadingButtonUtilityClass(slot) {
3
3
  return generateUtilityClass('MuiLoadingButton', slot);
4
4
  }
@@ -1,7 +1,7 @@
1
1
  import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/esm/objectWithoutPropertiesLoose";
2
2
  import _extends from "@babel/runtime/helpers/esm/extends";
3
3
  const _excluded = ["children", "className", "component", "columns", "spacing", "defaultColumns", "defaultHeight", "defaultSpacing"];
4
- import { unstable_composeClasses as composeClasses } from '@mui/core';
4
+ import { unstable_composeClasses as composeClasses } from '@mui/base';
5
5
  import { styled, useThemeProps } from '@mui/material/styles';
6
6
  import { createUnarySpacing, getValue, handleBreakpoints, unstable_resolveBreakpointValues as resolveBreakpointValues } from '@mui/system';
7
7
  import { deepmerge, unstable_useForkRef as useForkRef } from '@mui/utils';
@@ -166,72 +166,92 @@ const Masonry = /*#__PURE__*/React.forwardRef(function Masonry(inProps, ref) {
166
166
  });
167
167
 
168
168
  const classes = useUtilityClasses(ownerState);
169
- React.useEffect(() => {
170
- const handleResize = () => {
171
- const parentWidth = masonryRef.current.clientWidth;
172
- const childWidth = masonryRef.current.firstChild.clientWidth;
173
- const firstChildComputedStyle = window.getComputedStyle(masonryRef.current.firstChild);
174
- const firstChildMarginLeft = parseToNumber(firstChildComputedStyle.marginLeft);
175
- const firstChildMarginRight = parseToNumber(firstChildComputedStyle.marginRight);
176
-
177
- if (parentWidth === 0 || childWidth === 0) {
178
- return;
179
- }
180
169
 
181
- const currentNumberOfColumns = Math.round(parentWidth / (childWidth + firstChildMarginLeft + firstChildMarginRight));
182
- const columnHeights = new Array(currentNumberOfColumns).fill(0);
183
- let skip = false;
184
- masonryRef.current.childNodes.forEach(child => {
185
- if (child.nodeType !== Node.ELEMENT_NODE || child.dataset.class === 'line-break' || skip) {
186
- return;
187
- }
170
+ const handleResize = elements => {
171
+ if (!elements) {
172
+ return;
173
+ }
188
174
 
189
- const childComputedStyle = window.getComputedStyle(child);
190
- const childMarginTop = parseToNumber(childComputedStyle.marginTop);
191
- const childMarginBottom = parseToNumber(childComputedStyle.marginBottom); // if any one of children isn't rendered yet, masonry's height shouldn't be computed yet
175
+ let masonry;
176
+ let masonryFirstChild;
177
+ let parentWidth;
178
+ let childWidth;
179
+
180
+ if (elements[0].target.className.includes(classes.root)) {
181
+ masonry = elements[0].target;
182
+ parentWidth = elements[0].contentRect.width;
183
+ masonryFirstChild = elements[1]?.target || masonry.firstChild;
184
+ childWidth = masonryFirstChild?.contentRect?.width || masonryFirstChild?.clientWidth || 0;
185
+ } else {
186
+ masonryFirstChild = elements[0].target;
187
+ childWidth = elements[0].contentRect.width;
188
+ masonry = elements[1]?.target || masonryFirstChild.parentElement;
189
+ parentWidth = masonry.contentRect?.width || masonry.clientWidth;
190
+ }
192
191
 
193
- const childHeight = parseToNumber(childComputedStyle.height) ? Math.ceil(parseToNumber(childComputedStyle.height)) + childMarginTop + childMarginBottom : 0;
192
+ if (parentWidth === 0 || childWidth === 0 || !masonry || !masonryFirstChild) {
193
+ return;
194
+ }
194
195
 
195
- if (childHeight === 0) {
196
- skip = true;
197
- return;
198
- } // if there is a nested image that isn't rendered yet, masonry's height shouldn't be computed yet
196
+ const firstChildComputedStyle = window.getComputedStyle(masonryFirstChild);
197
+ const firstChildMarginLeft = parseToNumber(firstChildComputedStyle.marginLeft);
198
+ const firstChildMarginRight = parseToNumber(firstChildComputedStyle.marginRight);
199
+ const currentNumberOfColumns = Math.round(parentWidth / (childWidth + firstChildMarginLeft + firstChildMarginRight));
200
+ const columnHeights = new Array(currentNumberOfColumns).fill(0);
201
+ let skip = false;
202
+ masonry.childNodes.forEach(child => {
203
+ if (child.nodeType !== Node.ELEMENT_NODE || child.dataset.class === 'line-break' || skip) {
204
+ return;
205
+ }
199
206
 
207
+ const childComputedStyle = window.getComputedStyle(child);
208
+ const childMarginTop = parseToNumber(childComputedStyle.marginTop);
209
+ const childMarginBottom = parseToNumber(childComputedStyle.marginBottom); // if any one of children isn't rendered yet, masonry's height shouldn't be computed yet
200
210
 
201
- for (let i = 0; i < child.childNodes.length; i += 1) {
202
- const nestedChild = child.childNodes[i];
211
+ const childHeight = parseToNumber(childComputedStyle.height) ? Math.ceil(parseToNumber(childComputedStyle.height)) + childMarginTop + childMarginBottom : 0;
203
212
 
204
- if (nestedChild.tagName === 'IMG' && nestedChild.clientHeight === 0) {
205
- skip = true;
206
- break;
207
- }
208
- }
213
+ if (childHeight === 0) {
214
+ skip = true;
215
+ return;
216
+ } // if there is a nested image that isn't rendered yet, masonry's height shouldn't be computed yet
217
+
218
+
219
+ for (let i = 0; i < child.childNodes.length; i += 1) {
220
+ const nestedChild = child.childNodes[i];
209
221
 
210
- if (!skip) {
211
- // find the current shortest column (where the current item will be placed)
212
- const currentMinColumnIndex = columnHeights.indexOf(Math.min(...columnHeights));
213
- columnHeights[currentMinColumnIndex] += childHeight;
214
- const order = currentMinColumnIndex + 1;
215
- child.style.order = order;
222
+ if (nestedChild.tagName === 'IMG' && nestedChild.clientHeight === 0) {
223
+ skip = true;
224
+ break;
216
225
  }
217
- });
226
+ }
218
227
 
219
228
  if (!skip) {
220
- setMaxColumnHeight(Math.max(...columnHeights));
221
- const numOfLineBreaks = currentNumberOfColumns > 0 ? currentNumberOfColumns - 1 : 0;
222
- setNumberOfLineBreaks(numOfLineBreaks);
229
+ // find the current shortest column (where the current item will be placed)
230
+ const currentMinColumnIndex = columnHeights.indexOf(Math.min(...columnHeights));
231
+ columnHeights[currentMinColumnIndex] += childHeight;
232
+ const order = currentMinColumnIndex + 1;
233
+ child.style.order = order;
223
234
  }
224
- }; // IE and old browsers are not supported
235
+ });
225
236
 
237
+ if (!skip) {
238
+ setMaxColumnHeight(Math.max(...columnHeights));
239
+ const numOfLineBreaks = currentNumberOfColumns > 0 ? currentNumberOfColumns - 1 : 0;
240
+ setNumberOfLineBreaks(numOfLineBreaks);
241
+ }
242
+ };
226
243
 
227
- if (typeof ResizeObserver === 'undefined') {
244
+ const observer = React.useRef(typeof ResizeObserver === 'undefined' ? undefined : new ResizeObserver(handleResize));
245
+ React.useEffect(() => {
246
+ const resizeObserver = observer.current; // IE and old browsers are not supported
247
+
248
+ if (resizeObserver === undefined) {
228
249
  return undefined;
229
250
  }
230
251
 
231
- const resizeObserver = new ResizeObserver(handleResize);
232
252
  const container = masonryRef.current;
233
253
 
234
- if (container) {
254
+ if (container && resizeObserver) {
235
255
  // only the masonry container and its first child are observed for resizing;
236
256
  // this might cause unforeseen problems in some use cases;
237
257
  resizeObserver.observe(container);
@@ -241,9 +261,7 @@ const Masonry = /*#__PURE__*/React.forwardRef(function Masonry(inProps, ref) {
241
261
  }
242
262
  }
243
263
 
244
- return () => {
245
- resizeObserver.disconnect();
246
- };
264
+ return () => resizeObserver ? resizeObserver.disconnect() : {};
247
265
  }, [columns, spacing, children]);
248
266
  const handleRef = useForkRef(ref, masonryRef);
249
267
  const lineBreakStyle = {
@@ -1,4 +1,4 @@
1
- import { generateUtilityClass, generateUtilityClasses } from '@mui/core';
1
+ import { generateUtilityClass, generateUtilityClasses } from '@mui/base';
2
2
  export function getMasonryUtilityClass(slot) {
3
3
  return generateUtilityClass('MuiMasonry', slot);
4
4
  }
@@ -5,7 +5,7 @@ import * as React from 'react';
5
5
  import PropTypes from 'prop-types';
6
6
  import clsx from 'clsx';
7
7
  import { styled, useThemeProps } from '@mui/material/styles';
8
- import { unstable_composeClasses as composeClasses, generateUtilityClass, generateUtilityClasses } from '@mui/core';
8
+ import { unstable_composeClasses as composeClasses, generateUtilityClass, generateUtilityClasses } from '@mui/base';
9
9
  import PickersMonth from './PickersMonth';
10
10
  import { useUtils, useNow } from '../internal/pickers/hooks/useUtils';
11
11
  import { jsx as _jsx } from "react/jsx-runtime";
@@ -32,7 +32,8 @@ const MonthPickerRoot = styled('div', {
32
32
  width: 310,
33
33
  display: 'flex',
34
34
  flexWrap: 'wrap',
35
- alignContent: 'stretch'
35
+ alignContent: 'stretch',
36
+ margin: '0 4px'
36
37
  });
37
38
  const MonthPicker = /*#__PURE__*/React.forwardRef(function MonthPicker(inProps, ref) {
38
39
  const props = useThemeProps({