@kwiz/fluentui 1.0.209 → 1.0.210
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.
|
@@ -7,4 +7,9 @@ export interface iThemeInfo {
|
|
|
7
7
|
brandVariants?: BrandVariants;
|
|
8
8
|
}
|
|
9
9
|
export declare function setThemeInfo(themeInfo: iThemeInfo): void;
|
|
10
|
+
/** returns the theme hook, tells you if to use dark / light and brand variables if they were ever saved.
|
|
11
|
+
* call getTheme({dark:theme.scheme==="dark"}) to get the theme, or if your app wants to use custom colors too
|
|
12
|
+
* call getTheme({dark:theme.scheme==="dark"}, theme.brandVariants) or
|
|
13
|
+
* getTheme({dark:theme.scheme==="dark"}, netSuiteDefault)
|
|
14
|
+
*/
|
|
10
15
|
export declare function useTheme(): iThemeInfo;
|
|
@@ -1,24 +1,19 @@
|
|
|
1
1
|
"use client";
|
|
2
|
-
import {
|
|
2
|
+
import { dispatchCustomEvent, getGlobal, isNotEmptyString, isNullOrUndefined, jsonParse, jsonStringify } from "@kwiz/common";
|
|
3
3
|
import { useEffect, useId, useState } from "react";
|
|
4
4
|
import { useIsInPrint } from "./hooks-events";
|
|
5
|
-
const $themeCookie = "KWTheme";
|
|
6
5
|
function getDefaultThemeInfo() {
|
|
7
6
|
const themeInfo = { auto: true, scheme: window.matchMedia('(prefers-color-scheme: dark)').matches ? "dark" : "light" };
|
|
8
7
|
return themeInfo;
|
|
9
8
|
}
|
|
10
9
|
function getThemeInfo() {
|
|
11
|
-
let themeInfo =
|
|
12
|
-
|
|
13
|
-
if (isNullOrUndefined(cookie)) {
|
|
10
|
+
let themeInfo = getThemeFromLocalStorage();
|
|
11
|
+
if (themeInfo) {
|
|
14
12
|
themeInfo = getDefaultThemeInfo();
|
|
15
13
|
}
|
|
16
|
-
else {
|
|
17
|
-
themeInfo = { auto: false, scheme: cookie === "dark" ? "dark" : "light" };
|
|
18
|
-
}
|
|
19
14
|
return themeInfo;
|
|
20
15
|
}
|
|
21
|
-
const globals = getGlobal("
|
|
16
|
+
const globals = getGlobal("sos_theme_global", {
|
|
22
17
|
theme: getThemeInfo()
|
|
23
18
|
});
|
|
24
19
|
export function setThemeInfo(themeInfo) {
|
|
@@ -26,14 +21,19 @@ export function setThemeInfo(themeInfo) {
|
|
|
26
21
|
? getDefaultThemeInfo()
|
|
27
22
|
: themeInfo;
|
|
28
23
|
if (!themeInfo.auto) {
|
|
29
|
-
|
|
24
|
+
saveThemeInLocalStorage(themeInfo);
|
|
30
25
|
}
|
|
31
26
|
else {
|
|
32
|
-
|
|
27
|
+
removeThemeInLocalStorage();
|
|
33
28
|
}
|
|
34
29
|
globals.theme = newThemeInfo;
|
|
35
30
|
dispatchCustomEvent(globalThis, "OnThemeChanged");
|
|
36
31
|
}
|
|
32
|
+
/** returns the theme hook, tells you if to use dark / light and brand variables if they were ever saved.
|
|
33
|
+
* call getTheme({dark:theme.scheme==="dark"}) to get the theme, or if your app wants to use custom colors too
|
|
34
|
+
* call getTheme({dark:theme.scheme==="dark"}, theme.brandVariants) or
|
|
35
|
+
* getTheme({dark:theme.scheme==="dark"}, netSuiteDefault)
|
|
36
|
+
*/
|
|
37
37
|
export function useTheme() {
|
|
38
38
|
const [theme, setTheme] = useState(globals.theme);
|
|
39
39
|
const isInPrint = useIsInPrint();
|
|
@@ -47,4 +47,18 @@ export function useTheme() {
|
|
|
47
47
|
}, [id]);
|
|
48
48
|
return isInPrint ? { auto: false, scheme: "light" } : theme;
|
|
49
49
|
}
|
|
50
|
+
const $themeStorageKey = "sos-theme-info";
|
|
51
|
+
function saveThemeInLocalStorage(themeInfo) {
|
|
52
|
+
localStorage.setItem($themeStorageKey, jsonStringify(themeInfo));
|
|
53
|
+
}
|
|
54
|
+
function getThemeFromLocalStorage() {
|
|
55
|
+
const str = localStorage.getItem($themeStorageKey);
|
|
56
|
+
if (isNotEmptyString(str))
|
|
57
|
+
return jsonParse(str);
|
|
58
|
+
else
|
|
59
|
+
return null;
|
|
60
|
+
}
|
|
61
|
+
function removeThemeInLocalStorage() {
|
|
62
|
+
localStorage.removeItem($themeStorageKey);
|
|
63
|
+
}
|
|
50
64
|
//# sourceMappingURL=use-theme.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"use-theme.js","sourceRoot":"","sources":["../../src/helpers/use-theme.ts"],"names":[],"mappings":"AAAA,YAAY,CAAA;AAEZ,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"use-theme.js","sourceRoot":"","sources":["../../src/helpers/use-theme.ts"],"names":[],"mappings":"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"}
|
package/dist/styles/theme.js
CHANGED
|
@@ -1,6 +1,16 @@
|
|
|
1
1
|
import { createDarkTheme, createLightTheme, teamsDarkTheme, teamsLightTheme } from "@fluentui/react-components";
|
|
2
2
|
import { createBrandVariants } from '@fluentui/react-migration-v8-v9';
|
|
3
|
-
|
|
3
|
+
import { isNullOrUndefined } from "@kwiz/common";
|
|
4
|
+
export function getTheme(ctx, t) {
|
|
5
|
+
if (isNullOrUndefined(t)) {
|
|
6
|
+
const spoTheme = getFluentV9BrandVariantsFromV8Pallet();
|
|
7
|
+
if (spoTheme) {
|
|
8
|
+
t = spoTheme.bv;
|
|
9
|
+
ctx.dark = spoTheme.isDark;
|
|
10
|
+
}
|
|
11
|
+
else
|
|
12
|
+
t = kThemeDefault;
|
|
13
|
+
}
|
|
4
14
|
const theme = ctx.dark
|
|
5
15
|
? getDarkTheme(ctx.teams, t)
|
|
6
16
|
: getLightTheme(ctx.teams, t);
|
package/dist/styles/theme.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"theme.js","sourceRoot":"","sources":["../../src/styles/theme.ts"],"names":[],"mappings":"AAAA,OAAO,EAAwB,eAAe,EAAE,gBAAgB,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AACtI,OAAO,EAAE,mBAAmB,EAAE,MAAM,iCAAiC,CAAC;
|
|
1
|
+
{"version":3,"file":"theme.js","sourceRoot":"","sources":["../../src/styles/theme.ts"],"names":[],"mappings":"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"}
|