@mui/system 5.10.0 → 5.10.3

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 (37) hide show
  1. package/Box/Box.d.ts +10 -10
  2. package/Box/Box.spec.d.ts +1 -1
  3. package/CHANGELOG.md +176 -0
  4. package/Container/Container.d.ts +13 -13
  5. package/Container/ContainerProps.d.ts +40 -40
  6. package/Container/containerClasses.d.ts +22 -22
  7. package/Container/createContainer.d.ts +18 -18
  8. package/Container/index.d.ts +1 -1
  9. package/Stack/Stack.d.ts +12 -12
  10. package/Stack/StackProps.d.ts +42 -42
  11. package/Stack/createStack.d.ts +21 -21
  12. package/Stack/index.d.ts +5 -5
  13. package/Stack/stackClasses.d.ts +8 -8
  14. package/Unstable_Grid/Grid.d.ts +12 -12
  15. package/Unstable_Grid/GridProps.d.ts +162 -162
  16. package/Unstable_Grid/createGrid.d.ts +11 -11
  17. package/Unstable_Grid/gridClasses.d.ts +20 -20
  18. package/Unstable_Grid/gridGenerator.d.ts +26 -26
  19. package/Unstable_Grid/index.d.ts +5 -5
  20. package/createBox.spec.d.ts +1 -1
  21. package/createTheme/createSpacing.d.ts +10 -10
  22. package/cssVars/createCssVarsProvider.spec.d.ts +1 -1
  23. package/cssVars/createGetCssVar.d.ts +5 -5
  24. package/cssVars/cssVarsParser.d.ts +65 -65
  25. package/cssVars/getInitColorSchemeScript.d.ts +45 -45
  26. package/cssVars/index.d.ts +3 -3
  27. package/cssVars/useCurrentColorScheme.d.ts +53 -53
  28. package/cssVars/useCurrentColorScheme.js +60 -49
  29. package/esm/cssVars/useCurrentColorScheme.js +60 -47
  30. package/index.js +1 -1
  31. package/index.spec.d.ts +1 -1
  32. package/legacy/cssVars/useCurrentColorScheme.js +60 -47
  33. package/legacy/index.js +1 -1
  34. package/modern/cssVars/useCurrentColorScheme.js +60 -47
  35. package/modern/index.js +1 -1
  36. package/package.json +6 -6
  37. package/styleFunctionSx/styleFunctionSx.spec.d.ts +1 -1
@@ -41,7 +41,7 @@ export function getColorScheme(state) {
41
41
  });
42
42
  }
43
43
 
