@mui/lab 5.0.0-alpha.64 → 5.0.0-alpha.65

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 (156) 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 +73 -0
  6. package/CalendarPicker/CalendarPicker.d.ts +106 -106
  7. package/CalendarPicker/PickersCalendar.d.ts +47 -47
  8. package/CalendarPicker/PickersCalendarHeader.d.ts +43 -43
  9. package/CalendarPicker/PickersFadeTransitionGroup.d.ts +12 -12
  10. package/CalendarPicker/PickersSlideTransition.d.ts +16 -16
  11. package/CalendarPicker/index.d.ts +5 -5
  12. package/CalendarPicker/shared.d.ts +1 -1
  13. package/CalendarPicker/useCalendarState.d.ts +32 -32
  14. package/CalendarPickerSkeleton/CalendarPickerSkeleton.d.ts +41 -41
  15. package/CalendarPickerSkeleton/index.d.ts +3 -3
  16. package/ClockPicker/Clock.d.ts +28 -28
  17. package/ClockPicker/ClockNumber.d.ts +19 -19
  18. package/ClockPicker/ClockNumbers.d.ts +24 -24
  19. package/ClockPicker/ClockPicker.d.ts +121 -121
  20. package/ClockPicker/ClockPickerStandalone.d.ts +28 -28
  21. package/ClockPicker/ClockPointer.d.ts +23 -23
  22. package/ClockPicker/index.d.ts +5 -5
  23. package/ClockPicker/shared.d.ts +5 -5
  24. package/DatePicker/DatePicker.d.ts +27 -27
  25. package/DatePicker/DatePickerToolbar.d.ts +23 -23
  26. package/DatePicker/index.d.ts +2 -2
  27. package/DatePicker/shared.d.ts +45 -45
  28. package/DateRangePicker/DateRangePicker.d.ts +65 -65
  29. package/DateRangePicker/DateRangePickerInput.d.ts +35 -35
  30. package/DateRangePicker/DateRangePickerToolbar.d.ts +15 -15
  31. package/DateRangePicker/DateRangePickerView.d.ts +44 -44
  32. package/DateRangePicker/DateRangePickerViewDesktop.d.ts +29 -29
  33. package/DateRangePicker/DateRangePickerViewMobile.d.ts +17 -17
  34. package/DateRangePicker/RangeTypes.d.ts +8 -8
  35. package/DateRangePicker/date-range-manager.d.ts +14 -14
  36. package/DateRangePicker/index.d.ts +3 -3
  37. package/DateRangePickerDay/DateRangePickerDay.d.ts +79 -79
  38. package/DateRangePickerDay/index.d.ts +2 -2
  39. package/DateTimePicker/DateTimePicker.d.ts +27 -27
  40. package/DateTimePicker/DateTimePickerTabs.d.ts +13 -13
  41. package/DateTimePicker/DateTimePickerToolbar.d.ts +7 -7
  42. package/DateTimePicker/index.d.ts +2 -2
  43. package/DateTimePicker/shared.d.ts +67 -67
  44. package/DesktopDatePicker/DesktopDatePicker.d.ts +20 -20
  45. package/DesktopDatePicker/index.d.ts +2 -2
  46. package/DesktopDateRangePicker/DesktopDateRangePicker.d.ts +64 -64
  47. package/DesktopDateRangePicker/index.d.ts +2 -2
  48. package/DesktopDateTimePicker/DesktopDateTimePicker.d.ts +20 -20
  49. package/DesktopDateTimePicker/index.d.ts +2 -2
  50. package/DesktopTimePicker/DesktopTimePicker.d.ts +20 -20
  51. package/DesktopTimePicker/index.d.ts +2 -2
  52. package/LoadingButton/loadingButtonClasses.d.ts +22 -22
  53. package/LocalizationProvider/LocalizationProvider.d.ts +35 -35
  54. package/LocalizationProvider/index.d.ts +2 -2
  55. package/Masonry/Masonry.js +12 -34
  56. package/Masonry/masonryClasses.d.ts +8 -8
  57. package/MobileDatePicker/MobileDatePicker.d.ts +20 -20
  58. package/MobileDatePicker/index.d.ts +2 -2
  59. package/MobileDateRangePicker/MobileDateRangePicker.d.ts +64 -64
  60. package/MobileDateRangePicker/index.d.ts +2 -2
  61. package/MobileDateTimePicker/MobileDateTimePicker.d.ts +20 -20
  62. package/MobileDateTimePicker/index.d.ts +2 -2
  63. package/MobileTimePicker/MobileTimePicker.d.ts +20 -20
  64. package/MobileTimePicker/index.d.ts +2 -2
  65. package/MonthPicker/MonthPicker.d.ts +53 -53
  66. package/MonthPicker/PickersMonth.d.ts +15 -15
  67. package/MonthPicker/index.d.ts +3 -3
  68. package/PickersDay/PickersDay.d.ts +93 -93
  69. package/PickersDay/index.d.ts +4 -4
  70. package/README.md +4 -4
  71. package/StaticDatePicker/StaticDatePicker.d.ts +25 -25
  72. package/StaticDatePicker/index.d.ts +2 -2
  73. package/StaticDateRangePicker/StaticDateRangePicker.d.ts +67 -67
  74. package/StaticDateRangePicker/index.d.ts +2 -2
  75. package/StaticDateTimePicker/StaticDateTimePicker.d.ts +25 -25
  76. package/StaticDateTimePicker/index.d.ts +2 -2
  77. package/StaticTimePicker/StaticTimePicker.d.ts +25 -25
  78. package/StaticTimePicker/index.d.ts +2 -2
  79. package/TabPanel/tabPanelClasses.d.ts +8 -8
  80. package/TimePicker/TimePicker.d.ts +27 -27
  81. package/TimePicker/TimePickerToolbar.d.ts +23 -23
  82. package/TimePicker/index.d.ts +2 -2
  83. package/TimePicker/shared.d.ts +36 -36
  84. package/Timeline/Timeline.d.ts +59 -59
  85. package/Timeline/TimelineContext.d.ts +6 -6
  86. package/Timeline/index.d.ts +5 -5
  87. package/Timeline/timelineClasses.d.ts +3 -3
  88. package/TimelineConnector/timelineConnectorClasses.d.ts +8 -8
  89. package/TimelineContent/timelineContentClasses.d.ts +14 -14
  90. package/TimelineDot/timelineDotClasses.d.ts +24 -24
  91. package/TimelineItem/timelineItemClasses.d.ts +16 -16
  92. package/TimelineOppositeContent/timelineOppositeContentClasses.d.ts +14 -14
  93. package/TimelineSeparator/timelineSeparatorClasses.d.ts +8 -8
  94. package/TreeItem/treeItemClasses.d.ts +24 -24
  95. package/TreeView/treeViewClasses.d.ts +8 -8
  96. package/YearPicker/PickersYear.d.ts +28 -28
  97. package/YearPicker/YearPicker.d.ts +44 -44
  98. package/YearPicker/index.d.ts +5 -5
  99. package/YearPicker/yearPickerClasses.d.ts +3 -3
  100. package/index.js +1 -1
  101. package/internal/pickers/KeyboardDateInput.d.ts +4 -4
  102. package/internal/pickers/Picker/Picker.d.ts +33 -33
  103. package/internal/pickers/Picker/PickerView.d.ts +3 -3
  104. package/internal/pickers/PickersArrowSwitcher.d.ts +41 -41
  105. package/internal/pickers/PickersModalDialog.d.ts +47 -47
  106. package/internal/pickers/PickersPopper.d.ts +33 -33
  107. package/internal/pickers/PickersToolbar.d.ts +14 -14
  108. package/internal/pickers/PickersToolbarButton.d.ts +13 -13
  109. package/internal/pickers/PickersToolbarText.d.ts +8 -8
  110. package/internal/pickers/PureDateInput.d.ts +80 -80
  111. package/internal/pickers/PureDateInput.js +6 -4
  112. package/internal/pickers/constants/dimensions.d.ts +4 -4
  113. package/internal/pickers/constants/prop-types.d.ts +1 -1
  114. package/internal/pickers/date-time-utils.d.ts +8 -8
  115. package/internal/pickers/date-utils.d.ts +52 -52
  116. package/internal/pickers/hooks/date-helpers-hooks.d.ts +16 -16
  117. package/internal/pickers/hooks/useIsLandscape.d.ts +4 -4
  118. package/internal/pickers/hooks/useMaskedInput.d.ts +7 -7
  119. package/internal/pickers/hooks/useOpenState.d.ts +10 -10
  120. package/internal/pickers/hooks/usePickerState.d.ts +38 -38
  121. package/internal/pickers/hooks/useUtils.d.ts +7 -7
  122. package/internal/pickers/hooks/useValidation.d.ts +23 -23
  123. package/internal/pickers/hooks/useViews.d.ts +19 -19
  124. package/internal/pickers/text-field-helper.d.ts +11 -11
  125. package/internal/pickers/time-utils.d.ts +33 -33
  126. package/internal/pickers/typings/BasePicker.d.ts +95 -95
  127. package/internal/pickers/typings/Views.d.ts +1 -1
  128. package/internal/pickers/typings/helpers.d.ts +9 -9
  129. package/internal/pickers/utils.d.ts +7 -7
  130. package/internal/pickers/wrappers/DesktopTooltipWrapper.d.ts +4 -4
  131. package/internal/pickers/wrappers/DesktopWrapper.d.ts +16 -16
  132. package/internal/pickers/wrappers/MobileWrapper.d.ts +14 -14
  133. package/internal/pickers/wrappers/PickerStaticWrapper.d.ts +21 -21
  134. package/internal/pickers/wrappers/ResponsiveWrapper.d.ts +23 -23
  135. package/internal/pickers/wrappers/WrapperProps.d.ts +13 -13
  136. package/internal/pickers/wrappers/WrapperVariantContext.d.ts +11 -11
  137. package/internal/svg-icons/ArrowDropDown.d.ts +7 -7
  138. package/internal/svg-icons/ArrowLeft.d.ts +7 -7
  139. package/internal/svg-icons/ArrowRight.d.ts +7 -7
  140. package/internal/svg-icons/Calendar.d.ts +7 -7
  141. package/internal/svg-icons/Clock.d.ts +7 -7
  142. package/internal/svg-icons/DateRange.d.ts +7 -7
  143. package/internal/svg-icons/Pen.d.ts +7 -7
  144. package/internal/svg-icons/Time.d.ts +7 -7
  145. package/legacy/Masonry/Masonry.js +12 -34
  146. package/legacy/index.js +1 -1
  147. package/legacy/internal/pickers/PureDateInput.js +6 -4
  148. package/legacy/internal/pickers/test-utils.js +2 -1
  149. package/modern/Masonry/Masonry.js +12 -30
  150. package/modern/index.js +1 -1
  151. package/modern/internal/pickers/PureDateInput.js +6 -4
  152. package/node/Masonry/Masonry.js +12 -34
  153. package/node/index.js +1 -1
  154. package/node/internal/pickers/PureDateInput.js +6 -4
  155. package/package.json +7 -7
  156. package/themeAugmentation/components.d.ts +99 -23
