@mui/system 5.15.15 → 5.16.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.
Files changed (48) hide show
  1. package/CHANGELOG.md +250 -4
  2. package/DefaultPropsProvider/DefaultPropsProvider.d.ts +12 -0
  3. package/DefaultPropsProvider/DefaultPropsProvider.js +73 -0
  4. package/DefaultPropsProvider/index.d.ts +1 -0
  5. package/DefaultPropsProvider/index.js +20 -0
  6. package/DefaultPropsProvider/package.json +6 -0
  7. package/InitColorSchemeScript/InitColorSchemeScript.d.ts +49 -0
  8. package/InitColorSchemeScript/InitColorSchemeScript.js +61 -0
  9. package/InitColorSchemeScript/index.d.ts +2 -0
  10. package/InitColorSchemeScript/index.js +13 -0
  11. package/InitColorSchemeScript/package.json +6 -0
  12. package/ThemeProvider/ThemeProvider.js +5 -1
  13. package/cssVars/createCssVarsProvider.d.ts +2 -2
  14. package/cssVars/createCssVarsProvider.js +5 -5
  15. package/cssVars/getInitColorSchemeScript.d.ts +2 -41
  16. package/cssVars/getInitColorSchemeScript.js +7 -42
  17. package/cssVars/useCurrentColorScheme.js +3 -3
  18. package/esm/DefaultPropsProvider/DefaultPropsProvider.js +64 -0
  19. package/esm/DefaultPropsProvider/index.js +1 -0
  20. package/esm/InitColorSchemeScript/InitColorSchemeScript.js +51 -0
  21. package/esm/InitColorSchemeScript/index.js +1 -0
  22. package/esm/ThemeProvider/ThemeProvider.js +5 -1
  23. package/esm/cssVars/createCssVarsProvider.js +2 -2
  24. package/esm/cssVars/getInitColorSchemeScript.js +5 -41
  25. package/esm/cssVars/index.js +1 -0
  26. package/esm/cssVars/useCurrentColorScheme.js +1 -1
  27. package/index.js +1 -1
  28. package/legacy/DefaultPropsProvider/DefaultPropsProvider.js +60 -0
  29. package/legacy/DefaultPropsProvider/index.js +1 -0
  30. package/legacy/InitColorSchemeScript/InitColorSchemeScript.js +35 -0
  31. package/legacy/InitColorSchemeScript/index.js +1 -0
  32. package/legacy/ThemeProvider/ThemeProvider.js +5 -1
  33. package/legacy/cssVars/createCssVarsProvider.js +2 -2
  34. package/legacy/cssVars/getInitColorSchemeScript.js +5 -25
  35. package/legacy/cssVars/index.js +1 -0
  36. package/legacy/cssVars/useCurrentColorScheme.js +1 -1
  37. package/legacy/index.js +1 -1
  38. package/modern/DefaultPropsProvider/DefaultPropsProvider.js +64 -0
  39. package/modern/DefaultPropsProvider/index.js +1 -0
  40. package/modern/InitColorSchemeScript/InitColorSchemeScript.js +51 -0
  41. package/modern/InitColorSchemeScript/index.js +1 -0
  42. package/modern/ThemeProvider/ThemeProvider.js +5 -1
  43. package/modern/cssVars/createCssVarsProvider.js +2 -2
  44. package/modern/cssVars/getInitColorSchemeScript.js +5 -41
  45. package/modern/cssVars/index.js +1 -0
  46. package/modern/cssVars/useCurrentColorScheme.js +1 -1
  47. package/modern/index.js +1 -1
  48. package/package.json +4 -4
@@ -0,0 +1 @@
1
+ export { default } from './InitColorSchemeScript';
@@ -8,6 +8,7 @@ import exactProp from '@mui/utils/exactProp';
8
8
  import { ThemeContext as StyledEngineThemeContext } from '@mui/styled-engine';
9
9
  import useThemeWithoutDefault from '../useThemeWithoutDefault';
10
10
  import RtlProvider from '../RtlProvider';
11
+ import DefaultPropsProvider from '../DefaultPropsProvider';
11
12
  import { jsx as _jsx } from "react/jsx-runtime";
12
13
  const EMPTY_THEME = {};
13
14
  function useThemeScoping(themeId, upperTheme, localTheme, isPrivate = false) {
@@ -60,7 +61,10 @@ function ThemeProvider(props) {
60
61
  value: engineTheme,
61
62
  children: /*#__PURE__*/_jsx(RtlProvider, {
62
63
  value: rtlValue,
63
- children: children
64
+ children: /*#__PURE__*/_jsx(DefaultPropsProvider, {
65
+ value: engineTheme?.components,
66
+ children: children
67
+ })
64
68
  })
65
69
  })
66
70
  });
@@ -8,7 +8,7 @@ import deepmerge from '@mui/utils/deepmerge';
8
8
  import { GlobalStyles } from '@mui/styled-engine';
9
9
  import { useTheme as muiUseTheme } from '@mui/private-theming';
10
10
  import ThemeProvider from '../ThemeProvider';
11
- import systemGetInitColorSchemeScript, { DEFAULT_ATTRIBUTE, DEFAULT_COLOR_SCHEME_STORAGE_KEY, DEFAULT_MODE_STORAGE_KEY } from './getInitColorSchemeScript';
11
+ import InitColorSchemeScript, { DEFAULT_ATTRIBUTE, DEFAULT_COLOR_SCHEME_STORAGE_KEY, DEFAULT_MODE_STORAGE_KEY } from '../InitColorSchemeScript/InitColorSchemeScript';
12
12
  import useCurrentColorScheme from './useCurrentColorScheme';
13
13
  import { jsx as _jsx } from "react/jsx-runtime";
