@mui/system 6.0.0-alpha.9 → 6.0.0-beta.0
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.
- package/CHANGELOG.md +331 -3
- package/Container/createContainer.js +0 -2
- package/DefaultPropsProvider/DefaultPropsProvider.d.ts +12 -0
- package/DefaultPropsProvider/DefaultPropsProvider.js +64 -0
- package/DefaultPropsProvider/index.d.ts +1 -0
- package/DefaultPropsProvider/index.js +1 -0
- package/DefaultPropsProvider/package.json +6 -0
- package/{cssVars/getInitColorSchemeScript.d.ts → InitColorSchemeScript/InitColorSchemeScript.d.ts} +9 -2
- package/{cssVars/getInitColorSchemeScript.js → InitColorSchemeScript/InitColorSchemeScript.js} +9 -2
- package/InitColorSchemeScript/index.d.ts +2 -0
- package/InitColorSchemeScript/index.js +1 -0
- package/InitColorSchemeScript/package.json +6 -0
- package/ThemeProvider/ThemeProvider.js +5 -1
- package/Unstable_Grid/Grid.js +5 -81
- package/Unstable_Grid/GridProps.d.ts +12 -97
- package/Unstable_Grid/createGrid.js +36 -55
- package/Unstable_Grid/gridClasses.js +1 -1
- package/Unstable_Grid/gridGenerator.d.ts +3 -10
- package/Unstable_Grid/gridGenerator.js +10 -19
- package/createTheme/createTheme.d.ts +1 -1
- package/cssContainerQueries/cssContainerQueries.js +4 -4
- package/cssVars/createCssVarsProvider.d.ts +2 -2
- package/cssVars/createCssVarsProvider.js +2 -2
- package/cssVars/index.d.ts +0 -1
- package/cssVars/index.js +0 -1
- package/cssVars/useCurrentColorScheme.js +1 -1
- package/index.js +1 -1
- package/modern/Container/createContainer.js +0 -2
- package/modern/DefaultPropsProvider/DefaultPropsProvider.js +64 -0
- package/modern/DefaultPropsProvider/index.js +1 -0
- package/modern/{cssVars/getInitColorSchemeScript.js → InitColorSchemeScript/InitColorSchemeScript.js} +9 -2
- package/modern/InitColorSchemeScript/index.js +1 -0
- package/modern/ThemeProvider/ThemeProvider.js +5 -1
- package/modern/Unstable_Grid/Grid.js +5 -81
- package/modern/Unstable_Grid/createGrid.js +36 -55
- package/modern/Unstable_Grid/gridClasses.js +1 -1
- package/modern/Unstable_Grid/gridGenerator.js +10 -19
- package/modern/cssContainerQueries/cssContainerQueries.js +4 -4
- package/modern/cssVars/createCssVarsProvider.js +2 -2
- package/modern/cssVars/index.js +0 -1
- package/modern/cssVars/useCurrentColorScheme.js +1 -1
- package/modern/index.js +1 -1
- package/modern/useMediaQuery/useMediaQuery.js +5 -27
- package/node/Container/createContainer.js +0 -2
- package/node/DefaultPropsProvider/DefaultPropsProvider.js +73 -0
- package/node/DefaultPropsProvider/index.js +20 -0
- package/node/{cssVars/getInitColorSchemeScript.js → InitColorSchemeScript/InitColorSchemeScript.js} +11 -3
- package/node/InitColorSchemeScript/index.js +13 -0
- package/node/ThemeProvider/ThemeProvider.js +5 -1
- package/node/Unstable_Grid/Grid.js +5 -81
- package/node/Unstable_Grid/createGrid.js +37 -56
- package/node/Unstable_Grid/gridClasses.js +1 -1
- package/node/Unstable_Grid/gridGenerator.js +10 -19
- package/node/cssContainerQueries/cssContainerQueries.js +4 -4
- package/node/cssVars/createCssVarsProvider.js +5 -5
- package/node/cssVars/index.js +0 -7
- package/node/cssVars/useCurrentColorScheme.js +3 -3
- package/node/index.js +1 -1
- package/node/useMediaQuery/useMediaQuery.js +5 -26
- package/package.json +6 -6
- package/useMediaQuery/useMediaQuery.d.ts +0 -18
- package/useMediaQuery/useMediaQuery.js +5 -27
package/node/{cssVars/getInitColorSchemeScript.js → InitColorSchemeScript/InitColorSchemeScript.js}
RENAMED
|
@@ -4,15 +4,19 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
6
|
exports.DEFAULT_MODE_STORAGE_KEY = exports.DEFAULT_COLOR_SCHEME_STORAGE_KEY = exports.DEFAULT_ATTRIBUTE = void 0;
|
|
7
|
-
exports.default =
|
|
7
|
+
exports.default = InitColorSchemeScript;
|
|
8
8
|
var React = _interopRequireWildcard(require("react"));
|
|
9
9
|
var _jsxRuntime = require("react/jsx-runtime");
|
|
10
10
|
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
|
|
11
11
|
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
12
|
+
/**
|
|
13
|
+
* Split this component for RSC import
|
|
14
|
+
*/
|
|
15
|
+
|
|
12
16
|
const DEFAULT_MODE_STORAGE_KEY = exports.DEFAULT_MODE_STORAGE_KEY = 'mode';
|
|
13
17
|
const DEFAULT_COLOR_SCHEME_STORAGE_KEY = exports.DEFAULT_COLOR_SCHEME_STORAGE_KEY = 'color-scheme';
|
|
14
18
|
const DEFAULT_ATTRIBUTE = exports.DEFAULT_ATTRIBUTE = 'data-color-scheme';
|
|
15
|
-
function
|
|
19
|
+
function InitColorSchemeScript(options) {
|
|
16
20
|
const {
|
|
17
21
|
defaultMode = 'light',
|
|
18
22
|
defaultLightColorScheme = 'light',
|
|
@@ -20,10 +24,14 @@ function getInitColorSchemeScript(options) {
|
|
|
20
24
|
modeStorageKey = DEFAULT_MODE_STORAGE_KEY,
|
|
21
25
|
colorSchemeStorageKey = DEFAULT_COLOR_SCHEME_STORAGE_KEY,
|
|
22
26
|
attribute = DEFAULT_ATTRIBUTE,
|
|
23
|
-
colorSchemeNode = 'document.documentElement'
|
|
27
|
+
colorSchemeNode = 'document.documentElement',
|
|
28
|
+
nonce
|
|
24
29
|
} = options || {};
|
|
25
30
|
return /*#__PURE__*/(0, _jsxRuntime.jsx)("script", {
|
|
31
|
+
suppressHydrationWarning: true,
|
|
32
|
+
nonce: typeof window === 'undefined' ? nonce : ''
|
|
26
33
|
// eslint-disable-next-line react/no-danger
|
|
34
|
+
,
|
|
27
35
|
dangerouslySetInnerHTML: {
|
|
28
36
|
__html: `(function() {
|
|
29
37
|
try {
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
Object.defineProperty(exports, "__esModule", {
|
|
5
|
+
value: true
|
|
6
|
+
});
|
|
7
|
+
Object.defineProperty(exports, "default", {
|
|
8
|
+
enumerable: true,
|
|
9
|
+
get: function () {
|
|
10
|
+
return _InitColorSchemeScript.default;
|
|
11
|
+
}
|
|
12
|
+
});
|
|
13
|
+
var _InitColorSchemeScript = _interopRequireDefault(require("./InitColorSchemeScript"));
|
|
@@ -13,6 +13,7 @@ var _exactProp = _interopRequireDefault(require("@mui/utils/exactProp"));
|
|
|
13
13
|
var _styledEngine = require("@mui/styled-engine");
|
|
14
14
|
var _useThemeWithoutDefault = _interopRequireDefault(require("../useThemeWithoutDefault"));
|
|
15
15
|
var _RtlProvider = _interopRequireDefault(require("../RtlProvider"));
|
|
16
|
+
var _DefaultPropsProvider = _interopRequireDefault(require("../DefaultPropsProvider"));
|
|
16
17
|
var _jsxRuntime = require("react/jsx-runtime");
|
|
17
18
|
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
|
|
18
19
|
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
@@ -72,7 +73,10 @@ function ThemeProvider(props) {
|
|
|
72
73
|
value: engineTheme,
|
|
73
74
|
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_RtlProvider.default, {
|
|
74
75
|
value: rtlValue,
|
|
75
|
-
children:
|
|
76
|
+
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_DefaultPropsProvider.default, {
|
|
77
|
+
value: engineTheme == null ? void 0 : engineTheme.components,
|
|
78
|
+
children: children
|
|
79
|
+
})
|
|
76
80
|
})
|
|
77
81
|
})
|
|
78
82
|
});
|
|
@@ -52,62 +52,18 @@ process.env.NODE_ENV !== "production" ? Grid.propTypes /* remove-proptypes */ =
|
|
|
52
52
|
*/
|
|
53
53
|
direction: _propTypes.default /* @typescript-to-proptypes-ignore */.oneOfType([_propTypes.default.oneOf(['column-reverse', 'column', 'row-reverse', 'row']), _propTypes.default.arrayOf(_propTypes.default.oneOf(['column-reverse', 'column', 'row-reverse', 'row'])), _propTypes.default.object]),
|
|
54
54
|
/**
|
|
55
|
-
*
|
|
55
|
+
* Defines the offset value for the type `item` components.
|
|
56
56
|
*/
|
|
57
|
-
|
|
58
|
-
/**
|
|
59
|
-
* If a number, it sets the number of columns the grid item uses.
|
|
60
|
-
* It can't be greater than the total number of columns of the container (12 by default).
|
|
61
|
-
* If 'auto', the grid item's width matches its content.
|
|
62
|
-
* If false, the prop is ignored.
|
|
63
|
-
* If true, the grid item's width grows to use the space available in the grid container.
|
|
64
|
-
* The value is applied for the `lg` breakpoint and wider screens if not overridden.
|
|
65
|
-
* @default false
|
|
66
|
-
*/
|
|
67
|
-
lg: _propTypes.default.oneOfType([_propTypes.default.oneOf(['auto']), _propTypes.default.number, _propTypes.default.bool]),
|
|
68
|
-
/**
|
|
69
|
-
* If a number, it sets the margin-left equals to the number of columns the grid item uses.
|
|
70
|
-
* If 'auto', the grid item push itself to the right-end of the container.
|
|
71
|
-
* The value is applied for the `lg` breakpoint and wider screens if not overridden.
|
|
72
|
-
*/
|
|
73
|
-
lgOffset: _propTypes.default.oneOfType([_propTypes.default.oneOf(['auto']), _propTypes.default.number]),
|
|
74
|
-
/**
|
|
75
|
-
* If a number, it sets the number of columns the grid item uses.
|
|
76
|
-
* It can't be greater than the total number of columns of the container (12 by default).
|
|
77
|
-
* If 'auto', the grid item's width matches its content.
|
|
78
|
-
* If false, the prop is ignored.
|
|
79
|
-
* If true, the grid item's width grows to use the space available in the grid container.
|
|
80
|
-
* The value is applied for the `md` breakpoint and wider screens if not overridden.
|
|
81
|
-
* @default false
|
|
82
|
-
*/
|
|
83
|
-
md: _propTypes.default.oneOfType([_propTypes.default.oneOf(['auto']), _propTypes.default.number, _propTypes.default.bool]),
|
|
84
|
-
/**
|
|
85
|
-
* If a number, it sets the margin-left equals to the number of columns the grid item uses.
|
|
86
|
-
* If 'auto', the grid item push itself to the right-end of the container.
|
|
87
|
-
* The value is applied for the `md` breakpoint and wider screens if not overridden.
|
|
88
|
-
*/
|
|
89
|
-
mdOffset: _propTypes.default.oneOfType([_propTypes.default.oneOf(['auto']), _propTypes.default.number]),
|
|
57
|
+
offset: _propTypes.default /* @typescript-to-proptypes-ignore */.oneOfType([_propTypes.default.string, _propTypes.default.number, _propTypes.default.arrayOf(_propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.number])), _propTypes.default.object]),
|
|
90
58
|
/**
|
|
91
59
|
* Defines the vertical space between the type `item` components.
|
|
92
60
|
* It overrides the value of the `spacing` prop.
|
|
93
61
|
*/
|
|
94
62
|
rowSpacing: _propTypes.default /* @typescript-to-proptypes-ignore */.oneOfType([_propTypes.default.arrayOf(_propTypes.default.oneOfType([_propTypes.default.number, _propTypes.default.string])), _propTypes.default.number, _propTypes.default.object, _propTypes.default.string]),
|
|
95
63
|
/**
|
|
96
|
-
*
|
|
97
|
-
* It can't be greater than the total number of columns of the container (12 by default).
|
|
98
|
-
* If 'auto', the grid item's width matches its content.
|
|
99
|
-
* If false, the prop is ignored.
|
|
100
|
-
* If true, the grid item's width grows to use the space available in the grid container.
|
|
101
|
-
* The value is applied for the `sm` breakpoint and wider screens if not overridden.
|
|
102
|
-
* @default false
|
|
64
|
+
* Defines the size of the the type `item` components.
|
|
103
65
|
*/
|
|
104
|
-
|
|
105
|
-
/**
|
|
106
|
-
* If a number, it sets the margin-left equals to the number of columns the grid item uses.
|
|
107
|
-
* If 'auto', the grid item push itself to the right-end of the container.
|
|
108
|
-
* The value is applied for the `sm` breakpoint and wider screens if not overridden.
|
|
109
|
-
*/
|
|
110
|
-
smOffset: _propTypes.default.oneOfType([_propTypes.default.oneOf(['auto']), _propTypes.default.number]),
|
|
66
|
+
size: _propTypes.default /* @typescript-to-proptypes-ignore */.oneOfType([_propTypes.default.string, _propTypes.default.bool, _propTypes.default.number, _propTypes.default.arrayOf(_propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.bool, _propTypes.default.number])), _propTypes.default.object]),
|
|
111
67
|
/**
|
|
112
68
|
* Defines the space between the type `item` components.
|
|
113
69
|
* It can only be used on a type `container` component.
|
|
@@ -146,38 +102,6 @@ process.env.NODE_ENV !== "production" ? Grid.propTypes /* remove-proptypes */ =
|
|
|
146
102
|
* It's applied for all screen sizes.
|
|
147
103
|
* @default 'wrap'
|
|
148
104
|
*/
|
|
149
|
-
wrap: _propTypes.default.oneOf(['nowrap', 'wrap-reverse', 'wrap'])
|
|
150
|
-
/**
|
|
151
|
-
* If a number, it sets the number of columns the grid item uses.
|
|
152
|
-
* It can't be greater than the total number of columns of the container (12 by default).
|
|
153
|
-
* If 'auto', the grid item's width matches its content.
|
|
154
|
-
* If false, the prop is ignored.
|
|
155
|
-
* If true, the grid item's width grows to use the space available in the grid container.
|
|
156
|
-
* The value is applied for the `xl` breakpoint and wider screens if not overridden.
|
|
157
|
-
* @default false
|
|
158
|
-
*/
|
|
159
|
-
xl: _propTypes.default.oneOfType([_propTypes.default.oneOf(['auto']), _propTypes.default.number, _propTypes.default.bool]),
|
|
160
|
-
/**
|
|
161
|
-
* If a number, it sets the margin-left equals to the number of columns the grid item uses.
|
|
162
|
-
* If 'auto', the grid item push itself to the right-end of the container.
|
|
163
|
-
* The value is applied for the `xl` breakpoint and wider screens if not overridden.
|
|
164
|
-
*/
|
|
165
|
-
xlOffset: _propTypes.default.oneOfType([_propTypes.default.oneOf(['auto']), _propTypes.default.number]),
|
|
166
|
-
/**
|
|
167
|
-
* If a number, it sets the number of columns the grid item uses.
|
|
168
|
-
* It can't be greater than the total number of columns of the container (12 by default).
|
|
169
|
-
* If 'auto', the grid item's width matches its content.
|
|
170
|
-
* If false, the prop is ignored.
|
|
171
|
-
* If true, the grid item's width grows to use the space available in the grid container.
|
|
172
|
-
* The value is applied for all the screen sizes with the lowest priority.
|
|
173
|
-
* @default false
|
|
174
|
-
*/
|
|
175
|
-
xs: _propTypes.default.oneOfType([_propTypes.default.oneOf(['auto']), _propTypes.default.number, _propTypes.default.bool]),
|
|
176
|
-
/**
|
|
177
|
-
* If a number, it sets the margin-left equals to the number of columns the grid item uses.
|
|
178
|
-
* If 'auto', the grid item push itself to the right-end of the container.
|
|
179
|
-
* The value is applied for the `xs` breakpoint and wider screens if not overridden.
|
|
180
|
-
*/
|
|
181
|
-
xsOffset: _propTypes.default.oneOfType([_propTypes.default.oneOf(['auto']), _propTypes.default.number])
|
|
105
|
+
wrap: _propTypes.default.oneOf(['nowrap', 'wrap-reverse', 'wrap'])
|
|
182
106
|
} : void 0;
|
|
183
107
|
var _default = exports.default = Grid;
|
|
@@ -42,30 +42,48 @@ function createGrid(options = {}) {
|
|
|
42
42
|
useThemeProps = useThemePropsDefault,
|
|
43
43
|
componentName = 'MuiGrid'
|
|
44
44
|
} = options;
|
|
45
|
-
const GridOverflowContext = /*#__PURE__*/React.createContext(undefined);
|
|
46
|
-
if (process.env.NODE_ENV !== 'production') {
|
|
47
|
-
GridOverflowContext.displayName = 'GridOverflowContext';
|
|
48
|
-
}
|
|
49
45
|
const useUtilityClasses = (ownerState, theme) => {
|
|
50
46
|
const {
|
|
51
47
|
container,
|
|
52
48
|
direction,
|
|
53
49
|
spacing,
|
|
54
50
|
wrap,
|
|
55
|
-
|
|
51
|
+
size
|
|
56
52
|
} = ownerState;
|
|
57
53
|
const slots = {
|
|
58
|
-
root: ['root', container && 'container', wrap !== 'wrap' && `wrap-xs-${String(wrap)}`, ...(0, _gridGenerator.generateDirectionClasses)(direction), ...(0, _gridGenerator.generateSizeClassNames)(
|
|
54
|
+
root: ['root', container && 'container', wrap !== 'wrap' && `wrap-xs-${String(wrap)}`, ...(0, _gridGenerator.generateDirectionClasses)(direction), ...(0, _gridGenerator.generateSizeClassNames)(size), ...(container ? (0, _gridGenerator.generateSpacingClassNames)(spacing, theme.breakpoints.keys[0]) : [])]
|
|
59
55
|
};
|
|
60
56
|
return (0, _composeClasses.default)(slots, slot => (0, _generateUtilityClass.default)(componentName, slot), {});
|
|
61
57
|
};
|
|
58
|
+
function parseResponsiveProp(propValue, breakpoints, shouldUseValue = () => true) {
|
|
59
|
+
const parsedProp = {};
|
|
60
|
+
if (propValue === null) {
|
|
61
|
+
return parsedProp;
|
|
62
|
+
}
|
|
63
|
+
if (Array.isArray(propValue)) {
|
|
64
|
+
propValue.forEach((value, index) => {
|
|
65
|
+
if (value !== null && shouldUseValue(value) && breakpoints.keys[index]) {
|
|
66
|
+
parsedProp[breakpoints.keys[index]] = value;
|
|
67
|
+
}
|
|
68
|
+
});
|
|
69
|
+
} else if (typeof propValue === 'object') {
|
|
70
|
+
Object.keys(propValue).forEach(key => {
|
|
71
|
+
const value = propValue[key];
|
|
72
|
+
if (value !== null && value !== undefined && shouldUseValue(value)) {
|
|
73
|
+
parsedProp[key] = value;
|
|
74
|
+
}
|
|
75
|
+
});
|
|
76
|
+
} else {
|
|
77
|
+
parsedProp[breakpoints.keys[0]] = propValue;
|
|
78
|
+
}
|
|
79
|
+
return parsedProp;
|
|
80
|
+
}
|
|
62
81
|
const GridRoot = createStyledComponent(_gridGenerator.generateGridColumnsStyles, _gridGenerator.generateGridColumnSpacingStyles, _gridGenerator.generateGridRowSpacingStyles, _gridGenerator.generateGridSizeStyles, _gridGenerator.generateGridDirectionStyles, _gridGenerator.generateGridStyles, _gridGenerator.generateGridOffsetStyles);
|
|
63
82
|
const Grid = /*#__PURE__*/React.forwardRef(function Grid(inProps, ref) {
|
|
64
|
-
var _inProps$columns, _inProps$spacing, _ref, _inProps$rowSpacing, _ref2, _inProps$columnSpacin
|
|
83
|
+
var _inProps$columns, _inProps$spacing, _ref, _inProps$rowSpacing, _ref2, _inProps$columnSpacin;
|
|
65
84
|
const theme = (0, _useTheme.default)();
|
|
66
85
|
const themeProps = useThemeProps(inProps);
|
|
67
86
|
const props = (0, _styleFunctionSx.extendSxProp)(themeProps); // `color` type conflicts with html color attribute.
|
|
68
|
-
const overflow = React.useContext(GridOverflowContext);
|
|
69
87
|
const {
|
|
70
88
|
className,
|
|
71
89
|
children,
|
|
@@ -74,31 +92,16 @@ function createGrid(options = {}) {
|
|
|
74
92
|
component = 'div',
|
|
75
93
|
direction = 'row',
|
|
76
94
|
wrap = 'wrap',
|
|
95
|
+
size: sizeProp = {},
|
|
96
|
+
offset: offsetProp = {},
|
|
77
97
|
spacing: spacingProp = 0,
|
|
78
98
|
rowSpacing: rowSpacingProp = spacingProp,
|
|
79
99
|
columnSpacing: columnSpacingProp = spacingProp,
|
|
80
|
-
disableEqualOverflow: themeDisableEqualOverflow,
|
|
81
100
|
unstable_level: level = 0,
|
|
82
101
|
...rest
|
|
83
102
|
} = props;
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
if (level && themeDisableEqualOverflow !== undefined) {
|
|
87
|
-
disableEqualOverflow = inProps.disableEqualOverflow;
|
|
88
|
-
}
|
|
89
|
-
// collect breakpoints related props because they can be customized from the theme.
|
|
90
|
-
const gridSize = {};
|
|
91
|
-
const gridOffset = {};
|
|
92
|
-
const other = {};
|
|
93
|
-
Object.entries(rest).forEach(([key, val]) => {
|
|
94
|
-
if (theme.breakpoints.values[key] !== undefined) {
|
|
95
|
-
gridSize[key] = val;
|
|
96
|
-
} else if (theme.breakpoints.values[key.replace('Offset', '')] !== undefined) {
|
|
97
|
-
gridOffset[key.replace('Offset', '')] = val;
|
|
98
|
-
} else {
|
|
99
|
-
other[key] = val;
|
|
100
|
-
}
|
|
101
|
-
});
|
|
103
|
+
const size = parseResponsiveProp(sizeProp, theme.breakpoints, val => val !== false);
|
|
104
|
+
const offset = parseResponsiveProp(offsetProp, theme.breakpoints);
|
|
102
105
|
const columns = (_inProps$columns = inProps.columns) != null ? _inProps$columns : level ? undefined : columnsProp;
|
|
103
106
|
const spacing = (_inProps$spacing = inProps.spacing) != null ? _inProps$spacing : level ? undefined : spacingProp;
|
|
104
107
|
const rowSpacing = (_ref = (_inProps$rowSpacing = inProps.rowSpacing) != null ? _inProps$rowSpacing : inProps.spacing) != null ? _ref : level ? undefined : rowSpacingProp;
|
|
@@ -113,19 +116,16 @@ function createGrid(options = {}) {
|
|
|
113
116
|
spacing,
|
|
114
117
|
rowSpacing,
|
|
115
118
|
columnSpacing,
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
disableEqualOverflow: (_ref3 = (_disableEqualOverflow = disableEqualOverflow) != null ? _disableEqualOverflow : overflow) != null ? _ref3 : false,
|
|
119
|
-
// use context value if exists.
|
|
120
|
-
parentDisableEqualOverflow: overflow // for nested grid
|
|
119
|
+
size,
|
|
120
|
+
offset
|
|
121
121
|
};
|
|
122
122
|
const classes = useUtilityClasses(ownerState, theme);
|
|
123
|
-
|
|
123
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsx)(GridRoot, {
|
|
124
124
|
ref: ref,
|
|
125
125
|
as: component,
|
|
126
126
|
ownerState: ownerState,
|
|
127
127
|
className: (0, _clsx.default)(classes.root, className),
|
|
128
|
-
...
|
|
128
|
+
...rest,
|
|
129
129
|
children: React.Children.map(children, child => {
|
|
130
130
|
if ( /*#__PURE__*/React.isValidElement(child) && (0, _isMuiElement.default)(child, ['Grid'])) {
|
|
131
131
|
var _unstable_level;
|
|
@@ -136,16 +136,6 @@ function createGrid(options = {}) {
|
|
|
136
136
|
return child;
|
|
137
137
|
})
|
|
138
138
|
});
|
|
139
|
-
if (disableEqualOverflow !== undefined && disableEqualOverflow !== (overflow != null ? overflow : false)) {
|
|
140
|
-
// There are 2 possibilities that should wrap with the GridOverflowContext to communicate with the nested grids:
|
|
141
|
-
// 1. It is the root grid with `disableEqualOverflow`.
|
|
142
|
-
// 2. It is a nested grid with different `disableEqualOverflow` from the context.
|
|
143
|
-
result = /*#__PURE__*/(0, _jsxRuntime.jsx)(GridOverflowContext.Provider, {
|
|
144
|
-
value: disableEqualOverflow,
|
|
145
|
-
children: result
|
|
146
|
-
});
|
|
147
|
-
}
|
|
148
|
-
return result;
|
|
149
139
|
});
|
|
150
140
|
process.env.NODE_ENV !== "production" ? Grid.propTypes /* remove-proptypes */ = {
|
|
151
141
|
children: _propTypes.default.node,
|
|
@@ -155,21 +145,12 @@ function createGrid(options = {}) {
|
|
|
155
145
|
component: _propTypes.default.elementType,
|
|
156
146
|
container: _propTypes.default.bool,
|
|
157
147
|
direction: _propTypes.default.oneOfType([_propTypes.default.oneOf(['column-reverse', 'column', 'row-reverse', 'row']), _propTypes.default.arrayOf(_propTypes.default.oneOf(['column-reverse', 'column', 'row-reverse', 'row'])), _propTypes.default.object]),
|
|
158
|
-
|
|
159
|
-
lg: _propTypes.default.oneOfType([_propTypes.default.oneOf(['auto']), _propTypes.default.number, _propTypes.default.bool]),
|
|
160
|
-
lgOffset: _propTypes.default.oneOfType([_propTypes.default.oneOf(['auto']), _propTypes.default.number]),
|
|
161
|
-
md: _propTypes.default.oneOfType([_propTypes.default.oneOf(['auto']), _propTypes.default.number, _propTypes.default.bool]),
|
|
162
|
-
mdOffset: _propTypes.default.oneOfType([_propTypes.default.oneOf(['auto']), _propTypes.default.number]),
|
|
148
|
+
offset: _propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.number, _propTypes.default.arrayOf(_propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.number])), _propTypes.default.object]),
|
|
163
149
|
rowSpacing: _propTypes.default.oneOfType([_propTypes.default.arrayOf(_propTypes.default.oneOfType([_propTypes.default.number, _propTypes.default.string])), _propTypes.default.number, _propTypes.default.object, _propTypes.default.string]),
|
|
164
|
-
|
|
165
|
-
smOffset: _propTypes.default.oneOfType([_propTypes.default.oneOf(['auto']), _propTypes.default.number]),
|
|
150
|
+
size: _propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.bool, _propTypes.default.number, _propTypes.default.arrayOf(_propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.bool, _propTypes.default.number])), _propTypes.default.object]),
|
|
166
151
|
spacing: _propTypes.default.oneOfType([_propTypes.default.arrayOf(_propTypes.default.oneOfType([_propTypes.default.number, _propTypes.default.string])), _propTypes.default.number, _propTypes.default.object, _propTypes.default.string]),
|
|
167
152
|
sx: _propTypes.default.oneOfType([_propTypes.default.arrayOf(_propTypes.default.oneOfType([_propTypes.default.func, _propTypes.default.object, _propTypes.default.bool])), _propTypes.default.func, _propTypes.default.object]),
|
|
168
|
-
wrap: _propTypes.default.oneOf(['nowrap', 'wrap-reverse', 'wrap'])
|
|
169
|
-
xl: _propTypes.default.oneOfType([_propTypes.default.oneOf(['auto']), _propTypes.default.number, _propTypes.default.bool]),
|
|
170
|
-
xlOffset: _propTypes.default.oneOfType([_propTypes.default.oneOf(['auto']), _propTypes.default.number]),
|
|
171
|
-
xs: _propTypes.default.oneOfType([_propTypes.default.oneOf(['auto']), _propTypes.default.number, _propTypes.default.bool]),
|
|
172
|
-
xsOffset: _propTypes.default.oneOfType([_propTypes.default.oneOf(['auto']), _propTypes.default.number])
|
|
153
|
+
wrap: _propTypes.default.oneOf(['nowrap', 'wrap-reverse', 'wrap'])
|
|
173
154
|
} : void 0;
|
|
174
155
|
|
|
175
156
|
// @ts-ignore internal logic for nested grid
|
|
@@ -14,7 +14,7 @@ function getGridUtilityClass(slot) {
|
|
|
14
14
|
const SPACINGS = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10];
|
|
15
15
|
const DIRECTIONS = ['column-reverse', 'column', 'row-reverse', 'row'];
|
|
16
16
|
const WRAPS = ['nowrap', 'wrap-reverse', 'wrap'];
|
|
17
|
-
const GRID_SIZES = ['auto',
|
|
17
|
+
const GRID_SIZES = ['auto', 'grow', 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12];
|
|
18
18
|
const gridClasses = (0, _generateUtilityClasses.default)('MuiGrid', ['root', 'container', 'item',
|
|
19
19
|
// spacings
|
|
20
20
|
...SPACINGS.map(spacing => `spacing-xs-${spacing}`),
|
|
@@ -37,11 +37,11 @@ const generateGridSizeStyles = ({
|
|
|
37
37
|
theme,
|
|
38
38
|
ownerState
|
|
39
39
|
}) => {
|
|
40
|
-
const
|
|
40
|
+
const getParentSpacing = createGetParentSpacing(ownerState);
|
|
41
41
|
const styles = {};
|
|
42
|
-
(0, _traverseBreakpoints.traverseBreakpoints)(theme.breakpoints, ownerState.
|
|
42
|
+
(0, _traverseBreakpoints.traverseBreakpoints)(theme.breakpoints, ownerState.size, (appendStyle, value) => {
|
|
43
43
|
let style = {};
|
|
44
|
-
if (value ===
|
|
44
|
+
if (value === 'grow') {
|
|
45
45
|
style = {
|
|
46
46
|
flexBasis: 0,
|
|
47
47
|
flexGrow: 1,
|
|
@@ -61,7 +61,7 @@ const generateGridSizeStyles = ({
|
|
|
61
61
|
style = {
|
|
62
62
|
flexGrow: 0,
|
|
63
63
|
flexBasis: 'auto',
|
|
64
|
-
width: `calc(100% * ${value} / ${getParentColumns(ownerState)}${
|
|
64
|
+
width: `calc(100% * ${value} / ${getParentColumns(ownerState)} - (${getParentColumns(ownerState)} - ${value}) * (${getParentSpacing('column')} / ${getParentColumns(ownerState)}))`
|
|
65
65
|
};
|
|
66
66
|
}
|
|
67
67
|
appendStyle(styles, style);
|
|
@@ -73,8 +73,9 @@ const generateGridOffsetStyles = ({
|
|
|
73
73
|
theme,
|
|
74
74
|
ownerState
|
|
75
75
|
}) => {
|
|
76
|
+
const getParentSpacing = createGetParentSpacing(ownerState);
|
|
76
77
|
const styles = {};
|
|
77
|
-
(0, _traverseBreakpoints.traverseBreakpoints)(theme.breakpoints, ownerState.
|
|
78
|
+
(0, _traverseBreakpoints.traverseBreakpoints)(theme.breakpoints, ownerState.offset, (appendStyle, value) => {
|
|
78
79
|
let style = {};
|
|
79
80
|
if (value === 'auto') {
|
|
80
81
|
style = {
|
|
@@ -83,7 +84,7 @@ const generateGridOffsetStyles = ({
|
|
|
83
84
|
}
|
|
84
85
|
if (typeof value === 'number') {
|
|
85
86
|
style = {
|
|
86
|
-
marginLeft: value === 0 ? '0px' : `calc(100% * ${value} / ${getParentColumns(ownerState)})`
|
|
87
|
+
marginLeft: value === 0 ? '0px' : `calc(100% * ${value} / ${getParentColumns(ownerState)} + ${getParentSpacing('column')} * ${value} / ${getParentColumns(ownerState)})`
|
|
87
88
|
};
|
|
88
89
|
}
|
|
89
90
|
appendStyle(styles, style);
|
|
@@ -175,7 +176,6 @@ const generateGridStyles = ({
|
|
|
175
176
|
ownerState
|
|
176
177
|
}) => {
|
|
177
178
|
const getSelfSpacing = createGetSelfSpacing(ownerState);
|
|
178
|
-
const getParentSpacing = createGetParentSpacing(ownerState);
|
|
179
179
|
return {
|
|
180
180
|
minWidth: 0,
|
|
181
181
|
boxSizing: 'border-box',
|
|
@@ -185,23 +185,14 @@ const generateGridStyles = ({
|
|
|
185
185
|
...(ownerState.wrap && ownerState.wrap !== 'wrap' && {
|
|
186
186
|
flexWrap: ownerState.wrap
|
|
187
187
|
}),
|
|
188
|
-
|
|
189
|
-
...(ownerState.disableEqualOverflow && {
|
|
190
|
-
margin: `calc(${getSelfSpacing('row')} * -1) 0px 0px calc(${getSelfSpacing('column')} * -1)`
|
|
191
|
-
})
|
|
192
|
-
}),
|
|
193
|
-
...((!ownerState.container || isNestedContainer(ownerState)) && {
|
|
194
|
-
padding: `calc(${getParentSpacing('row')} / 2) calc(${getParentSpacing('column')} / 2)`,
|
|
195
|
-
...((ownerState.disableEqualOverflow || ownerState.parentDisableEqualOverflow) && {
|
|
196
|
-
padding: `${getParentSpacing('row')} 0px 0px ${getParentSpacing('column')}`
|
|
197
|
-
})
|
|
188
|
+
gap: `${getSelfSpacing('row')} ${getSelfSpacing('column')}`
|
|
198
189
|
})
|
|
199
190
|
};
|
|
200
191
|
};
|
|
201
192
|
exports.generateGridStyles = generateGridStyles;
|
|
202
|
-
const generateSizeClassNames =
|
|
193
|
+
const generateSizeClassNames = size => {
|
|
203
194
|
const classNames = [];
|
|
204
|
-
Object.entries(
|
|
195
|
+
Object.entries(size).forEach(([key, value]) => {
|
|
205
196
|
if (value !== false && value !== undefined) {
|
|
206
197
|
classNames.push(`grid-${key}-${String(value)}`);
|
|
207
198
|
}
|
|
@@ -37,10 +37,10 @@ function sortContainerQueries(theme, css) {
|
|
|
37
37
|
});
|
|
38
38
|
}
|
|
39
39
|
function isCqShorthand(breakpointKeys, value) {
|
|
40
|
-
return value.startsWith('@') && (breakpointKeys.some(key => value.startsWith(`@${key}`)) || !!value.match(/^@\d/));
|
|
40
|
+
return value === '@' || value.startsWith('@') && (breakpointKeys.some(key => value.startsWith(`@${key}`)) || !!value.match(/^@\d/));
|
|
41
41
|
}
|
|
42
42
|
function getContainerQuery(theme, shorthand) {
|
|
43
|
-
const matches = shorthand.match(/^@([^/]+)
|
|
43
|
+
const matches = shorthand.match(/^@([^/]+)?\/?(.+)?$/);
|
|
44
44
|
if (!matches) {
|
|
45
45
|
if (process.env.NODE_ENV !== 'production') {
|
|
46
46
|
throw new Error(process.env.NODE_ENV !== "production" ? `MUI: The provided shorthand ${`(${shorthand})`} is invalid. The format should be \`@<breakpoint | number>\` or \`@<breakpoint | number>/<container>\`.
|
|
@@ -49,7 +49,7 @@ For example, \`@sm\` or \`@600\` or \`@40rem/sidebar\`.` : (0, _formatMuiErrorMe
|
|
|
49
49
|
return null;
|
|
50
50
|
}
|
|
51
51
|
const [, containerQuery, containerName] = matches;
|
|
52
|
-
const value = Number.isNaN(+containerQuery) ? containerQuery : +containerQuery;
|
|
52
|
+
const value = Number.isNaN(+containerQuery) ? containerQuery || 0 : +containerQuery;
|
|
53
53
|
return theme.containerQueries(containerName).up(value);
|
|
54
54
|
}
|
|
55
55
|
function cssContainerQueries(themeInput) {
|
|
@@ -63,7 +63,7 @@ function cssContainerQueries(themeInput) {
|
|
|
63
63
|
const result = toContainerQuery(themeInput.breakpoints.not(...args), name);
|
|
64
64
|
if (result.includes('not all and')) {
|
|
65
65
|
// `@container` does not work with `not all and`, so need to invert the logic
|
|
66
|
-
return result.replace('not all and ', '').replace('min-width:', 'width<').replace('max-width:', 'width>');
|
|
66
|
+
return result.replace('not all and ', '').replace('min-width:', 'width<').replace('max-width:', 'width>').replace('and', 'or');
|
|
67
67
|
}
|
|
68
68
|
return result;
|
|
69
69
|
};
|
|
@@ -12,7 +12,7 @@ var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
|
12
12
|
var _styledEngine = require("@mui/styled-engine");
|
|
13
13
|
var _privateTheming = require("@mui/private-theming");
|
|
14
14
|
var _ThemeProvider = _interopRequireDefault(require("../ThemeProvider"));
|
|
15
|
-
var
|
|
15
|
+
var _InitColorSchemeScript = _interopRequireWildcard(require("../InitColorSchemeScript/InitColorSchemeScript"));
|
|
16
16
|
var _useCurrentColorScheme = _interopRequireDefault(require("./useCurrentColorScheme"));
|
|
17
17
|
var _jsxRuntime = require("react/jsx-runtime");
|
|
18
18
|
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
|
|
@@ -28,9 +28,9 @@ function createCssVarsProvider(options) {
|
|
|
28
28
|
* It should also ideally have a vars object created using `prepareCssVars`.
|
|
29
29
|
*/
|
|
30
30
|
theme: defaultTheme = {},
|
|
31
|
-
attribute: defaultAttribute =
|
|
32
|
-
modeStorageKey: defaultModeStorageKey =
|
|
33
|
-
colorSchemeStorageKey: defaultColorSchemeStorageKey =
|
|
31
|
+
attribute: defaultAttribute = _InitColorSchemeScript.DEFAULT_ATTRIBUTE,
|
|
32
|
+
modeStorageKey: defaultModeStorageKey = _InitColorSchemeScript.DEFAULT_MODE_STORAGE_KEY,
|
|
33
|
+
colorSchemeStorageKey: defaultColorSchemeStorageKey = _InitColorSchemeScript.DEFAULT_COLOR_SCHEME_STORAGE_KEY,
|
|
34
34
|
defaultMode: designSystemMode = 'light',
|
|
35
35
|
defaultColorScheme: designSystemColorScheme,
|
|
36
36
|
disableTransitionOnChange: designSystemTransitionOnChange = false,
|
|
@@ -310,7 +310,7 @@ function createCssVarsProvider(options) {
|
|
|
310
310
|
} : void 0;
|
|
311
311
|
const defaultLightColorScheme = typeof designSystemColorScheme === 'string' ? designSystemColorScheme : designSystemColorScheme.light;
|
|
312
312
|
const defaultDarkColorScheme = typeof designSystemColorScheme === 'string' ? designSystemColorScheme : designSystemColorScheme.dark;
|
|
313
|
-
const getInitColorSchemeScript = params => (0,
|
|
313
|
+
const getInitColorSchemeScript = params => (0, _InitColorSchemeScript.default)({
|
|
314
314
|
attribute: defaultAttribute,
|
|
315
315
|
colorSchemeStorageKey: defaultColorSchemeStorageKey,
|
|
316
316
|
defaultMode: designSystemMode,
|
package/node/cssVars/index.js
CHANGED
|
@@ -17,12 +17,6 @@ Object.defineProperty(exports, "default", {
|
|
|
17
17
|
return _createCssVarsProvider.default;
|
|
18
18
|
}
|
|
19
19
|
});
|
|
20
|
-
Object.defineProperty(exports, "getInitColorSchemeScript", {
|
|
21
|
-
enumerable: true,
|
|
22
|
-
get: function () {
|
|
23
|
-
return _getInitColorSchemeScript.default;
|
|
24
|
-
}
|
|
25
|
-
});
|
|
26
20
|
Object.defineProperty(exports, "prepareCssVars", {
|
|
27
21
|
enumerable: true,
|
|
28
22
|
get: function () {
|
|
@@ -36,7 +30,6 @@ Object.defineProperty(exports, "prepareTypographyVars", {
|
|
|
36
30
|
}
|
|
37
31
|
});
|
|
38
32
|
var _createCssVarsProvider = _interopRequireDefault(require("./createCssVarsProvider"));
|
|
39
|
-
var _getInitColorSchemeScript = _interopRequireDefault(require("./getInitColorSchemeScript"));
|
|
40
33
|
var _prepareCssVars = _interopRequireDefault(require("./prepareCssVars"));
|
|
41
34
|
var _prepareTypographyVars = _interopRequireDefault(require("./prepareTypographyVars"));
|
|
42
35
|
var _createCssVarsTheme = _interopRequireDefault(require("./createCssVarsTheme"));
|
|
@@ -8,7 +8,7 @@ exports.default = useCurrentColorScheme;
|
|
|
8
8
|
exports.getColorScheme = getColorScheme;
|
|
9
9
|
exports.getSystemMode = getSystemMode;
|
|
10
10
|
var React = _interopRequireWildcard(require("react"));
|
|
11
|
-
var
|
|
11
|
+
var _InitColorSchemeScript = require("../InitColorSchemeScript/InitColorSchemeScript");
|
|
12
12
|
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
|
|
13
13
|
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
14
14
|
function getSystemMode(mode) {
|
|
@@ -63,8 +63,8 @@ function useCurrentColorScheme(options) {
|
|
|
63
63
|
defaultLightColorScheme,
|
|
64
64
|
defaultDarkColorScheme,
|
|
65
65
|
supportedColorSchemes = [],
|
|
66
|
-
modeStorageKey =
|
|
67
|
-
colorSchemeStorageKey =
|
|
66
|
+
modeStorageKey = _InitColorSchemeScript.DEFAULT_MODE_STORAGE_KEY,
|
|
67
|
+
colorSchemeStorageKey = _InitColorSchemeScript.DEFAULT_COLOR_SCHEME_STORAGE_KEY,
|
|
68
68
|
storageWindow = typeof window === 'undefined' ? undefined : window
|
|
69
69
|
} = options;
|
|
70
70
|
const joinedColorSchemes = supportedColorSchemes.join(',');
|
package/node/index.js
CHANGED
|
@@ -12,18 +12,6 @@ var _useThemeProps = require("../useThemeProps");
|
|
|
12
12
|
var _useThemeWithoutDefault = _interopRequireDefault(require("../useThemeWithoutDefault"));
|
|
13
13
|
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
|
|
14
14
|
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
15
|
-
/**
|
|
16
|
-
* @deprecated Not used internally. Use `MediaQueryListEvent` from lib.dom.d.ts instead.
|
|
17
|
-
*/
|
|
18
|
-
|
|
19
|
-
/**
|
|
20
|
-
* @deprecated Not used internally. Use `MediaQueryList` from lib.dom.d.ts instead.
|
|
21
|
-
*/
|
|
22
|
-
|
|
23
|
-
/**
|
|
24
|
-
* @deprecated Not used internally. Use `(event: MediaQueryListEvent) => void` instead.
|
|
25
|
-
*/
|
|
26
|
-
|
|
27
15
|
function useMediaQueryOld(query, defaultMatches, matchMedia, ssrMatchMedia, noSsr) {
|
|
28
16
|
const [match, setMatch] = React.useState(() => {
|
|
29
17
|
if (noSsr && matchMedia) {
|
|
@@ -38,25 +26,17 @@ function useMediaQueryOld(query, defaultMatches, matchMedia, ssrMatchMedia, noSs
|
|
|
38
26
|
return defaultMatches;
|
|
39
27
|
});
|
|
40
28
|
(0, _useEnhancedEffect.default)(() => {
|
|
41
|
-
let active = true;
|
|
42
29
|
if (!matchMedia) {
|
|
43
30
|
return undefined;
|
|
44
31
|
}
|
|
45
32
|
const queryList = matchMedia(query);
|
|
46
33
|
const updateMatch = () => {
|
|
47
|
-
|
|
48
|
-
// TODO can we remove it?
|
|
49
|
-
// https://github.com/mui/material-ui/pull/17315#issuecomment-528286677
|
|
50
|
-
if (active) {
|
|
51
|
-
setMatch(queryList.matches);
|
|
52
|
-
}
|
|
34
|
+
setMatch(queryList.matches);
|
|
53
35
|
};
|
|
54
36
|
updateMatch();
|
|
55
|
-
|
|
56
|
-
queryList.addListener(updateMatch);
|
|
37
|
+
queryList.addEventListener('change', updateMatch);
|
|
57
38
|
return () => {
|
|
58
|
-
|
|
59
|
-
queryList.removeListener(updateMatch);
|
|
39
|
+
queryList.removeEventListener('change', updateMatch);
|
|
60
40
|
};
|
|
61
41
|
}, [query, matchMedia]);
|
|
62
42
|
return match;
|
|
@@ -84,10 +64,9 @@ function useMediaQueryNew(query, defaultMatches, matchMedia, ssrMatchMedia, noSs
|
|
|
84
64
|
}
|
|
85
65
|
const mediaQueryList = matchMedia(query);
|
|
86
66
|
return [() => mediaQueryList.matches, notify => {
|
|
87
|
-
|
|
88
|
-
mediaQueryList.addListener(notify);
|
|
67
|
+
mediaQueryList.addEventListener('change', notify);
|
|
89
68
|
return () => {
|
|
90
|
-
mediaQueryList.
|
|
69
|
+
mediaQueryList.removeEventListener('change', notify);
|
|
91
70
|
};
|
|
92
71
|
}];
|
|
93
72
|
}, [getDefaultSnapshot, matchMedia, query]);
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@mui/system",
|
|
3
|
-
"version": "6.0.0-
|
|
3
|
+
"version": "6.0.0-beta.0",
|
|
4
4
|
"private": false,
|
|
5
5
|
"author": "MUI Team",
|
|
6
6
|
"description": "MUI System is a set of CSS utilities to help you build custom designs more efficiently. It makes it possible to rapidly lay out custom designs.",
|
|
@@ -26,14 +26,14 @@
|
|
|
26
26
|
"url": "https://opencollective.com/mui-org"
|
|
27
27
|
},
|
|
28
28
|
"dependencies": {
|
|
29
|
-
"@babel/runtime": "^7.24.
|
|
29
|
+
"@babel/runtime": "^7.24.7",
|
|
30
30
|
"clsx": "^2.1.1",
|
|
31
31
|
"csstype": "^3.1.3",
|
|
32
32
|
"prop-types": "^15.8.1",
|
|
33
|
-
"@mui/private-theming": "
|
|
34
|
-
"@mui/
|
|
35
|
-
"@mui/
|
|
36
|
-
"@mui/
|
|
33
|
+
"@mui/private-theming": "6.0.0-beta.0",
|
|
34
|
+
"@mui/utils": "6.0.0-beta.0",
|
|
35
|
+
"@mui/styled-engine": "6.0.0-beta.0",
|
|
36
|
+
"@mui/types": "^7.2.14"
|
|
37
37
|
},
|
|
38
38
|
"peerDependencies": {
|
|
39
39
|
"@emotion/react": "^11.5.0",
|