@auth0/quantum-product 1.5.5 → 1.5.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
|
@@ -21,12 +21,13 @@ import { useMediaQuery } from '../use-media-query';
|
|
|
21
21
|
import { DEFAULT_COLOR_MODE, QuantumContext } from './quantum-context';
|
|
22
22
|
var DEFAULT_COLOR_MODE_STORAGE_KEY = 'quantum:color-mode';
|
|
23
23
|
export var PREFERS_DARK_MODE_QUERY = '(prefers-color-scheme: dark)';
|
|
24
|
-
|
|
24
|
+
var validColorModes = new Set(['light', 'dark', 'system']);
|
|
25
|
+
export var getCurrentColorModeFromStorage = function () {
|
|
25
26
|
try {
|
|
26
|
-
return window.localStorage.getItem(DEFAULT_COLOR_MODE_STORAGE_KEY);
|
|
27
|
+
return window.localStorage.getItem(DEFAULT_COLOR_MODE_STORAGE_KEY) || DEFAULT_COLOR_MODE;
|
|
27
28
|
}
|
|
28
29
|
catch (_err) {
|
|
29
|
-
return
|
|
30
|
+
return DEFAULT_COLOR_MODE;
|
|
30
31
|
}
|
|
31
32
|
};
|
|
32
33
|
var setCurrentColorModeInStorage = function (mode) {
|
|
@@ -40,13 +41,19 @@ var setCurrentColorModeInStorage = function (mode) {
|
|
|
40
41
|
var computePaletteMode = function (currentColorMode, prefersDarkMode) {
|
|
41
42
|
return currentColorMode === 'system' ? (prefersDarkMode ? 'dark' : 'light') : currentColorMode;
|
|
42
43
|
};
|
|
44
|
+
var isValidColorMode = function (colorMode) {
|
|
45
|
+
return validColorModes.has(colorMode);
|
|
46
|
+
};
|
|
47
|
+
var computeValidColorMode = function (colorMode) {
|
|
48
|
+
return isValidColorMode(colorMode) ? colorMode : DEFAULT_COLOR_MODE;
|
|
49
|
+
};
|
|
43
50
|
export var QuantumProvider = function (_a) {
|
|
44
|
-
var _b = _a.theme, theme = _b === void 0 ? defaultQuantumTheme : _b, children = _a.children, onColorModeChange = _a.onColorModeChange, propColorMode = _a.colorMode,
|
|
45
|
-
var
|
|
46
|
-
return propColorMode || getCurrentColorModeFromStorage(
|
|
47
|
-
}), 2), colorMode =
|
|
51
|
+
var _b = _a.theme, theme = _b === void 0 ? defaultQuantumTheme : _b, children = _a.children, onColorModeChange = _a.onColorModeChange, propColorMode = _a.colorMode, defaultColorMode = _a.defaultColorMode;
|
|
52
|
+
var _c = __read(React.useState(function () {
|
|
53
|
+
return propColorMode || defaultColorMode || getCurrentColorModeFromStorage();
|
|
54
|
+
}), 2), colorMode = _c[0], setColorMode = _c[1];
|
|
48
55
|
var prefersDarkMode = useMediaQuery(PREFERS_DARK_MODE_QUERY);
|
|
49
|
-
var currentColorMode = propColorMode || colorMode;
|
|
56
|
+
var currentColorMode = computeValidColorMode(propColorMode || colorMode);
|
|
50
57
|
React.useEffect(function () {
|
|
51
58
|
var _a;
|
|
52
59
|
var mode = computePaletteMode(currentColorMode, prefersDarkMode);
|
|
@@ -54,7 +61,7 @@ export var QuantumProvider = function (_a) {
|
|
|
54
61
|
}, [currentColorMode, prefersDarkMode]);
|
|
55
62
|
var activeTheme = React.useMemo(function () {
|
|
56
63
|
var mode = computePaletteMode(currentColorMode, prefersDarkMode);
|
|
57
|
-
return theme[mode];
|
|
64
|
+
return theme[mode] || theme[DEFAULT_COLOR_MODE];
|
|
58
65
|
}, [prefersDarkMode, currentColorMode, theme]);
|
|
59
66
|
var handleSetColorMode = React.useCallback(function (mode) {
|
|
60
67
|
setColorMode(mode);
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@auth0/quantum-product",
|
|
3
|
-
"version": "1.5.
|
|
3
|
+
"version": "1.5.7",
|
|
4
4
|
"sideEffects": false,
|
|
5
5
|
"license": "Apache-2.0",
|
|
6
6
|
"publishConfig": {
|
|
@@ -16,7 +16,7 @@
|
|
|
16
16
|
"main": "./index.js",
|
|
17
17
|
"types": "./index.d.ts",
|
|
18
18
|
"dependencies": {
|
|
19
|
-
"@auth0/quantum-tokens": "^1.1.
|
|
19
|
+
"@auth0/quantum-tokens": "^1.1.4",
|
|
20
20
|
"@mui/material": "5.8.7",
|
|
21
21
|
"@mui/styles": "5.8.7",
|
|
22
22
|
"@mui/system": "5.8.7",
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
export { QuantumProvider } from './quantum-provider';
|
|
2
2
|
export type { IQuantumProviderProps } from './quantum-provider';
|
|
3
3
|
export { QuantumContext, useQuantumContext } from './quantum-context';
|
|
4
|
-
export type { IQuantumContextValue } from './quantum-context';
|
|
4
|
+
export type { IQuantumContextValue, ThemeColorMode } from './quantum-context';
|
|
@@ -9,5 +9,5 @@ export interface IQuantumProviderProps {
|
|
|
9
9
|
onColorModeChange?(colorMode: ThemeColorMode): void;
|
|
10
10
|
children?: React.ReactNode | ((ctx: IQuantumContextValue) => React.ReactNode);
|
|
11
11
|
}
|
|
12
|
-
export declare const getCurrentColorModeFromStorage: (
|
|
12
|
+
export declare const getCurrentColorModeFromStorage: () => ThemeColorMode;
|
|
13
13
|
export declare const QuantumProvider: React.FC<IQuantumProviderProps>;
|
|
@@ -47,12 +47,13 @@ var use_media_query_1 = require("../use-media-query");
|
|
|
47
47
|
var quantum_context_1 = require("./quantum-context");
|
|
48
48
|
var DEFAULT_COLOR_MODE_STORAGE_KEY = 'quantum:color-mode';
|
|
49
49
|
exports.PREFERS_DARK_MODE_QUERY = '(prefers-color-scheme: dark)';
|
|
50
|
-
var
|
|
50
|
+
var validColorModes = new Set(['light', 'dark', 'system']);
|
|
51
|
+
var getCurrentColorModeFromStorage = function () {
|
|
51
52
|
try {
|
|
52
|
-
return window.localStorage.getItem(DEFAULT_COLOR_MODE_STORAGE_KEY);
|
|
53
|
+
return window.localStorage.getItem(DEFAULT_COLOR_MODE_STORAGE_KEY) || quantum_context_1.DEFAULT_COLOR_MODE;
|
|
53
54
|
}
|
|
54
55
|
catch (_err) {
|
|
55
|
-
return
|
|
56
|
+
return quantum_context_1.DEFAULT_COLOR_MODE;
|
|
56
57
|
}
|
|
57
58
|
};
|
|
58
59
|
exports.getCurrentColorModeFromStorage = getCurrentColorModeFromStorage;
|
|
@@ -67,13 +68,19 @@ var setCurrentColorModeInStorage = function (mode) {
|
|
|
67
68
|
var computePaletteMode = function (currentColorMode, prefersDarkMode) {
|
|
68
69
|
return currentColorMode === 'system' ? (prefersDarkMode ? 'dark' : 'light') : currentColorMode;
|
|
69
70
|
};
|
|
71
|
+
var isValidColorMode = function (colorMode) {
|
|
72
|
+
return validColorModes.has(colorMode);
|
|
73
|
+
};
|
|
74
|
+
var computeValidColorMode = function (colorMode) {
|
|
75
|
+
return isValidColorMode(colorMode) ? colorMode : quantum_context_1.DEFAULT_COLOR_MODE;
|
|
76
|
+
};
|
|
70
77
|
var QuantumProvider = function (_a) {
|
|
71
|
-
var _b = _a.theme, theme = _b === void 0 ? default_theme_1.defaultQuantumTheme : _b, children = _a.children, onColorModeChange = _a.onColorModeChange, propColorMode = _a.colorMode,
|
|
72
|
-
var
|
|
73
|
-
return propColorMode || (0, exports.getCurrentColorModeFromStorage)(
|
|
74
|
-
}), 2), colorMode =
|
|
78
|
+
var _b = _a.theme, theme = _b === void 0 ? default_theme_1.defaultQuantumTheme : _b, children = _a.children, onColorModeChange = _a.onColorModeChange, propColorMode = _a.colorMode, defaultColorMode = _a.defaultColorMode;
|
|
79
|
+
var _c = __read(React.useState(function () {
|
|
80
|
+
return propColorMode || defaultColorMode || (0, exports.getCurrentColorModeFromStorage)();
|
|
81
|
+
}), 2), colorMode = _c[0], setColorMode = _c[1];
|
|
75
82
|
var prefersDarkMode = (0, use_media_query_1.useMediaQuery)(exports.PREFERS_DARK_MODE_QUERY);
|
|
76
|
-
var currentColorMode = propColorMode || colorMode;
|
|
83
|
+
var currentColorMode = computeValidColorMode(propColorMode || colorMode);
|
|
77
84
|
React.useEffect(function () {
|
|
78
85
|
var _a;
|
|
79
86
|
var mode = computePaletteMode(currentColorMode, prefersDarkMode);
|
|
@@ -81,7 +88,7 @@ var QuantumProvider = function (_a) {
|
|
|
81
88
|
}, [currentColorMode, prefersDarkMode]);
|
|
82
89
|
var activeTheme = React.useMemo(function () {
|
|
83
90
|
var mode = computePaletteMode(currentColorMode, prefersDarkMode);
|
|
84
|
-
return theme[mode];
|
|
91
|
+
return theme[mode] || theme[quantum_context_1.DEFAULT_COLOR_MODE];
|
|
85
92
|
}, [prefersDarkMode, currentColorMode, theme]);
|
|
86
93
|
var handleSetColorMode = React.useCallback(function (mode) {
|
|
87
94
|
setColorMode(mode);
|