14
14
  import { jsxs as _jsxs } from "react/jsx-runtime";
@@ -330,7 +330,7 @@ export default function createCssVarsProvider(options) {
330
330
  } : void 0;
331
331
  const defaultLightColorScheme = typeof designSystemColorScheme === 'string' ? designSystemColorScheme : designSystemColorScheme.light;
332
332
  const defaultDarkColorScheme = typeof designSystemColorScheme === 'string' ? designSystemColorScheme : designSystemColorScheme.dark;
333
- const getInitColorSchemeScript = params => systemGetInitColorSchemeScript(_extends({
333
+ const getInitColorSchemeScript = params => InitColorSchemeScript(_extends({
334
334
  attribute: defaultAttribute,
335
335
  colorSchemeStorageKey: defaultColorSchemeStorageKey,
336
336
  defaultMode: designSystemMode,
@@ -1,44 +1,8 @@
1
+ import _extends from "@babel/runtime/helpers/esm/extends";
2
+ // TODO: remove this file in v6
1
3
  import * as React from 'react';
4
+ import InitColorSchemeScript from '../InitColorSchemeScript';
2
5
  import { jsx as _jsx } from "react/jsx-runtime";
3
- export const DEFAULT_MODE_STORAGE_KEY = 'mode';
4
- export const DEFAULT_COLOR_SCHEME_STORAGE_KEY = 'color-scheme';
5
- export const DEFAULT_ATTRIBUTE = 'data-color-scheme';
6
- export default function getInitColorSchemeScript(options) {
7
- const {
8
- defaultMode = 'light',
9
- defaultLightColorScheme = 'light',
10
- defaultDarkColorScheme = 'dark',
11
- modeStorageKey = DEFAULT_MODE_STORAGE_KEY,
12
- colorSchemeStorageKey = DEFAULT_COLOR_SCHEME_STORAGE_KEY,
13
- attribute = DEFAULT_ATTRIBUTE,
14
- colorSchemeNode = 'document.documentElement'
15
- } = options || {};
16
- return /*#__PURE__*/_jsx("script", {
17
- // eslint-disable-next-line react/no-danger
18
- dangerouslySetInnerHTML: {
19
- __html: `(function() {
20
- try {
21
- var mode = localStorage.getItem('${modeStorageKey}') || '${defaultMode}';
22
- var colorScheme = '';
23
- if (mode === 'system') {
24
- // handle system mode
25
- var mql = window.matchMedia('(prefers-color-scheme: dark)');
26
- if (mql.matches) {
27
- colorScheme = localStorage.getItem('${colorSchemeStorageKey}-dark') || '${defaultDarkColorScheme}';
28
- } else {
29
- colorScheme = localStorage.getItem('${colorSchemeStorageKey}-light') || '${defaultLightColorScheme}';
30
- }
31
- }
32
- if (mode === 'light') {
33
- colorScheme = localStorage.getItem('${colorSchemeStorageKey}-light') || '${defaultLightColorScheme}';
34
- }
35
- if (mode === 'dark') {
36
- colorScheme = localStorage.getItem('${colorSchemeStorageKey}-dark') || '${defaultDarkColorScheme}';
37
- }
38
- if (colorScheme) {
39
- ${colorSchemeNode}.setAttribute('${attribute}', colorScheme);
40
- }
41
- } catch(e){}})();`
42
- }
43
- }, "mui-color-scheme-init");
6
+ export default function getInitColorSchemeScript(params) {
7
+ return /*#__PURE__*/_jsx(InitColorSchemeScript, _extends({}, params));
44
8
  }
@@ -1,6 +1,7 @@
1
1
  'use client';
2
2
 
3
3
  export { default } from './createCssVarsProvider';
4
+ // TODO: remove this export in v6 in favor of InitColorSchemeScript
4
5
  export { default as getInitColorSchemeScript } from './getInitColorSchemeScript';
5
6
  export { default as prepareCssVars } from './prepareCssVars';
6
7
  export { default as createCssVarsTheme } from './createCssVarsTheme';
@@ -2,7 +2,7 @@
2
2
 
3
3
  import _extends from "@babel/runtime/helpers/esm/extends";
4
4
  import * as React from 'react';
5
- import { DEFAULT_MODE_STORAGE_KEY, DEFAULT_COLOR_SCHEME_STORAGE_KEY } from './getInitColorSchemeScript';
5
+ import { DEFAULT_MODE_STORAGE_KEY, DEFAULT_COLOR_SCHEME_STORAGE_KEY } from '../InitColorSchemeScript/InitColorSchemeScript';
6
6
  export function getSystemMode(mode) {
7
7
  if (typeof window !== 'undefined' && mode === 'system') {
8
8
  const mql = window.matchMedia('(prefers-color-scheme: dark)');
package/modern/index.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @mui/system v5.15.15
2
+ * @mui/system v5.16.0
3
3
  *
4
4
  * @license MIT
5
5
  * This source code is licensed under the MIT license found in the
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mui/system",
3
- "version": "5.15.15",
3
+ "version": "5.16.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.",
@@ -30,10 +30,10 @@
30
30
  "clsx": "^2.1.0",
31
31
  "csstype": "^3.1.3",
32
32
  "prop-types": "^15.8.1",
33
- "@mui/utils": "^5.15.14",
34
- "@mui/private-theming": "^5.15.14",
33
+ "@mui/private-theming": "^5.16.0",
35
34
  "@mui/types": "^7.2.14",
36
- "@mui/styled-engine": "^5.15.14"
35
+ "@mui/styled-engine": "^5.15.14",
36
+ "@mui/utils": "^5.16.0"
37
37
  },
38
38
  "peerDependencies": {
39
39
  "@emotion/react": "^11.5.0",