@mui/system 5.13.1 → 5.13.5

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 (81) hide show
  1. package/CHANGELOG.md +184 -4
  2. package/Container/createContainer.js +35 -41
  3. package/GlobalStyles/GlobalStyles.d.ts +2 -2
  4. package/Stack/createStack.js +26 -24
  5. package/ThemeProvider/ThemeProvider.js +5 -9
  6. package/Unstable_Grid/createGrid.js +23 -21
  7. package/Unstable_Grid/gridGenerator.d.ts +1 -6
  8. package/Unstable_Grid/gridGenerator.js +26 -71
  9. package/Unstable_Grid/index.d.ts +1 -0
  10. package/Unstable_Grid/index.js +9 -1
  11. package/Unstable_Grid/traverseBreakpoints.d.ts +7 -0
  12. package/Unstable_Grid/traverseBreakpoints.js +50 -0
  13. package/breakpoints.js +6 -7
  14. package/createBox.js +12 -9
  15. package/createStyled.js +32 -40
  16. package/createTheme/createBreakpoints.js +26 -24
  17. package/createTheme/createTheme.js +14 -18
  18. package/cssVars/createCssVarsProvider.js +26 -21
  19. package/cssVars/createCssVarsTheme.js +10 -10
  20. package/cssVars/getInitColorSchemeScript.d.ts +2 -2
  21. package/cssVars/prepareCssVars.js +12 -13
  22. package/cssVars/useCurrentColorScheme.js +11 -17
  23. package/esm/Container/createContainer.js +35 -41
  24. package/esm/Stack/createStack.js +26 -24
  25. package/esm/ThemeProvider/ThemeProvider.js +5 -9
  26. package/esm/Unstable_Grid/createGrid.js +23 -21
  27. package/esm/Unstable_Grid/gridGenerator.js +18 -62
  28. package/esm/Unstable_Grid/index.js +2 -1
  29. package/esm/Unstable_Grid/traverseBreakpoints.js +42 -0
  30. package/esm/breakpoints.js +6 -7
  31. package/esm/createBox.js +12 -9
  32. package/esm/createStyled.js +31 -38
  33. package/esm/createTheme/createBreakpoints.js +25 -24
  34. package/esm/createTheme/createTheme.js +14 -18
  35. package/esm/cssVars/createCssVarsProvider.js +26 -21
  36. package/esm/cssVars/createCssVarsTheme.js +10 -10
  37. package/esm/cssVars/prepareCssVars.js +12 -13
  38. package/esm/cssVars/useCurrentColorScheme.js +10 -17
  39. package/esm/propsToClassKey.js +5 -3
  40. package/esm/styleFunctionSx/extendSxProp.js +10 -14
  41. package/index.js +1 -1
  42. package/legacy/Container/createContainer.js +6 -7
  43. package/legacy/Stack/createStack.js +5 -6
  44. package/legacy/ThemeProvider/ThemeProvider.js +3 -4
  45. package/legacy/Unstable_Grid/createGrid.js +4 -6
  46. package/legacy/Unstable_Grid/gridGenerator.js +7 -54
  47. package/legacy/Unstable_Grid/index.js +2 -1
  48. package/legacy/Unstable_Grid/traverseBreakpoints.js +48 -0
  49. package/legacy/breakpoints.js +3 -5
  50. package/legacy/createBox.js +2 -4
  51. package/legacy/createStyled.js +11 -13
  52. package/legacy/createTheme/createBreakpoints.js +3 -4
  53. package/legacy/createTheme/createTheme.js +4 -6
  54. package/legacy/cssVars/createCssVarsProvider.js +5 -6
  55. package/legacy/cssVars/createCssVarsTheme.js +2 -4
  56. package/legacy/cssVars/prepareCssVars.js +3 -5
  57. package/legacy/cssVars/useCurrentColorScheme.js +7 -9
  58. package/legacy/index.js +1 -1
  59. package/legacy/styleFunctionSx/extendSxProp.js +4 -6
  60. package/modern/Container/createContainer.js +35 -41
  61. package/modern/Stack/createStack.js +26 -24
  62. package/modern/ThemeProvider/ThemeProvider.js +5 -9
  63. package/modern/Unstable_Grid/createGrid.js +23 -21
  64. package/modern/Unstable_Grid/gridGenerator.js +18 -62
  65. package/modern/Unstable_Grid/index.js +2 -1
  66. package/modern/Unstable_Grid/traverseBreakpoints.js +42 -0
  67. package/modern/breakpoints.js +6 -7
  68. package/modern/createBox.js +12 -9
  69. package/modern/createStyled.js +31 -38
  70. package/modern/createTheme/createBreakpoints.js +25 -24
  71. package/modern/createTheme/createTheme.js +14 -18
  72. package/modern/cssVars/createCssVarsProvider.js +26 -21
  73. package/modern/cssVars/createCssVarsTheme.js +10 -10
  74. package/modern/cssVars/prepareCssVars.js +12 -13
  75. package/modern/cssVars/useCurrentColorScheme.js +10 -17
  76. package/modern/index.js +1 -1
  77. package/modern/propsToClassKey.js +5 -3
  78. package/modern/styleFunctionSx/extendSxProp.js +10 -14
  79. package/package.json +2 -2
  80. package/propsToClassKey.js +6 -3
  81. package/styleFunctionSx/extendSxProp.js +10 -14