44
- function resolveValue(key, defaultValue) {
44
+ function initializeValue(key, defaultValue) {
45
45
  if (typeof window === 'undefined') {
46
46
  return undefined;
47
47
  }
@@ -50,6 +50,11 @@ function resolveValue(key, defaultValue) {
50
50
 
51
51
  try {
52
52
  value = localStorage.getItem(key) || undefined;
53
+
54
+ if (!value) {
55
+ // the first time that user enters the site.
56
+ localStorage.setItem(key, defaultValue);
57
+ }
53
58
  } catch (e) {// Unsupported
54
59
  }
55
60
 
@@ -68,25 +73,29 @@ export default function useCurrentColorScheme(options) {
68
73
  } = options;
69
74
  const joinedColorSchemes = supportedColorSchemes.join(',');
70
75
  const [state, setState] = React.useState(() => {
71
- const initialMode = resolveValue(modeStorageKey, defaultMode);
76
+ const initialMode = initializeValue(modeStorageKey, defaultMode);
77
+ const lightColorScheme = initializeValue(`${colorSchemeStorageKey}-light`, defaultLightColorScheme);
78
+ const darkColorScheme = initializeValue(`${colorSchemeStorageKey}-dark`, defaultDarkColorScheme);
72
79
  return {
73
80
  mode: initialMode,
74
81
  systemMode: getSystemMode(initialMode),
75
- lightColorScheme: resolveValue(`${colorSchemeStorageKey}-light`) || defaultLightColorScheme,
76
- darkColorScheme: resolveValue(`${colorSchemeStorageKey}-dark`) || defaultDarkColorScheme
82
+ lightColorScheme,
83
+ darkColorScheme
77
84
  };
78
85
  });
79
86
  const colorScheme = getColorScheme(state);
80
87
  const setMode = React.useCallback(mode => {
81
88
  setState(currentState => {
82
- const newMode = !mode ? defaultMode : mode;
83
-
84
89
  if (mode === currentState.mode) {
90
+ // do nothing if mode does not change
85
91
  return currentState;
86
92
  }
87
93
 
88
- if (typeof localStorage !== 'undefined') {
94
+ const newMode = !mode ? defaultMode : mode;
95
+
96
+ try {
89
97
  localStorage.setItem(modeStorageKey, newMode);
98
+ } catch (e) {// Unsupported
90
99
  }
91
100
 
92
101
  return _extends({}, currentState, {
@@ -96,22 +105,31 @@ export default function useCurrentColorScheme(options) {
96
105
  });
97
106
  }, [modeStorageKey, defaultMode]);
98
107
  const setColorScheme = React.useCallback(value => {
99
- if (!value || typeof value === 'string') {
108
+ if (!value) {
109
+ setState(currentState => {
110
+ try {
111
+ localStorage.setItem(`${colorSchemeStorageKey}-light`, defaultLightColorScheme);
112
+ localStorage.setItem(`${colorSchemeStorageKey}-dark`, defaultDarkColorScheme);
113
+ } catch (e) {// Unsupported
114
+ }
115
+
116
+ return _extends({}, currentState, {
117
+ lightColorScheme: defaultLightColorScheme,
118
+ darkColorScheme: defaultDarkColorScheme
119
+ });
120
+ });
121
+ } else if (typeof value === 'string') {
100
122
  if (value && !joinedColorSchemes.includes(value)) {
101
123
  console.error(`\`${value}\` does not exist in \`theme.colorSchemes\`.`);
102
124
  } else {
103
125
  setState(currentState => {
104
126
  const newState = _extends({}, currentState);
105
127
 
106
- if (!value) {
107
- // reset to default color scheme
108
- newState.lightColorScheme = defaultLightColorScheme;
109
- newState.darkColorScheme = defaultDarkColorScheme;
110
- return newState;
111
- }
112
-
113
128
  processState(currentState, mode => {
114
- localStorage.setItem(`${colorSchemeStorageKey}-${mode}`, value);
129
+ try {
130
+ localStorage.setItem(`${colorSchemeStorageKey}-${mode}`, value);
131
+ } catch (e) {// Unsupported
132
+ }
115
133
 
116
134
  if (mode === 'light') {
117
135
  newState.lightColorScheme = value;
@@ -124,30 +142,41 @@ export default function useCurrentColorScheme(options) {
124
142
  return newState;
125
143
  });
126
144
  }
127
- } else if (value.light && !joinedColorSchemes.includes(value.light) || value.dark && !joinedColorSchemes.includes(value.dark)) {
128
- console.error(`\`${value}\` does not exist in \`theme.colorSchemes\`.`);
129
145
  } else {
130
146
  setState(currentState => {
131
147
  const newState = _extends({}, currentState);
132
148
 
133
- if (value.light || value.light === null) {
134
- newState.lightColorScheme = value.light === null ? defaultLightColorScheme : value.light;
149
+ const newLightColorScheme = value.light === null ? defaultLightColorScheme : value.light;
150
+ const newDarkColorScheme = value.dark === null ? defaultDarkColorScheme : value.dark;
151
+
152
+ if (newLightColorScheme) {
153
+ if (!joinedColorSchemes.includes(newLightColorScheme)) {
154
+ console.error(`\`${newLightColorScheme}\` does not exist in \`theme.colorSchemes\`.`);
155
+ } else {
156
+ newState.lightColorScheme = newLightColorScheme;
157
+
158
+ try {
159
+ localStorage.setItem(`${colorSchemeStorageKey}-light`, newLightColorScheme);
160
+ } catch (error) {// Unsupported
161
+ }
162
+ }
135
163
  }
136
164
 
137
- if (value.dark || value.dark === null) {
138
- newState.darkColorScheme = value.dark === null ? defaultDarkColorScheme : value.dark;
165
+ if (newDarkColorScheme) {
166
+ if (!joinedColorSchemes.includes(newDarkColorScheme)) {
167
+ console.error(`\`${newDarkColorScheme}\` does not exist in \`theme.colorSchemes\`.`);
168
+ } else {
169
+ newState.darkColorScheme = newDarkColorScheme;
170
+
171
+ try {
172
+ localStorage.setItem(`${colorSchemeStorageKey}-dark`, newDarkColorScheme);
173
+ } catch (error) {// Unsupported
174
+ }
175
+ }
139
176
  }
140
177
 
141
178
  return newState;
142
179
  });
143
-
144
- if (value.light) {
145
- localStorage.setItem(`${colorSchemeStorageKey}-light`, value.light);
146
- }
147
-
148
- if (value.dark) {
149
- localStorage.setItem(`${colorSchemeStorageKey}-dark`, value.dark);
150
- }
151
180
  }
152
181
  }, [joinedColorSchemes, colorSchemeStorageKey, defaultLightColorScheme, defaultDarkColorScheme]);
153
182
  const handleMediaQuery = React.useCallback(e => {
@@ -169,23 +198,7 @@ export default function useCurrentColorScheme(options) {
169
198
  media.addListener(handler);
170
199
  handler(media);
171
200
  return () => media.removeListener(handler);
172
- }, []); // Save mode, lightColorScheme & darkColorScheme to localStorage
173
-
174
- React.useEffect(() => {
175
- if (state.mode) {
176
- localStorage.setItem(modeStorageKey, state.mode);
177
- }
178
-
179
- processState(state, mode => {
180
- if (mode === 'light') {
181
- localStorage.setItem(`${colorSchemeStorageKey}-light`, state.lightColorScheme);
182
- }
183
-
184
- if (mode === 'dark') {
185
- localStorage.setItem(`${colorSchemeStorageKey}-dark`, state.darkColorScheme);
186
- }
187
- });
188
- }, [state, colorSchemeStorageKey, modeStorageKey]); // Handle when localStorage has changed
201
+ }, []); // Handle when localStorage has changed
189
202
 
190
203
  React.useEffect(() => {
191
204
  const handleStorage = event => {
package/index.js CHANGED
@@ -1,4 +1,4 @@
1
- /** @license MUI v5.10.0
1
+ /** @license MUI v5.10.3
2
2
  *
3
3
  * This source code is licensed under the MIT license found in the
4
4
  * LICENSE file in the root directory of this source tree.
package/index.spec.d.ts CHANGED
@@ -1 +1 @@
1
- export {};
1
+ export {};
@@ -41,7 +41,7 @@ export function getColorScheme(state) {
41
41
  });
42
42
  }
43
43
 
44
- function resolveValue(key, defaultValue) {
44
+ function initializeValue(key, defaultValue) {
45
45
  if (typeof window === 'undefined') {
46
46
  return undefined;
47
47
  }
@@ -50,6 +50,11 @@ function resolveValue(key, defaultValue) {
50
50
 
51
51
  try {
52
52
  value = localStorage.getItem(key) || undefined;
53
+
54
+ if (!value) {
55
+ // the first time that user enters the site.
56
+ localStorage.setItem(key, defaultValue);
57
+ }
53
58
  } catch (e) {// Unsupported
54
59
  }
55
60
 
@@ -72,12 +77,14 @@ export default function useCurrentColorScheme(options) {
72
77
  var joinedColorSchemes = supportedColorSchemes.join(',');
73
78
 
74
79
  var _React$useState = React.useState(function () {
75
- var initialMode = resolveValue(modeStorageKey, defaultMode);
80
+ var initialMode = initializeValue(modeStorageKey, defaultMode);
81
+ var lightColorScheme = initializeValue("".concat(colorSchemeStorageKey, "-light"), defaultLightColorScheme);
82
+ var darkColorScheme = initializeValue("".concat(colorSchemeStorageKey, "-dark"), defaultDarkColorScheme);
76
83
  return {
77
84
  mode: initialMode,
78
85
  systemMode: getSystemMode(initialMode),
79
- lightColorScheme: resolveValue("".concat(colorSchemeStorageKey, "-light")) || defaultLightColorScheme,
80
- darkColorScheme: resolveValue("".concat(colorSchemeStorageKey, "-dark")) || defaultDarkColorScheme
86
+ lightColorScheme: lightColorScheme,
87
+ darkColorScheme: darkColorScheme
81
88
  };
82
89
  }),
83
90
  state = _React$useState[0],
@@ -86,14 +93,16 @@ export default function useCurrentColorScheme(options) {
86
93
  var colorScheme = getColorScheme(state);
87
94
  var setMode = React.useCallback(function (mode) {
88
95
  setState(function (currentState) {
89
- var newMode = !mode ? defaultMode : mode;
90
-
91
96
  if (mode === currentState.mode) {
97
+ // do nothing if mode does not change
92
98
  return currentState;
93
99
  }
94
100
 
95
- if (typeof localStorage !== 'undefined') {
101
+ var newMode = !mode ? defaultMode : mode;
102
+
103
+ try {
96
104
  localStorage.setItem(modeStorageKey, newMode);
105
+ } catch (e) {// Unsupported
97
106
  }
98
107
 
99
108
  return _extends({}, currentState, {
@@ -103,22 +112,31 @@ export default function useCurrentColorScheme(options) {
103
112
  });
104
113
  }, [modeStorageKey, defaultMode]);
105
114
  var setColorScheme = React.useCallback(function (value) {
106
- if (!value || typeof value === 'string') {
115
+ if (!value) {
116
+ setState(function (currentState) {
117
+ try {
118
+ localStorage.setItem("".concat(colorSchemeStorageKey, "-light"), defaultLightColorScheme);
119
+ localStorage.setItem("".concat(colorSchemeStorageKey, "-dark"), defaultDarkColorScheme);
120
+ } catch (e) {// Unsupported
121
+ }
122
+
123
+ return _extends({}, currentState, {
124
+ lightColorScheme: defaultLightColorScheme,
125
+ darkColorScheme: defaultDarkColorScheme
126
+ });
127
+ });
128
+ } else if (typeof value === 'string') {
107
129
  if (value && !joinedColorSchemes.includes(value)) {
108
130
  console.error("`".concat(value, "` does not exist in `theme.colorSchemes`."));
109
131
  } else {
110
132
  setState(function (currentState) {
111
133
  var newState = _extends({}, currentState);
112
134
 
113
- if (!value) {
114
- // reset to default color scheme
115
- newState.lightColorScheme = defaultLightColorScheme;
116
- newState.darkColorScheme = defaultDarkColorScheme;
117
- return newState;
118
- }
119
-
120
135
  processState(currentState, function (mode) {
121
- localStorage.setItem("".concat(colorSchemeStorageKey, "-").concat(mode), value);
136
+ try {
137
+ localStorage.setItem("".concat(colorSchemeStorageKey, "-").concat(mode), value);
138
+ } catch (e) {// Unsupported
139
+ }
122
140
 
123
141
  if (mode === 'light') {
124
142
  newState.lightColorScheme = value;
@@ -131,30 +149,41 @@ export default function useCurrentColorScheme(options) {
131
149
  return newState;
132
150
  });
133
151
  }
134
- } else if (value.light && !joinedColorSchemes.includes(value.light) || value.dark && !joinedColorSchemes.includes(value.dark)) {
135
- console.error("`".concat(value, "` does not exist in `theme.colorSchemes`."));
136
152
  } else {
137
153
  setState(function (currentState) {
138
154
  var newState = _extends({}, currentState);
139
155
 
140
- if (value.light || value.light === null) {
141
- newState.lightColorScheme = value.light === null ? defaultLightColorScheme : value.light;
156
+ var newLightColorScheme = value.light === null ? defaultLightColorScheme : value.light;
157
+ var newDarkColorScheme = value.dark === null ? defaultDarkColorScheme : value.dark;
158
+
159
+ if (newLightColorScheme) {
160
+ if (!joinedColorSchemes.includes(newLightColorScheme)) {
161
+ console.error("`".concat(newLightColorScheme, "` does not exist in `theme.colorSchemes`."));
162
+ } else {
163
+ newState.lightColorScheme = newLightColorScheme;
164
+
165
+ try {
166
+ localStorage.setItem("".concat(colorSchemeStorageKey, "-light"), newLightColorScheme);
167
+ } catch (error) {// Unsupported
168
+ }
169
+ }
142
170
  }
143
171
 
144
- if (value.dark || value.dark === null) {
145
- newState.darkColorScheme = value.dark === null ? defaultDarkColorScheme : value.dark;
172
+ if (newDarkColorScheme) {
173
+ if (!joinedColorSchemes.includes(newDarkColorScheme)) {
174
+ console.error("`".concat(newDarkColorScheme, "` does not exist in `theme.colorSchemes`."));
175
+ } else {
176
+ newState.darkColorScheme = newDarkColorScheme;
177
+
178
+ try {
179
+ localStorage.setItem("".concat(colorSchemeStorageKey, "-dark"), newDarkColorScheme);
180
+ } catch (error) {// Unsupported
181
+ }
182
+ }
146
183
  }
147
184
 
148
185
  return newState;
149
186
  });
150
-
151
- if (value.light) {
152
- localStorage.setItem("".concat(colorSchemeStorageKey, "-light"), value.light);
153
- }
154
-
155
- if (value.dark) {
156
- localStorage.setItem("".concat(colorSchemeStorageKey, "-dark"), value.dark);
157
- }
158
187
  }
159
188
  }, [joinedColorSchemes, colorSchemeStorageKey, defaultLightColorScheme, defaultDarkColorScheme]);
160
189
  var handleMediaQuery = React.useCallback(function (e) {
@@ -182,23 +211,7 @@ export default function useCurrentColorScheme(options) {
182
211
  return function () {
183
212
  return media.removeListener(handler);
184
213
  };
185
- }, []); // Save mode, lightColorScheme & darkColorScheme to localStorage
186
-
187
- React.useEffect(function () {
188
- if (state.mode) {
189
- localStorage.setItem(modeStorageKey, state.mode);
190
- }
191
-
192
- processState(state, function (mode) {
193
- if (mode === 'light') {
194
- localStorage.setItem("".concat(colorSchemeStorageKey, "-light"), state.lightColorScheme);
195
- }
196
-
197
- if (mode === 'dark') {
198
- localStorage.setItem("".concat(colorSchemeStorageKey, "-dark"), state.darkColorScheme);
199
- }
200
- });
201
- }, [state, colorSchemeStorageKey, modeStorageKey]); // Handle when localStorage has changed
214
+ }, []); // Handle when localStorage has changed
202
215
 
203
216
  React.useEffect(function () {
204
217
  var handleStorage = function handleStorage(event) {
package/legacy/index.js CHANGED
@@ -1,4 +1,4 @@
1
- /** @license MUI v5.10.0
1
+ /** @license MUI v5.10.3
2
2
  *
3
3
  * This source code is licensed under the MIT license found in the
4
4
  * LICENSE file in the root directory of this source tree.
@@ -41,7 +41,7 @@ export function getColorScheme(state) {
41
41
  });
42
42
  }
43
43
 
44
- function resolveValue(key, defaultValue) {
44
+ function initializeValue(key, defaultValue) {
45
45
  if (typeof window === 'undefined') {
46
46
  return undefined;
47
47
  }
@@ -50,6 +50,11 @@ function resolveValue(key, defaultValue) {
50
50
 
51
51
  try {
52
52
  value = localStorage.getItem(key) || undefined;
53
+
54
+ if (!value) {
55
+ // the first time that user enters the site.
56
+ localStorage.setItem(key, defaultValue);
57
+ }
53
58
  } catch (e) {// Unsupported
54
59
  }
55
60
 
@@ -68,25 +73,29 @@ export default function useCurrentColorScheme(options) {
68
73
  } = options;
69
74
  const joinedColorSchemes = supportedColorSchemes.join(',');
70
75
  const [state, setState] = React.useState(() => {
71
- const initialMode = resolveValue(modeStorageKey, defaultMode);
76
+ const initialMode = initializeValue(modeStorageKey, defaultMode);
77
+ const lightColorScheme = initializeValue(`${colorSchemeStorageKey}-light`, defaultLightColorScheme);
78
+ const darkColorScheme = initializeValue(`${colorSchemeStorageKey}-dark`, defaultDarkColorScheme);
72
79
  return {
73
80
  mode: initialMode,
74
81
  systemMode: getSystemMode(initialMode),
75
- lightColorScheme: resolveValue(`${colorSchemeStorageKey}-light`) || defaultLightColorScheme,
76
- darkColorScheme: resolveValue(`${colorSchemeStorageKey}-dark`) || defaultDarkColorScheme
82
+ lightColorScheme,
83
+ darkColorScheme
77
84
  };
78
85
  });
79
86
  const colorScheme = getColorScheme(state);
80
87
  const setMode = React.useCallback(mode => {
81
88
  setState(currentState => {
82
- const newMode = !mode ? defaultMode : mode;
83
-
84
89
  if (mode === currentState.mode) {
90
+ // do nothing if mode does not change
85
91
  return currentState;
86
92
  }
87
93
 
88
- if (typeof localStorage !== 'undefined') {
94
+ const newMode = !mode ? defaultMode : mode;
95
+
96
+ try {
89
97
  localStorage.setItem(modeStorageKey, newMode);
98
+ } catch (e) {// Unsupported
90
99
  }
91
100
 
92
101
  return _extends({}, currentState, {
@@ -96,22 +105,31 @@ export default function useCurrentColorScheme(options) {
96
105
  });
97
106
  }, [modeStorageKey, defaultMode]);
98
107
  const setColorScheme = React.useCallback(value => {
99
- if (!value || typeof value === 'string') {
108
+ if (!value) {
109
+ setState(currentState => {
110
+ try {
111
+ localStorage.setItem(`${colorSchemeStorageKey}-light`, defaultLightColorScheme);
112
+ localStorage.setItem(`${colorSchemeStorageKey}-dark`, defaultDarkColorScheme);
113
+ } catch (e) {// Unsupported
114
+ }
115
+
116
+ return _extends({}, currentState, {
117
+ lightColorScheme: defaultLightColorScheme,
118
+ darkColorScheme: defaultDarkColorScheme
119
+ });
120
+ });
121
+ } else if (typeof value === 'string') {
100
122
  if (value && !joinedColorSchemes.includes(value)) {
101
123
  console.error(`\`${value}\` does not exist in \`theme.colorSchemes\`.`);
102
124
  } else {
103
125
  setState(currentState => {
104
126
  const newState = _extends({}, currentState);
105
127
 
106
- if (!value) {
107
- // reset to default color scheme
108
- newState.lightColorScheme = defaultLightColorScheme;
109
- newState.darkColorScheme = defaultDarkColorScheme;
110
- return newState;
111
- }
112
-
113
128
  processState(currentState, mode => {
114
- localStorage.setItem(`${colorSchemeStorageKey}-${mode}`, value);
129
+ try {
130
+ localStorage.setItem(`${colorSchemeStorageKey}-${mode}`, value);
131
+ } catch (e) {// Unsupported
132
+ }
115
133
 
116
134
  if (mode === 'light') {
117
135
  newState.lightColorScheme = value;
@@ -124,30 +142,41 @@ export default function useCurrentColorScheme(options) {
124
142
  return newState;
125
143
  });
126
144
  }
127
- } else if (value.light && !joinedColorSchemes.includes(value.light) || value.dark && !joinedColorSchemes.includes(value.dark)) {
128
- console.error(`\`${value}\` does not exist in \`theme.colorSchemes\`.`);
129
145
  } else {
130
146
  setState(currentState => {
131
147
  const newState = _extends({}, currentState);
132
148
 
133
- if (value.light || value.light === null) {
134
- newState.lightColorScheme = value.light === null ? defaultLightColorScheme : value.light;
149
+ const newLightColorScheme = value.light === null ? defaultLightColorScheme : value.light;
150
+ const newDarkColorScheme = value.dark === null ? defaultDarkColorScheme : value.dark;
151
+
152
+ if (newLightColorScheme) {
153
+ if (!joinedColorSchemes.includes(newLightColorScheme)) {
154
+ console.error(`\`${newLightColorScheme}\` does not exist in \`theme.colorSchemes\`.`);
155
+ } else {
156
+ newState.lightColorScheme = newLightColorScheme;
157
+
158
+ try {
159
+ localStorage.setItem(`${colorSchemeStorageKey}-light`, newLightColorScheme);
160
+ } catch (error) {// Unsupported
161
+ }
162
+ }
135
163
  }
136
164
 
137
- if (value.dark || value.dark === null) {
138
- newState.darkColorScheme = value.dark === null ? defaultDarkColorScheme : value.dark;
165
+ if (newDarkColorScheme) {
166
+ if (!joinedColorSchemes.includes(newDarkColorScheme)) {
167
+ console.error(`\`${newDarkColorScheme}\` does not exist in \`theme.colorSchemes\`.`);
168
+ } else {
169
+ newState.darkColorScheme = newDarkColorScheme;
170
+
171
+ try {
172
+ localStorage.setItem(`${colorSchemeStorageKey}-dark`, newDarkColorScheme);
173
+ } catch (error) {// Unsupported
174
+ }
175
+ }
139
176
  }
140
177
 
141
178
  return newState;
142
179
  });
143
-
144
- if (value.light) {
145
- localStorage.setItem(`${colorSchemeStorageKey}-light`, value.light);
146
- }
147
-
148
- if (value.dark) {
149
- localStorage.setItem(`${colorSchemeStorageKey}-dark`, value.dark);
150
- }
151
180
  }
152
181
  }, [joinedColorSchemes, colorSchemeStorageKey, defaultLightColorScheme, defaultDarkColorScheme]);
153
182
  const handleMediaQuery = React.useCallback(e => {
@@ -169,23 +198,7 @@ export default function useCurrentColorScheme(options) {
169
198
  media.addListener(handler);
170
199
  handler(media);
171
200
  return () => media.removeListener(handler);
172
- }, []); // Save mode, lightColorScheme & darkColorScheme to localStorage
173
-
174
- React.useEffect(() => {
175
- if (state.mode) {
176
- localStorage.setItem(modeStorageKey, state.mode);
177
- }
178
-
179
- processState(state, mode => {
180
- if (mode === 'light') {
181
- localStorage.setItem(`${colorSchemeStorageKey}-light`, state.lightColorScheme);
182
- }
183
-
184
- if (mode === 'dark') {
185
- localStorage.setItem(`${colorSchemeStorageKey}-dark`, state.darkColorScheme);
186
- }
187
- });
188
- }, [state, colorSchemeStorageKey, modeStorageKey]); // Handle when localStorage has changed
201
+ }, []); // Handle when localStorage has changed
189
202
 
190
203
  React.useEffect(() => {
191
204
  const handleStorage = event => {
package/modern/index.js CHANGED
@@ -1,4 +1,4 @@
1
- /** @license MUI v5.10.0
1
+ /** @license MUI v5.10.3
2
2
  *
3
3
  * This source code is licensed under the MIT license found in the
4
4
  * LICENSE file in the root directory of this source tree.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mui/system",
3
- "version": "5.10.0",
3
+ "version": "5.10.3",
4
4
  "private": false,
5
5
  "author": "MUI Team",
6
6
  "description": "CSS utilities for rapidly laying out custom designs.",
@@ -43,11 +43,11 @@
43
43
  }
44
44
  },
45
45
  "dependencies": {
46
- "@babel/runtime": "^7.17.2",
47
- "@mui/private-theming": "^5.9.3",
48
- "@mui/styled-engine": "^5.10.0",
49
- "@mui/types": "^7.1.5",
50
- "@mui/utils": "^5.9.3",
46
+ "@babel/runtime": "^7.18.9",
47
+ "@mui/private-theming": "^5.10.3",
48
+ "@mui/styled-engine": "^5.10.3",
49
+ "@mui/types": "^7.2.0",
50
+ "@mui/utils": "^5.10.3",
51
51
  "clsx": "^1.2.1",
52
52
  "csstype": "^3.1.0",
53
53
  "prop-types": "^15.8.1"
@@ -1 +1 @@
1
- export {};
1
+ export {};