@mui/material 5.15.6 → 5.15.7

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 (79) hide show
  1. package/Accordion/index.js +0 -2
  2. package/AccordionActions/index.js +0 -2
  3. package/AccordionDetails/index.js +0 -2
  4. package/AccordionSummary/index.js +0 -2
  5. package/Avatar/Avatar.js +2 -2
  6. package/AvatarGroup/AvatarGroup.js +19 -39
  7. package/Badge/Badge.js +2 -2
  8. package/ButtonBase/TouchRipple.js +9 -14
  9. package/CHANGELOG.md +97 -3
  10. package/Collapse/Collapse.js +3 -8
  11. package/Grow/Grow.js +3 -8
  12. package/Rating/index.js +0 -2
  13. package/Select/Select.js +1 -1
  14. package/SpeedDial/SpeedDial.js +7 -12
  15. package/Toolbar/index.js +0 -2
  16. package/Tooltip/Tooltip.js +29 -40
  17. package/index.js +1 -3
  18. package/legacy/Accordion/index.js +0 -2
  19. package/legacy/AccordionActions/index.js +0 -2
  20. package/legacy/AccordionDetails/index.js +0 -2
  21. package/legacy/AccordionSummary/index.js +0 -2
  22. package/legacy/Avatar/Avatar.js +2 -2
  23. package/legacy/AvatarGroup/AvatarGroup.js +6 -31
  24. package/legacy/Badge/Badge.js +2 -2
  25. package/legacy/ButtonBase/TouchRipple.js +9 -14
  26. package/legacy/Collapse/Collapse.js +3 -8
  27. package/legacy/Grow/Grow.js +3 -8
  28. package/legacy/Rating/index.js +0 -2
  29. package/legacy/Select/Select.js +1 -1
  30. package/legacy/SpeedDial/SpeedDial.js +7 -12
  31. package/legacy/Toolbar/index.js +0 -2
  32. package/legacy/Tooltip/Tooltip.js +29 -38
  33. package/legacy/index.js +1 -3
  34. package/legacy/styles/createTheme.js +1 -13
  35. package/legacy/zero-styled/index.js +7 -2
  36. package/modern/Accordion/index.js +0 -2
  37. package/modern/AccordionActions/index.js +0 -2
  38. package/modern/AccordionDetails/index.js +0 -2
  39. package/modern/AccordionSummary/index.js +0 -2
  40. package/modern/Avatar/Avatar.js +2 -2
  41. package/modern/AvatarGroup/AvatarGroup.js +19 -39
  42. package/modern/Badge/Badge.js +2 -2
  43. package/modern/ButtonBase/TouchRipple.js +9 -14
  44. package/modern/Collapse/Collapse.js +3 -8
  45. package/modern/Grow/Grow.js +3 -8
  46. package/modern/Rating/index.js +0 -2
  47. package/modern/Select/Select.js +1 -1
  48. package/modern/SpeedDial/SpeedDial.js +7 -12
  49. package/modern/Toolbar/index.js +0 -2
  50. package/modern/Tooltip/Tooltip.js +29 -40
  51. package/modern/index.js +1 -3
  52. package/modern/styles/createTheme.js +1 -15
  53. package/modern/zero-styled/index.js +7 -2
  54. package/node/Accordion/index.js +0 -1
  55. package/node/AccordionActions/index.js +0 -1
  56. package/node/AccordionDetails/index.js +0 -1
  57. package/node/AccordionSummary/index.js +0 -1
  58. package/node/Avatar/Avatar.js +2 -2
  59. package/node/AvatarGroup/AvatarGroup.js +19 -39
  60. package/node/Badge/Badge.js +2 -2
  61. package/node/ButtonBase/TouchRipple.js +9 -14
  62. package/node/Collapse/Collapse.js +2 -7
  63. package/node/Grow/Grow.js +2 -7
  64. package/node/Rating/index.js +0 -1
  65. package/node/Select/Select.js +1 -1
  66. package/node/SpeedDial/SpeedDial.js +6 -11
  67. package/node/Toolbar/index.js +0 -1
  68. package/node/Tooltip/Tooltip.js +28 -39
  69. package/node/index.js +1 -3
  70. package/node/styles/createTheme.js +1 -15
  71. package/node/zero-styled/index.js +7 -1
  72. package/package.json +6 -6
  73. package/styles/createTheme.d.ts +0 -1
  74. package/styles/createTheme.js +1 -15
  75. package/styles/experimental_extendTheme.d.ts +3 -2
  76. package/umd/material-ui.development.js +367 -289
  77. package/umd/material-ui.production.min.js +4 -4
  78. package/zero-styled/index.d.ts +2 -1
  79. package/zero-styled/index.js +7 -2
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @mui/material v5.15.6
2
+ * @mui/material v5.15.7
3
3
  *
4
4
  * @license MIT
5
5
  * This source code is licensed under the MIT license found in the
@@ -5764,9 +5764,104 @@
5764
5764
  }, refs);
5765
5765
  }
5766
5766
 
5767
+ var UNINITIALIZED = {};
5768
+
5769
+ /**
5770
+ * A React.useRef() that is initialized lazily with a function. Note that it accepts an optional
5771
+ * initialization argument, so the initialization function doesn't need to be an inline closure.
5772
+ *
5773
+ * @usage
5774
+ * const ref = useLazyRef(sortColumns, columns)
5775
+ */
5776
+ function useLazyRef(init, initArg) {
5777
+ var ref = React__namespace.useRef(UNINITIALIZED);
5778
+ if (ref.current === UNINITIALIZED) {
5779
+ ref.current = init(initArg);
5780
+ }
5781
+ return ref;
5782
+ }
5783
+
5784
+ function _classCallCheck(instance, Constructor) {
5785
+ if (!(instance instanceof Constructor)) {
5786
+ throw new TypeError("Cannot call a class as a function");
5787
+ }
5788
+ }
5789
+
5790
+ function _defineProperties(target, props) {
5791
+ for (var i = 0; i < props.length; i++) {
5792
+ var descriptor = props[i];
5793
+ descriptor.enumerable = descriptor.enumerable || false;
5794
+ descriptor.configurable = true;
5795
+ if ("value" in descriptor) descriptor.writable = true;
5796
+ Object.defineProperty(target, toPropertyKey(descriptor.key), descriptor);
5797
+ }
5798
+ }
5799
+ function _createClass(Constructor, protoProps, staticProps) {
5800
+ if (protoProps) _defineProperties(Constructor.prototype, protoProps);
5801
+ if (staticProps) _defineProperties(Constructor, staticProps);
5802
+ Object.defineProperty(Constructor, "prototype", {
5803
+ writable: false
5804
+ });
5805
+ return Constructor;
5806
+ }
5807
+
5808
+ var EMPTY = [];
5809
+
5810
+ /**
5811
+ * A React.useEffect equivalent that runs once, when the component is mounted.
5812
+ */
5813
+ function useOnMount(fn) {
5814
+ /* eslint-disable react-hooks/exhaustive-deps */
5815
+ React__namespace.useEffect(fn, EMPTY);
5816
+ /* eslint-enable react-hooks/exhaustive-deps */
5817
+ }
5818
+
5819
+ var Timeout = /*#__PURE__*/function () {
5820
+ function Timeout() {
5821
+ var _this = this;
5822
+ _classCallCheck(this, Timeout);
5823
+ this.currentId = 0;
5824
+ this.clear = function () {
5825
+ if (_this.currentId !== 0) {
5826
+ clearTimeout(_this.currentId);
5827
+ _this.currentId = 0;
5828
+ }
5829
+ };
5830
+ this.disposeEffect = function () {
5831
+ return _this.clear;
5832
+ };
5833
+ }
5834
+ _createClass(Timeout, [{
5835
+ key: "start",
5836
+ value:
5837
+ /**
5838
+ * Executes `fn` after `delay`, clearing any previously scheduled call.
5839
+ */
5840
+ function start(delay, fn) {
5841
+ var _this2 = this;
5842
+ this.clear();
5843
+ this.currentId = setTimeout(function () {
5844
+ _this2.currentId = 0;
5845
+ fn();
5846
+ }, delay);
5847
+ }
5848
+ }], [{
5849
+ key: "create",
5850
+ value: function create() {
5851
+ return new Timeout();
5852
+ }
5853
+ }]);
5854
+ return Timeout;
5855
+ }();
5856
+ function useTimeout() {
5857
+ var timeout = useLazyRef(Timeout.create).current;
5858
+ useOnMount(timeout.disposeEffect);
5859
+ return timeout;
5860
+ }
5861
+
5767
5862
  var hadKeyboardEvent = true;
5768
5863
  var hadFocusVisibleRecently = false;
5769
- var hadFocusVisibleRecentlyTimeout;
5864
+ var hadFocusVisibleRecentlyTimeout = new Timeout();
5770
5865
  var inputTypesWhitelist = {
5771
5866
  text: true,
5772
5867
  search: true,
@@ -5886,10 +5981,9 @@
5886
5981
  // If we don't see a visibility change within 100ms, it's probably a
5887
5982
  // regular focus change.
5888
5983
  hadFocusVisibleRecently = true;
5889
- window.clearTimeout(hadFocusVisibleRecentlyTimeout);
5890
- hadFocusVisibleRecentlyTimeout = window.setTimeout(function () {
5984
+ hadFocusVisibleRecentlyTimeout.start(100, function () {
5891
5985
  hadFocusVisibleRecently = false;
5892
- }, 100);
5986
+ });
5893
5987
  isFocusVisibleRef.current = false;
5894
5988
  return true;
5895
5989
  }
@@ -7405,6 +7499,79 @@
7405
7499
  styleFunctionSx.filterProps = ['sx'];
7406
7500
  var styleFunctionSx$1 = styleFunctionSx;
7407
7501
 
7502
+ /**
7503
+ * A universal utility to style components with multiple color modes. Always use it from the theme object.
7504
+ * It works with:
7505
+ * - [Basic theme](https://mui.com/material-ui/customization/dark-mode/)
7506
+ * - [CSS theme variables](https://mui.com/material-ui/experimental-api/css-theme-variables/overview/)
7507
+ * - Zero-runtime engine
7508
+ *
7509
+ * Tips: Use an array over object spread and place `theme.applyStyles()` last.
7510
+ *
7511
+ * ✅ [{ background: '#e5e5e5' }, theme.applyStyles('dark', { background: '#1c1c1c' })]
7512
+ *
7513
+ * 🚫 { background: '#e5e5e5', ...theme.applyStyles('dark', { background: '#1c1c1c' })}
7514
+ *
7515
+ * @example
7516
+ * 1. using with `styled`:
7517
+ * ```jsx
7518
+ * const Component = styled('div')(({ theme }) => [
7519
+ * { background: '#e5e5e5' },
7520
+ * theme.applyStyles('dark', {
7521
+ * background: '#1c1c1c',
7522
+ * color: '#fff',
7523
+ * }),
7524
+ * ]);
7525
+ * ```
7526
+ *
7527
+ * @example
7528
+ * 2. using with `sx` prop:
7529
+ * ```jsx
7530
+ * <Box sx={theme => [
7531
+ * { background: '#e5e5e5' },
7532
+ * theme.applyStyles('dark', {
7533
+ * background: '#1c1c1c',
7534
+ * color: '#fff',
7535
+ * }),
7536
+ * ]}
7537
+ * />
7538
+ * ```
7539
+ *
7540
+ * @example
7541
+ * 3. theming a component:
7542
+ * ```jsx
7543
+ * extendTheme({
7544
+ * components: {
7545
+ * MuiButton: {
7546
+ * styleOverrides: {
7547
+ * root: ({ theme }) => [
7548
+ * { background: '#e5e5e5' },
7549
+ * theme.applyStyles('dark', {
7550
+ * background: '#1c1c1c',
7551
+ * color: '#fff',
7552
+ * }),
7553
+ * ],
7554
+ * },
7555
+ * }
7556
+ * }
7557
+ * })
7558
+ *```
7559
+ */
7560
+ function applyStyles$2(key, styles) {
7561
+ // @ts-expect-error this is 'any' type
7562
+ var theme = this;
7563
+ if (theme.vars && typeof theme.getColorSchemeSelector === 'function') {
7564
+ // If CssVarsProvider is used as a provider,
7565
+ // returns '* :where([data-mui-color-scheme="light|dark"]) &'
7566
+ var selector = theme.getColorSchemeSelector(key).replace(/(\[[^\]]+\])/, '*:where($1)');
7567
+ return _defineProperty({}, selector, styles);
7568
+ }
7569
+ if (theme.palette.mode === key) {
7570
+ return styles;
7571
+ }
7572
+ return {};
7573
+ }
7574
+
7408
7575
  function createTheme$1() {
7409
7576
  var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
7410
7577
  var _options$breakpoints = options.breakpoints,
@@ -7428,6 +7595,7 @@
7428
7595
  spacing: spacing,
7429
7596
  shape: _extends({}, shape$1, shapeInput)
7430
7597
  }, other);
