@mui/utils 5.15.20 → 6.0.0-alpha.11

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 (139) hide show
  1. package/CHANGELOG.md +623 -111
  2. package/deepmerge/deepmerge.js +3 -2
  3. package/exactProp/exactProp.js +3 -3
  4. package/getDisplayName/getDisplayName.d.ts +0 -1
  5. package/getDisplayName/getDisplayName.js +1 -10
  6. package/getDisplayName/index.d.ts +0 -1
  7. package/getDisplayName/index.js +1 -2
  8. package/index.js +1 -1
  9. package/integerPropType/integerPropType.js +1 -8
  10. package/isMuiElement/isMuiElement.js +3 -3
  11. package/modern/deepmerge/deepmerge.js +3 -2
  12. package/modern/exactProp/exactProp.js +3 -3
  13. package/modern/getDisplayName/getDisplayName.js +1 -10
  14. package/modern/getDisplayName/index.js +1 -2
  15. package/modern/index.js +1 -1
  16. package/modern/integerPropType/integerPropType.js +1 -8
  17. package/modern/requirePropFactory/requirePropFactory.js +3 -2
  18. package/modern/resolveProps/resolveProps.js +10 -4
  19. package/modern/useControlled/useControlled.js +2 -0
  20. package/modern/useTimeout/useTimeout.js +11 -12
  21. package/node/debounce/index.js +1 -1
  22. package/node/deepmerge/deepmerge.js +3 -3
  23. package/node/deepmerge/index.js +1 -1
  24. package/node/exactProp/exactProp.js +3 -4
  25. package/node/generateUtilityClass/index.js +1 -1
  26. package/node/getDisplayName/getDisplayName.js +1 -10
  27. package/node/getDisplayName/index.js +2 -15
  28. package/node/getValidReactChildren/getValidReactChildren.js +1 -1
  29. package/node/index.js +2 -2
  30. package/node/integerPropType/index.js +1 -1
  31. package/node/integerPropType/integerPropType.js +1 -8
  32. package/node/isMuiElement/isMuiElement.js +1 -1
  33. package/node/requirePropFactory/requirePropFactory.js +3 -3
  34. package/node/resolveProps/resolveProps.js +10 -5
  35. package/node/useControlled/useControlled.js +3 -1
  36. package/node/useEnhancedEffect/useEnhancedEffect.js +1 -1
  37. package/node/useEventCallback/useEventCallback.js +1 -1
  38. package/node/useForkRef/useForkRef.js +1 -1
  39. package/node/useId/useId.js +1 -1
  40. package/node/useIsFocusVisible/index.js +1 -1
  41. package/node/useIsFocusVisible/useIsFocusVisible.js +1 -1
  42. package/node/useLazyRef/useLazyRef.js +1 -1
  43. package/node/useLocalStorageState/useLocalStorageState.js +1 -1
  44. package/node/useOnMount/useOnMount.js +1 -1
  45. package/node/usePreviousProps/usePreviousProps.js +1 -1
  46. package/node/useTimeout/index.js +1 -1
  47. package/node/useTimeout/useTimeout.js +11 -12
  48. package/package.json +3 -3
  49. package/requirePropFactory/requirePropFactory.js +4 -3
  50. package/resolveProps/resolveProps.js +10 -4
  51. package/useControlled/useControlled.js +2 -0
  52. package/useId/useId.js +1 -1
  53. package/useLocalStorageState/useLocalStorageState.js +1 -4
  54. package/useTimeout/useTimeout.js +11 -12
  55. package/legacy/ClassNameGenerator/ClassNameGenerator.js +0 -19
  56. package/legacy/ClassNameGenerator/index.js +0 -1
  57. package/legacy/HTMLElementType/HTMLElementType.js +0 -14
  58. package/legacy/HTMLElementType/index.js +0 -1
  59. package/legacy/capitalize/capitalize.js +0 -11
  60. package/legacy/capitalize/index.js +0 -1
  61. package/legacy/chainPropTypes/chainPropTypes.js +0 -10
  62. package/legacy/chainPropTypes/index.js +0 -1
  63. package/legacy/clamp/clamp.js +0 -6
  64. package/legacy/clamp/index.js +0 -1
  65. package/legacy/composeClasses/composeClasses.js +0 -22
  66. package/legacy/composeClasses/index.js +0 -1
  67. package/legacy/createChainedFunction/createChainedFunction.js +0 -23
  68. package/legacy/createChainedFunction/index.js +0 -1
  69. package/legacy/debounce/debounce.js +0 -22
  70. package/legacy/debounce/index.js +0 -2
  71. package/legacy/deepmerge/deepmerge.js +0 -41
  72. package/legacy/deepmerge/index.js +0 -2
  73. package/legacy/deprecatedPropType/deprecatedPropType.js +0 -15
  74. package/legacy/deprecatedPropType/index.js +0 -1
  75. package/legacy/elementAcceptingRef/elementAcceptingRef.js +0 -41
  76. package/legacy/elementAcceptingRef/index.js +0 -1
  77. package/legacy/elementTypeAcceptingRef/elementTypeAcceptingRef.js +0 -39
  78. package/legacy/elementTypeAcceptingRef/index.js +0 -1
  79. package/legacy/exactProp/exactProp.js +0 -23
  80. package/legacy/exactProp/index.js +0 -1
  81. package/legacy/formatMuiErrorMessage/formatMuiErrorMessage.js +0 -19
  82. package/legacy/formatMuiErrorMessage/index.js +0 -1
  83. package/legacy/generateUtilityClass/generateUtilityClass.js +0 -23
  84. package/legacy/generateUtilityClass/index.js +0 -2
  85. package/legacy/generateUtilityClasses/generateUtilityClasses.js +0 -9
  86. package/legacy/generateUtilityClasses/index.js +0 -1
  87. package/legacy/getDisplayName/getDisplayName.js +0 -49
  88. package/legacy/getDisplayName/index.js +0 -2
  89. package/legacy/getScrollbarSize/getScrollbarSize.js +0 -7
  90. package/legacy/getScrollbarSize/index.js +0 -1
  91. package/legacy/getValidReactChildren/getValidReactChildren.js +0 -13
  92. package/legacy/getValidReactChildren/index.js +0 -1
  93. package/legacy/index.js +0 -51
  94. package/legacy/integerPropType/index.js +0 -2
  95. package/legacy/integerPropType/integerPropType.js +0 -55
  96. package/legacy/isMuiElement/index.js +0 -1
  97. package/legacy/isMuiElement/isMuiElement.js +0 -8
  98. package/legacy/ownerDocument/index.js +0 -1
  99. package/legacy/ownerDocument/ownerDocument.js +0 -3
  100. package/legacy/ownerWindow/index.js +0 -1
  101. package/legacy/ownerWindow/ownerWindow.js +0 -5
  102. package/legacy/ponyfillGlobal/index.js +0 -1
  103. package/legacy/ponyfillGlobal/ponyfillGlobal.js +0 -3
  104. package/legacy/refType/index.js +0 -1
  105. package/legacy/refType/refType.js +0 -3
  106. package/legacy/requirePropFactory/index.js +0 -1
  107. package/legacy/requirePropFactory/requirePropFactory.js +0 -31
  108. package/legacy/resolveProps/index.js +0 -1
  109. package/legacy/resolveProps/resolveProps.js +0 -34
  110. package/legacy/scrollLeft/index.js +0 -1
  111. package/legacy/scrollLeft/scrollLeft.js +0 -70
  112. package/legacy/setRef/index.js +0 -1
  113. package/legacy/setRef/setRef.js +0 -20
  114. package/legacy/unsupportedProp/index.js +0 -1
  115. package/legacy/unsupportedProp/unsupportedProp.js +0 -10
  116. package/legacy/useControlled/index.js +0 -1
  117. package/legacy/useControlled/useControlled.js +0 -38
  118. package/legacy/useEnhancedEffect/index.js +0 -1
  119. package/legacy/useEnhancedEffect/useEnhancedEffect.js +0 -13
  120. package/legacy/useEventCallback/index.js +0 -1
  121. package/legacy/useEventCallback/useEventCallback.js +0 -23
  122. package/legacy/useForkRef/index.js +0 -1
  123. package/legacy/useForkRef/useForkRef.js +0 -27
  124. package/legacy/useId/index.js +0 -1
  125. package/legacy/useId/useId.js +0 -38
  126. package/legacy/useIsFocusVisible/index.js +0 -2
  127. package/legacy/useIsFocusVisible/useIsFocusVisible.js +0 -160
  128. package/legacy/useLazyRef/index.js +0 -1
  129. package/legacy/useLazyRef/useLazyRef.js +0 -19
  130. package/legacy/useLocalStorageState/index.js +0 -1
  131. package/legacy/useLocalStorageState/useLocalStorageState.js +0 -121
  132. package/legacy/useOnMount/index.js +0 -1
  133. package/legacy/useOnMount/useOnMount.js +0 -13
  134. package/legacy/usePreviousProps/index.js +0 -1
  135. package/legacy/usePreviousProps/usePreviousProps.js +0 -11
  136. package/legacy/useTimeout/index.js +0 -2
  137. package/legacy/useTimeout/useTimeout.js +0 -48
  138. package/legacy/visuallyHidden/index.js +0 -1
  139. package/legacy/visuallyHidden/visuallyHidden.js +0 -12
