@mui/material 6.0.0-beta.0 → 6.0.0-beta.2

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 (207) hide show
  1. package/Autocomplete/Autocomplete.d.ts +6 -7
  2. package/Autocomplete/Autocomplete.js +1 -1
  3. package/Badge/Badge.d.ts +1 -1
  4. package/Badge/Badge.js +2 -2
  5. package/Badge/useBadge.d.ts +13 -0
  6. package/Badge/useBadge.js +41 -0
  7. package/Badge/useBadge.types.d.ts +40 -0
  8. package/Badge/useBadge.types.js +1 -0
  9. package/Breadcrumbs/Breadcrumbs.d.ts +1 -1
  10. package/Breadcrumbs/Breadcrumbs.js +1 -1
  11. package/CHANGELOG.md +48 -0
  12. package/ClickAwayListener/ClickAwayListener.d.ts +47 -0
  13. package/ClickAwayListener/ClickAwayListener.js +178 -0
  14. package/ClickAwayListener/index.d.ts +2 -2
  15. package/ClickAwayListener/index.js +1 -1
  16. package/InputBase/InputBase.js +2 -2
  17. package/ListItem/ListItem.js +1 -1
  18. package/Menu/Menu.js +1 -1
  19. package/Modal/Modal.d.ts +1 -1
  20. package/Modal/Modal.js +1 -1
  21. package/Modal/ModalManager.d.ts +25 -0
  22. package/Modal/ModalManager.js +211 -0
  23. package/Modal/index.d.ts +1 -1
  24. package/Modal/index.js +1 -1
  25. package/Modal/useModal.d.ts +13 -0
  26. package/Modal/useModal.js +195 -0
  27. package/Modal/useModal.types.d.ts +115 -0
  28. package/Modal/useModal.types.js +1 -0
  29. package/NoSsr/NoSsr.d.ts +25 -0
  30. package/NoSsr/NoSsr.js +73 -0
  31. package/NoSsr/NoSsr.types.d.ts +18 -0
  32. package/NoSsr/NoSsr.types.js +1 -0
  33. package/NoSsr/index.d.ts +3 -2
  34. package/NoSsr/index.js +1 -1
  35. package/Popover/Popover.js +1 -1
  36. package/Popper/BasePopper.d.ts +7 -0
  37. package/Popper/BasePopper.js +370 -0
  38. package/Popper/BasePopper.types.d.ts +130 -0
  39. package/Popper/BasePopper.types.js +1 -0
  40. package/Popper/Popper.d.ts +1 -1
  41. package/Popper/Popper.js +1 -1
  42. package/Popper/index.d.ts +2 -1
  43. package/Popper/index.js +2 -1
  44. package/Popper/popperClasses.d.ts +8 -0
  45. package/Popper/popperClasses.js +7 -0
  46. package/Portal/Portal.d.ts +16 -0
  47. package/Portal/Portal.js +92 -0
  48. package/Portal/Portal.types.d.ts +23 -0
  49. package/Portal/Portal.types.js +1 -0
  50. package/Portal/index.d.ts +3 -2
  51. package/Portal/index.js +1 -1
  52. package/Slider/Slider.d.ts +2 -2
  53. package/Slider/Slider.js +3 -2
  54. package/Slider/useSlider.d.ts +14 -0
  55. package/Slider/useSlider.js +647 -0
  56. package/Slider/useSlider.types.d.ts +228 -0
  57. package/Slider/useSlider.types.js +1 -0
  58. package/Snackbar/Snackbar.d.ts +1 -1
  59. package/Snackbar/Snackbar.js +3 -3
  60. package/Snackbar/useSnackbar.d.ts +14 -0
  61. package/Snackbar/useSnackbar.js +133 -0
  62. package/Snackbar/useSnackbar.types.d.ts +60 -0
  63. package/Snackbar/useSnackbar.types.js +1 -0
  64. package/SwipeableDrawer/SwipeableDrawer.js +1 -1
  65. package/TabScrollButton/TabScrollButton.d.ts +1 -1
  66. package/TabScrollButton/TabScrollButton.js +1 -1
  67. package/TablePagination/TablePagination.js +1 -1
  68. package/Tabs/Tabs.d.ts +1 -1
  69. package/Tabs/Tabs.js +1 -1
  70. package/TextareaAutosize/TextareaAutosize.d.ts +14 -0
  71. package/TextareaAutosize/TextareaAutosize.js +222 -0
  72. package/TextareaAutosize/TextareaAutosize.types.d.ts +13 -0
  73. package/TextareaAutosize/TextareaAutosize.types.js +1 -0
  74. package/TextareaAutosize/index.d.ts +3 -2
  75. package/TextareaAutosize/index.js +1 -1
  76. package/Tooltip/Tooltip.js +1 -1
  77. package/Unstable_TrapFocus/FocusTrap.d.ts +10 -0
  78. package/Unstable_TrapFocus/FocusTrap.js +330 -0
  79. package/Unstable_TrapFocus/FocusTrap.types.d.ts +51 -0
  80. package/Unstable_TrapFocus/FocusTrap.types.js +1 -0
  81. package/Unstable_TrapFocus/index.d.ts +2 -2
  82. package/Unstable_TrapFocus/index.js +1 -1
  83. package/index.d.ts +1 -1
  84. package/index.js +2 -2
  85. package/modern/Autocomplete/Autocomplete.js +1 -1
  86. package/modern/Badge/Badge.js +2 -2
  87. package/modern/Badge/useBadge.js +41 -0
  88. package/modern/Badge/useBadge.types.js +1 -0
  89. package/modern/Breadcrumbs/Breadcrumbs.js +1 -1
  90. package/modern/ClickAwayListener/ClickAwayListener.js +178 -0
  91. package/modern/ClickAwayListener/index.js +1 -1
  92. package/modern/InputBase/InputBase.js +2 -2
  93. package/modern/ListItem/ListItem.js +1 -1
  94. package/modern/Menu/Menu.js +1 -1
  95. package/modern/Modal/Modal.js +1 -1
  96. package/modern/Modal/ModalManager.js +211 -0
  97. package/modern/Modal/index.js +1 -1
  98. package/modern/Modal/useModal.js +195 -0
  99. package/modern/Modal/useModal.types.js +1 -0
  100. package/modern/NoSsr/NoSsr.js +73 -0
  101. package/modern/NoSsr/NoSsr.types.js +1 -0
  102. package/modern/NoSsr/index.js +1 -1
  103. package/modern/Popover/Popover.js +1 -1
  104. package/modern/Popper/BasePopper.js +370 -0
  105. package/modern/Popper/BasePopper.types.js +1 -0
  106. package/modern/Popper/Popper.js +1 -1
  107. package/modern/Popper/index.js +2 -1
  108. package/modern/Popper/popperClasses.js +7 -0
  109. package/modern/Portal/Portal.js +92 -0
  110. package/modern/Portal/Portal.types.js +1 -0
  111. package/modern/Portal/index.js +1 -1
  112. package/modern/Slider/Slider.js +3 -2
  113. package/modern/Slider/useSlider.js +647 -0
  114. package/modern/Slider/useSlider.types.js +1 -0
  115. package/modern/Snackbar/Snackbar.js +3 -3
  116. package/modern/Snackbar/useSnackbar.js +133 -0
  117. package/modern/Snackbar/useSnackbar.types.js +1 -0
  118. package/modern/SwipeableDrawer/SwipeableDrawer.js +1 -1
  119. package/modern/TabScrollButton/TabScrollButton.js +1 -1
  120. package/modern/TablePagination/TablePagination.js +1 -1
  121. package/modern/Tabs/Tabs.js +1 -1
  122. package/modern/TextareaAutosize/TextareaAutosize.js +222 -0
  123. package/modern/TextareaAutosize/TextareaAutosize.types.js +1 -0
  124. package/modern/TextareaAutosize/index.js +1 -1
  125. package/modern/Tooltip/Tooltip.js +1 -1
  126. package/modern/Unstable_TrapFocus/FocusTrap.js +330 -0
  127. package/modern/Unstable_TrapFocus/FocusTrap.types.js +1 -0
  128. package/modern/Unstable_TrapFocus/index.js +1 -1
  129. package/modern/index.js +2 -2
  130. package/modern/useAutocomplete/useAutocomplete.js +976 -2
  131. package/modern/utils/PolymorphicComponent.js +1 -0
  132. package/modern/utils/areArraysEqual.js +4 -0
  133. package/modern/utils/index.js +1 -1
  134. package/modern/utils/isHostComponent.js +7 -0
  135. package/modern/utils/omitEventHandlers.js +18 -0
  136. package/modern/utils/shouldSpreadAdditionalProps.js +1 -1
  137. package/modern/utils/useSlot.js +3 -1
  138. package/node/Autocomplete/Autocomplete.js +3 -3
  139. package/node/Badge/Badge.js +5 -5
  140. package/node/Badge/useBadge.js +46 -0
  141. package/node/Badge/useBadge.types.js +5 -0
  142. package/node/Breadcrumbs/Breadcrumbs.js +2 -2
  143. package/node/ClickAwayListener/ClickAwayListener.js +184 -0
  144. package/node/ClickAwayListener/index.js +1 -1
  145. package/node/InputBase/InputBase.js +7 -7
  146. package/node/ListItem/ListItem.js +3 -3
  147. package/node/Menu/Menu.js +3 -3
  148. package/node/Modal/Modal.js +2 -2
  149. package/node/Modal/ModalManager.js +219 -0
  150. package/node/Modal/index.js +2 -2
  151. package/node/Modal/useModal.js +205 -0
  152. package/node/Modal/useModal.types.js +5 -0
  153. package/node/NoSsr/NoSsr.js +81 -0
  154. package/node/NoSsr/NoSsr.types.js +5 -0
  155. package/node/NoSsr/index.js +3 -2
  156. package/node/Popover/Popover.js +2 -2
  157. package/node/Popper/BasePopper.js +379 -0
  158. package/node/Popper/BasePopper.types.js +5 -0
  159. package/node/Popper/Popper.js +2 -2
  160. package/node/Popper/index.js +14 -1
  161. package/node/Popper/popperClasses.js +15 -0
  162. package/node/Portal/Portal.js +100 -0
  163. package/node/Portal/Portal.types.js +5 -0
  164. package/node/Portal/index.js +3 -2
  165. package/node/Slider/Slider.js +14 -13
  166. package/node/Slider/useSlider.js +670 -0
  167. package/node/Slider/useSlider.types.js +5 -0
  168. package/node/Snackbar/Snackbar.js +6 -6
  169. package/node/Snackbar/useSnackbar.js +141 -0
  170. package/node/Snackbar/useSnackbar.types.js +5 -0
  171. package/node/SwipeableDrawer/SwipeableDrawer.js +2 -2
  172. package/node/TabScrollButton/TabScrollButton.js +3 -3
  173. package/node/TablePagination/TablePagination.js +2 -2
  174. package/node/Tabs/Tabs.js +3 -3
  175. package/node/TextareaAutosize/TextareaAutosize.js +230 -0
  176. package/node/TextareaAutosize/TextareaAutosize.types.js +5 -0
  177. package/node/TextareaAutosize/index.js +3 -2
  178. package/node/Tooltip/Tooltip.js +5 -5
  179. package/node/Unstable_TrapFocus/FocusTrap.js +339 -0
  180. package/node/Unstable_TrapFocus/FocusTrap.types.js +5 -0
  181. package/node/Unstable_TrapFocus/index.js +3 -2
  182. package/node/index.js +3 -3
  183. package/node/useAutocomplete/useAutocomplete.js +985 -18
  184. package/node/utils/PolymorphicComponent.js +5 -0
  185. package/node/utils/areArraysEqual.js +10 -0
  186. package/node/utils/index.js +2 -2
  187. package/node/utils/isHostComponent.js +13 -0
  188. package/node/utils/omitEventHandlers.js +24 -0
  189. package/node/utils/shouldSpreadAdditionalProps.js +3 -2
  190. package/node/utils/useSlot.js +6 -4
  191. package/package.json +8 -8
  192. package/styles/overrides.d.ts +1 -1
  193. package/useAutocomplete/useAutocomplete.d.ts +468 -2
  194. package/useAutocomplete/useAutocomplete.js +976 -2
  195. package/utils/PolymorphicComponent.d.ts +17 -0
  196. package/utils/PolymorphicComponent.js +1 -0
  197. package/utils/areArraysEqual.d.ts +3 -0
  198. package/utils/areArraysEqual.js +4 -0
  199. package/utils/index.d.ts +2 -1
  200. package/utils/index.js +1 -1
  201. package/utils/isHostComponent.d.ts +6 -0
  202. package/utils/isHostComponent.js +7 -0
  203. package/utils/omitEventHandlers.d.ts +9 -0
  204. package/utils/omitEventHandlers.js +18 -0
  205. package/utils/shouldSpreadAdditionalProps.js +1 -1
  206. package/utils/types.d.ts +2 -1
  207. package/utils/useSlot.js +3 -1
