@serendie/ui
Version:
Adaptive UI component library as part of Serendie Design System by Mitsubishi Electric
33 lines (32 loc) • 1.45 kB
JavaScript
import { jsx as d } from "react/jsx-runtime";
import { useThemeContext as n } from "./ThemeContext.js";
function l(o = {}) {
const {
colorTheme: e,
colorMode: t,
defaultTheme: r = "konjo",
defaultColorMode: m = "light",
themeStorageKey: a = "serendie-color-theme",
modeStorageKey: c = "serendie-color-mode"
} = o;
return e !== void 0 || t !== void 0 ? `(function(){try{var t='${e ?? r}';var m='${t ?? m}';var d=window.matchMedia('(prefers-color-scheme:dark)').matches;var k=m==='dark'||(m==='system'&&d);if(k){document.documentElement.dataset.pandaTheme='konjo-dark'}else if(t!=='konjo'){document.documentElement.dataset.pandaTheme=t}}catch(e){}})();` : `(function(){try{var t=localStorage.getItem('${a}')||'${r}';var m=localStorage.getItem('${c}')||'${m}';var d=window.matchMedia('(prefers-color-scheme:dark)').matches;var k=m==='dark'||(m==='system'&&d);if(k){document.documentElement.dataset.pandaTheme='konjo-dark'}else if(t!=='konjo'){document.documentElement.dataset.pandaTheme=t}}catch(e){}})();`;
}
function f(o = {}) {
const e = n(), t = o.colorTheme ?? (e == null ? void 0 : e.colorTheme), r = o.colorMode ?? (e == null ? void 0 : e.colorMode);
return /* @__PURE__ */ d(
"script",
{
dangerouslySetInnerHTML: {
__html: l({
...o,
colorTheme: t,
colorMode: r
})
}
}
);
}
export {
f as ColorSchemeScript,
l as getColorSchemeScript
};