7598
+ muiTheme.applyStyles = applyStyles$2;
7431
7599
  for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {
7432
7600
  args[_key - 1] = arguments[_key];
7433
7601
  }
@@ -7918,7 +8086,7 @@
7918
8086
  return resolveProps(theme.components[name].defaultProps, props);
7919
8087
  }
7920
8088
 
7921
- function useThemeProps$1(_ref) {
8089
+ function useThemeProps$2(_ref) {
7922
8090
  var props = _ref.props,
7923
8091
  name = _ref.name,
7924
8092
  defaultTheme = _ref.defaultTheme,
@@ -9243,7 +9411,7 @@
9243
9411
  }
9244
9412
  });
9245
9413
  var useThemePropsDefault$2 = function useThemePropsDefault(inProps) {
9246
- return useThemeProps$1({
9414
+ return useThemeProps$2({
9247
9415
  props: inProps,
9248
9416
  name: 'MuiContainer',
9249
9417
  defaultTheme: defaultTheme$6
@@ -9631,7 +9799,7 @@
9631
9799
  }
9632
9800
  });
9633
9801
  function useThemePropsDefault$1(props) {
9634
- return useThemeProps$1({
9802
+ return useThemeProps$2({
9635
9803
  props: props,
9636
9804
  name: 'MuiGrid',
9637
9805
  defaultTheme: defaultTheme$5
@@ -9795,7 +9963,7 @@
9795
9963
  }
9796
9964
  });
9797
9965
  function useThemePropsDefault(props) {
9798
- return useThemeProps$1({
9966
+ return useThemeProps$2({
9799
9967
  props: props,
9800
9968
  name: 'MuiStack',
9801
9969
  defaultTheme: defaultTheme$4
@@ -10565,19 +10733,7 @@
10565
10733
  shadows: shadows$1.slice(),
10566
10734
  typography: createTypography(palette, typographyInput),
10567
10735
  transitions: createTransitions(transitionsInput),
10568
- zIndex: _extends({}, zIndex$1),
10569
- applyDarkStyles: function applyDarkStyles(css) {
10570
- if (this.vars) {
10571
- // If CssVarsProvider is used as a provider,
10572
- // returns ':where([data-mui-color-scheme="light|dark"]) &'
10573
- var selector = this.getColorSchemeSelector('dark').replace(/(\[[^\]]+\])/, ':where($1)');
10574
- return _defineProperty({}, selector, css);
10575
- }
10576
- if (this.palette.mode === 'dark') {
10577
- return css;
10578
- }
10579
- return {};
10580
- }
10736
+ zIndex: _extends({}, zIndex$1)
10581
10737
  });
10582
10738
  muiTheme = deepmerge(muiTheme, other);
10583
10739
  for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {
@@ -10849,10 +11005,10 @@
10849
11005
  return theme[THEME_ID] || theme;
10850
11006
  }
10851
11007
 
10852
- function useThemeProps(_ref) {
11008
+ function useThemeProps$1(_ref) {
10853
11009
  var props = _ref.props,
10854
11010
  name = _ref.name;
10855
- return useThemeProps$1({
11011
+ return useThemeProps$2({
10856
11012
  props: props,
10857
11013
  name: name,
10858
11014
  defaultTheme: defaultTheme$3,
@@ -11343,7 +11499,7 @@
11343
11499
  };
11344
11500
  });
11345
11501
  var SvgIcon = /*#__PURE__*/React__namespace.forwardRef(function SvgIcon(inProps, ref) {
11346
- var props = useThemeProps({
11502
+ var props = useThemeProps$1({
11347
11503
  props: inProps,
11348
11504
  name: 'MuiSvgIcon'
11349
11505
  });
@@ -12587,7 +12743,7 @@
12587
12743
  * It uses [react-transition-group](https://github.com/reactjs/react-transition-group) internally.
12588
12744
  */
12589
12745
  var Collapse = /*#__PURE__*/React__namespace.forwardRef(function Collapse(inProps, ref) {
12590
- var props = useThemeProps({
12746
+ var props = useThemeProps$1({
12591
12747
  props: inProps,
12592
12748
  name: 'MuiCollapse'
12593
12749
  });
@@ -12619,17 +12775,12 @@
12619
12775
  });
12620
12776
  var classes = useUtilityClasses$1N(ownerState);
12621
12777
  var theme = useTheme();
12622
- var timer = React__namespace.useRef();
12778
+ var timer = useTimeout();
12623
12779
  var wrapperRef = React__namespace.useRef(null);
12624
12780
  var autoTransitionDuration = React__namespace.useRef();
12625
12781
  var collapsedSize = typeof collapsedSizeProp === 'number' ? "".concat(collapsedSizeProp, "px") : collapsedSizeProp;
12626
12782
  var isHorizontal = orientation === 'horizontal';
12627
12783
  var size = isHorizontal ? 'width' : 'height';
12628
- React__namespace.useEffect(function () {
12629
- return function () {
12630
- clearTimeout(timer.current);
12631
- };
12632
- }, []);
12633
12784
  var nodeRef = React__namespace.useRef(null);
12634
12785
  var handleRef = useForkRef(ref, nodeRef);
12635
12786
  var normalizedTransitionCallback = function normalizedTransitionCallback(callback) {
@@ -12728,7 +12879,7 @@
12728
12879
  });
12729
12880
  var handleAddEndListener = function handleAddEndListener(next) {
12730
12881
  if (timeout === 'auto') {
12731
- timer.current = setTimeout(next, autoTransitionDuration.current || 0);
12882
+ timer.start(autoTransitionDuration.current || 0, next);
12732
12883
  }
12733
12884
  if (addEndListener) {
12734
12885
  // Old call signature before `react-transition-group` implemented `nodeRef`
@@ -12920,7 +13071,7 @@
12920
13071
  }));
12921
13072
  });
12922
13073
  var Paper = /*#__PURE__*/React__namespace.forwardRef(function Paper(inProps, ref) {
12923
- var props = useThemeProps({
13074
+ var props = useThemeProps$1({
12924
13075
  props: inProps,
12925
13076
  name: 'MuiPaper'
12926
13077
  });
@@ -13380,7 +13531,7 @@
13380
13531
  }));
13381
13532
  });
13382
13533
  var Accordion = /*#__PURE__*/React__namespace.forwardRef(function Accordion(inProps, ref) {
13383
- var props = useThemeProps({
13534
+ var props = useThemeProps$1({
13384
13535
  props: inProps,
13385
13536
  name: 'MuiAccordion'
13386
13537
  });
@@ -13604,7 +13755,7 @@
13604
13755
  });
13605
13756
  });
13606
13757
  var AccordionActions = /*#__PURE__*/React__namespace.forwardRef(function AccordionActions(inProps, ref) {
13607
- var props = useThemeProps({
13758
+ var props = useThemeProps$1({
13608
13759
  props: inProps,
13609
13760
  name: 'MuiAccordionActions'
13610
13761
  });
@@ -13677,7 +13828,7 @@
13677
13828
  };
13678
13829
  });
13679
13830
  var AccordionDetails = /*#__PURE__*/React__namespace.forwardRef(function AccordionDetails(inProps, ref) {
13680
- var props = useThemeProps({
13831
+ var props = useThemeProps$1({
13681
13832
  props: inProps,
13682
13833
  name: 'MuiAccordionDetails'
13683
13834
  });
@@ -13858,7 +14009,7 @@
13858
14009
  * TODO v5: Make private
13859
14010
  */
13860
14011
  var TouchRipple = /*#__PURE__*/React__namespace.forwardRef(function TouchRipple(inProps, ref) {
13861
- var props = useThemeProps({
14012
+ var props = useThemeProps$1({
13862
14013
  props: inProps,
13863
14014
  name: 'MuiTouchRipple'
13864
14015
  });
@@ -13884,18 +14035,11 @@
13884
14035
  var ignoringMouseDown = React__namespace.useRef(false);
13885
14036
  // We use a timer in order to only show the ripples for touch "click" like events.
13886
14037
  // We don't want to display the ripple for touch scroll events.
13887
- var startTimer = React__namespace.useRef(0);
14038
+ var startTimer = useTimeout();
13888
14039
 
13889
14040
  // This is the hook called once the previous timeout is ready.
13890
14041
  var startTimerCommit = React__namespace.useRef(null);
13891
14042
  var container = React__namespace.useRef(null);
13892
- React__namespace.useEffect(function () {
13893
- return function () {
13894
- if (startTimer.current) {
13895
- clearTimeout(startTimer.current);
13896
- }
13897
- };
13898
- }, []);
13899
14043
  var startCommit = React__namespace.useCallback(function (params) {
13900
14044
  var pulsate = params.pulsate,
13901
14045
  rippleX = params.rippleX,
@@ -13991,12 +14135,13 @@
13991
14135
  });
13992
14136
  };
13993
14137
  // Delay the execution of the ripple effect.
13994
- startTimer.current = setTimeout(function () {
14138
+ // We have to make a tradeoff with this delay value.
14139
+ startTimer.start(DELAY_RIPPLE, function () {
13995
14140
  if (startTimerCommit.current) {
13996
14141
  startTimerCommit.current();
13997
14142
  startTimerCommit.current = null;
13998
14143
  }
13999
- }, DELAY_RIPPLE); // We have to make a tradeoff with this value.
14144
+ });
14000
14145
  }
14001
14146
  } else {
14002
14147
  startCommit({
@@ -14007,21 +14152,21 @@
14007
14152
  cb: cb
14008
14153
  });
14009
14154
  }
14010
- }, [centerProp, startCommit]);
14155
+ }, [centerProp, startCommit, startTimer]);
14011
14156
  var pulsate = React__namespace.useCallback(function () {
14012
14157
  start({}, {
14013
14158
  pulsate: true
14014
14159
  });
14015
14160
  }, [start]);
14016
14161
  var stop = React__namespace.useCallback(function (event, cb) {
14017
- clearTimeout(startTimer.current);
14162
+ startTimer.clear();
14018
14163
 
14019
14164
  // The touch interaction occurs too quickly.
14020
14165
  // We still want to show ripple effect.
14021
14166
  if ((event == null ? void 0 : event.type) === 'touchend' && startTimerCommit.current) {
14022
14167
  startTimerCommit.current();
14023
14168
  startTimerCommit.current = null;
14024
- startTimer.current = setTimeout(function () {
14169
+ startTimer.start(0, function () {
14025
14170
  stop(event, cb);
14026
14171
  });
14027
14172
  return;
@@ -14034,7 +14179,7 @@
14034
14179
  return oldRipples;
14035
14180
  });
14036
14181
  rippleCallback.current = cb;
14037
- }, []);
14182
+ }, [startTimer]);
14038
14183
  React__namespace.useImperativeHandle(ref, function () {
14039
14184
  return {
14040
14185
  pulsate: pulsate,
@@ -14141,7 +14286,7 @@
14141
14286
  * It contains a load of style reset and some focus/ripple logic.
14142
14287
  */
14143
14288
  var ButtonBase = /*#__PURE__*/React__namespace.forwardRef(function ButtonBase(inProps, ref) {
14144
- var props = useThemeProps({
14289
+ var props = useThemeProps$1({
14145
14290
  props: inProps,
14146
14291
  name: 'MuiButtonBase'
14147
14292
  });
@@ -14633,7 +14778,7 @@
14633
14778
  });
14634
14779
  });
14635
14780
  var AccordionSummary = /*#__PURE__*/React__namespace.forwardRef(function AccordionSummary(inProps, ref) {
14636
- var props = useThemeProps({
14781
+ var props = useThemeProps$1({
14637
14782
  props: inProps,
14638
14783
  name: 'MuiAccordionSummary'
14639
14784
  });
@@ -14820,7 +14965,7 @@
14820
14965
  * regarding the available icon options.
14821
14966
  */
14822
14967
  var IconButton = /*#__PURE__*/React__namespace.forwardRef(function IconButton(inProps, ref) {
14823
- var props = useThemeProps({
14968
+ var props = useThemeProps$1({
14824
14969
  props: inProps,
14825
14970
  name: 'MuiIconButton'
14826
14971
  });
@@ -15054,7 +15199,7 @@
15054
15199
  };
15055
15200
  var Alert = /*#__PURE__*/React__namespace.forwardRef(function Alert(inProps, ref) {
15056
15201
  var _ref4, _slots$closeButton, _ref5, _slots$closeIcon, _slotProps$closeButto, _slotProps$closeIcon;
15057
- var props = useThemeProps({
15202
+ var props = useThemeProps$1({
15058
15203
  props: inProps,
15059
15204
  name: 'MuiAlert'
15060
15205
  });
@@ -15328,7 +15473,7 @@
15328
15473
  return colorTransformations$1[color] || color;
15329
15474
  };
15330
15475
  var Typography = /*#__PURE__*/React__namespace.forwardRef(function Typography(inProps, ref) {
15331
- var themeProps = useThemeProps({
15476
+ var themeProps = useThemeProps$1({
15332
15477
  props: inProps,
15333
15478
  name: 'MuiTypography'
15334
15479
  });
@@ -15475,7 +15620,7 @@
15475
15620
  };
15476
15621
  });
15477
15622
  var AlertTitle = /*#__PURE__*/React__namespace.forwardRef(function AlertTitle(inProps, ref) {
15478
- var props = useThemeProps({
15623
+ var props = useThemeProps$1({
15479
15624
  props: inProps,
15480
15625
  name: 'MuiAlertTitle'
15481
15626
  });
@@ -15613,7 +15758,7 @@
15613
15758
  }));
15614
15759
  });
15615
15760
  var AppBar = /*#__PURE__*/React__namespace.forwardRef(function AppBar(inProps, ref) {
15616
- var props = useThemeProps({
15761
+ var props = useThemeProps$1({
15617
15762
  props: inProps,
15618
15763
  name: 'MuiAppBar'
15619
15764
  });
@@ -18511,30 +18656,6 @@
18511
18656
  transition: PropTypes.bool
18512
18657
  } ;
18513
18658
 
18514
- function _classCallCheck(instance, Constructor) {
18515
- if (!(instance instanceof Constructor)) {
18516
- throw new TypeError("Cannot call a class as a function");
18517
- }
18518
- }
18519
-
18520
- function _defineProperties(target, props) {
18521
- for (var i = 0; i < props.length; i++) {
18522
- var descriptor = props[i];
18523
- descriptor.enumerable = descriptor.enumerable || false;
18524
- descriptor.configurable = true;
18525
- if ("value" in descriptor) descriptor.writable = true;
18526
- Object.defineProperty(target, toPropertyKey(descriptor.key), descriptor);
18527
- }
18528
- }
18529
- function _createClass(Constructor, protoProps, staticProps) {
18530
- if (protoProps) _defineProperties(Constructor.prototype, protoProps);
18531
- if (staticProps) _defineProperties(Constructor, staticProps);
18532
- Object.defineProperty(Constructor, "prototype", {
18533
- writable: false
18534
- });
18535
- return Constructor;
18536
- }
18537
-
18538
18659
  // Is a vertical scrollbar displayed?
18539
18660
  function isOverflowing(container) {
18540
18661
  var doc = ownerDocument(container);
@@ -19718,7 +19839,7 @@
19718
19839
  onClose = parameters.onClose,
19719
19840
  open = parameters.open,
19720
19841
  resumeHideDuration = parameters.resumeHideDuration;
19721
- var timerAutoHide = React__namespace.useRef();
19842
+ var timerAutoHide = useTimeout();
19722
19843
  React__namespace.useEffect(function () {
19723
19844
  if (!open) {
19724
19845
  return undefined;
@@ -19748,28 +19869,23 @@
19748
19869
  if (!onClose || autoHideDurationParam == null) {
19749
19870
  return;
19750
19871
  }
19751
- clearTimeout(timerAutoHide.current);
19752
- timerAutoHide.current = setTimeout(function () {
19872
+ timerAutoHide.start(autoHideDurationParam, function () {
19753
19873
  handleClose(null, 'timeout');
19754
- }, autoHideDurationParam);
19874
+ });
19755
19875
  });
19756
19876
  React__namespace.useEffect(function () {
19757
19877
  if (open) {
19758
19878
  setAutoHideTimer(autoHideDuration);
19759
19879
  }
19760
- return function () {
19761
- clearTimeout(timerAutoHide.current);
19762
- };
19763
- }, [open, autoHideDuration, setAutoHideTimer]);
19880
+ return timerAutoHide.clear;
19881
+ }, [open, autoHideDuration, setAutoHideTimer, timerAutoHide]);
19764
19882
  var handleClickAway = function handleClickAway(event) {
19765
19883
  onClose == null || onClose(event, 'clickaway');
19766
19884
  };
19767
19885
 
19768
19886
  // Pause the timer when the user is interacting with the Snackbar
19769
19887
  // or when the user hide the window.
19770
- var handlePause = function handlePause() {
19771
- clearTimeout(timerAutoHide.current);
19772
- };
19888
+ var handlePause = timerAutoHide.clear;
19773
19889
 
19774
19890
  // Restart the timer when the user is no longer interacting with the Snackbar
19775
19891
  // or when the window is shown back.
@@ -19817,7 +19933,7 @@
19817
19933
  };
19818
19934
  }
19819
19935
  return undefined;
19820
- }, [disableWindowBlurListener, handleResume, open]);
19936
+ }, [disableWindowBlurListener, open, handleResume, handlePause]);
19821
19937
  var getRootProps = function getRootProps() {
19822
19938
  var externalProps = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
19823
19939
  var externalEventHandlers = _extends({}, extractEventHandlers(parameters), extractEventHandlers(externalProps));
@@ -21181,7 +21297,7 @@
21181
21297
  var Popper = /*#__PURE__*/React__namespace.forwardRef(function Popper(inProps, ref) {
21182
21298
  var _slots$root;
21183
21299
  var theme = useTheme$3();
21184
- var props = useThemeProps({
21300
+ var props = useThemeProps$1({
21185
21301
  props: inProps,
21186
21302
  name: 'MuiPopper'
21187
21303
  });
@@ -21406,7 +21522,7 @@
21406
21522
  });
21407
21523
  });
21408
21524
  var ListSubheader = /*#__PURE__*/React__namespace.forwardRef(function ListSubheader(inProps, ref) {
21409
- var props = useThemeProps({
21525
+ var props = useThemeProps$1({
21410
21526
  props: inProps,
21411
21527
  name: 'MuiListSubheader'
21412
21528
  });
@@ -21705,7 +21821,7 @@
21705
21821
  * Chips represent complex entities in small blocks, such as a contact.
21706
21822
  */
21707
21823
  var Chip = /*#__PURE__*/React__namespace.forwardRef(function Chip(inProps, ref) {
21708
- var props = useThemeProps({
21824
+ var props = useThemeProps$1({
21709
21825
  props: inProps,
21710
21826
  name: 'MuiChip'
21711
21827
  });
@@ -22193,7 +22309,7 @@
22193
22309
  */
22194
22310
  var InputBase = /*#__PURE__*/React__namespace.forwardRef(function InputBase(inProps, ref) {
22195
22311
  var _slotProps$input;
22196
- var props = useThemeProps({
22312
+ var props = useThemeProps$1({
22197
22313
  props: inProps,
22198
22314
  name: 'MuiInputBase'
22199
22315
  });
@@ -23031,7 +23147,7 @@
23031
23147
  }));
23032
23148
  var Autocomplete = /*#__PURE__*/React__namespace.forwardRef(function Autocomplete(inProps, ref) {
23033
23149
  var _slotProps$clearIndic, _slotProps$paper, _slotProps$popper, _slotProps$popupIndic;
23034
- var props = useThemeProps({
23150
+ var props = useThemeProps$1({
23035
23151
  props: inProps,
23036
23152
  name: 'MuiAutocomplete'
23037
23153
  });
@@ -23855,7 +23971,7 @@
23855
23971
  backgroundColor: theme.vars.palette.Avatar.defaultBg
23856
23972
  } : _extends({
23857
23973
  backgroundColor: theme.palette.grey[400]
23858
- }, theme.applyDarkStyles({
23974
+ }, theme.applyStyles('dark', {
23859
23975
  backgroundColor: theme.palette.grey[600]
23860
23976
  })))
23861
23977
  }]
@@ -23928,7 +24044,7 @@
23928
24044
  return loaded;
23929
24045
  }
23930
24046
  var Avatar = /*#__PURE__*/React__namespace.forwardRef(function Avatar(inProps, ref) {
23931
- var props = useThemeProps({
24047
+ var props = useThemeProps$1({
23932
24048
  props: inProps,
23933
24049
  name: 'MuiAvatar'
23934
24050
  });
@@ -23968,7 +24084,7 @@
23968
24084
  ownerState: ownerState,
23969
24085
  className: classes.img
23970
24086
  }, imgProps));
23971
- } else if (childrenProp != null) {
24087
+ } else if (childrenProp != null && childrenProp !== '' && typeof childrenProp !== 'boolean') {
23972
24088
  children = childrenProp;
23973
24089
  } else if (hasImg && alt) {
23974
24090
  children = alt[0];
@@ -24070,36 +24186,21 @@
24070
24186
  return _extends(_defineProperty({}, "& .".concat(avatarGroupClasses$1.avatar), styles.avatar), styles.root);
24071
24187
  }
24072
24188
  })(function (_ref) {
24073
- var theme = _ref.theme;
24189
+ var theme = _ref.theme,
24190
+ ownerState = _ref.ownerState;
24191
+ var marginValue = ownerState.spacing && SPACINGS$2[ownerState.spacing] !== undefined ? SPACINGS$2[ownerState.spacing] : -ownerState.spacing;
24074
24192
  return _defineProperty(_defineProperty(_defineProperty({}, "& .".concat(avatarClasses$1.root), {
24075
24193
  border: "2px solid ".concat((theme.vars || theme).palette.background["default"]),
24076
24194
  boxSizing: 'content-box',
24077
- marginLeft: -8,
24195
+ marginLeft: marginValue != null ? marginValue : -8,
24078
24196
  '&:last-child': {
24079
24197
  marginLeft: 0
24080
24198
  }
24081
24199
  }), "display", 'flex'), "flexDirection", 'row-reverse');
24082
24200
  });
24083
- var AvatarGroupAvatar = styled$1(Avatar$1, {
24084
- name: 'MuiAvatarGroup',
24085
- slot: 'Avatar',
24086
- overridesResolver: function overridesResolver(props, styles) {
24087
- return styles.avatar;
24088
- }
24089
- })(function (_ref3) {
24090
- var theme = _ref3.theme;
24091
- return {
24092
- border: "2px solid ".concat((theme.vars || theme).palette.background["default"]),
24093
- boxSizing: 'content-box',
24094
- marginLeft: -8,
24095
- '&:last-child': {
24096
- marginLeft: 0
24097
- }
24098
- };
24099
- });
24100
24201
  var AvatarGroup = /*#__PURE__*/React__namespace.forwardRef(function AvatarGroup(inProps, ref) {
24101
24202
  var _slotProps$additional;
24102
- var props = useThemeProps({
24203
+ var props = useThemeProps$1({
24103
24204
  props: inProps,
24104
24205
  name: 'MuiAvatarGroup'
24105
24206
  });
@@ -24144,7 +24245,6 @@
24144
24245
  var maxAvatars = Math.min(children.length, clampedMax - 1);
24145
24246
  var extraAvatars = Math.max(totalAvatars - clampedMax, totalAvatars - maxAvatars, 0);
24146
24247
  var extraAvatarsElement = renderSurplus ? renderSurplus(extraAvatars) : "+".concat(extraAvatars);
24147
- var marginLeft = spacing && SPACINGS$2[spacing] !== undefined ? SPACINGS$2[spacing] : -spacing;
24148
24248
  var additionalAvatarSlotProps = (_slotProps$additional = slotProps.additionalAvatar) != null ? _slotProps$additional : componentsProps.additionalAvatar;
24149
24249
  return /*#__PURE__*/jsxRuntime_2(AvatarGroupRoot, _extends({
24150
24250
  as: component,
@@ -24152,23 +24252,14 @@
24152
24252
  className: clsx(classes.root, className),
24153
24253
  ref: ref
24154
24254
  }, other, {
24155
- children: [extraAvatars ? /*#__PURE__*/jsxRuntime_1(AvatarGroupAvatar, _extends({
24156
- ownerState: ownerState,
24255
+ children: [extraAvatars ? /*#__PURE__*/jsxRuntime_1(Avatar$1, _extends({
24157
24256
  variant: variant
24158
24257
  }, additionalAvatarSlotProps, {
24159
24258
  className: clsx(classes.avatar, additionalAvatarSlotProps == null ? void 0 : additionalAvatarSlotProps.className),
24160
- style: _extends({
24161
- marginLeft: marginLeft
24162
- }, additionalAvatarSlotProps == null ? void 0 : additionalAvatarSlotProps.style),
24163
24259
  children: extraAvatarsElement
24164
- })) : null, children.slice(0, maxAvatars).reverse().map(function (child, index) {
24260
+ })) : null, children.slice(0, maxAvatars).reverse().map(function (child) {
24165
24261
  return /*#__PURE__*/React__namespace.cloneElement(child, {
24166
24262
  className: clsx(child.props.className, classes.avatar),
24167
- style: _extends({
24168
- // Consistent with "&:last-child" styling for the default spacing,
24169
- // we do not apply custom marginLeft spacing on the last child
24170
- marginLeft: index === maxAvatars - 1 ? undefined : marginLeft
24171
- }, child.props.style),
24172
24263
  variant: child.props.variant || variant
24173
24264
  });
24174
24265
  })]
@@ -24491,7 +24582,7 @@
24491
24582
  });
24492
24583
  var Backdrop = /*#__PURE__*/React__namespace.forwardRef(function Backdrop(inProps, ref) {
24493
24584
  var _slotProps$root, _ref2, _slots$root;
24494
- var props = useThemeProps({
24585
+ var props = useThemeProps$1({
24495
24586
  props: inProps,
24496
24587
  name: 'MuiBackdrop'
24497
24588
  });
@@ -24634,6 +24725,11 @@
24634
24725
  } ;
24635
24726
  var Backdrop$1 = Backdrop;
24636
24727
 
24728
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
24729
+ function createUseThemeProps(name) {
24730
+ return useThemeProps$1;
24731
+ }
24732
+
24637
24733
  function getBadgeUtilityClass(slot) {
24638
24734
  return generateUtilityClass$1('MuiBadge', slot);
24639
24735
  }
@@ -24644,6 +24740,7 @@
24644
24740
 
24645
24741
  var RADIUS_STANDARD = 10;
24646
24742
  var RADIUS_DOT = 4;
24743
+ var useThemeProps = createUseThemeProps();
24647
24744
  var useUtilityClasses$1t = function useUtilityClasses(ownerState) {
24648
24745
  var color = ownerState.color,
24649
24746
  anchorOrigin = ownerState.anchorOrigin,
@@ -25095,7 +25192,7 @@
25095
25192
  };
25096
25193
  });
25097
25194
  var BottomNavigation = /*#__PURE__*/React__namespace.forwardRef(function BottomNavigation(inProps, ref) {
25098
- var props = useThemeProps({
25195
+ var props = useThemeProps$1({
25099
25196
  props: inProps,
25100
25197
  name: 'MuiBottomNavigation'
25101
25198
  });
@@ -25251,7 +25348,7 @@
25251
25348
  }));
25252
25349
  });
25253
25350
  var BottomNavigationAction = /*#__PURE__*/React__namespace.forwardRef(function BottomNavigationAction(inProps, ref) {
25254
- var props = useThemeProps({
25351
+ var props = useThemeProps$1({
25255
25352
  props: inProps,
25256
25353
  name: 'MuiBottomNavigationAction'
25257
25354
  });
@@ -25518,7 +25615,7 @@
25518
25615
  }, []);
25519
25616
  }
25520
25617
  var Breadcrumbs = /*#__PURE__*/React__namespace.forwardRef(function Breadcrumbs(inProps, ref) {
25521
- var props = useThemeProps({
25618
+ var props = useThemeProps$1({
25522
25619
  props: inProps,
25523
25620
  name: 'MuiBreadcrumbs'
25524
25621
  });
@@ -25917,7 +26014,7 @@
25917
26014
  var contextProps = React__namespace.useContext(ButtonGroupContext$1);
25918
26015
  var buttonGroupButtonContextPositionClassName = React__namespace.useContext(ButtonGroupButtonContext$1);
25919
26016
  var resolvedProps = resolveProps(contextProps, inProps);
25920
- var props = useThemeProps({
26017
+ var props = useThemeProps$1({
25921
26018
  props: resolvedProps,
25922
26019
  name: 'MuiButton'
25923
26020
  });
@@ -26178,7 +26275,7 @@
26178
26275
  })));
26179
26276
  });
26180
26277
  var ButtonGroup = /*#__PURE__*/React__namespace.forwardRef(function ButtonGroup(inProps, ref) {
26181
- var props = useThemeProps({
26278
+ var props = useThemeProps$1({
26182
26279
  props: inProps,
26183
26280
  name: 'MuiButtonGroup'
26184
26281
  });
@@ -26367,7 +26464,7 @@
26367
26464
  };
26368
26465
  });
26369
26466
  var Card = /*#__PURE__*/React__namespace.forwardRef(function Card(inProps, ref) {
26370
- var props = useThemeProps({
26467
+ var props = useThemeProps$1({
26371
26468
  props: inProps,
26372
26469
  name: 'MuiCard'
26373
26470
  });
@@ -26482,7 +26579,7 @@
26482
26579
  };
26483
26580
  });
26484
26581
  var CardActionArea = /*#__PURE__*/React__namespace.forwardRef(function CardActionArea(inProps, ref) {
26485
- var props = useThemeProps({
26582
+ var props = useThemeProps$1({
26486
26583
  props: inProps,
26487
26584
  name: 'MuiCardActionArea'
26488
26585
  });
@@ -26566,7 +26663,7 @@
26566
26663
  });
26567
26664
  });
26568
26665
  var CardActions = /*#__PURE__*/React__namespace.forwardRef(function CardActions(inProps, ref) {
26569
- var props = useThemeProps({
26666
+ var props = useThemeProps$1({
26570
26667
  props: inProps,
26571
26668
  name: 'MuiCardActions'
26572
26669
  });
@@ -26641,7 +26738,7 @@
26641
26738
  };
26642
26739
  });
26643
26740
  var CardContent = /*#__PURE__*/React__namespace.forwardRef(function CardContent(inProps, ref) {
26644
- var props = useThemeProps({
26741
+ var props = useThemeProps$1({
26645
26742
  props: inProps,
26646
26743
  name: 'MuiCardContent'
26647
26744
  });
@@ -26752,7 +26849,7 @@
26752
26849
  flex: '1 1 auto'
26753
26850
  });
26754
26851
  var CardHeader = /*#__PURE__*/React__namespace.forwardRef(function CardHeader(inProps, ref) {
26755
- var props = useThemeProps({
26852
+ var props = useThemeProps$1({
26756
26853
  props: inProps,
26757
26854
  name: 'MuiCardHeader'
26758
26855
  });
@@ -26921,7 +27018,7 @@
26921
27018
  var MEDIA_COMPONENTS = ['video', 'audio', 'picture', 'iframe', 'img'];
26922
27019
  var IMAGE_COMPONENTS = ['picture', 'img'];
26923
27020
  var CardMedia = /*#__PURE__*/React__namespace.forwardRef(function CardMedia(inProps, ref) {
26924
- var props = useThemeProps({
27021
+ var props = useThemeProps$1({
26925
27022
  props: inProps,
26926
27023
  name: 'MuiCardMedia'
26927
27024
  });
@@ -27333,7 +27430,7 @@
27333
27430
  var defaultIndeterminateIcon = /*#__PURE__*/jsxRuntime_1(IndeterminateCheckBoxIcon, {});
27334
27431
  var Checkbox = /*#__PURE__*/React__namespace.forwardRef(function Checkbox(inProps, ref) {
27335
27432
  var _icon$props$fontSize, _indeterminateIcon$pr;
27336
- var props = useThemeProps({
27433
+ var props = useThemeProps$1({
27337
27434
  props: inProps,
27338
27435
  name: 'MuiCheckbox'
27339
27436
  });
@@ -27565,7 +27662,7 @@
27565
27662
  * attribute to `true` on that region until it has finished loading.
27566
27663
  */
27567
27664
  var CircularProgress = /*#__PURE__*/React__namespace.forwardRef(function CircularProgress(inProps, ref) {
27568
- var props = useThemeProps({
27665
+ var props = useThemeProps$1({
27569
27666
  props: inProps,
27570
27667
  name: 'MuiCircularProgress'
27571
27668
  });
@@ -27705,8 +27802,8 @@
27705
27802
  return [styles.root, styles["maxWidth".concat(capitalize(String(ownerState.maxWidth)))], ownerState.fixed && styles.fixed, ownerState.disableGutters && styles.disableGutters];
27706
27803
  }
27707
27804
  }),
27708
- useThemeProps: function useThemeProps$1(inProps) {
27709
- return useThemeProps({
27805
+ useThemeProps: function useThemeProps(inProps) {
27806
+ return useThemeProps$1({
27710
27807
  props: inProps,
27711
27808
  name: 'MuiContainer'
27712
27809
  });
@@ -27829,7 +27926,7 @@
27829
27926
  return defaultStyles;
27830
27927
  };
27831
27928
  function CssBaseline(inProps) {
27832
- var props = useThemeProps({
27929
+ var props = useThemeProps$1({
27833
27930
  props: inProps,
27834
27931
  name: 'MuiCssBaseline'
27835
27932
  });
@@ -27958,7 +28055,7 @@
27958
28055
  */
27959
28056
  var Modal = /*#__PURE__*/React__namespace.forwardRef(function Modal(inProps, ref) {
27960
28057
  var _ref2, _slots$root, _ref3, _slots$backdrop, _slotProps$root, _slotProps$backdrop;
27961
- var props = useThemeProps({
28058
+ var props = useThemeProps$1({
27962
28059
  name: 'MuiModal',
27963
28060
  props: inProps
27964
28061
  });
@@ -28412,7 +28509,7 @@
28412
28509
  * Dialogs are overlaid modal paper based components with a backdrop.
28413
28510
  */
28414
28511
  var Dialog = /*#__PURE__*/React__namespace.forwardRef(function Dialog(inProps, ref) {
28415
- var props = useThemeProps({
28512
+ var props = useThemeProps$1({
28416
28513
  props: inProps,
28417
28514
  name: 'MuiDialog'
28418
28515
  });
@@ -28696,7 +28793,7 @@
28696
28793
  });
28697
28794
  });
28698
28795
  var DialogActions = /*#__PURE__*/React__namespace.forwardRef(function DialogActions(inProps, ref) {
28699
- var props = useThemeProps({
28796
+ var props = useThemeProps$1({
28700
28797
  props: inProps,
28701
28798
  name: 'MuiDialogActions'
28702
28799
  });
@@ -28788,7 +28885,7 @@
28788
28885
  }));
28789
28886
  });
28790
28887
  var DialogContent = /*#__PURE__*/React__namespace.forwardRef(function DialogContent(inProps, ref) {
28791
- var props = useThemeProps({
28888
+ var props = useThemeProps$1({
28792
28889
  props: inProps,
28793
28890
  name: 'MuiDialogContent'
28794
28891
  });
@@ -28860,7 +28957,7 @@
28860
28957
  }
28861
28958
  })({});
28862
28959
  var DialogContentText = /*#__PURE__*/React__namespace.forwardRef(function DialogContentText(inProps, ref) {
28863
- var props = useThemeProps({
28960
+ var props = useThemeProps$1({
28864
28961
  props: inProps,
28865
28962
  name: 'MuiDialogContentText'
28866
28963
  });
@@ -28921,7 +29018,7 @@
28921
29018
  flex: '0 0 auto'
28922
29019
  });
28923
29020
  var DialogTitle = /*#__PURE__*/React__namespace.forwardRef(function DialogTitle(inProps, ref) {
28924
- var props = useThemeProps({
29021
+ var props = useThemeProps$1({
28925
29022
  props: inProps,
28926
29023
  name: 'MuiDialogTitle'
28927
29024
  });
@@ -29101,7 +29198,7 @@
29101
29198
  });
29102
29199
  });
29103
29200
  var Divider = /*#__PURE__*/React__namespace.forwardRef(function Divider(inProps, ref) {
29104
- var props = useThemeProps({
29201
+ var props = useThemeProps$1({
29105
29202
  props: inProps,
29106
29203
  name: 'MuiDivider'
29107
29204
  });
@@ -29647,7 +29744,7 @@
29647
29744
  * when `variant="temporary"` is set.
29648
29745
  */
29649
29746
  var Drawer = /*#__PURE__*/React__namespace.forwardRef(function Drawer(inProps, ref) {
29650
- var props = useThemeProps({
29747
+ var props = useThemeProps$1({
29651
29748
  props: inProps,
29652
29749
  name: 'MuiDrawer'
29653
29750
  });
@@ -29944,7 +30041,7 @@
29944
30041
  });
29945
30042
  });
29946
30043
  var Fab = /*#__PURE__*/React__namespace.forwardRef(function Fab(inProps, ref) {
29947
- var props = useThemeProps({
30044
+ var props = useThemeProps$1({
29948
30045
  props: inProps,
29949
30046
  name: 'MuiFab'
29950
30047
  });
@@ -30215,7 +30312,7 @@
30215
30312
  });
30216
30313
  var FilledInput = /*#__PURE__*/React__namespace.forwardRef(function FilledInput(inProps, ref) {
30217
30314
  var _ref5, _slots$root, _ref6, _slots$input;
30218
- var props = useThemeProps({
30315
+ var props = useThemeProps$1({
30219
30316
  props: inProps,
30220
30317
  name: 'MuiFilledInput'
30221
30318
  });
@@ -30535,7 +30632,7 @@
30535
30632
  * For instance, only one input can be focused at the same time, the state shouldn't be shared.
30536
30633
  */
30537
30634
  var FormControl = /*#__PURE__*/React__namespace.forwardRef(function FormControl(inProps, ref) {
30538
- var props = useThemeProps({
30635
+ var props = useThemeProps$1({
30539
30636
  props: inProps,
30540
30637
  name: 'MuiFormControl'
30541
30638
  });
@@ -30765,8 +30862,8 @@
30765
30862
  return styles.root;
30766
30863
  }
30767
30864
  }),
30768
- useThemeProps: function useThemeProps$1(inProps) {
30769
- return useThemeProps({
30865
+ useThemeProps: function useThemeProps(inProps) {
30866
+ return useThemeProps$1({
30770
30867
  props: inProps,
30771
30868
  name: 'MuiStack'
30772
30869
  });
@@ -30895,7 +30992,7 @@
30895
30992
  */
30896
30993
  var FormControlLabel = /*#__PURE__*/React__namespace.forwardRef(function FormControlLabel(inProps, ref) {
30897
30994
  var _ref5, _slotProps$typography;
30898
- var props = useThemeProps({
30995
+ var props = useThemeProps$1({
30899
30996
  props: inProps,
30900
30997
  name: 'MuiFormControlLabel'
30901
30998
  });
@@ -31088,7 +31185,7 @@
31088
31185
  * For the `Radio`, you should be using the `RadioGroup` component instead of this one.
31089
31186
  */
31090
31187
  var FormGroup = /*#__PURE__*/React__namespace.forwardRef(function FormGroup(inProps, ref) {
31091
- var props = useThemeProps({
31188
+ var props = useThemeProps$1({
31092
31189
  props: inProps,
31093
31190
  name: 'MuiFormGroup'
31094
31191
  });
@@ -31193,7 +31290,7 @@
31193
31290
  });
31194
31291
  });
31195
31292
  var FormHelperText = /*#__PURE__*/React__namespace.forwardRef(function FormHelperText(inProps, ref) {
31196
- var props = useThemeProps({
31293
+ var props = useThemeProps$1({
31197
31294
  props: inProps,
31198
31295
  name: 'MuiFormHelperText'
31199
31296
  });
@@ -31357,7 +31454,7 @@
31357
31454
  });
31358
31455
  });
31359
31456
  var FormLabel = /*#__PURE__*/React__namespace.forwardRef(function FormLabel(inProps, ref) {
31360
- var props = useThemeProps({
31457
+ var props = useThemeProps$1({
31361
31458
  props: inProps,
31362
31459
  name: 'MuiFormLabel'
31363
31460
  });
@@ -31813,7 +31910,7 @@
31813
31910
  return composeClasses(slots, getGridUtilityClass, classes);
31814
31911
  };
31815
31912
  var Grid = /*#__PURE__*/React__namespace.forwardRef(function Grid(inProps, ref) {
31816
- var themeProps = useThemeProps({
31913
+ var themeProps = useThemeProps$1({
31817
31914
  props: inProps,
31818
31915
  name: 'MuiGrid'
31819
31916
  });
@@ -32030,8 +32127,8 @@
32030
32127
  }
32031
32128
  }),
32032
32129
  componentName: 'MuiGrid2',
32033
- useThemeProps: function useThemeProps$1(inProps) {
32034
- return useThemeProps({
32130
+ useThemeProps: function useThemeProps(inProps) {
32131
+ return useThemeProps$1({
32035
32132
  props: inProps,
32036
32133
  name: 'MuiGrid2'
32037
32134
  });
@@ -32123,7 +32220,7 @@
32123
32220
  _props$TransitionComp = props.TransitionComponent,
32124
32221
  TransitionComponent = _props$TransitionComp === void 0 ? Transition$1 : _props$TransitionComp,
32125
32222
  other = _objectWithoutProperties(props, ["addEndListener", "appear", "children", "easing", "in", "onEnter", "onEntered", "onEntering", "onExit", "onExited", "onExiting", "style", "timeout", "TransitionComponent"]);
32126
- var timer = React__namespace.useRef();
32223
+ var timer = useTimeout();
32127
32224
  var autoTimeout = React__namespace.useRef();
32128
32225
  var theme = useTheme();
32129
32226
  var nodeRef = React__namespace.useRef(null);
@@ -32211,18 +32308,13 @@
32211
32308
  var handleExited = normalizedTransitionCallback(onExited);
32212
32309
  var handleAddEndListener = function handleAddEndListener(next) {
32213
32310
  if (timeout === 'auto') {
32214
- timer.current = setTimeout(next, autoTimeout.current || 0);
32311
+ timer.start(autoTimeout.current || 0, next);
32215
32312
  }
32216
32313
  if (addEndListener) {
32217
32314
  // Old call signature before `react-transition-group` implemented `nodeRef`
32218
32315
  addEndListener(nodeRef.current, next);
32219
32316
  }
32220
32317
  };
32221
- React__namespace.useEffect(function () {
32222
- return function () {
32223
- clearTimeout(timer.current);
32224
- };
32225
- }, []);
32226
32318
  return /*#__PURE__*/jsxRuntime_1(TransitionComponent, _extends({
32227
32319
  appear: appear,
32228
32320
  "in": inProp,
@@ -33026,7 +33118,7 @@
33026
33118
  };
33027
33119
  });
33028
33120
  var Icon = /*#__PURE__*/React__namespace.forwardRef(function Icon(inProps, ref) {
33029
- var props = useThemeProps({
33121
+ var props = useThemeProps$1({
33030
33122
  props: inProps,
33031
33123
  name: 'MuiIcon'
33032
33124
  });
@@ -33151,7 +33243,7 @@
33151
33243
  });
33152
33244
  });
33153
33245
  var ImageList = /*#__PURE__*/React__namespace.forwardRef(function ImageList(inProps, ref) {
33154
- var props = useThemeProps({
33246
+ var props = useThemeProps$1({
33155
33247
  props: inProps,
33156
33248
  name: 'MuiImageList'
33157
33249
  });
@@ -33312,7 +33404,7 @@
33312
33404
  })));
33313
33405
  });
33314
33406
  var ImageListItem = /*#__PURE__*/React__namespace.forwardRef(function ImageListItem(inProps, ref) {
33315
- var props = useThemeProps({
33407
+ var props = useThemeProps$1({
33316
33408
  props: inProps,
33317
33409
  name: 'MuiImageListItem'
33318
33410
  });
@@ -33540,7 +33632,7 @@
33540
33632
  });
33541
33633
  });
33542
33634
  var ImageListItemBar = /*#__PURE__*/React__namespace.forwardRef(function ImageListItemBar(inProps, ref) {
33543
- var props = useThemeProps({
33635
+ var props = useThemeProps$1({
33544
33636
  props: inProps,
33545
33637
  name: 'MuiImageListItemBar'
33546
33638
  });
@@ -33714,7 +33806,7 @@
33714
33806
  })({});
33715
33807
  var Input = /*#__PURE__*/React__namespace.forwardRef(function Input(inProps, ref) {
33716
33808
  var _ref3, _slots$root, _ref4, _slots$input;
33717
- var props = useThemeProps({
33809
+ var props = useThemeProps$1({
33718
33810
  props: inProps,
33719
33811
  name: 'MuiInput'
33720
33812
  });
@@ -34002,7 +34094,7 @@
34002
34094
  });
34003
34095
  });
34004
34096
  var InputAdornment = /*#__PURE__*/React__namespace.forwardRef(function InputAdornment(inProps, ref) {
34005
- var props = useThemeProps({
34097
+ var props = useThemeProps$1({
34006
34098
  props: inProps,
34007
34099
  name: 'MuiInputAdornment'
34008
34100
  });
@@ -34202,7 +34294,7 @@
34202
34294
  }));
34203
34295
  });
34204
34296
  var InputLabel = /*#__PURE__*/React__namespace.forwardRef(function InputLabel(inProps, ref) {
34205
- var props = useThemeProps({
34297
+ var props = useThemeProps$1({
34206
34298
  name: 'MuiInputLabel',
34207
34299
  props: inProps
34208
34300
  });
@@ -34474,7 +34566,7 @@
34474
34566
  * attribute to `true` on that region until it has finished loading.
34475
34567
  */
34476
34568
  var LinearProgress = /*#__PURE__*/React__namespace.forwardRef(function LinearProgress(inProps, ref) {
34477
- var props = useThemeProps({
34569
+ var props = useThemeProps$1({
34478
34570
  props: inProps,
34479
34571
  name: 'MuiLinearProgress'
34480
34572
  });
@@ -34681,7 +34773,7 @@
34681
34773
  }));
34682
34774
  });
34683
34775
  var Link = /*#__PURE__*/React__namespace.forwardRef(function Link(inProps, ref) {
34684
- var props = useThemeProps({
34776
+ var props = useThemeProps$1({
34685
34777
  props: inProps,
34686
34778
  name: 'MuiLink'
34687
34779
  });
@@ -34852,7 +34944,7 @@
34852
34944
  });
34853
34945
  });
34854
34946
  var List = /*#__PURE__*/React__namespace.forwardRef(function List(inProps, ref) {
34855
- var props = useThemeProps({
34947
+ var props = useThemeProps$1({
34856
34948
  props: inProps,
34857
34949
  name: 'MuiList'
34858
34950
  });
@@ -35025,7 +35117,7 @@
35025
35117
  });
35026
35118
  });
35027
35119
  var ListItemButton = /*#__PURE__*/React__namespace.forwardRef(function ListItemButton(inProps, ref) {
35028
- var props = useThemeProps({
35120
+ var props = useThemeProps$1({
35029
35121
  props: inProps,
35030
35122
  name: 'MuiListItemButton'
35031
35123
  });
@@ -35208,7 +35300,7 @@
35208
35300
  * Must be used as the last child of ListItem to function properly.
35209
35301
  */
35210
35302
  var ListItemSecondaryAction = /*#__PURE__*/React__namespace.forwardRef(function ListItemSecondaryAction(inProps, ref) {
35211
- var props = useThemeProps({
35303
+ var props = useThemeProps$1({
35212
35304
  props: inProps,
35213
35305
  name: 'MuiListItemSecondaryAction'
35214
35306
  });
@@ -35353,7 +35445,7 @@
35353
35445
  * Uses an additional container component if `ListItemSecondaryAction` is the last child.
35354
35446
  */
35355
35447
  var ListItem = /*#__PURE__*/React__namespace.forwardRef(function ListItem(inProps, ref) {
35356
- var props = useThemeProps({
35448
+ var props = useThemeProps$1({
35357
35449
  props: inProps,
35358
35450
  name: 'MuiListItem'
35359
35451
  });
@@ -35687,7 +35779,7 @@
35687
35779
  * A simple wrapper to apply `List` styles to an `Avatar`.
35688
35780
  */
35689
35781
  var ListItemAvatar = /*#__PURE__*/React__namespace.forwardRef(function ListItemAvatar(inProps, ref) {
35690
- var props = useThemeProps({
35782
+ var props = useThemeProps$1({
35691
35783
  props: inProps,
35692
35784
  name: 'MuiListItemAvatar'
35693
35785
  });
@@ -35766,7 +35858,7 @@
35766
35858
  * A simple wrapper to apply `List` styles to an `Icon` or `SvgIcon`.
35767
35859
  */
35768
35860
  var ListItemIcon = /*#__PURE__*/React__namespace.forwardRef(function ListItemIcon(inProps, ref) {
35769
- var props = useThemeProps({
35861
+ var props = useThemeProps$1({
35770
35862
  props: inProps,
35771
35863
  name: 'MuiListItemIcon'
35772
35864
  });
@@ -35849,7 +35941,7 @@
35849
35941
  });
35850
35942
  });
35851
35943
  var ListItemText = /*#__PURE__*/React__namespace.forwardRef(function ListItemText(inProps, ref) {
35852
- var props = useThemeProps({
35944
+ var props = useThemeProps$1({
35853
35945
  props: inProps,
35854
35946
  name: 'MuiListItemText'
35855
35947
  });
@@ -36304,7 +36396,7 @@
36304
36396
  });
36305
36397
  var Popover = /*#__PURE__*/React__namespace.forwardRef(function Popover(inProps, ref) {
36306
36398
  var _slotProps$paper, _slots$root, _slots$paper;
36307
- var props = useThemeProps({
36399
+ var props = useThemeProps$1({
36308
36400
  props: inProps,
36309
36401
  name: 'MuiPopover'
36310
36402
  });
@@ -36821,7 +36913,7 @@
36821
36913
  });
36822
36914
  var Menu = /*#__PURE__*/React__namespace.forwardRef(function Menu(inProps, ref) {
36823
36915
  var _slots$paper, _slotProps$paper;
36824
- var props = useThemeProps({
36916
+ var props = useThemeProps$1({
36825
36917
  props: inProps,
36826
36918
  name: 'MuiMenu'
36827
36919
  });
@@ -37164,7 +37256,7 @@
37164
37256
  })));
37165
37257
  });
37166
37258
  var MenuItem = /*#__PURE__*/React__namespace.forwardRef(function MenuItem(inProps, ref) {
37167
- var props = useThemeProps({
37259
+ var props = useThemeProps$1({
37168
37260
  props: inProps,
37169
37261
  name: 'MuiMenuItem'
37170
37262
  });
@@ -37406,7 +37498,7 @@
37406
37498
  });
37407
37499
  });
37408
37500
  var MobileStepper = /*#__PURE__*/React__namespace.forwardRef(function MobileStepper(inProps, ref) {
37409
- var props = useThemeProps({
37501
+ var props = useThemeProps$1({
37410
37502
  props: inProps,
37411
37503
  name: 'MuiMobileStepper'
37412
37504
  });
@@ -37724,7 +37816,7 @@
37724
37816
  * An alternative to `<Select native />` with a much smaller bundle size footprint.
37725
37817
  */
37726
37818
  var NativeSelect = /*#__PURE__*/React__namespace.forwardRef(function NativeSelect(inProps, ref) {
37727
- var props = useThemeProps({
37819
+ var props = useThemeProps$1({
37728
37820
  name: 'MuiNativeSelect',
37729
37821
  props: inProps
37730
37822
  });
@@ -38050,7 +38142,7 @@
38050
38142
  });
38051
38143
  var OutlinedInput = /*#__PURE__*/React__namespace.forwardRef(function OutlinedInput(inProps, ref) {
38052
38144
  var _ref5, _slots$root, _ref6, _slots$input, _React$Fragment;
38053
- var props = useThemeProps({
38145
+ var props = useThemeProps$1({
38054
38146
  props: inProps,
38055
38147
  name: 'MuiOutlinedInput'
38056
38148
  });
@@ -38600,7 +38692,7 @@
38600
38692
  });
38601
38693
  });
38602
38694
  var PaginationItem = /*#__PURE__*/React__namespace.forwardRef(function PaginationItem(inProps, ref) {
38603
- var props = useThemeProps({
38695
+ var props = useThemeProps$1({
38604
38696
  props: inProps,
38605
38697
  name: 'MuiPaginationItem'
38606
38698
  });
@@ -38803,7 +38895,7 @@
38803
38895
  return "Go to ".concat(type, " page");
38804
38896
  }
38805
38897
  var Pagination = /*#__PURE__*/React__namespace.forwardRef(function Pagination(inProps, ref) {
38806
- var props = useThemeProps({
38898
+ var props = useThemeProps$1({
38807
38899
  props: inProps,
38808
38900
  name: 'MuiPagination'
38809
38901
  });
@@ -39159,7 +39251,7 @@
39159
39251
  var defaultIcon$1 = /*#__PURE__*/jsxRuntime_1(RadioButtonIcon, {});
39160
39252
  var Radio = /*#__PURE__*/React__namespace.forwardRef(function Radio(inProps, ref) {
39161
39253
  var _defaultIcon$props$fo, _defaultCheckedIcon$p;
39162
- var props = useThemeProps({
39254
+ var props = useThemeProps$1({
39163
39255
  props: inProps,
39164
39256
  name: 'MuiRadio'
39165
39257
  });
@@ -39640,7 +39732,7 @@
39640
39732
  return "".concat(value, " Star").concat(value !== 1 ? 's' : '');
39641
39733
  }
39642
39734
  var Rating = /*#__PURE__*/React__namespace.forwardRef(function Rating(inProps, ref) {
39643
- var props = useThemeProps({
39735
+ var props = useThemeProps$1({
39644
39736
  name: 'MuiRating',
39645
39737
  props: inProps
39646
39738
  });
@@ -40081,7 +40173,7 @@
40081
40173
  }, colorSchemeStyles);
40082
40174
  });
40083
40175
  var ScopedCssBaseline = /*#__PURE__*/React__namespace.forwardRef(function ScopedCssBaseline(inProps, ref) {
40084
- var props = useThemeProps({
40176
+ var props = useThemeProps$1({
40085
40177
  props: inProps,
40086
40178
  name: 'MuiScopedCssBaseline'
40087
40179
  });
@@ -40804,7 +40896,7 @@
40804
40896
  var StyledOutlinedInput = styled$1(OutlinedInput$1, styledRootConfig)('');
40805
40897
  var StyledFilledInput = styled$1(FilledInput$1, styledRootConfig)('');
40806
40898
  var Select = /*#__PURE__*/React__namespace.forwardRef(function Select(inProps, ref) {
40807
- var props = useThemeProps({
40899
+ var props = useThemeProps$1({
40808
40900
  name: 'MuiSelect',
40809
40901
  props: inProps
40810
40902
  });
@@ -40897,7 +40989,7 @@
40897
40989
  }, inputProps, {
40898
40990
  classes: inputProps ? deepmerge(restOfClasses, inputProps.classes) : restOfClasses
40899
40991
  }, input ? input.props.inputProps : {})
40900
- }, multiple && _native && variant === 'outlined' ? {
40992
+ }, (multiple && _native || displayEmpty) && variant === 'outlined' ? {
40901
40993
  notched: true
40902
40994
  } : {}, {
40903
40995
  ref: inputComponentRef,
@@ -41127,7 +41219,7 @@
41127
41219
  return ownerState.animation === 'wave' && css(_templateObject4 || (_templateObject4 = _taggedTemplateLiteral(["\n position: relative;\n overflow: hidden;\n\n /* Fix bug in Safari https://bugs.webkit.org/show_bug.cgi?id=68196 */\n -webkit-mask-image: -webkit-radial-gradient(white, black);\n\n &::after {\n animation: ", " 2s linear 0.5s infinite;\n background: linear-gradient(\n 90deg,\n transparent,\n ", ",\n transparent\n );\n content: '';\n position: absolute;\n transform: translateX(-100%); /* Avoid flash during server-side hydration */\n bottom: 0;\n left: 0;\n right: 0;\n top: 0;\n }\n "])), waveKeyframe, (theme.vars || theme).palette.action.hover);
41128
41220
  });
41129
41221
  var Skeleton = /*#__PURE__*/React__namespace.forwardRef(function Skeleton(inProps, ref) {
41130
- var props = useThemeProps({
41222
+ var props = useThemeProps$1({
41131
41223
  props: inProps,
41132
41224
  name: 'MuiSkeleton'
41133
41225
  });
@@ -41615,7 +41707,7 @@
41615
41707
  };
41616
41708
  var Slider = /*#__PURE__*/React__namespace.forwardRef(function Slider(inputProps, ref) {
41617
41709
  var _ref9, _slots$root, _ref10, _slots$rail, _ref11, _slots$track, _ref12, _slots$thumb, _ref13, _slots$valueLabel, _ref14, _slots$mark, _ref15, _slots$markLabel, _ref16, _slots$input, _slotProps$root, _slotProps$rail, _slotProps$track, _slotProps$thumb, _slotProps$valueLabel, _slotProps$mark, _slotProps$markLabel, _slotProps$input;
41618
- var props = useThemeProps({
41710
+ var props = useThemeProps$1({
41619
41711
  props: inputProps,
41620
41712
  name: 'MuiSlider'
41621
41713
  });
@@ -42187,7 +42279,7 @@
42187
42279
  marginRight: -8
42188
42280
  });
42189
42281
  var SnackbarContent = /*#__PURE__*/React__namespace.forwardRef(function SnackbarContent(inProps, ref) {
42190
- var props = useThemeProps({
42282
+ var props = useThemeProps$1({
42191
42283
  props: inProps,
42192
42284
  name: 'MuiSnackbarContent'
42193
42285
  });
@@ -42309,7 +42401,7 @@
42309
42401
  })));
42310
42402
  });
42311
42403
  var Snackbar = /*#__PURE__*/React__namespace.forwardRef(function Snackbar(inProps, ref) {
42312
- var props = useThemeProps({
42404
+ var props = useThemeProps$1({
42313
42405
  props: inProps,
42314
42406
  name: 'MuiSnackbar'
42315
42407
  });
@@ -42844,7 +42936,7 @@
42844
42936
  });
42845
42937
  });
42846
42938
  var SpeedDial = /*#__PURE__*/React__namespace.forwardRef(function SpeedDial(inProps, ref) {
42847
- var props = useThemeProps({
42939
+ var props = useThemeProps$1({
42848
42940
  props: inProps,
42849
42941
  name: 'MuiSpeedDial'
42850
42942
  });
@@ -42894,12 +42986,7 @@
42894
42986
  direction: direction
42895
42987
  });
42896
42988
  var classes = useUtilityClasses$r(ownerState);
42897
- var eventTimer = React__namespace.useRef();
42898
- React__namespace.useEffect(function () {
42899
- return function () {
42900
- clearTimeout(eventTimer.current);
42901
- };
42902
- }, []);
42989
+ var eventTimer = useTimeout();
42903
42990
 
42904
42991
  /**
42905
42992
  * an index in actions.current
@@ -42982,9 +43069,9 @@
42982
43069
  if (event.type === 'blur' && onBlur) {
42983
43070
  onBlur(event);
42984
43071
  }
42985
- clearTimeout(eventTimer.current);
43072
+ eventTimer.clear();
42986
43073
  if (event.type === 'blur') {
42987
- eventTimer.current = setTimeout(function () {
43074
+ eventTimer.start(0, function () {
42988
43075
  setOpenState(false);
42989
43076
  if (onClose) {
42990
43077
  onClose(event, 'blur');
@@ -43001,7 +43088,7 @@
43001
43088
  if (FabProps.onClick) {
43002
43089
  FabProps.onClick(event);
43003
43090
  }
43004
- clearTimeout(eventTimer.current);
43091
+ eventTimer.clear();
43005
43092
  if (open) {
43006
43093
  setOpenState(false);
43007
43094
  if (onClose) {
@@ -43025,10 +43112,10 @@
43025
43112
  // When moving the focus between two items,
43026
43113
  // a chain if blur and focus event is triggered.
43027
43114
  // We only handle the last event.
43028
- clearTimeout(eventTimer.current);
43115
+ eventTimer.clear();
43029
43116
  if (!open) {
43030
43117
  // Wait for a future focus or click event
43031
- eventTimer.current = setTimeout(function () {
43118
+ eventTimer.start(0, function () {
43032
43119
  setOpenState(true);
43033
43120
  if (onOpen) {
43034
43121
  var eventMap = {
@@ -43391,7 +43478,7 @@
43391
43478
  };
43392
43479
  });
43393
43480
  var hystersisOpen = false;
43394
- var hystersisTimer = null;
43481
+ var hystersisTimer = new Timeout();
43395
43482
  var cursorPosition = {
43396
43483
  x: 0,
43397
43484
  y: 0
@@ -43408,7 +43495,7 @@
43408
43495
  // TODO v6: Remove PopperComponent, PopperProps, TransitionComponent and TransitionProps.
43409
43496
  var Tooltip = /*#__PURE__*/React__namespace.forwardRef(function Tooltip(inProps, ref) {
43410
43497
  var _ref5, _slots$popper, _ref6, _ref7, _slots$transition, _ref8, _slots$tooltip, _ref9, _slots$arrow, _slotProps$popper, _ref10, _slotProps$popper2, _slotProps$transition, _slotProps$tooltip, _ref11, _slotProps$tooltip2, _slotProps$arrow, _ref12, _slotProps$arrow2;
43411
- var props = useThemeProps({
43498
+ var props = useThemeProps$1({
43412
43499
  props: inProps,
43413
43500
  name: 'MuiTooltip'
43414
43501
  });
@@ -43473,10 +43560,10 @@
43473
43560
  setArrowRef = _React$useState2[1];
43474
43561
  var ignoreNonTouchEvents = React__namespace.useRef(false);
43475
43562
  var disableInteractive = disableInteractiveProp || followCursor;
43476
- var closeTimer = React__namespace.useRef();
43477
- var enterTimer = React__namespace.useRef();
43478
- var leaveTimer = React__namespace.useRef();
43479
- var touchTimer = React__namespace.useRef();
43563
+ var closeTimer = useTimeout();
43564
+ var enterTimer = useTimeout();
43565
+ var leaveTimer = useTimeout();
43566
+ var touchTimer = useTimeout();
43480
43567
  var _useControlled = useControlled({
43481
43568
  controlled: openProp,
43482
43569
  "default": false,
@@ -43499,23 +43586,18 @@
43499
43586
  }
43500
43587
  var id = useId(idProp);
43501
43588
  var prevUserSelect = React__namespace.useRef();
43502
- var stopTouchInteraction = React__namespace.useCallback(function () {
43589
+ var stopTouchInteraction = useEventCallback(function () {
43503
43590
  if (prevUserSelect.current !== undefined) {
43504
43591
  document.body.style.WebkitUserSelect = prevUserSelect.current;
43505
43592
  prevUserSelect.current = undefined;
43506
43593
  }
43507
- clearTimeout(touchTimer.current);
43508
- }, []);
43594
+ touchTimer.clear();
43595
+ });
43509
43596
  React__namespace.useEffect(function () {
43510
- return function () {
43511
- clearTimeout(closeTimer.current);
43512
- clearTimeout(enterTimer.current);
43513
- clearTimeout(leaveTimer.current);
43514
- stopTouchInteraction();
43515
- };
43597
+ return stopTouchInteraction;
43516
43598
  }, [stopTouchInteraction]);
43517
43599
  var handleOpen = function handleOpen(event) {
43518
- clearTimeout(hystersisTimer);
43600
+ hystersisTimer.clear();
43519
43601
  hystersisOpen = true;
43520
43602
 
43521
43603
  // The mouseover event will trigger for every nested element in the tooltip.
@@ -43531,18 +43613,16 @@
43531
43613
  * @param {React.SyntheticEvent | Event} event
43532
43614
  */
43533
43615
  function (event) {
43534
- clearTimeout(hystersisTimer);
43535
- hystersisTimer = setTimeout(function () {
43616
+ hystersisTimer.start(800 + leaveDelay, function () {
43536
43617
  hystersisOpen = false;
43537
- }, 800 + leaveDelay);
43618
+ });
43538
43619
  setOpenState(false);
43539
43620
  if (onClose && open) {
43540
43621
  onClose(event);
43541
43622
  }
43542
- clearTimeout(closeTimer.current);
43543
- closeTimer.current = setTimeout(function () {
43623
+ closeTimer.start(theme.transitions.duration.shortest, function () {
43544
43624
  ignoreNonTouchEvents.current = false;
43545
- }, theme.transitions.duration.shortest);
43625
+ });
43546
43626
  });
43547
43627
  var handleEnter = function handleEnter(event) {
43548
43628
  if (ignoreNonTouchEvents.current && event.type !== 'touchstart') {
@@ -43555,22 +43635,21 @@
43555
43635
  if (childNode) {
43556
43636
  childNode.removeAttribute('title');
43557
43637
  }
43558
- clearTimeout(enterTimer.current);
43559
- clearTimeout(leaveTimer.current);
43638
+ enterTimer.clear();
43639
+ leaveTimer.clear();
43560
43640
  if (enterDelay || hystersisOpen && enterNextDelay) {
43561
- enterTimer.current = setTimeout(function () {
43641
+ enterTimer.start(hystersisOpen ? enterNextDelay : enterDelay, function () {
43562
43642
  handleOpen(event);
43563
- }, hystersisOpen ? enterNextDelay : enterDelay);
43643
+ });
43564
43644
  } else {
43565
43645
  handleOpen(event);
43566
43646
  }
43567
43647
  };
43568
43648
  var handleLeave = function handleLeave(event) {
43569
- clearTimeout(enterTimer.current);
43570
- clearTimeout(leaveTimer.current);
43571
- leaveTimer.current = setTimeout(function () {
43649
+ enterTimer.clear();
43650
+ leaveTimer.start(leaveDelay, function () {
43572
43651
  handleClose(event);
43573
- }, leaveDelay);
43652
+ });
43574
43653
  };
43575
43654
  var _useIsFocusVisible = useIsFocusVisible(),
43576
43655
  isFocusVisibleRef = _useIsFocusVisible.isFocusVisibleRef,
@@ -43611,26 +43690,25 @@
43611
43690
  var handleMouseLeave = handleLeave;
43612
43691
  var handleTouchStart = function handleTouchStart(event) {
43613
43692
  detectTouchStart(event);
43614
- clearTimeout(leaveTimer.current);
43615
- clearTimeout(closeTimer.current);
43693
+ leaveTimer.clear();
43694
+ closeTimer.clear();
43616
43695
  stopTouchInteraction();
43617
43696
  prevUserSelect.current = document.body.style.WebkitUserSelect;
43618
43697
  // Prevent iOS text selection on long-tap.
43619
43698
  document.body.style.WebkitUserSelect = 'none';
43620
- touchTimer.current = setTimeout(function () {
43699
+ touchTimer.start(enterTouchDelay, function () {
43621
43700
  document.body.style.WebkitUserSelect = prevUserSelect.current;
43622
43701
  handleEnter(event);
43623
- }, enterTouchDelay);
43702
+ });
43624
43703
  };
43625
43704
  var handleTouchEnd = function handleTouchEnd(event) {
43626
43705
  if (children.props.onTouchEnd) {
43627
43706
  children.props.onTouchEnd(event);
43628
43707
  }
43629
43708
  stopTouchInteraction();
43630
- clearTimeout(leaveTimer.current);
43631
- leaveTimer.current = setTimeout(function () {
43709
+ leaveTimer.start(leaveTouchDelay, function () {
43632
43710
  handleClose(event);
43633
- }, leaveTouchDelay);
43711
+ });
43634
43712
  };
43635
43713
  React__namespace.useEffect(function () {
43636
43714
  if (!open) {
@@ -44091,7 +44169,7 @@
44091
44169
  });
44092
44170
  });
44093
44171
  var SpeedDialAction = /*#__PURE__*/React__namespace.forwardRef(function SpeedDialAction(inProps, ref) {
44094
- var props = useThemeProps({
44172
+ var props = useThemeProps$1({
44095
44173
  props: inProps,
44096
44174
  name: 'MuiSpeedDialAction'
44097
44175
  });
@@ -44285,7 +44363,7 @@
44285
44363
  }));
44286
44364
  });
44287
44365
  var SpeedDialIcon = /*#__PURE__*/React__namespace.forwardRef(function SpeedDialIcon(inProps, ref) {
44288
- var props = useThemeProps({
44366
+ var props = useThemeProps$1({
44289
44367
  props: inProps,
44290
44368
  name: 'MuiSpeedDialIcon'
44291
44369
  });
@@ -44416,7 +44494,7 @@
44416
44494
  });
44417
44495
  });
44418
44496
  var Step = /*#__PURE__*/React__namespace.forwardRef(function Step(inProps, ref) {
44419
- var props = useThemeProps({
44497
+ var props = useThemeProps$1({
44420
44498
  props: inProps,
44421
44499
  name: 'MuiStep'
44422
44500
  });
@@ -44607,7 +44685,7 @@
44607
44685
  };
44608
44686
  });
44609
44687
  var StepIcon = /*#__PURE__*/React__namespace.forwardRef(function StepIcon(inProps, ref) {
44610
- var props = useThemeProps({
44688
+ var props = useThemeProps$1({
44611
44689
  props: inProps,
44612
44690
  name: 'MuiStepIcon'
44613
44691
  });
@@ -44806,7 +44884,7 @@
44806
44884
  });
44807
44885
  var StepLabel = /*#__PURE__*/React__namespace.forwardRef(function StepLabel(inProps, ref) {
44808
44886
  var _slotProps$label;
44809
- var props = useThemeProps({
44887
+ var props = useThemeProps$1({
44810
44888
  props: inProps,
44811
44889
  name: 'MuiStepLabel'
44812
44890
  });
@@ -44970,7 +45048,7 @@
44970
45048
  }));
44971
45049
  });
44972
45050
  var StepButton = /*#__PURE__*/React__namespace.forwardRef(function StepButton(inProps, ref) {
44973
- var props = useThemeProps({
45051
+ var props = useThemeProps$1({
44974
45052
  props: inProps,
44975
45053
  name: 'MuiStepButton'
44976
45054
  });
@@ -45104,7 +45182,7 @@
45104
45182
  });
45105
45183
  });
45106
45184
  var StepConnector = /*#__PURE__*/React__namespace.forwardRef(function StepConnector(inProps, ref) {
45107
- var props = useThemeProps({
45185
+ var props = useThemeProps$1({
45108
45186
  props: inProps,
45109
45187
  name: 'MuiStepConnector'
45110
45188
  });
@@ -45201,7 +45279,7 @@
45201
45279
  }
45202
45280
  })({});
45203
45281
  var StepContent = /*#__PURE__*/React__namespace.forwardRef(function StepContent(inProps, ref) {
45204
- var props = useThemeProps({
45282
+ var props = useThemeProps$1({
45205
45283
  props: inProps,
45206
45284
  name: 'MuiStepContent'
45207
45285
  });
@@ -45333,7 +45411,7 @@
45333
45411
  });
45334
45412
  var defaultConnector = /*#__PURE__*/jsxRuntime_1(StepConnector$1, {});
45335
45413
  var Stepper = /*#__PURE__*/React__namespace.forwardRef(function Stepper(inProps, ref) {
45336
- var props = useThemeProps({
45414
+ var props = useThemeProps$1({
45337
45415
  props: inProps,
45338
45416
  name: 'MuiStepper'
45339
45417
  });
@@ -45599,7 +45677,7 @@
45599
45677
  }
45600
45678
  var iOS = typeof navigator !== 'undefined' && /iPad|iPhone|iPod/.test(navigator.userAgent);
45601
45679
  var SwipeableDrawer = /*#__PURE__*/React__namespace.forwardRef(function SwipeableDrawer(inProps, ref) {
45602
- var props = useThemeProps$1({
45680
+ var props = useThemeProps$2({
45603
45681
  name: 'MuiSwipeableDrawer',
45604
45682
  props: inProps
45605
45683
  });
@@ -46262,7 +46340,7 @@
46262
46340
  };
46263
46341
  });
46264
46342
  var Switch = /*#__PURE__*/React__namespace.forwardRef(function Switch(inProps, ref) {
46265
- var props = useThemeProps({
46343
+ var props = useThemeProps$1({
46266
46344
  props: inProps,
46267
46345
  name: 'MuiSwitch'
46268
46346
  });
@@ -46487,7 +46565,7 @@
46487
46565
  });
46488
46566
  });
46489
46567
  var Tab = /*#__PURE__*/React__namespace.forwardRef(function Tab(inProps, ref) {
46490
- var props = useThemeProps({
46568
+ var props = useThemeProps$1({
46491
46569
  props: inProps,
46492
46570
  name: 'MuiTab'
46493
46571
  });
@@ -46691,7 +46769,7 @@
46691
46769
  });
46692
46770
  var defaultComponent$4 = 'table';
46693
46771
  var Table = /*#__PURE__*/React__namespace.forwardRef(function Table(inProps, ref) {
46694
- var props = useThemeProps({
46772
+ var props = useThemeProps$1({
46695
46773
  props: inProps,
46696
46774
  name: 'MuiTable'
46697
46775
  });
@@ -46812,7 +46890,7 @@
46812
46890
  };
46813
46891
  var defaultComponent$3 = 'tbody';
46814
46892
  var TableBody = /*#__PURE__*/React__namespace.forwardRef(function TableBody(inProps, ref) {
46815
- var props = useThemeProps({
46893
+ var props = useThemeProps$1({
46816
46894
  props: inProps,
46817
46895
  name: 'MuiTableBody'
46818
46896
  });
@@ -46947,7 +47025,7 @@
46947
47025
  * or otherwise a `<td>` element.
46948
47026
  */
46949
47027
  var TableCell = /*#__PURE__*/React__namespace.forwardRef(function TableCell(inProps, ref) {
46950
- var props = useThemeProps({
47028
+ var props = useThemeProps$1({
46951
47029
  props: inProps,
46952
47030
  name: 'MuiTableCell'
46953
47031
  });
@@ -47086,7 +47164,7 @@
47086
47164
  overflowX: 'auto'
47087
47165
  });
47088
47166
  var TableContainer = /*#__PURE__*/React__namespace.forwardRef(function TableContainer(inProps, ref) {
47089
- var props = useThemeProps({
47167
+ var props = useThemeProps$1({
47090
47168
  props: inProps,
47091
47169
  name: 'MuiTableContainer'
47092
47170
  });
@@ -47161,7 +47239,7 @@
47161
47239
  };
47162
47240
  var defaultComponent$2 = 'tfoot';
47163
47241
  var TableFooter = /*#__PURE__*/React__namespace.forwardRef(function TableFooter(inProps, ref) {
47164
- var props = useThemeProps({
47242
+ var props = useThemeProps$1({
47165
47243
  props: inProps,
47166
47244
  name: 'MuiTableFooter'
47167
47245
  });
@@ -47240,7 +47318,7 @@
47240
47318
  };
47241
47319
  var defaultComponent$1 = 'thead';
47242
47320
  var TableHead = /*#__PURE__*/React__namespace.forwardRef(function TableHead(inProps, ref) {
47243
- var props = useThemeProps({
47321
+ var props = useThemeProps$1({
47244
47322
  props: inProps,
47245
47323
  name: 'MuiTableHead'
47246
47324
  });
@@ -47336,7 +47414,7 @@
47336
47414
  return ownerState.variant === 'regular' && theme.mixins.toolbar;
47337
47415
  });
47338
47416
  var Toolbar = /*#__PURE__*/React__namespace.forwardRef(function Toolbar(inProps, ref) {
47339
- var props = useThemeProps({
47417
+ var props = useThemeProps$1({
47340
47418
  props: inProps,
47341
47419
  name: 'MuiToolbar'
47342
47420
  });
@@ -47710,7 +47788,7 @@
47710
47788
  */
47711
47789
  var TablePagination = /*#__PURE__*/React__namespace.forwardRef(function TablePagination(inProps, ref) {
47712
47790
  var _slotProps$select;
47713
- var props = useThemeProps({
47791
+ var props = useThemeProps$1({
47714
47792
  props: inProps,
47715
47793
  name: 'MuiTablePagination'
47716
47794
  });
@@ -48066,7 +48144,7 @@
48066
48144
  * based on the material table element parent (head, body, etc).
48067
48145
  */
48068
48146
  var TableRow = /*#__PURE__*/React__namespace.forwardRef(function TableRow(inProps, ref) {
48069
- var props = useThemeProps({
48147
+ var props = useThemeProps$1({
48070
48148
  props: inProps,
48071
48149
  name: 'MuiTableRow'
48072
48150
  });
@@ -48214,7 +48292,7 @@
48214
48292
  * A button based label for placing inside `TableCell` for column sorting.
48215
48293
  */
48216
48294
  var TableSortLabel = /*#__PURE__*/React__namespace.forwardRef(function TableSortLabel(inProps, ref) {
48217
- var props = useThemeProps({
48295
+ var props = useThemeProps$1({
48218
48296
  props: inProps,
48219
48297
  name: 'MuiTableSortLabel'
48220
48298
  });
@@ -48425,7 +48503,7 @@
48425
48503
  });
48426
48504
  var TabScrollButton = /*#__PURE__*/React__namespace.forwardRef(function TabScrollButton(inProps, ref) {
48427
48505
  var _slots$StartScrollBut, _slots$EndScrollButto;
48428
- var props = useThemeProps({
48506
+ var props = useThemeProps$1({
48429
48507
  props: inProps,
48430
48508
  name: 'MuiTabScrollButton'
48431
48509
  });
@@ -48703,7 +48781,7 @@
48703
48781
  var defaultIndicatorStyle = {};
48704
48782
  var warnedOnceTabPresent = false;
48705
48783
  var Tabs = /*#__PURE__*/React__namespace.forwardRef(function Tabs(inProps, ref) {
48706
- var props = useThemeProps({
48784
+ var props = useThemeProps$1({
48707
48785
  props: inProps,
48708
48786
  name: 'MuiTabs'
48709
48787
  });
@@ -49414,7 +49492,7 @@
49414
49492
  * - using the underlying components directly as shown in the demos
49415
49493
  */
49416
49494
  var TextField = /*#__PURE__*/React__namespace.forwardRef(function TextField(inProps, ref) {
49417
- var props = useThemeProps({
49495
+ var props = useThemeProps$1({
49418
49496
  props: inProps,
49419
49497
  name: 'MuiTextField'
49420
49498
  });
@@ -49830,7 +49908,7 @@
49830
49908
  var resolvedProps = resolveProps(_extends({}, contextProps, {
49831
49909
  selected: isValueSelected(inProps.value, contextValue)
49832
49910
  }), inProps);
49833
- var props = useThemeProps({
49911
+ var props = useThemeProps$1({
49834
49912
  props: resolvedProps,
49835
49913
  name: 'MuiToggleButton'
49836
49914
  });
@@ -50034,7 +50112,7 @@
50034
50112
  }));
50035
50113
  });
50036
50114
  var ToggleButtonGroup = /*#__PURE__*/React__namespace.forwardRef(function ToggleButtonGroup(inProps, ref) {
50037
- var props = useThemeProps({
50115
+ var props = useThemeProps$1({
50038
50116
  props: inProps,
50039
50117
  name: 'MuiToggleButtonGroup'
50040
50118
  });
@@ -50703,7 +50781,7 @@
50703
50781
  exports.useStepContext = useStepContext;
50704
50782
  exports.useStepperContext = useStepperContext;
50705
50783
  exports.useTheme = useTheme;
50706
- exports.useThemeProps = useThemeProps;
50784
+ exports.useThemeProps = useThemeProps$1;
50707
50785
  exports.withStyles = withStyles;
50708
50786
  exports.withTheme = withTheme;
50709
50787