@@ -7,7 +7,7 @@ Object.defineProperty(exports, "__esModule", {
7
7
  exports.default = useId;
8
8
  var React = _interopRequireWildcard(require("react"));
9
9
  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); }
10
- 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 && Object.prototype.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; }
10
+ 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; }
11
11
  let globalId = 0;
12
12
  function useGlobalId(idOverride) {
13
13
  const [defaultId, setDefaultId] = React.useState(idOverride);
@@ -23,4 +23,4 @@ Object.keys(_useIsFocusVisible).forEach(function (key) {
23
23
  });
24
24
  });
25
25
  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); }
26
- 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 && Object.prototype.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; }
26
+ 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; }
@@ -10,7 +10,7 @@ exports.teardown = teardown;
10
10
  var React = _interopRequireWildcard(require("react"));
11
11
  var _useTimeout = require("../useTimeout/useTimeout");
12
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 && Object.prototype.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; }
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
14
  let hadKeyboardEvent = true;
15
15
  let hadFocusVisibleRecently = false;
16
16
  const hadFocusVisibleRecentlyTimeout = new _useTimeout.Timeout();
@@ -7,7 +7,7 @@ Object.defineProperty(exports, "__esModule", {
7
7
  exports.default = useLazyRef;
8
8
  var React = _interopRequireWildcard(require("react"));
9
9
  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); }