@@ -8,10 +8,10 @@ Object.defineProperty(exports, "__esModule", {
8
8
  exports.default = void 0;
9
9
  var React = _interopRequireWildcard(require("react"));
10
10
  var _propTypes = _interopRequireDefault(require("prop-types"));
11
- var _utils = require("@mui/base/utils");
12
11
  var _composeClasses = _interopRequireDefault(require("@mui/utils/composeClasses"));
13
- var _ClickAwayListener = require("@mui/base/ClickAwayListener");
14
- var _useSnackbar = require("@mui/base/useSnackbar");
12
+ var _useSlotProps = _interopRequireDefault(require("@mui/utils/useSlotProps"));
13
+ var _useSnackbar = _interopRequireDefault(require("./useSnackbar"));
14
+ var _ClickAwayListener = _interopRequireDefault(require("../ClickAwayListener"));
15
15
  var _zeroStyled = require("../zero-styled");
16
16
  var _DefaultPropsProvider = require("../DefaultPropsProvider");
17
17
  var _capitalize = _interopRequireDefault(require("../utils/capitalize"));
@@ -162,11 +162,11 @@ const Snackbar = /*#__PURE__*/React.forwardRef(function Snackbar(inProps, ref) {
162
162
  const {
163
163
  getRootProps,
164
164
  onClickAway
165
- } = (0, _useSnackbar.useSnackbar)({
165
+ } = (0, _useSnackbar.default)({
166
166
  ...ownerState
167
167
  });
168
168
  const [exited, setExited] = React.useState(true);
169
- const rootProps = (0, _utils.useSlotProps)({
169
+ const rootProps = (0, _useSlotProps.default)({
170
170
  elementType: SnackbarRoot,
171
171
  getSlotProps: getRootProps,
172
172
  externalForwardedProps: other,
@@ -193,7 +193,7 @@ const Snackbar = /*#__PURE__*/React.forwardRef(function Snackbar(inProps, ref) {
193
193
  if (!open && exited) {
194
194
  return null;
195
195
  }
196
- return /*#__PURE__*/(0, _jsxRuntime.jsx)(_ClickAwayListener.ClickAwayListener, {
196
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_ClickAwayListener.default, {
197
197
  onClickAway: onClickAway,
198
198
  ...ClickAwayListenerProps,
199
199
  children: /*#__PURE__*/(0, _jsxRuntime.jsx)(SnackbarRoot, {
@@ -0,0 +1,141 @@
1
+ "use strict";
2
+ 'use client';
3
+
4
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.default = void 0;
9
+ var React = _interopRequireWildcard(require("react"));
10
+ var _utils = require("@mui/utils");
11
+ var _extractEventHandlers = _interopRequireDefault(require("@mui/utils/extractEventHandlers"));
12
+ function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
13
+ function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
14
+ /**
15
+ * The basic building block for creating custom snackbar.
16
+ *
17
+ * Demos:
18
+ *
19
+ * - [Snackbar](https://next.mui.com/base-ui/react-snackbar/#hook)
20
+ *
21
+ * API:
22
+ *
23
+ * - [useSnackbar API](https://next.mui.com/base-ui/react-snackbar/hooks-api/#use-snackbar)
24
+ */
25
+ function useSnackbar(parameters = {}) {
26
+ const {
27
+ autoHideDuration = null,
28
+ disableWindowBlurListener = false,
29
+ onClose,
30
+ open,
31
+ resumeHideDuration
32
+ } = parameters;
33
+ const timerAutoHide = (0, _utils.unstable_useTimeout)();
34
+ React.useEffect(() => {
35
+ if (!open) {
36
+ return undefined;
37
+ }
38
+
39
+ /**
40
+ * @param {KeyboardEvent} nativeEvent
41
+ */
42
+ function handleKeyDown(nativeEvent) {
43
+ if (!nativeEvent.defaultPrevented) {
44
+ if (nativeEvent.key === 'Escape') {
45
+ // not calling `preventDefault` since we don't know if people may ignore this event e.g. a permanently open snackbar
46
+ onClose == null || onClose(nativeEvent, 'escapeKeyDown');
47
+ }
48
+ }
49
+ }
50
+ document.addEventListener('keydown', handleKeyDown);
51
+ return () => {
52
+ document.removeEventListener('keydown', handleKeyDown);
53
+ };
54
+ }, [open, onClose]);
55
+ const handleClose = (0, _utils.unstable_useEventCallback)((event, reason) => {
56
+ onClose == null || onClose(event, reason);
57
+ });
58
+ const setAutoHideTimer = (0, _utils.unstable_useEventCallback)(autoHideDurationParam => {
59
+ if (!onClose || autoHideDurationParam == null) {
60
+ return;
61
+ }
62
+ timerAutoHide.start(autoHideDurationParam, () => {
63
+ handleClose(null, 'timeout');
64
+ });
65
+ });
66
+ React.useEffect(() => {
67
+ if (open) {
68
+ setAutoHideTimer(autoHideDuration);
69
+ }
70
+ return timerAutoHide.clear;
71
+ }, [open, autoHideDuration, setAutoHideTimer, timerAutoHide]);
72
+ const handleClickAway = event => {
73
+ onClose == null || onClose(event, 'clickaway');
74
+ };
75
+
76
+ // Pause the timer when the user is interacting with the Snackbar
77
+ // or when the user hide the window.
78
+ const handlePause = timerAutoHide.clear;
79
+
80
+ // Restart the timer when the user is no longer interacting with the Snackbar
81
+ // or when the window is shown back.
82
+ const handleResume = React.useCallback(() => {
83
+ if (autoHideDuration != null) {
84
+ setAutoHideTimer(resumeHideDuration != null ? resumeHideDuration : autoHideDuration * 0.5);
85
+ }
86
+ }, [autoHideDuration, resumeHideDuration, setAutoHideTimer]);
87
+ const createHandleBlur = otherHandlers => event => {
88
+ const onBlurCallback = otherHandlers.onBlur;
89
+ onBlurCallback == null || onBlurCallback(event);
90
+ handleResume();
91
+ };
92
+ const createHandleFocus = otherHandlers => event => {
93
+ const onFocusCallback = otherHandlers.onFocus;
94
+ onFocusCallback == null || onFocusCallback(event);
95
+ handlePause();
96
+ };
97
+ const createMouseEnter = otherHandlers => event => {
98
+ const onMouseEnterCallback = otherHandlers.onMouseEnter;
99
+ onMouseEnterCallback == null || onMouseEnterCallback(event);
100
+ handlePause();
101
+ };
102
+ const createMouseLeave = otherHandlers => event => {
103
+ const onMouseLeaveCallback = otherHandlers.onMouseLeave;
104
+ onMouseLeaveCallback == null || onMouseLeaveCallback(event);
105
+ handleResume();
106
+ };
107
+ React.useEffect(() => {
108
+ // TODO: window global should be refactored here
109
+ if (!disableWindowBlurListener && open) {
110
+ window.addEventListener('focus', handleResume);
111
+ window.addEventListener('blur', handlePause);
112
+ return () => {
113
+ window.removeEventListener('focus', handleResume);
114
+ window.removeEventListener('blur', handlePause);
115
+ };
116
+ }
117
+ return undefined;
118
+ }, [disableWindowBlurListener, open, handleResume, handlePause]);
119
+ const getRootProps = (externalProps = {}) => {
120
+ const externalEventHandlers = {
121
+ ...(0, _extractEventHandlers.default)(parameters),
122
+ ...(0, _extractEventHandlers.default)(externalProps)
123
+ };
124
+ return {
125
+ // ClickAwayListener adds an `onClick` prop which results in the alert not being announced.
126
+ // See https://github.com/mui/material-ui/issues/29080
127
+ role: 'presentation',
128
+ ...externalProps,
129
+ ...externalEventHandlers,
130
+ onBlur: createHandleBlur(externalEventHandlers),
131
+ onFocus: createHandleFocus(externalEventHandlers),
132
+ onMouseEnter: createMouseEnter(externalEventHandlers),
133
+ onMouseLeave: createMouseLeave(externalEventHandlers)
134
+ };
135
+ };
136
+ return {
137
+ getRootProps,
138
+ onClickAway: handleClickAway
139
+ };
140
+ }
141
+ var _default = exports.default = useSnackbar;
@@ -0,0 +1,5 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
@@ -11,7 +11,7 @@ var React = _interopRequireWildcard(require("react"));
11
11
  var ReactDOM = _interopRequireWildcard(require("react-dom"));
12
12
  var _propTypes = _interopRequireDefault(require("prop-types"));
13
13
  var _elementTypeAcceptingRef = _interopRequireDefault(require("@mui/utils/elementTypeAcceptingRef"));
14
- var _base = require("@mui/base");
14
+ var _NoSsr = _interopRequireDefault(require("../NoSsr"));
15
15
  var _Drawer = _interopRequireWildcard(require("../Drawer/Drawer"));
16
16
  var _useForkRef = _interopRequireDefault(require("../utils/useForkRef"));
17
17
  var _ownerDocument = _interopRequireDefault(require("../utils/ownerDocument"));
@@ -488,7 +488,7 @@ const SwipeableDrawer = /*#__PURE__*/React.forwardRef(function SwipeableDrawer(i
488
488
  onClose: onClose,
489
489
  ref: ref,
490
490
  ...other
491
- }), !disableSwipeToOpen && variant === 'temporary' && /*#__PURE__*/(0, _jsxRuntime.jsx)(_base.NoSsr, {
491
+ }), !disableSwipeToOpen && variant === 'temporary' && /*#__PURE__*/(0, _jsxRuntime.jsx)(_NoSsr.default, {
492
492
  children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_SwipeArea.default, {
493
493
  anchor: anchor,
494
494
  ref: swipeAreaRef,
@@ -10,9 +10,9 @@ exports.default = void 0;
10
10
  var React = _interopRequireWildcard(require("react"));
11
11
  var _propTypes = _interopRequireDefault(require("prop-types"));
12
12
  var _clsx = _interopRequireDefault(require("clsx"));
13
- var _utils = require("@mui/base/utils");
14
13
  var _composeClasses = _interopRequireDefault(require("@mui/utils/composeClasses"));
15
14
  var _RtlProvider = require("@mui/system/RtlProvider");
15
+ var _useSlotProps = _interopRequireDefault(require("@mui/utils/useSlotProps"));
16
16
  var _KeyboardArrowLeft = _interopRequireDefault(require("../internal/svg-icons/KeyboardArrowLeft"));
17
17
  var _KeyboardArrowRight = _interopRequireDefault(require("../internal/svg-icons/KeyboardArrowRight"));
18
18
  var _ButtonBase = _interopRequireDefault(require("../ButtonBase"));
@@ -85,7 +85,7 @@ const TabScrollButton = /*#__PURE__*/React.forwardRef(function TabScrollButton(i
85
85
  const classes = useUtilityClasses(ownerState);
86
86
  const StartButtonIcon = (_slots$StartScrollBut = slots.StartScrollButtonIcon) != null ? _slots$StartScrollBut : _KeyboardArrowLeft.default;
87
87
  const EndButtonIcon = (_slots$EndScrollButto = slots.EndScrollButtonIcon) != null ? _slots$EndScrollButto : _KeyboardArrowRight.default;
88
- const startButtonIconProps = (0, _utils.useSlotProps)({
88
+ const startButtonIconProps = (0, _useSlotProps.default)({
89
89
  elementType: StartButtonIcon,
90
90
  externalSlotProps: slotProps.startScrollButtonIcon,
91
91
  additionalProps: {
@@ -93,7 +93,7 @@ const TabScrollButton = /*#__PURE__*/React.forwardRef(function TabScrollButton(i
93
93
  },
94
94
  ownerState
95
95
  });
96
- const endButtonIconProps = (0, _utils.useSlotProps)({
96
+ const endButtonIconProps = (0, _useSlotProps.default)({
97
97
  elementType: EndButtonIcon,
98
98
  externalSlotProps: slotProps.endScrollButtonIcon,
99
99
  additionalProps: {
@@ -12,8 +12,8 @@ var _propTypes = _interopRequireDefault(require("prop-types"));
12
12
  var _clsx = _interopRequireDefault(require("clsx"));
13
13
  var _integerPropType = _interopRequireDefault(require("@mui/utils/integerPropType"));
14
14
  var _chainPropTypes = _interopRequireDefault(require("@mui/utils/chainPropTypes"));
15
- var _utils = require("@mui/base/utils");
16
15
  var _composeClasses = _interopRequireDefault(require("@mui/utils/composeClasses"));
16
+ var _isHostComponent = _interopRequireDefault(require("../utils/isHostComponent"));
17
17
  var _zeroStyled = require("../zero-styled");
18
18
  var _DefaultPropsProvider = require("../DefaultPropsProvider");
19
19
  var _InputBase2 = _interopRequireDefault(require("../InputBase"));
@@ -234,7 +234,7 @@ const TablePagination = /*#__PURE__*/React.forwardRef(function TablePagination(i
234
234
  },
235
235
  disabled: disabled,
236
236
  children: rowsPerPageOptions.map(rowsPerPageOption => /*#__PURE__*/(0, _react.createElement)(MenuItemComponent, {
237
- ...(!(0, _utils.isHostComponent)(MenuItemComponent) && {
237
+ ...(!(0, _isHostComponent.default)(MenuItemComponent) && {
238
238
  ownerState
239
239
  }),
240
240
  className: classes.menuItem,
package/node/Tabs/Tabs.js CHANGED
@@ -11,9 +11,9 @@ var _reactIs = require("react-is");
11
11
  var _propTypes = _interopRequireDefault(require("prop-types"));
12
12
  var _clsx = _interopRequireDefault(require("clsx"));
13
13
  var _refType = _interopRequireDefault(require("@mui/utils/refType"));
14
- var _utils = require("@mui/base/utils");
15
14
  var _composeClasses = _interopRequireDefault(require("@mui/utils/composeClasses"));
16
15
  var _RtlProvider = require("@mui/system/RtlProvider");
16
+ var _useSlotProps = _interopRequireDefault(require("@mui/utils/useSlotProps"));
17
17
  var _zeroStyled = require("../zero-styled");
18
18
  var _DefaultPropsProvider = require("../DefaultPropsProvider");
19
19
  var _debounce = _interopRequireDefault(require("../utils/debounce"));
@@ -317,12 +317,12 @@ const Tabs = /*#__PURE__*/React.forwardRef(function Tabs(inProps, ref) {
317
317
  scrollButtonsHideMobile: !allowScrollButtonsMobile
318
318
  };
319
319
  const classes = useUtilityClasses(ownerState);
320
- const startScrollButtonIconProps = (0, _utils.useSlotProps)({
320
+ const startScrollButtonIconProps = (0, _useSlotProps.default)({
321
321
  elementType: slots.StartScrollButtonIcon,
322
322
  externalSlotProps: slotProps.startScrollButtonIcon,
323
323
  ownerState
324
324
  });
325
- const endScrollButtonIconProps = (0, _utils.useSlotProps)({
325
+ const endScrollButtonIconProps = (0, _useSlotProps.default)({
326
326
  elementType: slots.EndScrollButtonIcon,
327
327
  externalSlotProps: slotProps.endScrollButtonIcon,
328
328
  ownerState
@@ -0,0 +1,230 @@
1
+ "use strict";
2
+ 'use client';
3
+
4
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.default = void 0;
9
+ var React = _interopRequireWildcard(require("react"));
10
+ var _propTypes = _interopRequireDefault(require("prop-types"));
11
+ var _utils = require("@mui/utils");
12
+ var _jsxRuntime = require("react/jsx-runtime");
13
+ function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
14
+ function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
15
+ function getStyleValue(value) {
16
+ return parseInt(value, 10) || 0;
17
+ }
18
+ const styles = {
19
+ shadow: {
20
+ // Visibility needed to hide the extra text area on iPads
21
+ visibility: 'hidden',
22
+ // Remove from the content flow
23
+ position: 'absolute',
24
+ // Ignore the scrollbar width
25
+ overflow: 'hidden',
26
+ height: 0,
27
+ top: 0,
28
+ left: 0,
29
+ // Create a new layer, increase the isolation of the computed values
30
+ transform: 'translateZ(0)'
31
+ }
32
+ };
33
+ function isEmpty(obj) {
34
+ return obj === undefined || obj === null || Object.keys(obj).length === 0 || obj.outerHeightStyle === 0 && !obj.overflowing;
35
+ }
36
+
37
+ /**
38
+ *
39
+ * Demos:
40
+ *
41
+ * - [Textarea Autosize](https://next.mui.com/material-ui/react-textarea-autosize/)
42
+ *
43
+ * API:
44
+ *
45
+ * - [TextareaAutosize API](https://next.mui.com/material-ui/api/textarea-autosize/)
46
+ */
47
+ const TextareaAutosize = /*#__PURE__*/React.forwardRef(function TextareaAutosize(props, forwardedRef) {
48
+ const {
49
+ onChange,
50
+ maxRows,
51
+ minRows = 1,
52
+ style,
53
+ value,
54
+ ...other
55
+ } = props;
56
+ const {
57
+ current: isControlled
58
+ } = React.useRef(value != null);
59
+ const inputRef = React.useRef(null);
60
+ const handleRef = (0, _utils.unstable_useForkRef)(forwardedRef, inputRef);
61
+ const heightRef = React.useRef(null);
62
+ const shadowRef = React.useRef(null);
63
+ const calculateTextareaStyles = React.useCallback(() => {
64
+ const input = inputRef.current;
65
+ const containerWindow = (0, _utils.unstable_ownerWindow)(input);
66
+ const computedStyle = containerWindow.getComputedStyle(input);
67
+
68
+ // If input's width is shrunk and it's not visible, don't sync height.
69
+ if (computedStyle.width === '0px') {
70
+ return {
71
+ outerHeightStyle: 0,
72
+ overflowing: false
73
+ };
74
+ }
75
+ const inputShallow = shadowRef.current;
76
+ inputShallow.style.width = computedStyle.width;
77
+ inputShallow.value = input.value || props.placeholder || 'x';
78
+ if (inputShallow.value.slice(-1) === '\n') {
79
+ // Certain fonts which overflow the line height will cause the textarea
80
+ // to report a different scrollHeight depending on whether the last line
81
+ // is empty. Make it non-empty to avoid this issue.
82
+ inputShallow.value += ' ';
83
+ }
84
+ const boxSizing = computedStyle.boxSizing;
85
+ const padding = getStyleValue(computedStyle.paddingBottom) + getStyleValue(computedStyle.paddingTop);
86
+ const border = getStyleValue(computedStyle.borderBottomWidth) + getStyleValue(computedStyle.borderTopWidth);
87
+
88
+ // The height of the inner content
89
+ const innerHeight = inputShallow.scrollHeight;
90
+
91
+ // Measure height of a textarea with a single row
92
+ inputShallow.value = 'x';
93
+ const singleRowHeight = inputShallow.scrollHeight;
94
+
95
+ // The height of the outer content
96
+ let outerHeight = innerHeight;
97
+ if (minRows) {
98
+ outerHeight = Math.max(Number(minRows) * singleRowHeight, outerHeight);
99
+ }
100
+ if (maxRows) {
101
+ outerHeight = Math.min(Number(maxRows) * singleRowHeight, outerHeight);
102
+ }
103
+ outerHeight = Math.max(outerHeight, singleRowHeight);
104
+
105
+ // Take the box sizing into account for applying this value as a style.
106
+ const outerHeightStyle = outerHeight + (boxSizing === 'border-box' ? padding + border : 0);
107
+ const overflowing = Math.abs(outerHeight - innerHeight) <= 1;
108
+ return {
109
+ outerHeightStyle,
110
+ overflowing
111
+ };
112
+ }, [maxRows, minRows, props.placeholder]);
113
+ const syncHeight = React.useCallback(() => {
114
+ const textareaStyles = calculateTextareaStyles();
115
+ if (isEmpty(textareaStyles)) {
116
+ return;
117
+ }
118
+ const outerHeightStyle = textareaStyles.outerHeightStyle;
119
+ const input = inputRef.current;
120
+ if (heightRef.current !== outerHeightStyle) {
121
+ heightRef.current = outerHeightStyle;
122
+ input.style.height = `${outerHeightStyle}px`;
123
+ }
124
+ input.style.overflow = textareaStyles.overflowing ? 'hidden' : '';
125
+ }, [calculateTextareaStyles]);
126
+ (0, _utils.unstable_useEnhancedEffect)(() => {
127
+ const handleResize = () => {
128
+ syncHeight();
129
+ };
130
+ // Workaround a "ResizeObserver loop completed with undelivered notifications" error
131
+ // in test.
132
+ // Note that we might need to use this logic in production per https://github.com/WICG/resize-observer/issues/38
133
+ // Also see https://github.com/mui/mui-x/issues/8733
134
+ let rAF;
135
+ const rAFHandleResize = () => {
136
+ cancelAnimationFrame(rAF);
137
+ rAF = requestAnimationFrame(() => {
138
+ handleResize();
139
+ });
140
+ };
141
+ const debounceHandleResize = (0, _utils.unstable_debounce)(handleResize);
142
+ const input = inputRef.current;
143
+ const containerWindow = (0, _utils.unstable_ownerWindow)(input);
144
+ containerWindow.addEventListener('resize', debounceHandleResize);
145
+ let resizeObserver;
146
+ if (typeof ResizeObserver !== 'undefined') {
147
+ resizeObserver = new ResizeObserver(process.env.NODE_ENV === 'test' ? rAFHandleResize : handleResize);
148
+ resizeObserver.observe(input);
149
+ }
150
+ return () => {
151
+ debounceHandleResize.clear();
152
+ cancelAnimationFrame(rAF);
153
+ containerWindow.removeEventListener('resize', debounceHandleResize);
154
+ if (resizeObserver) {
155
+ resizeObserver.disconnect();
156
+ }
157
+ };
158
+ }, [calculateTextareaStyles, syncHeight]);
159
+ (0, _utils.unstable_useEnhancedEffect)(() => {
160
+ syncHeight();
161
+ });
162
+ const handleChange = event => {
163
+ if (!isControlled) {
164
+ syncHeight();
165
+ }
166
+ if (onChange) {
167
+ onChange(event);
168
+ }
169
+ };
170
+ return /*#__PURE__*/(0, _jsxRuntime.jsxs)(React.Fragment, {
171
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsx)("textarea", {
172
+ value: value,
173
+ onChange: handleChange,
174
+ ref: handleRef
175
+ // Apply the rows prop to get a "correct" first SSR paint
176
+ ,
177
+ rows: minRows,
178
+ style: style,
179
+ ...other
180
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)("textarea", {
181
+ "aria-hidden": true,
182
+ className: props.className,
183
+ readOnly: true,
184
+ ref: shadowRef,
185
+ tabIndex: -1,
186
+ style: {
187
+ ...styles.shadow,
188
+ ...style,
189
+ paddingTop: 0,
190
+ paddingBottom: 0
191
+ }
192
+ })]
193
+ });
194
+ });
195
+ process.env.NODE_ENV !== "production" ? TextareaAutosize.propTypes /* remove-proptypes */ = {
196
+ // ┌────────────────────────────── Warning ──────────────────────────────┐
197
+ // │ These PropTypes are generated from the TypeScript type definitions. │
198
+ // │ To update them, edit the TypeScript types and run `pnpm proptypes`. │
199
+ // └─────────────────────────────────────────────────────────────────────┘
200
+ /**
201
+ * @ignore
202
+ */
203
+ className: _propTypes.default.string,
204
+ /**
205
+ * Maximum number of rows to display.
206
+ */
207
+ maxRows: _propTypes.default.oneOfType([_propTypes.default.number, _propTypes.default.string]),
208
+ /**
209
+ * Minimum number of rows to display.
210
+ * @default 1
211
+ */
212
+ minRows: _propTypes.default.oneOfType([_propTypes.default.number, _propTypes.default.string]),
213
+ /**
214
+ * @ignore
215
+ */
216
+ onChange: _propTypes.default.func,
217
+ /**
218
+ * @ignore
219
+ */
220
+ placeholder: _propTypes.default.string,
221
+ /**
222
+ * @ignore
223
+ */
224
+ style: _propTypes.default.object,
225
+ /**
226
+ * @ignore
227
+ */
228
+ value: _propTypes.default.oneOfType([_propTypes.default.arrayOf(_propTypes.default.string), _propTypes.default.number, _propTypes.default.string])
229
+ } : void 0;
230
+ var _default = exports.default = TextareaAutosize;
@@ -0,0 +1,5 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
@@ -1,12 +1,13 @@
1
1
  "use strict";
2
2
 
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
3
4
  Object.defineProperty(exports, "__esModule", {
4
5
  value: true
5
6
  });
6
7
  Object.defineProperty(exports, "default", {
7
8
  enumerable: true,
8
9
  get: function () {
9
- return _TextareaAutosize.TextareaAutosize;
10
+ return _TextareaAutosize.default;
10
11
  }
11
12
  });
12
- var _TextareaAutosize = require("@mui/base/TextareaAutosize");
13
+ var _TextareaAutosize = _interopRequireDefault(require("./TextareaAutosize"));
@@ -12,11 +12,11 @@ var _propTypes = _interopRequireDefault(require("prop-types"));
12
12
  var _clsx = _interopRequireDefault(require("clsx"));
13
13
  var _useTimeout = _interopRequireWildcard(require("@mui/utils/useTimeout"));
14
14
  var _elementAcceptingRef = _interopRequireDefault(require("@mui/utils/elementAcceptingRef"));
15
- var _utils = require("@mui/base/utils");
16
15
  var _composeClasses = _interopRequireDefault(require("@mui/utils/composeClasses"));
17
16
  var _colorManipulator = require("@mui/system/colorManipulator");
18
17
  var _RtlProvider = require("@mui/system/RtlProvider");
19
18
  var _isFocusVisible = _interopRequireDefault(require("@mui/utils/isFocusVisible"));
19
+ var _appendOwnerState = _interopRequireDefault(require("@mui/utils/appendOwnerState"));
20
20
  var _zeroStyled = require("../zero-styled");
21
21
  var _DefaultPropsProvider = require("../DefaultPropsProvider");
22
22
  var _capitalize = _interopRequireDefault(require("../utils/capitalize"));
@@ -629,20 +629,20 @@ const Tooltip = /*#__PURE__*/React.forwardRef(function Tooltip(inProps, ref) {
629
629
  const TransitionComponent = (_ref2 = (_ref3 = (_slots$transition = slots.transition) != null ? _slots$transition : components.Transition) != null ? _ref3 : TransitionComponentProp) != null ? _ref2 : _Grow.default;
630
630
  const TooltipComponent = (_ref4 = (_slots$tooltip = slots.tooltip) != null ? _slots$tooltip : components.Tooltip) != null ? _ref4 : TooltipTooltip;
631
631
  const ArrowComponent = (_ref5 = (_slots$arrow = slots.arrow) != null ? _slots$arrow : components.Arrow) != null ? _ref5 : TooltipArrow;
632
- const popperProps = (0, _utils.appendOwnerState)(PopperComponent, {
632
+ const popperProps = (0, _appendOwnerState.default)(PopperComponent, {
633
633
  ...PopperProps,
634
634
  ...((_slotProps$popper = slotProps.popper) != null ? _slotProps$popper : componentsProps.popper),
635
635
  className: (0, _clsx.default)(classes.popper, PopperProps == null ? void 0 : PopperProps.className, (_ref6 = (_slotProps$popper2 = slotProps.popper) != null ? _slotProps$popper2 : componentsProps.popper) == null ? void 0 : _ref6.className)
636
636
  }, ownerState);
637
- const transitionProps = (0, _utils.appendOwnerState)(TransitionComponent, {
637
+ const transitionProps = (0, _appendOwnerState.default)(TransitionComponent, {
638
638
  ...TransitionProps,
639
639
  ...((_slotProps$transition = slotProps.transition) != null ? _slotProps$transition : componentsProps.transition)
640
640
  }, ownerState);
641
- const tooltipProps = (0, _utils.appendOwnerState)(TooltipComponent, {
641
+ const tooltipProps = (0, _appendOwnerState.default)(TooltipComponent, {
642
642
  ...((_slotProps$tooltip = slotProps.tooltip) != null ? _slotProps$tooltip : componentsProps.tooltip),
643
643
  className: (0, _clsx.default)(classes.tooltip, (_ref7 = (_slotProps$tooltip2 = slotProps.tooltip) != null ? _slotProps$tooltip2 : componentsProps.tooltip) == null ? void 0 : _ref7.className)
644
644
  }, ownerState);
645
- const tooltipArrowProps = (0, _utils.appendOwnerState)(ArrowComponent, {
645
+ const tooltipArrowProps = (0, _appendOwnerState.default)(ArrowComponent, {
646
646
  ...((_slotProps$arrow = slotProps.arrow) != null ? _slotProps$arrow : componentsProps.arrow),
647
647
  className: (0, _clsx.default)(classes.arrow, (_ref8 = (_slotProps$arrow2 = slotProps.arrow) != null ? _slotProps$arrow2 : componentsProps.arrow) == null ? void 0 : _ref8.className)
648
648
  }, ownerState);