@@ -1,7 +1,7 @@
1
- declare const _default: import("@mui/material/OverridableComponent").OverridableComponent<import("@mui/material").SvgIconTypeMap<{}, "svg">> & {
2
- muiName: string;
3
- };
4
- /**
5
- * @ignore - internal component.
6
- */
7
- export default _default;
1
+ declare const _default: import("@mui/material/OverridableComponent").OverridableComponent<import("@mui/material").SvgIconTypeMap<{}, "svg">> & {
2
+ muiName: string;
3
+ };
4
+ /**
5
+ * @ignore - internal component.
6
+ */
7
+ export default _default;
@@ -1,7 +1,7 @@
1
- declare const _default: import("@mui/material/OverridableComponent").OverridableComponent<import("@mui/material").SvgIconTypeMap<{}, "svg">> & {
2
- muiName: string;
3
- };
4
- /**
5
- * @ignore - internal component.
6
- */
7
- export default _default;
1
+ declare const _default: import("@mui/material/OverridableComponent").OverridableComponent<import("@mui/material").SvgIconTypeMap<{}, "svg">> & {
2
+ muiName: string;
3
+ };
4
+ /**
5
+ * @ignore - internal component.
6
+ */
7
+ export default _default;
@@ -1,7 +1,7 @@
1
- declare const _default: import("@mui/material/OverridableComponent").OverridableComponent<import("@mui/material").SvgIconTypeMap<{}, "svg">> & {
2
- muiName: string;
3
- };
4
- /**
5
- * @ignore - internal component.
6
- */
7
- export default _default;
1
+ declare const _default: import("@mui/material/OverridableComponent").OverridableComponent<import("@mui/material").SvgIconTypeMap<{}, "svg">> & {
2
+ muiName: string;
3
+ };
4
+ /**
5
+ * @ignore - internal component.
6
+ */
7
+ export default _default;
@@ -1,7 +1,7 @@
1
- declare const _default: import("@mui/material/OverridableComponent").OverridableComponent<import("@mui/material").SvgIconTypeMap<{}, "svg">> & {
2
- muiName: string;
3
- };
4
- /**
5
- * @ignore - internal component.
6
- */
7
- export default _default;
1
+ declare const _default: import("@mui/material/OverridableComponent").OverridableComponent<import("@mui/material").SvgIconTypeMap<{}, "svg">> & {
2
+ muiName: string;
3
+ };
4
+ /**
5
+ * @ignore - internal component.
6
+ */
7
+ export default _default;
@@ -1,7 +1,7 @@
1
- declare const _default: import("@mui/material/OverridableComponent").OverridableComponent<import("@mui/material").SvgIconTypeMap<{}, "svg">> & {
2
- muiName: string;
3
- };
4
- /**
5
- * @ignore - internal component.
6
- */
7
- export default _default;
1
+ declare const _default: import("@mui/material/OverridableComponent").OverridableComponent<import("@mui/material").SvgIconTypeMap<{}, "svg">> & {
2
+ muiName: string;
3
+ };
4
+ /**
5
+ * @ignore - internal component.
6
+ */
7
+ export default _default;
@@ -173,40 +173,24 @@ var Masonry = /*#__PURE__*/React.forwardRef(function Masonry(inProps, ref) {
173
173
 
174
174
  var classes = useUtilityClasses(ownerState);
175
175
 
176
- var handleResize = function handleResize(elements) {
177
- if (!elements) {
176
+ var handleResize = function handleResize(masonryChildren) {
177
+ if (!masonryRef.current || !masonryChildren || masonryChildren.length === 0) {
178
178
  return;
179
179
  }
180
180
 
181
- var masonry;
182
- var masonryFirstChild;
183
- var parentWidth;
184
- var childWidth;
185
-
186
- if (elements[0].target.className.includes(classes.root)) {
187
- var _elements$, _masonryFirstChild, _masonryFirstChild$co, _masonryFirstChild2;
188
-
189
- masonry = elements[0].target;
190
- parentWidth = elements[0].contentRect.width;
191
- masonryFirstChild = ((_elements$ = elements[1]) == null ? void 0 : _elements$.target) || masonry.firstChild;
192
- childWidth = ((_masonryFirstChild = masonryFirstChild) == null ? void 0 : (_masonryFirstChild$co = _masonryFirstChild.contentRect) == null ? void 0 : _masonryFirstChild$co.width) || ((_masonryFirstChild2 = masonryFirstChild) == null ? void 0 : _masonryFirstChild2.clientWidth) || 0;
193
- } else {
194
- var _elements$2, _masonry$contentRect;
195
-
196
- masonryFirstChild = elements[0].target;
197
- childWidth = elements[0].contentRect.width;
198
- masonry = ((_elements$2 = elements[1]) == null ? void 0 : _elements$2.target) || masonryFirstChild.parentElement;
199
- parentWidth = ((_masonry$contentRect = masonry.contentRect) == null ? void 0 : _masonry$contentRect.width) || masonry.clientWidth;
200
- }
181
+ var masonry = masonryRef.current;
182
+ var masonryFirstChild = masonryRef.current.firstChild;
183
+ var parentWidth = masonry.clientWidth;
184
+ var firstChildWidth = masonryFirstChild.clientWidth;
201
185
 
202
- if (parentWidth === 0 || childWidth === 0 || !masonry || !masonryFirstChild) {
186
+ if (parentWidth === 0 || firstChildWidth === 0) {
203
187
  return;
204
188
  }
205
189
 
206
190
  var firstChildComputedStyle = window.getComputedStyle(masonryFirstChild);
207
191
  var firstChildMarginLeft = parseToNumber(firstChildComputedStyle.marginLeft);
208
192
  var firstChildMarginRight = parseToNumber(firstChildComputedStyle.marginRight);
209
- var currentNumberOfColumns = Math.round(parentWidth / (childWidth + firstChildMarginLeft + firstChildMarginRight));
193
+ var currentNumberOfColumns = Math.round(parentWidth / (firstChildWidth + firstChildMarginLeft + firstChildMarginRight));
210
194
  var columnHeights = new Array(currentNumberOfColumns).fill(0);
211
195
  var skip = false;
212
196
  masonry.childNodes.forEach(function (child) {
@@ -259,16 +243,10 @@ var Masonry = /*#__PURE__*/React.forwardRef(function Masonry(inProps, ref) {
259
243
  return undefined;
260
244
  }
261
245
 
262
- var container = masonryRef.current;
263
-
264
- if (container && resizeObserver) {
265
- // only the masonry container and its first child are observed for resizing;
266
- // this might cause unforeseen problems in some use cases;
267
- resizeObserver.observe(container);
268
-
269
- if (container.firstChild) {
270
- resizeObserver.observe(container.firstChild);
271
- }
246
+ if (masonryRef.current) {
247
+ masonryRef.current.childNodes.forEach(function (childNode) {
248
+ resizeObserver.observe(childNode);
249
+ });
272
250
  }
273
251
 
274
252
  return function () {
package/legacy/index.js CHANGED
@@ -1,4 +1,4 @@
1
- /** @license MUI v5.0.0-alpha.64
1
+ /** @license MUI v5.0.0-alpha.65
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.
@@ -34,15 +34,17 @@ export var PureDateInput = /*#__PURE__*/React.forwardRef(function PureDateInput(
34
34
  inputRef: inputRef,
35
35
  error: validationError,
36
36
  InputProps: PureDateInputProps,
37
- inputProps: {
37
+ inputProps: _extends({
38
38
  disabled: disabled,
39
39
  readOnly: true,
40
40
  'aria-readonly': true,
41
41
  'aria-label': getOpenDialogAriaText(rawValue, utils),
42
- value: inputValue,
43
- onClick: onOpen,
42
+ value: inputValue
43
+ }, !props.readOnly && {
44
+ onClick: onOpen
45
+ }, {
44
46
  onKeyDown: onSpaceOrEnter(onOpen)
45
- }
47
+ })
46
48
  }, TextFieldProps));
47
49
  });
48
50
  PureDateInput.propTypes = {
@@ -1,5 +1,6 @@
1
1
  import _extends from "@babel/runtime/helpers/esm/extends";
2
2
  import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutProperties";
3
+ import _createClass from "@babel/runtime/helpers/esm/createClass";
3
4
  import _classCallCheck from "@babel/runtime/helpers/esm/classCallCheck";
4
5
  import _inherits from "@babel/runtime/helpers/esm/inherits";
5
6
  import _possibleConstructorReturn from "@babel/runtime/helpers/esm/possibleConstructorReturn";
@@ -58,7 +59,7 @@ export var AdapterClassToUse = /*#__PURE__*/function (_AdapterDateFns) {
58
59
  return _this;
59
60
  }
60
61
 
61
- return AdapterClassToUse;
62
+ return _createClass(AdapterClassToUse);
62
63
  }(AdapterDateFns);
63
64
  export var adapterToUse = new AdapterClassToUse();
64
65
  export var FakeTransitionComponent = /*#__PURE__*/React.forwardRef(function FakeTransitionComponent(_ref, ref) {
@@ -167,36 +167,24 @@ const Masonry = /*#__PURE__*/React.forwardRef(function Masonry(inProps, ref) {
167
167
 
168
168
  const classes = useUtilityClasses(ownerState);
169
169
 
170
- const handleResize = elements => {
171
- if (!elements) {
170
+ const handleResize = masonryChildren => {
171
+ if (!masonryRef.current || !masonryChildren || masonryChildren.length === 0) {
172
172
  return;
173
173
  }
174
174
 
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
- }
175
+ const masonry = masonryRef.current;
176
+ const masonryFirstChild = masonryRef.current.firstChild;
177
+ const parentWidth = masonry.clientWidth;
178
+ const firstChildWidth = masonryFirstChild.clientWidth;
191
179
 
192
- if (parentWidth === 0 || childWidth === 0 || !masonry || !masonryFirstChild) {
180
+ if (parentWidth === 0 || firstChildWidth === 0) {
193
181
  return;
194
182
  }
195
183
 
196
184
  const firstChildComputedStyle = window.getComputedStyle(masonryFirstChild);
197
185
  const firstChildMarginLeft = parseToNumber(firstChildComputedStyle.marginLeft);
198
186
  const firstChildMarginRight = parseToNumber(firstChildComputedStyle.marginRight);
199
- const currentNumberOfColumns = Math.round(parentWidth / (childWidth + firstChildMarginLeft + firstChildMarginRight));
187
+ const currentNumberOfColumns = Math.round(parentWidth / (firstChildWidth + firstChildMarginLeft + firstChildMarginRight));
200
188
  const columnHeights = new Array(currentNumberOfColumns).fill(0);
201
189
  let skip = false;
202
190
  masonry.childNodes.forEach(child => {
@@ -249,16 +237,10 @@ const Masonry = /*#__PURE__*/React.forwardRef(function Masonry(inProps, ref) {
249
237
  return undefined;
250
238
  }
251
239
 
252
- const container = masonryRef.current;
253
-
254
- if (container && resizeObserver) {
255
- // only the masonry container and its first child are observed for resizing;
256
- // this might cause unforeseen problems in some use cases;
257
- resizeObserver.observe(container);
258
-
259
- if (container.firstChild) {
260
- resizeObserver.observe(container.firstChild);
261
- }
240
+ if (masonryRef.current) {
241
+ masonryRef.current.childNodes.forEach(childNode => {
242
+ resizeObserver.observe(childNode);
243
+ });
262
244
  }
263
245
 
264
246
  return () => resizeObserver ? resizeObserver.disconnect() : {};
package/modern/index.js CHANGED
@@ -1,4 +1,4 @@
1
- /** @license MUI v5.0.0-alpha.64
1
+ /** @license MUI v5.0.0-alpha.65
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.
@@ -32,15 +32,17 @@ export const PureDateInput = /*#__PURE__*/React.forwardRef(function PureDateInpu
32
32
  inputRef,
33
33
  error: validationError,
34
34
  InputProps: PureDateInputProps,
35
- inputProps: {
35
+ inputProps: _extends({
36
36
  disabled,
37
37
  readOnly: true,
38
38
  'aria-readonly': true,
39
39
  'aria-label': getOpenDialogAriaText(rawValue, utils),
40
- value: inputValue,
41
- onClick: onOpen,
40
+ value: inputValue
41
+ }, !props.readOnly && {
42
+ onClick: onOpen
43
+ }, {
42
44
  onKeyDown: onSpaceOrEnter(onOpen)
43
- }
45
+ })
44
46
  }, TextFieldProps));
45
47
  });
46
48
  PureDateInput.propTypes = {
@@ -191,40 +191,24 @@ const Masonry = /*#__PURE__*/React.forwardRef(function Masonry(inProps, ref) {
191
191
  });
192
192
  const classes = useUtilityClasses(ownerState);
193
193
 
194
- const handleResize = elements => {
195
- if (!elements) {
194
+ const handleResize = masonryChildren => {
195
+ if (!masonryRef.current || !masonryChildren || masonryChildren.length === 0) {
196
196
  return;
197
197
  }
198
198
 
199
- let masonry;
200
- let masonryFirstChild;
201
- let parentWidth;
202
- let childWidth;
203
-
204
- if (elements[0].target.className.includes(classes.root)) {
205
- var _elements$, _masonryFirstChild, _masonryFirstChild$co, _masonryFirstChild2;
206
-
207
- masonry = elements[0].target;
208
- parentWidth = elements[0].contentRect.width;
209
- masonryFirstChild = ((_elements$ = elements[1]) == null ? void 0 : _elements$.target) || masonry.firstChild;
210
- childWidth = ((_masonryFirstChild = masonryFirstChild) == null ? void 0 : (_masonryFirstChild$co = _masonryFirstChild.contentRect) == null ? void 0 : _masonryFirstChild$co.width) || ((_masonryFirstChild2 = masonryFirstChild) == null ? void 0 : _masonryFirstChild2.clientWidth) || 0;
211
- } else {
212
- var _elements$2, _masonry$contentRect;
213
-
214
- masonryFirstChild = elements[0].target;
215
- childWidth = elements[0].contentRect.width;
216
- masonry = ((_elements$2 = elements[1]) == null ? void 0 : _elements$2.target) || masonryFirstChild.parentElement;
217
- parentWidth = ((_masonry$contentRect = masonry.contentRect) == null ? void 0 : _masonry$contentRect.width) || masonry.clientWidth;
218
- }
199
+ const masonry = masonryRef.current;
200
+ const masonryFirstChild = masonryRef.current.firstChild;
201
+ const parentWidth = masonry.clientWidth;
202
+ const firstChildWidth = masonryFirstChild.clientWidth;
219
203
 
220
- if (parentWidth === 0 || childWidth === 0 || !masonry || !masonryFirstChild) {
204
+ if (parentWidth === 0 || firstChildWidth === 0) {
221
205
  return;
222
206
  }
223
207
 
224
208
  const firstChildComputedStyle = window.getComputedStyle(masonryFirstChild);
225
209
  const firstChildMarginLeft = parseToNumber(firstChildComputedStyle.marginLeft);
226
210
  const firstChildMarginRight = parseToNumber(firstChildComputedStyle.marginRight);
227
- const currentNumberOfColumns = Math.round(parentWidth / (childWidth + firstChildMarginLeft + firstChildMarginRight));
211
+ const currentNumberOfColumns = Math.round(parentWidth / (firstChildWidth + firstChildMarginLeft + firstChildMarginRight));
228
212
  const columnHeights = new Array(currentNumberOfColumns).fill(0);
229
213
  let skip = false;
230
214
  masonry.childNodes.forEach(child => {
@@ -277,16 +261,10 @@ const Masonry = /*#__PURE__*/React.forwardRef(function Masonry(inProps, ref) {
277
261
  return undefined;
278
262
  }
279
263
 
280
- const container = masonryRef.current;
281
-
282
- if (container && resizeObserver) {
283
- // only the masonry container and its first child are observed for resizing;
284
- // this might cause unforeseen problems in some use cases;
285
- resizeObserver.observe(container);
286
-
287
- if (container.firstChild) {
288
- resizeObserver.observe(container.firstChild);
289
- }
264
+ if (masonryRef.current) {
265
+ masonryRef.current.childNodes.forEach(childNode => {
266
+ resizeObserver.observe(childNode);
267
+ });
290
268
  }
291
269
 
292
270
  return () => resizeObserver ? resizeObserver.disconnect() : {};
package/node/index.js CHANGED
@@ -1,4 +1,4 @@
1
- /** @license MUI v5.0.0-alpha.64
1
+ /** @license MUI v5.0.0-alpha.65
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.
@@ -50,15 +50,17 @@ const PureDateInput = /*#__PURE__*/React.forwardRef(function PureDateInput(props
50
50
  inputRef,
51
51
  error: validationError,
52
52
  InputProps: PureDateInputProps,
53
- inputProps: {
53
+ inputProps: (0, _extends2.default)({
54
54
  disabled,
55
55
  readOnly: true,
56
56
  'aria-readonly': true,
57
57
  'aria-label': getOpenDialogAriaText(rawValue, utils),
58
- value: inputValue,
59
- onClick: onOpen,
58
+ value: inputValue
59
+ }, !props.readOnly && {
60
+ onClick: onOpen
61
+ }, {
60
62
  onKeyDown: (0, _utils.onSpaceOrEnter)(onOpen)
61
- }
63
+ })
62
64
  }, TextFieldProps));
63
65
  });
64
66
  exports.PureDateInput = PureDateInput;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mui/lab",
3
- "version": "5.0.0-alpha.64",
3
+ "version": "5.0.0-alpha.65",
4
4
  "private": false,
5
5
  "author": "MUI Team",
6
6
  "description": "Laboratory for new MUI modules.",
@@ -34,8 +34,8 @@
34
34
  "dayjs": "^1.10.7",
35
35
  "luxon": "^1.28.0 || ^2.0.0",
36
36
  "moment": "^2.29.1",
37
- "react": "^17.0.2",
38
- "react-dom": "^17.0.2"
37
+ "react": "^17.0.0",
38
+ "react-dom": "^17.0.0"
39
39
  },
40
40
  "peerDependenciesMeta": {
41
41
  "@types/react": {
@@ -55,14 +55,14 @@
55
55
  }
56
56
  },
57
57
  "dependencies": {
58
- "@babel/runtime": "^7.16.3",
58
+ "@babel/runtime": "^7.16.7",
59
59
  "@date-io/date-fns": "^2.11.0",
60
60
  "@date-io/dayjs": "^2.11.0",
61
61
  "@date-io/luxon": "^2.11.1",
62
62
  "@date-io/moment": "^2.11.0",
63
- "@mui/base": "5.0.0-alpha.64",
64
- "@mui/system": "^5.2.8",
65
- "@mui/utils": "^5.2.3",
63
+ "@mui/base": "5.0.0-alpha.65",
64
+ "@mui/system": "^5.3.0",
65
+ "@mui/utils": "^5.3.0",
66
66
  "clsx": "^1.1.1",
67
67
  "prop-types": "^15.7.2",
68
68
  "react-is": "^17.0.2",
@@ -1,114 +1,190 @@
1
- import { ComponentsProps, ComponentsOverrides, ComponentsVariants } from '@mui/material/styles';
1
+ import {
2
+ ComponentsProps,
3
+ ComponentsOverrides,
4
+ ComponentsVariants,
5
+ Theme as MuiTheme,
6
+ } from '@mui/material/styles';
7
+
8
+ type Theme = Omit<MuiTheme, 'components'>;
9
+
10
+ // shut off automatic exporting for the `Theme` above
11
+ export {};
2
12
 
3
13
  export interface LabComponents {
4
14
  MuiCalendarPicker?: {
5
15
  defaultProps?: ComponentsProps['MuiCalendarPicker'];
6
- styleOverrides?: ComponentsOverrides['MuiCalendarPicker'];
16
+ styleOverrides?: ComponentsOverrides<Theme>['MuiCalendarPicker'];
17
+ /**
18
+ * @deprecated pass a callback to the slot in `styleOverrides` instead. [See example](https://mui.com/customization/theme-components/#overrides-based-on-props)
19
+ */
7
20
  variants?: ComponentsVariants['MuiCalendarPicker'];
8
21
  };
9
22
  MuiCalendarPickerSkeleton?: {
10
23
  defaultProps?: ComponentsProps['MuiCalendarPickerSkeleton'];
11
- styleOverrides?: ComponentsOverrides['MuiCalendarPickerSkeleton'];
24
+ styleOverrides?: ComponentsOverrides<Theme>['MuiCalendarPickerSkeleton'];
25
+ /**
26
+ * @deprecated pass a callback to the slot in `styleOverrides` instead. [See example](https://mui.com/customization/theme-components/#overrides-based-on-props)
27
+ */
12
28
  variants?: ComponentsVariants['MuiCalendarPickerSkeleton'];
13
29
  };
14
30
  MuiClockPicker?: {
15
31
  defaultProps?: ComponentsProps['MuiClockPicker'];
16
- styleOverrides?: ComponentsOverrides['MuiClockPicker'];
32
+ styleOverrides?: ComponentsOverrides<Theme>['MuiClockPicker'];
33
+ /**
34
+ * @deprecated pass a callback to the slot in `styleOverrides` instead. [See example](https://mui.com/customization/theme-components/#overrides-based-on-props)
35
+ */
17
36
  variants?: ComponentsVariants['MuiClockPicker'];
18
37
  };
19
38
  MuiDatePicker?: {
20
39
  defaultProps?: ComponentsProps['MuiDatePicker'];
21
- styleOverrides?: ComponentsOverrides['MuiDatePicker'];
40
+ styleOverrides?: ComponentsOverrides<Theme>['MuiDatePicker'];
41
+ /**
42
+ * @deprecated pass a callback to the slot in `styleOverrides` instead. [See example](https://mui.com/customization/theme-components/#overrides-based-on-props)
43
+ */
22
44
  variants?: ComponentsVariants['MuiDatePicker'];
23
45
  };
24
46
  MuiDateRangePickerDay?: {
25
47
  defaultProps?: ComponentsProps['MuiDateRangePickerDay'];
26
- styleOverrides?: ComponentsOverrides['MuiDateRangePickerDay'];
48
+ styleOverrides?: ComponentsOverrides<Theme>['MuiDateRangePickerDay'];
49
+ /**
50
+ * @deprecated pass a callback to the slot in `styleOverrides` instead. [See example](https://mui.com/customization/theme-components/#overrides-based-on-props)
51
+ */
27
52
  variants?: ComponentsVariants['MuiDateRangePickerDay'];
28
53
  };
29
54
  MuiDateTimePicker?: {
30
55
  defaultProps?: ComponentsProps['MuiDateTimePicker'];
31
- styleOverrides?: ComponentsOverrides['MuiDateTimePicker'];
56
+ styleOverrides?: ComponentsOverrides<Theme>['MuiDateTimePicker'];
57
+ /**
58
+ * @deprecated pass a callback to the slot in `styleOverrides` instead. [See example](https://mui.com/customization/theme-components/#overrides-based-on-props)
59
+ */
32
60
  variants?: ComponentsVariants['MuiDateTimePicker'];
33
61
  };
34
62
  MuiLoadingButton?: {
35
63
  defaultProps?: ComponentsProps['MuiLoadingButton'];
36
- styleOverrides?: ComponentsOverrides['MuiLoadingButton'];
64
+ styleOverrides?: ComponentsOverrides<Theme>['MuiLoadingButton'];
65
+ /**
66
+ * @deprecated pass a callback to the slot in `styleOverrides` instead. [See example](https://mui.com/customization/theme-components/#overrides-based-on-props)
67
+ */
37
68
  variants?: ComponentsVariants['MuiLoadingButton'];
38
69
  };
39
70
  MuiMonthPicker?: {
40
71
  defaultProps?: ComponentsProps['MuiMonthPicker'];
41
- styleOverrides?: ComponentsOverrides['MuiMonthPicker'];
72
+ styleOverrides?: ComponentsOverrides<Theme>['MuiMonthPicker'];
73
+ /**
74
+ * @deprecated pass a callback to the slot in `styleOverrides` instead. [See example](https://mui.com/customization/theme-components/#overrides-based-on-props)
75
+ */
42
76
  variants?: ComponentsVariants['MuiMonthPicker'];
43
77
  };
44
78
  MuiPickersDay?: {
45
79
  defaultProps?: ComponentsProps['MuiPickersDay'];
46
- styleOverrides?: ComponentsOverrides['MuiPickersDay'];
80
+ styleOverrides?: ComponentsOverrides<Theme>['MuiPickersDay'];
81
+ /**
82
+ * @deprecated pass a callback to the slot in `styleOverrides` instead. [See example](https://mui.com/customization/theme-components/#overrides-based-on-props)
83
+ */
47
84
  variants?: ComponentsVariants['MuiPickersDay'];
48
85
  };
49
86
  MuiTabList?: {
50
87
  defaultProps?: ComponentsProps['MuiTabList'];
51
- styleOverrides?: ComponentsOverrides['MuiTabList'];
88
+ styleOverrides?: ComponentsOverrides<Theme>['MuiTabList'];
89
+ /**
90
+ * @deprecated pass a callback to the slot in `styleOverrides` instead. [See example](https://mui.com/customization/theme-components/#overrides-based-on-props)
91
+ */
52
92
  variants?: ComponentsVariants['MuiTabList'];
53
93
  };
54
94
  MuiTabPanel?: {
55
95
  defaultProps?: ComponentsProps['MuiTabPanel'];
56
- styleOverrides?: ComponentsOverrides['MuiTabPanel'];
96
+ styleOverrides?: ComponentsOverrides<Theme>['MuiTabPanel'];
97
+ /**
98
+ * @deprecated pass a callback to the slot in `styleOverrides` instead. [See example](https://mui.com/customization/theme-components/#overrides-based-on-props)
99
+ */
57
100
  variants?: ComponentsVariants['MuiTabPanel'];
58
101
  };
59
102
  MuiTimeline?: {
60
103
  defaultProps?: ComponentsProps['MuiTimeline'];
61
- styleOverrides?: ComponentsOverrides['MuiTimeline'];
104
+ styleOverrides?: ComponentsOverrides<Theme>['MuiTimeline'];
105
+ /**
106
+ * @deprecated pass a callback to the slot in `styleOverrides` instead. [See example](https://mui.com/customization/theme-components/#overrides-based-on-props)
107
+ */
62
108
  variants?: ComponentsVariants['MuiTimeline'];
63
109
  };
64
110
  MuiTimelineConnector?: {
65
111
  defaultProps?: ComponentsProps['MuiTimelineConnector'];
66
- styleOverrides?: ComponentsOverrides['MuiTimelineConnector'];
112
+ styleOverrides?: ComponentsOverrides<Theme>['MuiTimelineConnector'];
113
+ /**
114
+ * @deprecated pass a callback to the slot in `styleOverrides` instead. [See example](https://mui.com/customization/theme-components/#overrides-based-on-props)
115
+ */
67
116
  variants?: ComponentsVariants['MuiTimelineConnector'];
68
117
  };
69
118
  MuiTimelineContent?: {
70
119
  defaultProps?: ComponentsProps['MuiTimelineContent'];
71
- styleOverrides?: ComponentsOverrides['MuiTimelineContent'];
120
+ styleOverrides?: ComponentsOverrides<Theme>['MuiTimelineContent'];
121
+ /**
122
+ * @deprecated pass a callback to the slot in `styleOverrides` instead. [See example](https://mui.com/customization/theme-components/#overrides-based-on-props)
123
+ */
72
124
  variants?: ComponentsVariants['MuiTimelineContent'];
73
125
  };
74
126
  MuiTimelineDot?: {
75
127
  defaultProps?: ComponentsProps['MuiTimelineDot'];
76
- styleOverrides?: ComponentsOverrides['MuiTimelineDot'];
128
+ styleOverrides?: ComponentsOverrides<Theme>['MuiTimelineDot'];
129
+ /**
130
+ * @deprecated pass a callback to the slot in `styleOverrides` instead. [See example](https://mui.com/customization/theme-components/#overrides-based-on-props)
131
+ */
77
132
  variants?: ComponentsVariants['MuiTimelineDot'];
78
133
  };
79
134
  MuiTimelineItem?: {
80
135
  defaultProps?: ComponentsProps['MuiTimelineItem'];
81
- styleOverrides?: ComponentsOverrides['MuiTimelineItem'];
136
+ styleOverrides?: ComponentsOverrides<Theme>['MuiTimelineItem'];
137
+ /**
138
+ * @deprecated pass a callback to the slot in `styleOverrides` instead. [See example](https://mui.com/customization/theme-components/#overrides-based-on-props)
139
+ */
82
140
  variants?: ComponentsVariants['MuiTimelineItem'];
83
141
  };
84
142
  MuiTimelineOppositeContent?: {
85
143
  defaultProps?: ComponentsProps['MuiTimelineOppositeContent'];
86
- styleOverrides?: ComponentsOverrides['MuiTimelineOppositeContent'];
144
+ styleOverrides?: ComponentsOverrides<Theme>['MuiTimelineOppositeContent'];
145
+ /**
146
+ * @deprecated pass a callback to the slot in `styleOverrides` instead. [See example](https://mui.com/customization/theme-components/#overrides-based-on-props)
147
+ */
87
148
  variants?: ComponentsVariants['MuiTimelineOppositeContent'];
88
149
  };
89
150
  MuiTimelineSeparator?: {
90
151
  defaultProps?: ComponentsProps['MuiTimelineSeparator'];
91
- styleOverrides?: ComponentsOverrides['MuiTimelineSeparator'];
152
+ styleOverrides?: ComponentsOverrides<Theme>['MuiTimelineSeparator'];
153
+ /**
154
+ * @deprecated pass a callback to the slot in `styleOverrides` instead. [See example](https://mui.com/customization/theme-components/#overrides-based-on-props)
155
+ */
92
156
  variants?: ComponentsVariants['MuiTimelineSeparator'];
93
157
  };
94
158
  MuiTreeItem?: {
95
159
  defaultProps?: ComponentsProps['MuiTreeItem'];
96
- styleOverrides?: ComponentsOverrides['MuiTreeItem'];
160
+ styleOverrides?: ComponentsOverrides<Theme>['MuiTreeItem'];
161
+ /**
162
+ * @deprecated pass a callback to the slot in `styleOverrides` instead. [See example](https://mui.com/customization/theme-components/#overrides-based-on-props)
163
+ */
97
164
  variants?: ComponentsVariants['MuiTreeItem'];
98
165
  };
99
166
  MuiTreeView?: {
100
167
  defaultProps?: ComponentsProps['MuiTreeView'];
101
- styleOverrides?: ComponentsOverrides['MuiTreeView'];
168
+ styleOverrides?: ComponentsOverrides<Theme>['MuiTreeView'];
169
+ /**
170
+ * @deprecated pass a callback to the slot in `styleOverrides` instead. [See example](https://mui.com/customization/theme-components/#overrides-based-on-props)
171
+ */
102
172
  variants?: ComponentsVariants['MuiTreeView'];
103
173
  };
104
174
  MuiYearPicker?: {
105
175
  defaultProps?: ComponentsProps['MuiYearPicker'];
106
- styleOverrides?: ComponentsOverrides['MuiYearPicker'];
176
+ styleOverrides?: ComponentsOverrides<Theme>['MuiYearPicker'];
177
+ /**
178
+ * @deprecated pass a callback to the slot in `styleOverrides` instead. [See example](https://mui.com/customization/theme-components/#overrides-based-on-props)
179
+ */
107
180
  variants?: ComponentsVariants['MuiYearPicker'];
108
181
  };
109
182
  MuiPickerStaticWrapper?: {
110
183
  defaultProps?: ComponentsProps['MuiPickerStaticWrapper'];
111
- styleOverrides?: ComponentsOverrides['MuiPickerStaticWrapper'];
184
+ styleOverrides?: ComponentsOverrides<Theme>['MuiPickerStaticWrapper'];
185
+ /**
186
+ * @deprecated pass a callback to the slot in `styleOverrides` instead. [See example](https://mui.com/customization/theme-components/#overrides-based-on-props)
187
+ */
112
188
  variants?: ComponentsVariants['MuiPickerStaticWrapper'];
113
189
  };
114
190
  }