10
- 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 && Object.prototype.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; }
10
+ 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; }
11
11
  const UNINITIALIZED = {};
12
12
 
13
13
  /**
@@ -7,7 +7,7 @@ Object.defineProperty(exports, "__esModule", {
7
7
  exports.default = void 0;
8
8
  var React = _interopRequireWildcard(require("react"));
9
9
  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); }
10
- 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 && Object.prototype.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; }
10
+ 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; }
11
11
  // storage events only work across tabs, we'll use an event emitter to announce within the current tab
12
12
  const currentTabChangeListeners = new Map();
13
13
  function onCurrentTabStorageChange(key, handler) {
@@ -7,7 +7,7 @@ Object.defineProperty(exports, "__esModule", {
7
7
  exports.default = useOnMount;
8
8
  var React = _interopRequireWildcard(require("react"));
9
9
  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); }
10
- 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 && Object.prototype.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; }
10
+ 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; }
11
11
  const EMPTY = [];
12
12
 
13
13
  /**
@@ -7,7 +7,7 @@ Object.defineProperty(exports, "__esModule", {
7
7
  exports.default = void 0;
8
8
  var React = _interopRequireWildcard(require("react"));
9
9
  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); }
10
- 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 && Object.prototype.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; }
10
+ 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; }
11
11
  const usePreviousProps = value => {
12
12
  const ref = React.useRef({});
13
13
  React.useEffect(() => {
@@ -17,4 +17,4 @@ Object.defineProperty(exports, "default", {
17
17
  });
18
18
  var _useTimeout = _interopRequireWildcard(require("./useTimeout"));
19
19
  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); }
20
- 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 && Object.prototype.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; }
20
+ 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; }
@@ -10,21 +10,11 @@ exports.default = useTimeout;
10
10
  var _useLazyRef = _interopRequireDefault(require("../useLazyRef/useLazyRef"));
11
11
  var _useOnMount = _interopRequireDefault(require("../useOnMount/useOnMount"));
12
12
  class Timeout {
13
- constructor() {
14
- this.currentId = null;
15
- this.clear = () => {
16
- if (this.currentId !== null) {
17
- clearTimeout(this.currentId);
18
- this.currentId = null;
19
- }
20
- };
21
- this.disposeEffect = () => {
22
- return this.clear;
23
- };
24
- }
25
13
  static create() {
26
14
  return new Timeout();
27
15
  }
16
+ currentId = null;
17
+
28
18
  /**
29
19
  * Executes `fn` after `delay`, clearing any previously scheduled call.
30
20
  */