@@ -1,10 +1,9 @@
1
- import _slicedToArray from "@babel/runtime/helpers/esm/slicedToArray";
2
1
  import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
2
+ import _slicedToArray from "@babel/runtime/helpers/esm/slicedToArray";
3
+ import _extends from "@babel/runtime/helpers/esm/extends";
3
4
  import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutProperties";
4
5
  import _typeof from "@babel/runtime/helpers/esm/typeof";
5
6
  import { formatMuiErrorMessage as _formatMuiErrorMessage } from "@mui/utils";
6
- function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
7
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
8
7
  import * as React from 'react';
9
8
  import PropTypes from 'prop-types';
10
9
  import { deepmerge } from '@mui/utils';
@@ -144,7 +143,7 @@ export default function createCssVarsProvider(options) {
144
143
  var _generateCssVars = generateCssVars(),
145
144
  rootCss = _generateCssVars.css,
146
145
  rootVars = _generateCssVars.vars; // 3. Start composing the theme object
147
- var theme = _objectSpread(_objectSpread({}, restThemeProp), {}, {
146
+ var theme = _extends({}, restThemeProp, {
148
147
  components: components,
149
148
  colorSchemes: colorSchemes,
150
149
  cssVarPrefix: cssVarPrefix,
@@ -172,7 +171,7 @@ export default function createCssVarsProvider(options) {
172
171
  Object.keys(scheme).forEach(function (schemeKey) {
173
172
  if (scheme[schemeKey] && _typeof(scheme[schemeKey]) === 'object') {
174
173
  // shallow merge the 1st level structure of the theme.
175
- theme[schemeKey] = _objectSpread(_objectSpread({}, theme[schemeKey]), scheme[schemeKey]);
174
+ theme[schemeKey] = _extends({}, theme[schemeKey], scheme[schemeKey]);
176
175
  } else {
177
176
  theme[schemeKey] = scheme[schemeKey];
178
177
  }
@@ -345,7 +344,7 @@ export default function createCssVarsProvider(options) {
345
344
  var defaultLightColorScheme = typeof designSystemColorScheme === 'string' ? designSystemColorScheme : designSystemColorScheme.light;
346
345
  var defaultDarkColorScheme = typeof designSystemColorScheme === 'string' ? designSystemColorScheme : designSystemColorScheme.dark;
347
346
  var getInitColorSchemeScript = function getInitColorSchemeScript(params) {
348
- return systemGetInitColorSchemeScript(_objectSpread({
347
+ return systemGetInitColorSchemeScript(_extends({
349
348
  attribute: defaultAttribute,
350
349
  colorSchemeStorageKey: defaultColorSchemeStorageKey,
351
350
  defaultMode: designSystemMode,
@@ -1,13 +1,11 @@
1
- import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
1
+ import _extends from "@babel/runtime/helpers/esm/extends";
2
2
  import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutProperties";
3
- function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
4
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
5
3
  import prepareCssVars from './prepareCssVars';
6
4
  function createCssVarsTheme(theme) {
7
5
  var cssVarPrefix = theme.cssVarPrefix,
8
6
  shouldSkipGeneratingVar = theme.shouldSkipGeneratingVar,
9
7
  otherTheme = _objectWithoutProperties(theme, ["cssVarPrefix", "shouldSkipGeneratingVar"]);
10
- return _objectSpread(_objectSpread({}, theme), prepareCssVars(otherTheme, {
8
+ return _extends({}, theme, prepareCssVars(otherTheme, {
11
9
  prefix: cssVarPrefix,
12
10
  shouldSkipGeneratingVar: shouldSkipGeneratingVar
13
11
  }));
@@ -1,8 +1,6 @@
1
- import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
1
+ import _extends from "@babel/runtime/helpers/esm/extends";
2
2
  import _slicedToArray from "@babel/runtime/helpers/esm/slicedToArray";
3
3
  import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutProperties";
4
- function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
5
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
6
4
  import { deepmerge } from '@mui/utils';
7
5
  import cssVarsParser from './cssVarsParser';
8
6
  function prepareCssVars(theme, parserConfig) {
@@ -48,12 +46,12 @@ function prepareCssVars(theme, parserConfig) {
48
46
  var generateCssVars = function generateCssVars(colorScheme) {
49
47
  if (!colorScheme) {
50
48
  return {
51
- css: _objectSpread({}, rootCss),
49
+ css: _extends({}, rootCss),
52
50
  vars: rootVars
53
51
  };
54
52
  }
55
53
  return {
56
- css: _objectSpread({}, colorSchemesMap[colorScheme].css),
54
+ css: _extends({}, colorSchemesMap[colorScheme].css),
57
55
  vars: colorSchemesMap[colorScheme].vars
58
56
  };
59
57
  };
@@ -1,6 +1,4 @@
1
- import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
2
- function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
3
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
1
+ import _extends from "@babel/runtime/helpers/esm/extends";
4
2
  import * as React from 'react';
5
3
  import { DEFAULT_MODE_STORAGE_KEY, DEFAULT_COLOR_SCHEME_STORAGE_KEY } from './getInitColorSchemeScript';
6
4
  export function getSystemMode(mode) {
@@ -89,7 +87,7 @@ export default function useCurrentColorScheme(options) {
89
87
  } catch (e) {
90
88
  // Unsupported
91
89
  }
92
- return _objectSpread(_objectSpread({}, currentState), {}, {
90
+ return _extends({}, currentState, {
93
91
  mode: newMode,
94
92
  systemMode: getSystemMode(newMode)
95
93
  });
@@ -104,7 +102,7 @@ export default function useCurrentColorScheme(options) {
104
102
  } catch (e) {
105
103
  // Unsupported
106
104
  }
107
- return _objectSpread(_objectSpread({}, currentState), {}, {
105
+ return _extends({}, currentState, {
108
106
  lightColorScheme: defaultLightColorScheme,
109
107
  darkColorScheme: defaultDarkColorScheme
110
108
  });
@@ -114,7 +112,7 @@ export default function useCurrentColorScheme(options) {
114
112
  console.error("`".concat(value, "` does not exist in `theme.colorSchemes`."));
115
113
  } else {
116
114
  setState(function (currentState) {
117
- var newState = _objectSpread({}, currentState);
115
+ var newState = _extends({}, currentState);
118
116
  processState(currentState, function (mode) {
119
117
  try {
120
118
  localStorage.setItem("".concat(colorSchemeStorageKey, "-").concat(mode), value);
@@ -133,7 +131,7 @@ export default function useCurrentColorScheme(options) {
133
131
  }
134
132
  } else {
135
133
  setState(function (currentState) {
136
- var newState = _objectSpread({}, currentState);
134
+ var newState = _extends({}, currentState);
137
135
  var newLightColorScheme = value.light === null ? defaultLightColorScheme : value.light;
138
136
  var newDarkColorScheme = value.dark === null ? defaultDarkColorScheme : value.dark;
139
137
  if (newLightColorScheme) {
@@ -167,7 +165,7 @@ export default function useCurrentColorScheme(options) {
167
165
  var handleMediaQuery = React.useCallback(function (e) {
168
166
  if (state.mode === 'system') {
169
167
  setState(function (currentState) {
170
- return _objectSpread(_objectSpread({}, currentState), {}, {
168
+ return _extends({}, currentState, {
171
169
  systemMode: e != null && e.matches ? 'dark' : 'light'
172
170
  });
173
171
  });
@@ -223,7 +221,7 @@ export default function useCurrentColorScheme(options) {
223
221
  }
224
222
  return undefined;
225
223
  }, [setColorScheme, setMode, modeStorageKey, colorSchemeStorageKey, joinedColorSchemes, defaultMode, storageWindow]);
226
- return _objectSpread(_objectSpread({}, state), {}, {
224
+ return _extends({}, state, {
227
225
  colorScheme: colorScheme,
228
226
  setMode: setMode,
229
227
  setColorScheme: setColorScheme
package/legacy/index.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @mui/system v5.13.1
2
+ * @mui/system v5.13.5
3
3
  *
4
4
  * @license MIT
5
5
  * This source code is licensed under the MIT license found in the
@@ -1,8 +1,6 @@
1
- import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
1
+ import _extends from "@babel/runtime/helpers/esm/extends";
2
2
  import _toConsumableArray from "@babel/runtime/helpers/esm/toConsumableArray";
3
3
  import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutProperties";
4
- function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
5
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
6
4
  import { isPlainObject } from '@mui/utils';
7
5
  import defaultSxConfig from './defaultSxConfig';
8
6
  var splitProps = function splitProps(props) {
@@ -36,12 +34,12 @@ export default function extendSxProp(props) {
36
34
  if (!isPlainObject(result)) {
37
35
  return systemProps;
38
36
  }
39
- return _objectSpread(_objectSpread({}, systemProps), result);
37
+ return _extends({}, systemProps, result);
40
38
  };
41
39
  } else {
42
- finalSx = _objectSpread(_objectSpread({}, systemProps), inSx);
40
+ finalSx = _extends({}, systemProps, inSx);
43
41
  }
44
- return _objectSpread(_objectSpread({}, otherProps), {}, {
42
+ return _extends({}, otherProps, {
45
43
  sx: finalSx
46
44
  });
47
45
  }
@@ -1,3 +1,6 @@
1
+ import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/esm/objectWithoutPropertiesLoose";
2
+ import _extends from "@babel/runtime/helpers/esm/extends";
3
+ const _excluded = ["className", "component", "disableGutters", "fixed", "maxWidth", "classes"];
1
4
  import * as React from 'react';
2
5
  import PropTypes from 'prop-types';
3
6
  import clsx from 'clsx';
@@ -47,22 +50,20 @@ export default function createContainer(options = {}) {
47
50
  const ContainerRoot = createStyledComponent(({
48
51
  theme,
49
52
  ownerState
50
- }) => ({
53
+ }) => _extends({
51
54
  width: '100%',
52
55
  marginLeft: 'auto',
53
56
  boxSizing: 'border-box',
54
57
  marginRight: 'auto',
55
- display: 'block',
56
- // Fix IE11 layout when used with main.
57
- ...(!ownerState.disableGutters && {
58
- paddingLeft: theme.spacing(2),
59
- paddingRight: theme.spacing(2),
60
- // @ts-ignore module augmentation fails if custom breakpoints are used
61
- [theme.breakpoints.up('sm')]: {
62
- paddingLeft: theme.spacing(3),
63
- paddingRight: theme.spacing(3)
64
- }
65
- })
58
+ display: 'block'
59
+ }, !ownerState.disableGutters && {
60
+ paddingLeft: theme.spacing(2),
61
+ paddingRight: theme.spacing(2),
62
+ // @ts-ignore module augmentation fails if custom breakpoints are used
63
+ [theme.breakpoints.up('sm')]: {
64
+ paddingLeft: theme.spacing(3),
65
+ paddingRight: theme.spacing(3)
66
+ }
66
67
  }), ({
67
68
  theme,
68
69
  ownerState
@@ -79,58 +80,51 @@ export default function createContainer(options = {}) {
79
80
  }, {}), ({
80
81
  theme,
81
82
  ownerState
82
- }) => ({
83
+ }) => _extends({}, ownerState.maxWidth === 'xs' && {
83
84
  // @ts-ignore module augmentation fails if custom breakpoints are used
84
- ...(ownerState.maxWidth === 'xs' && {
85
+ [theme.breakpoints.up('xs')]: {
85
86
  // @ts-ignore module augmentation fails if custom breakpoints are used
86
- [theme.breakpoints.up('xs')]: {
87
- // @ts-ignore module augmentation fails if custom breakpoints are used
88
- maxWidth: Math.max(theme.breakpoints.values.xs, 444)
89
- }
90
- }),
91
- ...(ownerState.maxWidth &&
87
+ maxWidth: Math.max(theme.breakpoints.values.xs, 444)
88
+ }
89
+ }, ownerState.maxWidth &&
90
+ // @ts-ignore module augmentation fails if custom breakpoints are used
91
+ ownerState.maxWidth !== 'xs' && {
92
92
  // @ts-ignore module augmentation fails if custom breakpoints are used
93
- ownerState.maxWidth !== 'xs' && {
93
+ [theme.breakpoints.up(ownerState.maxWidth)]: {
94
94
  // @ts-ignore module augmentation fails if custom breakpoints are used
95
- [theme.breakpoints.up(ownerState.maxWidth)]: {
96
- // @ts-ignore module augmentation fails if custom breakpoints are used
97
- maxWidth: `${theme.breakpoints.values[ownerState.maxWidth]}${theme.breakpoints.unit}`
98
- }
99
- })
95
+ maxWidth: `${theme.breakpoints.values[ownerState.maxWidth]}${theme.breakpoints.unit}`
96
+ }
100
97
  }));
101
98
  const Container = /*#__PURE__*/React.forwardRef(function Container(inProps, ref) {
102
99
  const props = useThemeProps(inProps);
103
100
  const {
104
- className,
105
- component = 'div',
106
- disableGutters = false,
107
- fixed = false,
108
- maxWidth = 'lg',
109
- classes: classesProp,
110
- ...other
111
- } = props;
112
- const ownerState = {
113
- ...props,
101
+ className,
102
+ component = 'div',
103
+ disableGutters = false,
104
+ fixed = false,
105
+ maxWidth = 'lg'
106
+ } = props,
107
+ other = _objectWithoutPropertiesLoose(props, _excluded);
108
+ const ownerState = _extends({}, props, {
114
109
  component,
115
110
  disableGutters,
116
111
  fixed,
117
112
  maxWidth
118
- };
113
+ });
119
114
 
120
115
  // @ts-ignore module augmentation fails if custom breakpoints are used
121
116
  const classes = useUtilityClasses(ownerState, componentName);
122
117
  return (
123
118
  /*#__PURE__*/
124
119
  // @ts-ignore theme is injected by the styled util
125
- _jsx(ContainerRoot, {
120
+ _jsx(ContainerRoot, _extends({
126
121
  as: component
127
122
  // @ts-ignore module augmentation fails if custom breakpoints are used
128
123
  ,
129
124
  ownerState: ownerState,
130
125
  className: clsx(classes.root, className),
131
- ref: ref,
132
- ...other
133
- })
126
+ ref: ref
127
+ }, other))
134
128
  );
135
129
  });
136
130
  process.env.NODE_ENV !== "production" ? Container.propTypes /* remove-proptypes */ = {
@@ -1,3 +1,6 @@
1
+ import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/esm/objectWithoutPropertiesLoose";
2
+ import _extends from "@babel/runtime/helpers/esm/extends";
3
+ const _excluded = ["component", "direction", "spacing", "divider", "children", "className", "useFlexGap"];
1
4
  import * as React from 'react';
2
5
  import PropTypes from 'prop-types';
3
6
  import clsx from 'clsx';
@@ -55,18 +58,17 @@ export const style = ({
55
58
  ownerState,
56
59
  theme
57
60
  }) => {
58
- let styles = {
61
+ let styles = _extends({
59
62
  display: 'flex',
60
- flexDirection: 'column',
61
- ...handleBreakpoints({
62
- theme
63
- }, resolveBreakpointValues({
64
- values: ownerState.direction,
65
- breakpoints: theme.breakpoints.values
66
- }), propValue => ({
67
- flexDirection: propValue
68
- }))
69
- };
63
+ flexDirection: 'column'
64
+ }, handleBreakpoints({
65
+ theme
66
+ }, resolveBreakpointValues({
67
+ values: ownerState.direction,
68
+ breakpoints: theme.breakpoints.values
69
+ }), propValue => ({
70
+ flexDirection: propValue
71
+ })));
70
72
  if (ownerState.spacing) {
71
73
  const transformer = createUnarySpacing(theme);
72
74
  const base = Object.keys(theme.breakpoints.values).reduce((acc, breakpoint) => {
@@ -130,29 +132,29 @@ export default function createStack(options = {}) {
130
132
  const themeProps = useThemeProps(inProps);
131
133
  const props = extendSxProp(themeProps); // `color` type conflicts with html color attribute.
132
134
  const {
133
- component = 'div',
134
- direction = 'column',
135
- spacing = 0,
136
- divider,
137
- children,
138
- className,
139
- useFlexGap = false,
140
- ...other
141
- } = props;
135
+ component = 'div',
136
+ direction = 'column',
137
+ spacing = 0,
138
+ divider,
139
+ children,
140
+ className,
141
+ useFlexGap = false
142
+ } = props,
143
+ other = _objectWithoutPropertiesLoose(props, _excluded);
142
144
  const ownerState = {
143
145
  direction,
144
146
  spacing,
145
147
  useFlexGap
146
148
  };
147
149
  const classes = useUtilityClasses();
148
- return /*#__PURE__*/_jsx(StackRoot, {
150
+ return /*#__PURE__*/_jsx(StackRoot, _extends({
149
151
  as: component,
150
152
  ownerState: ownerState,
151
153
  ref: ref,
152
- className: clsx(classes.root, className),
153
- ...other,
154
+ className: clsx(classes.root, className)
155
+ }, other, {
154
156
  children: divider ? joinChildren(children, divider) : children
155
- });
157
+ }));
156
158
  });
157
159
  process.env.NODE_ENV !== "production" ? Stack.propTypes /* remove-proptypes */ = {
158
160
  children: PropTypes.node,
@@ -1,3 +1,4 @@
1
+ import _extends from "@babel/runtime/helpers/esm/extends";
1
2
  import * as React from 'react';
2
3
  import PropTypes from 'prop-types';
3
4
  import { ThemeProvider as MuiThemeProvider, useTheme as usePrivateTheme } from '@mui/private-theming';
@@ -11,10 +12,9 @@ function useThemeScoping(themeId, upperTheme, localTheme, isPrivate = false) {
11
12
  const resolvedTheme = themeId ? upperTheme[themeId] || upperTheme : upperTheme;
12
13
  if (typeof localTheme === 'function') {
13
14
  const mergedTheme = localTheme(resolvedTheme);
14
- const result = themeId ? {
15
- ...upperTheme,
15
+ const result = themeId ? _extends({}, upperTheme, {
16
16
  [themeId]: mergedTheme
17
- } : mergedTheme;
17
+ }) : mergedTheme;
18
18
  // must return a function for the private theme to NOT merge with the upper theme.
19
19
  // see the test case "use provided theme from a callback" in ThemeProvider.test.js
20
20
  if (isPrivate) {
@@ -22,13 +22,9 @@ function useThemeScoping(themeId, upperTheme, localTheme, isPrivate = false) {
22
22
  }
23
23
  return result;
24
24
  }
25
- return themeId ? {
26
- ...upperTheme,
25
+ return themeId ? _extends({}, upperTheme, {
27
26
  [themeId]: localTheme
28
- } : {
29
- ...upperTheme,
30
- ...localTheme
31
- };
27
+ }) : _extends({}, upperTheme, localTheme);
32
28
  }, [themeId, upperTheme, localTheme, isPrivate]);
33
29
  }
34
30
 
@@ -1,3 +1,6 @@
1
+ import _extends from "@babel/runtime/helpers/esm/extends";
2
+ import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/esm/objectWithoutPropertiesLoose";
3
+ const _excluded = ["className", "children", "columns", "container", "component", "direction", "wrap", "spacing", "rowSpacing", "columnSpacing", "disableEqualOverflow", "unstable_level"];
1
4
  import * as React from 'react';
2
5
  import PropTypes from 'prop-types';
3
6
  import clsx from 'clsx';
@@ -52,20 +55,20 @@ export default function createGrid(options = {}) {
52
55
  const props = extendSxProp(themeProps); // `color` type conflicts with html color attribute.
53
56
  const overflow = React.useContext(OverflowContext);
54
57
  const {
55
- className,
56
- children,
57
- columns: columnsProp = 12,
58
- container = false,
59
- component = 'div',
60
- direction = 'row',
61
- wrap = 'wrap',
62
- spacing: spacingProp = 0,
63
- rowSpacing: rowSpacingProp = spacingProp,
64
- columnSpacing: columnSpacingProp = spacingProp,
65
- disableEqualOverflow: themeDisableEqualOverflow,
66
- unstable_level: level = 0,
67
- ...rest
68
- } = props;
58
+ className,
59
+ children,
60
+ columns: columnsProp = 12,
61
+ container = false,
62
+ component = 'div',
63
+ direction = 'row',
64
+ wrap = 'wrap',
65
+ spacing: spacingProp = 0,
66
+ rowSpacing: rowSpacingProp = spacingProp,
67
+ columnSpacing: columnSpacingProp = spacingProp,
68
+ disableEqualOverflow: themeDisableEqualOverflow,
69
+ unstable_level: level = 0
70
+ } = props,
71
+ rest = _objectWithoutPropertiesLoose(props, _excluded);
69
72
  // Because `disableEqualOverflow` can be set from the theme's defaultProps, the **nested** grid should look at the instance props instead.
70
73
  let disableEqualOverflow = themeDisableEqualOverflow;
71
74
  if (level && themeDisableEqualOverflow !== undefined) {
@@ -88,8 +91,7 @@ export default function createGrid(options = {}) {
88
91
  const spacing = inProps.spacing ?? (level ? undefined : spacingProp);
89
92
  const rowSpacing = inProps.rowSpacing ?? inProps.spacing ?? (level ? undefined : rowSpacingProp);
90
93
  const columnSpacing = inProps.columnSpacing ?? inProps.spacing ?? (level ? undefined : columnSpacingProp);
91
- const ownerState = {
92
- ...props,
94
+ const ownerState = _extends({}, props, {
93
95
  level,
94
96
  columns,
95
97
  container,
@@ -103,15 +105,15 @@ export default function createGrid(options = {}) {
103
105
  disableEqualOverflow: disableEqualOverflow ?? overflow ?? false,
104
106
  // use context value if exists.
105
107
  parentDisableEqualOverflow: overflow // for nested grid
106
- };
108
+ });
107
109
 
108
110
  const classes = useUtilityClasses(ownerState, theme);
109
- let result = /*#__PURE__*/_jsx(GridRoot, {
111
+ let result = /*#__PURE__*/_jsx(GridRoot, _extends({
110
112
  ref: ref,
111
113
  as: component,
112
114
  ownerState: ownerState,
113
- className: clsx(classes.root, className),
114
- ...other,
115
+ className: clsx(classes.root, className)
116
+ }, other, {
115
117
  children: React.Children.map(children, child => {
116
118
  if ( /*#__PURE__*/React.isValidElement(child) && isMuiElement(child, ['Grid'])) {
117
119
  return /*#__PURE__*/React.cloneElement(child, {
@@ -120,7 +122,7 @@ export default function createGrid(options = {}) {
120
122
  }
121
123
  return child;
122
124
  })
123
- });
125
+ }));
124
126
  if (disableEqualOverflow !== undefined && disableEqualOverflow !== (overflow ?? false)) {
125
127
  // There are 2 possibilities that should wrap with the OverflowContext to communicate with the nested grids:
126
128
  // 1. It is the root grid with `disableEqualOverflow`.
@@ -1,3 +1,5 @@
1
+ import _extends from "@babel/runtime/helpers/esm/extends";
2
+ import { traverseBreakpoints } from './traverseBreakpoints';
1
3
  function appendLevel(level) {
2
4
  if (!level) {
3
5
  return '';
@@ -26,48 +28,6 @@ function getParentColumns(ownerState) {
26
28
  }
27
29
  return `var(--Grid-columns${appendLevel(ownerState.unstable_level - 1)})`;
28
30
  }
29
- export const filterBreakpointKeys = (breakpointsKeys, responsiveKeys) => breakpointsKeys.filter(key => responsiveKeys.includes(key));
30
- export const traverseBreakpoints = (breakpoints, responsive, iterator) => {
31
- const smallestBreakpoint = breakpoints.keys[0]; // the keys is sorted from smallest to largest by `createBreakpoints`.
32
-
33
- if (Array.isArray(responsive)) {
34
- responsive.forEach((breakpointValue, index) => {
35
- iterator((responsiveStyles, style) => {
36
- if (index <= breakpoints.keys.length - 1) {
37
- if (index === 0) {
38
- Object.assign(responsiveStyles, style);
39
- } else {
40
- responsiveStyles[breakpoints.up(breakpoints.keys[index])] = style;
41
- }
42
- }
43
- }, breakpointValue);
44
- });
45
- } else if (responsive && typeof responsive === 'object') {
46
- // prevent null
47
- // responsive could be a very big object, pick the smallest responsive values
48
-
49
- const keys = Object.keys(responsive).length > breakpoints.keys.length ? breakpoints.keys : filterBreakpointKeys(breakpoints.keys, Object.keys(responsive));
50
- keys.forEach(key => {
51
- if (breakpoints.keys.indexOf(key) !== -1) {
52
- // @ts-ignore already checked that responsive is an object
53
- const breakpointValue = responsive[key];
54
- if (breakpointValue !== undefined) {
55
- iterator((responsiveStyles, style) => {
56
- if (smallestBreakpoint === key) {
57
- Object.assign(responsiveStyles, style);
58
- } else {
59
- responsiveStyles[breakpoints.up(key)] = style;
60
- }
61
- }, breakpointValue);
62
- }
63
- }
64
- });
65
- } else if (typeof responsive === 'number' || typeof responsive === 'string') {
66
- iterator((responsiveStyles, style) => {
67
- Object.assign(responsiveStyles, style);
68
- }, responsive);
69
- }
70
- };
71
31
  export const generateGridSizeStyles = ({
72
32
  theme,
73
33
  ownerState
@@ -203,27 +163,23 @@ export const generateGridStyles = ({
203
163
  }) => {
204
164
  const getSelfSpacing = createGetSelfSpacing(ownerState);
205
165
  const getParentSpacing = createGetParentSpacing(ownerState);
206
- return {
166
+ return _extends({
207
167
  minWidth: 0,
208
- boxSizing: 'border-box',
209
- ...(ownerState.container && {
210
- display: 'flex',
211
- flexWrap: 'wrap',
212
- ...(ownerState.wrap && ownerState.wrap !== 'wrap' && {
213
- flexWrap: ownerState.wrap
214
- }),
215
- margin: `calc(${getSelfSpacing('row')} / -2) calc(${getSelfSpacing('column')} / -2)`,
216
- ...(ownerState.disableEqualOverflow && {
217
- margin: `calc(${getSelfSpacing('row')} * -1) 0px 0px calc(${getSelfSpacing('column')} * -1)`
218
- })
219
- }),
220
- ...((!ownerState.container || isNestedContainer(ownerState)) && {
221
- padding: `calc(${getParentSpacing('row')} / 2) calc(${getParentSpacing('column')} / 2)`,
222
- ...((ownerState.disableEqualOverflow || ownerState.parentDisableEqualOverflow) && {
223
- padding: `${getParentSpacing('row')} 0px 0px ${getParentSpacing('column')}`
224
- })
225
- })
226
- };
168
+ boxSizing: 'border-box'
169
+ }, ownerState.container && _extends({
170
+ display: 'flex',
171
+ flexWrap: 'wrap'
172
+ }, ownerState.wrap && ownerState.wrap !== 'wrap' && {
173
+ flexWrap: ownerState.wrap
174
+ }, {
175
+ margin: `calc(${getSelfSpacing('row')} / -2) calc(${getSelfSpacing('column')} / -2)`
176
+ }, ownerState.disableEqualOverflow && {
177
+ margin: `calc(${getSelfSpacing('row')} * -1) 0px 0px calc(${getSelfSpacing('column')} * -1)`
178
+ }), (!ownerState.container || isNestedContainer(ownerState)) && _extends({
179
+ padding: `calc(${getParentSpacing('row')} / 2) calc(${getParentSpacing('column')} / 2)`
180
+ }, (ownerState.disableEqualOverflow || ownerState.parentDisableEqualOverflow) && {
181
+ padding: `${getParentSpacing('row')} 0px 0px ${getParentSpacing('column')}`
182
+ }));
227
183
  };
228
184
  export const generateSizeClassNames = gridSize => {
229
185
  const classNames = [];
@@ -2,4 +2,5 @@ export { default } from './Grid';
2
2
  export { default as createGrid } from './createGrid';
3
3
  export * from './GridProps';
4
4
  export { default as gridClasses } from './gridClasses';
5
- export * from './gridClasses';
5
+ export * from './gridClasses';
6
+ export { traverseBreakpoints as unstable_traverseBreakpoints } from './traverseBreakpoints';
@@ -0,0 +1,42 @@
1
+ export const filterBreakpointKeys = (breakpointsKeys, responsiveKeys) => breakpointsKeys.filter(key => responsiveKeys.includes(key));
2
+ export const traverseBreakpoints = (breakpoints, responsive, iterator) => {
3
+ const smallestBreakpoint = breakpoints.keys[0]; // the keys is sorted from smallest to largest by `createBreakpoints`.
4
+
5
+ if (Array.isArray(responsive)) {
6
+ responsive.forEach((breakpointValue, index) => {
7
+ iterator((responsiveStyles, style) => {
8
+ if (index <= breakpoints.keys.length - 1) {
9
+ if (index === 0) {
10
+ Object.assign(responsiveStyles, style);
11
+ } else {
12
+ responsiveStyles[breakpoints.up(breakpoints.keys[index])] = style;
13
+ }
14
+ }
15
+ }, breakpointValue);
16
+ });
17
+ } else if (responsive && typeof responsive === 'object') {
18
+ // prevent null
19
+ // responsive could be a very big object, pick the smallest responsive values
20
+
21
+ const keys = Object.keys(responsive).length > breakpoints.keys.length ? breakpoints.keys : filterBreakpointKeys(breakpoints.keys, Object.keys(responsive));
22
+ keys.forEach(key => {
23
+ if (breakpoints.keys.indexOf(key) !== -1) {
24
+ // @ts-ignore already checked that responsive is an object
25
+ const breakpointValue = responsive[key];
26
+ if (breakpointValue !== undefined) {
27
+ iterator((responsiveStyles, style) => {
28
+ if (smallestBreakpoint === key) {
29
+ Object.assign(responsiveStyles, style);
30
+ } else {
31
+ responsiveStyles[breakpoints.up(key)] = style;
32
+ }
33
+ }, breakpointValue);
34
+ }
35
+ }
36
+ });
37
+ } else if (typeof responsive === 'number' || typeof responsive === 'string') {
38
+ iterator((responsiveStyles, style) => {
39
+ Object.assign(responsiveStyles, style);
40
+ }, responsive);
41
+ }
42
+ };