@@ -35,6 +25,15 @@ class Timeout {
35
25
  fn();
36
26
  }, delay);
37
27
  }
28
+ clear = () => {
29
+ if (this.currentId !== null) {
30
+ clearTimeout(this.currentId);
31
+ this.currentId = null;
32
+ }
33
+ };
34
+ disposeEffect = () => {
35
+ return this.clear;
36
+ };
38
37
  }
39
38
  exports.Timeout = Timeout;
40
39
  function useTimeout() {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mui/utils",
3
- "version": "5.15.20",
3
+ "version": "6.0.0-alpha.11",
4
4
  "private": false,
5
5
  "author": "MUI Team",
6
6
  "description": "Utility functions for React components.",
@@ -26,8 +26,8 @@
26
26
  "url": "https://opencollective.com/mui-org"
27
27
  },
28
28
  "dependencies": {
29
- "@babel/runtime": "^7.23.9",
30
- "@types/prop-types": "^15.7.11",
29
+ "@babel/runtime": "^7.24.7",
30
+ "@types/prop-types": "^15.7.12",
31
31
  "prop-types": "^15.8.1",
32
32
  "react-is": "^18.2.0"
33
33
  },
@@ -1,14 +1,15 @@
1
- import _extends from "@babel/runtime/helpers/esm/extends";
2
1
  export default function requirePropFactory(componentNameInError, Component) {
3
2
  if (process.env.NODE_ENV === 'production') {
4
3
  return () => null;
5
4
  }
6
5
 
7
6
  // eslint-disable-next-line react/forbid-foreign-prop-types
8
- const prevPropTypes = Component ? _extends({}, Component.propTypes) : null;
7
+ const prevPropTypes = Component ? {
8
+ ...Component.propTypes
9
+ } : null;
9
10
  const requireProp = requiredProp => (props, propName, componentName, location, propFullName, ...args) => {
10
11
  const propFullNameSafe = propFullName || propName;
11
- const defaultTypeChecker = prevPropTypes == null ? void 0 : prevPropTypes[propFullNameSafe];
12
+ const defaultTypeChecker = prevPropTypes?.[propFullNameSafe];
12
13
  if (defaultTypeChecker) {
13
14
  const typeCheckerResult = defaultTypeChecker(props, propName, componentName, location, propFullName, ...args);
14
15
  if (typeCheckerResult) {
@@ -1,4 +1,3 @@
1
- import _extends from "@babel/runtime/helpers/esm/extends";
2
1
  /**
3
2
  * Add keys, values of `defaultProps` that does not exist in `props`
4
3
  * @param {object} defaultProps
@@ -6,10 +5,15 @@ import _extends from "@babel/runtime/helpers/esm/extends";
6
5
  * @returns {object} resolved props
7
6
  */
8
7
  export default function resolveProps(defaultProps, props) {
9
- const output = _extends({}, props);
8
+ const output = {
9
+ ...props
10
+ };
10
11
  Object.keys(defaultProps).forEach(propName => {
11
12
  if (propName.toString().match(/^(components|slots)$/)) {
12
- output[propName] = _extends({}, defaultProps[propName], output[propName]);
13
+ output[propName] = {
14
+ ...defaultProps[propName],
15
+ ...output[propName]
16
+ };
13
17
  } else if (propName.toString().match(/^(componentsProps|slotProps)$/)) {
14
18
  const defaultSlotProps = defaultProps[propName] || {};
15
19
  const slotProps = props[propName];
@@ -21,7 +25,9 @@ export default function resolveProps(defaultProps, props) {
21
25
  // Reduce the iteration if the default slot props is empty
22
26
  output[propName] = slotProps;
23
27
  } else {
24
- output[propName] = _extends({}, slotProps);
28
+ output[propName] = {
29
+ ...slotProps
30
+ };
25
31
  Object.keys(defaultSlotProps).forEach(slotPropName => {
26
32
  output[propName][slotPropName] = resolveProps(defaultSlotProps[slotPropName], slotProps[slotPropName]);
27
33
  });
@@ -24,6 +24,8 @@ export default function useControlled({
24
24
  current: defaultValue
25
25
  } = React.useRef(defaultProp);
26
26
  React.useEffect(() => {
27
+ // Object.is() is not equivalent to the === operator.
28
+ // See https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/is for more details.
27
29
  if (!isControlled && !Object.is(defaultValue, defaultProp)) {
28
30
  console.error([`MUI: A component is changing the default ${state} state of an uncontrolled ${name} after being initialized. ` + `To suppress this warning opt to use a controlled ${name}.`].join('\n'));
29
31
  }
package/useId/useId.js CHANGED
@@ -29,7 +29,7 @@ const maybeReactUseId = React['useId'.toString()];
29
29
  export default function useId(idOverride) {
30
30
  if (maybeReactUseId !== undefined) {
31
31
  const reactId = maybeReactUseId();
32
- return idOverride != null ? idOverride : reactId;
32
+ return idOverride ?? reactId;
33
33
  }
34
34
  // eslint-disable-next-line react-hooks/rules-of-hooks -- `React.useId` is invariant at runtime.
35
35
  return useGlobalId(idOverride);
@@ -90,10 +90,7 @@ function useLocalStorageStateBrowser(key, initializer = null) {
90
90
  const [initialValue] = React.useState(initializer);
91
91
  const area = window.localStorage;
92
92
  const subscribeKey = React.useCallback(callbark => subscribe(area, key, callbark), [area, key]);
93
- const getKeySnapshot = React.useCallback(() => {
94
- var _getSnapshot;
95
- return (_getSnapshot = getSnapshot(area, key)) != null ? _getSnapshot : initialValue;
96
- }, [area, initialValue, key]);
93
+ const getKeySnapshot = React.useCallback(() => getSnapshot(area, key) ?? initialValue, [area, initialValue, key]);
97
94
 
98
95
  // Start with null for the hydration, and then switch to the actual value.
99
96
  const getKeyServerSnapshot = () => null;
@@ -3,21 +3,11 @@
3
3
  import useLazyRef from '../useLazyRef/useLazyRef';
4
4
  import useOnMount from '../useOnMount/useOnMount';
5
5
  export class Timeout {
6
- constructor() {
7
- this.currentId = null;
8
- this.clear = () => {
9
- if (this.currentId !== null) {
10
- clearTimeout(this.currentId);
11
- this.currentId = null;
12
- }
13
- };
14
- this.disposeEffect = () => {
15
- return this.clear;
16
- };
17
- }
18
6
  static create() {
19
7
  return new Timeout();
20
8
  }
9
+ currentId = null;
10
+
21
11
  /**
22
12
  * Executes `fn` after `delay`, clearing any previously scheduled call.
23
13
  */
@@ -28,6 +18,15 @@ export class Timeout {
28
18
  fn();
29
19
  }, delay);
30
20
  }
21
+ clear = () => {
22
+ if (this.currentId !== null) {
23
+ clearTimeout(this.currentId);
24
+ this.currentId = null;
25
+ }
26
+ };
27
+ disposeEffect = () => {
28
+ return this.clear;
29
+ };
31
30
  }
32
31
  export default function useTimeout() {
33
32
  const timeout = useLazyRef(Timeout.create).current;
@@ -1,19 +0,0 @@
1
- var defaultGenerator = function defaultGenerator(componentName) {
2
- return componentName;
3
- };
4
- var createClassNameGenerator = function createClassNameGenerator() {
5
- var _generate = defaultGenerator;
6
- return {
7
- configure: function configure(generator) {
8
- _generate = generator;
9
- },
10
- generate: function generate(componentName) {
11
- return _generate(componentName);
12
- },
13
- reset: function reset() {
14
- _generate = defaultGenerator;
15
- }
16
- };
17
- };
18
- var ClassNameGenerator = createClassNameGenerator();
19
- export default ClassNameGenerator;
@@ -1 +0,0 @@
1
- export { default } from './ClassNameGenerator';
@@ -1,14 +0,0 @@
1
- export default function HTMLElementType(props, propName, componentName, location, propFullName) {
2
- if (process.env.NODE_ENV === 'production') {
3
- return null;
4
- }
5
- var propValue = props[propName];
6
- var safePropName = propFullName || propName;
7
- if (propValue == null) {
8
- return null;
9
- }
10
- if (propValue && propValue.nodeType !== 1) {
11
- return new Error("Invalid ".concat(location, " `").concat(safePropName, "` supplied to `").concat(componentName, "`. ") + "Expected an HTMLElement.");
12
- }
13
- return null;
14
- }
@@ -1 +0,0 @@
1
- export { default } from './HTMLElementType';
@@ -1,11 +0,0 @@
1
- import _formatMuiErrorMessage from "@mui/utils/formatMuiErrorMessage";
2
- // It should to be noted that this function isn't equivalent to `text-transform: capitalize`.
3
- //
4
- // A strict capitalization should uppercase the first letter of each word in the sentence.
5
- // We only handle the first word.
6
- export default function capitalize(string) {
7
- if (typeof string !== 'string') {
8
- throw new Error(process.env.NODE_ENV !== "production" ? "MUI: `capitalize(string)` expects a string argument." : _formatMuiErrorMessage(7));
9
- }
10
- return string.charAt(0).toUpperCase() + string.slice(1);
11
- }
@@ -1 +0,0 @@
1
- export { default } from './capitalize';
@@ -1,10 +0,0 @@
1
- export default function chainPropTypes(propType1, propType2) {
2
- if (process.env.NODE_ENV === 'production') {
3
- return function () {
4
- return null;
5
- };
6
- }
7
- return function validate() {
8
- return propType1.apply(void 0, arguments) || propType2.apply(void 0, arguments);
9
- };
10
- }
@@ -1 +0,0 @@
1
- export { default } from './chainPropTypes';
@@ -1,6 +0,0 @@
1
- function clamp(val) {
2
- var min = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : Number.MIN_SAFE_INTEGER;
3
- var max = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : Number.MAX_SAFE_INTEGER;
4
- return Math.max(min, Math.min(val, max));
5
- }
6
- export default clamp;
@@ -1 +0,0 @@
1
- export { default } from './clamp';
@@ -1,22 +0,0 @@
1
- export default function composeClasses(slots, getUtilityClass) {
2
- var classes = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : undefined;
3
- var output = {};
4
- Object.keys(slots).forEach(
5
- // `Object.keys(slots)` can't be wider than `T` because we infer `T` from `slots`.
6
- // @ts-expect-error https://github.com/microsoft/TypeScript/pull/12253#issuecomment-263132208
7
- function (slot) {
8
- output[slot] = slots[slot].reduce(function (acc, key) {
9
- if (key) {
10
- var utilityClass = getUtilityClass(key);
11
- if (utilityClass !== '') {
12
- acc.push(utilityClass);
13
- }
14
- if (classes && classes[key]) {
15
- acc.push(classes[key]);
16
- }
17
- }
18
- return acc;
19
- }, []).join(' ');
20
- });
21
- return output;
22
- }
@@ -1 +0,0 @@
1
- export { default } from './composeClasses';
@@ -1,23 +0,0 @@
1
- /**
2
- * Safe chained function.
3
- *
4
- * Will only create a new function if needed,
5
- * otherwise will pass back existing functions or null.
6
- */
7
- export default function createChainedFunction() {
8
- for (var _len = arguments.length, funcs = new Array(_len), _key = 0; _key < _len; _key++) {
9
- funcs[_key] = arguments[_key];
10
- }
11
- return funcs.reduce(function (acc, func) {
12
- if (func == null) {
13
- return acc;
14
- }
15
- return function chainedFunction() {
16
- for (var _len2 = arguments.length, args = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {
17
- args[_key2] = arguments[_key2];
18
- }
19
- acc.apply(this, args);
20
- func.apply(this, args);
21
- };
22
- }, function () {});
23
- }
@@ -1 +0,0 @@
1
- export { default } from './createChainedFunction';
@@ -1,22 +0,0 @@
1
- // Corresponds to 10 frames at 60 Hz.
2
- // A few bytes payload overhead when lodash/debounce is ~3 kB and debounce ~300 B.
3
- export default function debounce(func) {
4
- var wait = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 166;
5
- var timeout;
6
- function debounced() {
7
- var _this = this;
8
- for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
9
- args[_key] = arguments[_key];
10
- }
11
- var later = function later() {
12
- // @ts-ignore
13
- func.apply(_this, args);
14
- };
15
- clearTimeout(timeout);
16
- timeout = setTimeout(later, wait);
17
- }
18
- debounced.clear = function () {
19
- clearTimeout(timeout);
20
- };
21
- return debounced;
22
- }
@@ -1,2 +0,0 @@
1
- export { default } from './debounce';
2
- export * from './debounce';
@@ -1,41 +0,0 @@
1
- import _extends from "@babel/runtime/helpers/esm/extends";
2
- import _typeof from "@babel/runtime/helpers/esm/typeof";
3
- // https://github.com/sindresorhus/is-plain-obj/blob/main/index.js
4
- export function isPlainObject(item) {
5
- if (_typeof(item) !== 'object' || item === null) {
6
- return false;
7
- }
8
- var prototype = Object.getPrototypeOf(item);
9
- return (prototype === null || prototype === Object.prototype || Object.getPrototypeOf(prototype) === null) && !(Symbol.toStringTag in item) && !(Symbol.iterator in item);
10
- }
11
- function deepClone(source) {
12
- if (!isPlainObject(source)) {
13
- return source;
14
- }
15
- var output = {};
16
- Object.keys(source).forEach(function (key) {
17
- output[key] = deepClone(source[key]);
18
- });
19
- return output;
20
- }
21
- export default function deepmerge(target, source) {
22
- var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {
23
- clone: true
24
- };
25
- var output = options.clone ? _extends({}, target) : target;
26
- if (isPlainObject(target) && isPlainObject(source)) {
27
- Object.keys(source).forEach(function (key) {
28
- if (isPlainObject(source[key]) &&
29
- // Avoid prototype pollution
30
- Object.prototype.hasOwnProperty.call(target, key) && isPlainObject(target[key])) {
31
- // Since `output` is a clone of `target` and we have narrowed `target` in this block we can cast to the same type.
32
- output[key] = deepmerge(target[key], source[key], options);
33
- } else if (options.clone) {
34
- output[key] = isPlainObject(source[key]) ? deepClone(source[key]) : source[key];
35
- } else {
36
- output[key] = source[key];
37
- }
38
- });
39
- }
40
- return output;
41
- }
@@ -1,2 +0,0 @@
1
- export { default } from './deepmerge';
2
- export * from './deepmerge';
@@ -1,15 +0,0 @@
1
- export default function deprecatedPropType(validator, reason) {
2
- if (process.env.NODE_ENV === 'production') {
3
- return function () {
4
- return null;
5
- };
6
- }
7
- return function (props, propName, componentName, location, propFullName) {
8
- var componentNameSafe = componentName || '<<anonymous>>';
9
- var propFullNameSafe = propFullName || propName;
10
- if (typeof props[propName] !== 'undefined') {
11
- return new Error("The ".concat(location, " `").concat(propFullNameSafe, "` of ") + "`".concat(componentNameSafe, "` is deprecated. ").concat(reason));
12
- }
13
- return null;
14
- };
15
- }
@@ -1 +0,0 @@
1
- export { default } from './deprecatedPropType';
@@ -1,41 +0,0 @@
1
- import PropTypes from 'prop-types';
2
- import chainPropTypes from '../chainPropTypes';
3
- function isClassComponent(elementType) {
4
- // elementType.prototype?.isReactComponent
5
- var _elementType$prototyp = elementType.prototype,
6
- prototype = _elementType$prototyp === void 0 ? {} : _elementType$prototyp;
7
- return Boolean(prototype.isReactComponent);
8
- }
9
- function acceptingRef(props, propName, componentName, location, propFullName) {
10
- var element = props[propName];
11
- var safePropName = propFullName || propName;
12
- if (element == null ||
13
- // When server-side rendering React doesn't warn either.
14
- // This is not an accurate check for SSR.
15
- // This is only in place for Emotion compat.
16
- // TODO: Revisit once https://github.com/facebook/react/issues/20047 is resolved.
17
- typeof window === 'undefined') {
18
- return null;
19
- }
20
- var warningHint;
21
- var elementType = element.type;
22
- /**
23
- * Blacklisting instead of whitelisting
24
- *
25
- * Blacklisting will miss some components, such as React.Fragment. Those will at least
26
- * trigger a warning in React.
27
- * We can't whitelist because there is no safe way to detect React.forwardRef
28
- * or class components. "Safe" means there's no public API.
29
- *
30
- */
31
- if (typeof elementType === 'function' && !isClassComponent(elementType)) {
32
- warningHint = 'Did you accidentally use a plain function component for an element instead?';
33
- }
34
- if (warningHint !== undefined) {
35
- return new Error("Invalid ".concat(location, " `").concat(safePropName, "` supplied to `").concat(componentName, "`. ") + "Expected an element that can hold a ref. ".concat(warningHint, " ") + 'For more information see https://mui.com/r/caveat-with-refs-guide');
36
- }
37
- return null;
38
- }
39
- var elementAcceptingRef = chainPropTypes(PropTypes.element, acceptingRef);
40
- elementAcceptingRef.isRequired = chainPropTypes(PropTypes.element.isRequired, acceptingRef);
41
- export default elementAcceptingRef;
@@ -1 +0,0 @@
1
- export { default } from './elementAcceptingRef';
@@ -1,39 +0,0 @@
1
- import PropTypes from 'prop-types';
2
- import chainPropTypes from '../chainPropTypes';
3
- function isClassComponent(elementType) {
4
- // elementType.prototype?.isReactComponent
5
- var _elementType$prototyp = elementType.prototype,
6
- prototype = _elementType$prototyp === void 0 ? {} : _elementType$prototyp;
7
- return Boolean(prototype.isReactComponent);
8
- }
9
- function elementTypeAcceptingRef(props, propName, componentName, location, propFullName) {
10
- var propValue = props[propName];
11
- var safePropName = propFullName || propName;
12
- if (propValue == null ||
13
- // When server-side rendering React doesn't warn either.
14
- // This is not an accurate check for SSR.
15
- // This is only in place for emotion compat.
16
- // TODO: Revisit once https://github.com/facebook/react/issues/20047 is resolved.
17
- typeof window === 'undefined') {
18
- return null;
19
- }
20
- var warningHint;
21
-
22
- /**
23
- * Blacklisting instead of whitelisting
24
- *
25
- * Blacklisting will miss some components, such as React.Fragment. Those will at least
26
- * trigger a warning in React.
27
- * We can't whitelist because there is no safe way to detect React.forwardRef
28
- * or class components. "Safe" means there's no public API.
29
- *
30
- */
31
- if (typeof propValue === 'function' && !isClassComponent(propValue)) {
32
- warningHint = 'Did you accidentally provide a plain function component instead?';
33
- }
34
- if (warningHint !== undefined) {
35
- return new Error("Invalid ".concat(location, " `").concat(safePropName, "` supplied to `").concat(componentName, "`. ") + "Expected an element type that can hold a ref. ".concat(warningHint, " ") + 'For more information see https://mui.com/r/caveat-with-refs-guide');
36
- }
37
- return null;
38
- }
39
- export default chainPropTypes(PropTypes.elementType, elementTypeAcceptingRef);
@@ -1 +0,0 @@
1
- export { default } from './elementTypeAcceptingRef';
@@ -1,23 +0,0 @@
1
- import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
2
- import _extends from "@babel/runtime/helpers/esm/extends";
3
- // This module is based on https://github.com/airbnb/prop-types-exact repository.
4
- // However, in order to reduce the number of dependencies and to remove some extra safe checks
5
- // the module was forked.
6
-
7
- var specialProperty = "exact-prop: \u200B";
8
- export default function exactProp(propTypes) {
9
- if (process.env.NODE_ENV === 'production') {
10
- return propTypes;
11
- }
12
- return _extends({}, propTypes, _defineProperty({}, specialProperty, function (props) {
13
- var unsupportedProps = Object.keys(props).filter(function (prop) {
14
- return !propTypes.hasOwnProperty(prop);
15
- });
16
- if (unsupportedProps.length > 0) {
17
- return new Error("The following props are not supported: ".concat(unsupportedProps.map(function (prop) {
18
- return "`".concat(prop, "`");
19
- }).join(', '), ". Please remove them."));
20
- }
21
- return null;
22
- }));
23
- }
@@ -1 +0,0 @@
1
- export { default } from './exactProp';