darkmode/dist/index.js
2026-05-24 16:21:07 +02:00

421 lines
No EOL
13 KiB
JavaScript

// node_modules/@quartz-community/utils/dist/lang.js
function classNames(...classes) {
return classes.filter(Boolean).join(" ");
}
// src/i18n/locales/en-US.ts
var en_US_default = {
components: {
themeToggle: {
darkMode: "Dark mode",
lightMode: "Light mode"
}
}
};
// src/i18n/locales/ar-SA.ts
var ar_SA_default = {
components: {
themeToggle: {
darkMode: "\u0627\u0644\u0648\u0636\u0639 \u0627\u0644\u0644\u064A\u0644\u064A",
lightMode: "\u0627\u0644\u0648\u0636\u0639 \u0627\u0644\u0646\u0647\u0627\u0631\u064A"
}
}
};
// src/i18n/locales/ca-ES.ts
var ca_ES_default = {
components: {
themeToggle: {
darkMode: "Mode fosc",
lightMode: "Mode clar"
}
}
};
// src/i18n/locales/cs-CZ.ts
var cs_CZ_default = {
components: {
themeToggle: {
darkMode: "Tmav\xFD re\u017Eim",
lightMode: "Sv\u011Btl\xFD re\u017Eim"
}
}
};
// src/i18n/locales/de-DE.ts
var de_DE_default = {
components: {
themeToggle: {
darkMode: "Dunkler Modus",
lightMode: "Heller Modus"
}
}
};
// src/i18n/locales/en-GB.ts
var en_GB_default = {
components: {
themeToggle: {
darkMode: "Dark mode",
lightMode: "Light mode"
}
}
};
// src/i18n/locales/es-ES.ts
var es_ES_default = {
components: {
themeToggle: {
darkMode: "Modo oscuro",
lightMode: "Modo claro"
}
}
};
// src/i18n/locales/fa-IR.ts
var fa_IR_default = {
components: {
themeToggle: {
darkMode: "\u062D\u0627\u0644\u062A \u062A\u0627\u0631\u06CC\u06A9",
lightMode: "\u062D\u0627\u0644\u062A \u0631\u0648\u0634\u0646"
}
}
};
// src/i18n/locales/fi-FI.ts
var fi_FI_default = {
components: {
themeToggle: {
darkMode: "Tumma tila",
lightMode: "Vaalea tila"
}
}
};
// src/i18n/locales/fr-FR.ts
var fr_FR_default = {
components: {
themeToggle: {
darkMode: "Mode sombre",
lightMode: "Mode clair"
}
}
};
// src/i18n/locales/he-IL.ts
var he_IL_default = {
components: {
themeToggle: {
darkMode: "\u05DE\u05E6\u05D1 \u05DB\u05D4\u05D4",
lightMode: "\u05DE\u05E6\u05D1 \u05D1\u05D4\u05D9\u05E8"
}
}
};
// src/i18n/locales/hu-HU.ts
var hu_HU_default = {
components: {
themeToggle: {
darkMode: "S\xF6t\xE9t m\xF3d",
lightMode: "Vil\xE1gos m\xF3d"
}
}
};
// src/i18n/locales/id-ID.ts
var id_ID_default = {
components: {
themeToggle: {
darkMode: "Mode Gelap",
lightMode: "Mode Terang"
}
}
};
// src/i18n/locales/it-IT.ts
var it_IT_default = {
components: {
themeToggle: {
darkMode: "Tema scuro",
lightMode: "Tema chiaro"
}
}
};
// src/i18n/locales/ja-JP.ts
var ja_JP_default = {
components: {
themeToggle: {
darkMode: "\u30C0\u30FC\u30AF\u30E2\u30FC\u30C9",
lightMode: "\u30E9\u30A4\u30C8\u30E2\u30FC\u30C9"
}
}
};
// src/i18n/locales/kk-KZ.ts
var kk_KZ_default = {
components: {
themeToggle: {
darkMode: "\u049A\u0430\u0440\u0430\u04A3\u0493\u044B \u0440\u0435\u0436\u0438\u043C",
lightMode: "\u0416\u0430\u0440\u044B\u049B \u0440\u0435\u0436\u0438\u043C\u0456"
}
}
};
// src/i18n/locales/ko-KR.ts
var ko_KR_default = {
components: {
themeToggle: {
darkMode: "\uB2E4\uD06C \uBAA8\uB4DC",
lightMode: "\uB77C\uC774\uD2B8 \uBAA8\uB4DC"
}
}
};
// src/i18n/locales/lt-LT.ts
var lt_LT_default = {
components: {
themeToggle: {
darkMode: "Tamsus Re\u017Eimas",
lightMode: "\u0160viesus Re\u017Eimas"
}
}
};
// src/i18n/locales/nb-NO.ts
var nb_NO_default = {
components: {
themeToggle: {
darkMode: "M\xF8rk modus",
lightMode: "Lys modus"
}
}
};
// src/i18n/locales/nl-NL.ts
var nl_NL_default = {
components: {
themeToggle: {
darkMode: "Donkere modus",
lightMode: "Lichte modus"
}
}
};
// src/i18n/locales/pl-PL.ts
var pl_PL_default = {
components: {
themeToggle: {
darkMode: "Tryb ciemny",
lightMode: "Trzyb jasny"
}
}
};
// src/i18n/locales/pt-BR.ts
var pt_BR_default = {
components: {
themeToggle: {
darkMode: "Tema escuro",
lightMode: "Tema claro"
}
}
};
// src/i18n/locales/ro-RO.ts
var ro_RO_default = {
components: {
themeToggle: {
darkMode: "Modul \xEEntunecat",
lightMode: "Modul luminos"
}
}
};
// src/i18n/locales/ru-RU.ts
var ru_RU_default = {
components: {
themeToggle: {
darkMode: "\u0422\u0451\u043C\u043D\u044B\u0439 \u0440\u0435\u0436\u0438\u043C",
lightMode: "\u0421\u0432\u0435\u0442\u043B\u044B\u0439 \u0440\u0435\u0436\u0438\u043C"
}
}
};
// src/i18n/locales/th-TH.ts
var th_TH_default = {
components: {
themeToggle: {
darkMode: "\u0E42\u0E2B\u0E21\u0E14\u0E21\u0E37\u0E14",
lightMode: "\u0E42\u0E2B\u0E21\u0E14\u0E2A\u0E27\u0E48\u0E32\u0E07"
}
}
};
// src/i18n/locales/tr-TR.ts
var tr_TR_default = {
components: {
themeToggle: {
darkMode: "Koyu mod",
lightMode: "A\xE7\u0131k mod"
}
}
};
// src/i18n/locales/uk-UA.ts
var uk_UA_default = {
components: {
themeToggle: {
darkMode: "\u0422\u0435\u043C\u043D\u0438\u0439 \u0440\u0435\u0436\u0438\u043C",
lightMode: "\u0421\u0432\u0456\u0442\u043B\u0438\u0439 \u0440\u0435\u0436\u0438\u043C"
}
}
};
// src/i18n/locales/vi-VN.ts
var vi_VN_default = {
components: {
themeToggle: {
darkMode: "Ch\u1EBF \u0111\u1ED9 t\u1ED1i",
lightMode: "Ch\u1EBF \u0111\u1ED9 s\xE1ng"
}
}
};
// src/i18n/locales/zh-CN.ts
var zh_CN_default = {
components: {
themeToggle: {
darkMode: "\u6697\u8272\u6A21\u5F0F",
lightMode: "\u4EAE\u8272\u6A21\u5F0F"
}
}
};
// src/i18n/locales/zh-TW.ts
var zh_TW_default = {
components: {
themeToggle: {
darkMode: "\u6697\u8272\u6A21\u5F0F",
lightMode: "\u4EAE\u8272\u6A21\u5F0F"
}
}
};
// src/i18n/index.ts
var locales = {
"en-US": en_US_default,
"ar-SA": ar_SA_default,
"ca-ES": ca_ES_default,
"cs-CZ": cs_CZ_default,
"de-DE": de_DE_default,
"en-GB": en_GB_default,
"es-ES": es_ES_default,
"fa-IR": fa_IR_default,
"fi-FI": fi_FI_default,
"fr-FR": fr_FR_default,
"he-IL": he_IL_default,
"hu-HU": hu_HU_default,
"id-ID": id_ID_default,
"it-IT": it_IT_default,
"ja-JP": ja_JP_default,
"kk-KZ": kk_KZ_default,
"ko-KR": ko_KR_default,
"lt-LT": lt_LT_default,
"nb-NO": nb_NO_default,
"nl-NL": nl_NL_default,
"pl-PL": pl_PL_default,
"pt-BR": pt_BR_default,
"ro-RO": ro_RO_default,
"ru-RU": ru_RU_default,
"th-TH": th_TH_default,
"tr-TR": tr_TR_default,
"uk-UA": uk_UA_default,
"vi-VN": vi_VN_default,
"zh-CN": zh_CN_default,
"zh-TW": zh_TW_default
};
function i18n(locale) {
return locales[locale] || en_US_default;
}
// src/components/scripts/darkmode.inline.ts
var darkmode_inline_default = 'var r=window.matchMedia("(prefers-color-scheme: light)").matches?"light":"dark",h=localStorage.getItem("theme")??r;document.documentElement.setAttribute("saved-theme",h);var m=t=>{document.body?.classList.remove("theme-dark","theme-light"),document.body?.classList.add(`theme-${t}`)},c=t=>{let n=new CustomEvent("themechange",{detail:{theme:t}});document.dispatchEvent(n)},s=()=>{let t=document.documentElement.getAttribute("saved-theme")??"light";m(t);let n=()=>{let e=document.documentElement.getAttribute("saved-theme")==="dark"?"light":"dark";document.documentElement.setAttribute("saved-theme",e),localStorage.setItem("theme",e),m(e),c(e)},o=e=>{let d=e.matches?"dark":"light";document.documentElement.setAttribute("saved-theme",d),localStorage.setItem("theme",d),m(d),c(d)};for(let e of document.getElementsByClassName("darkmode"))e.addEventListener("click",n),window.addCleanup(()=>e.removeEventListener("click",n));let a=window.matchMedia("(prefers-color-scheme: dark)");a.addEventListener("change",o),window.addCleanup(()=>a.removeEventListener("change",o))};document.addEventListener("nav",s);document.addEventListener("render",s);\n';
// src/components/styles/darkmode.scss
var darkmode_default = ".darkmode {\n cursor: pointer;\n padding: 0;\n position: relative;\n background: none;\n border: none;\n width: 20px;\n height: 32px;\n margin: 0;\n text-align: inherit;\n flex-shrink: 0;\n}\n.darkmode svg {\n position: absolute;\n width: 20px;\n height: 20px;\n top: calc(50% - 10px);\n fill: var(--darkgray);\n transition: opacity 0.1s ease;\n}\n\n:root[saved-theme=dark] {\n color-scheme: dark;\n}\n\n:root[saved-theme=light] {\n color-scheme: light;\n}\n\n:root[saved-theme=dark] .darkmode > .dayIcon {\n display: none;\n}\n:root[saved-theme=dark] .darkmode > .nightIcon {\n display: inline;\n}\n\n:root .darkmode > .dayIcon {\n display: inline;\n}\n:root .darkmode > .nightIcon {\n display: none;\n}";
var l;
l = { __e: function(n2, l2, u3, t2) {
for (var i2, r2, o2; l2 = l2.__; ) if ((i2 = l2.__c) && !i2.__) try {
if ((r2 = i2.constructor) && null != r2.getDerivedStateFromError && (i2.setState(r2.getDerivedStateFromError(n2)), o2 = i2.__d), null != i2.componentDidCatch && (i2.componentDidCatch(n2, t2 || {}), o2 = i2.__d), o2) return i2.__E = i2;
} catch (l3) {
n2 = l3;
}
throw n2;
} }, "function" == typeof Promise ? Promise.prototype.then.bind(Promise.resolve()) : setTimeout, Math.random().toString(8);
// node_modules/preact/jsx-runtime/dist/jsxRuntime.mjs
var f2 = 0;
function u2(e2, t2, n2, o2, i2, u3) {
t2 || (t2 = {});
var a2, c2, p2 = t2;
if ("ref" in p2) for (c2 in p2 = {}, t2) "ref" == c2 ? a2 = t2[c2] : p2[c2] = t2[c2];
var l2 = { type: e2, props: p2, key: n2, ref: a2, __k: null, __: null, __b: 0, __e: null, __c: null, constructor: void 0, __v: --f2, __i: -1, __u: 0, __source: i2, __self: u3 };
if ("function" == typeof e2 && (a2 = e2.defaultProps)) for (c2 in a2) void 0 === p2[c2] && (p2[c2] = a2[c2]);
return l.vnode && l.vnode(l2), l2;
}
// src/components/Darkmode.tsx
var Darkmode = ({ displayClass, cfg }) => {
const locale = i18n(cfg?.locale ?? "en-US");
const darkModeLabel = locale.components.themeToggle.darkMode;
const lightModeLabel = locale.components.themeToggle.lightMode;
return /* @__PURE__ */ u2("button", { class: classNames(displayClass, "darkmode"), "aria-label": darkModeLabel, children: [
/* @__PURE__ */ u2(
"svg",
{
xmlns: "http://www.w3.org/2000/svg",
xmlnsXlink: "http://www.w3.org/1999/xlink",
version: "1.1",
class: "dayIcon",
x: "0px",
y: "0px",
viewBox: "0 0 35 35",
style: "enable-background:new 0 0 35 35",
xmlSpace: "preserve",
"aria-label": darkModeLabel,
children: [
/* @__PURE__ */ u2("title", { children: darkModeLabel }),
/* @__PURE__ */ u2("path", { d: "M6,17.5C6,16.672,5.328,16,4.5,16h-3C0.672,16,0,16.672,0,17.5 S0.672,19,1.5,19h3C5.328,19,6,18.328,6,17.5z M7.5,26c-0.414,0-0.789,0.168-1.061,0.439l-2,2C4.168,28.711,4,29.086,4,29.5 C4,30.328,4.671,31,5.5,31c0.414,0,0.789-0.168,1.06-0.44l2-2C8.832,28.289,9,27.914,9,27.5C9,26.672,8.329,26,7.5,26z M17.5,6 C18.329,6,19,5.328,19,4.5v-3C19,0.672,18.329,0,17.5,0S16,0.672,16,1.5v3C16,5.328,16.671,6,17.5,6z M27.5,9 c0.414,0,0.789-0.168,1.06-0.439l2-2C30.832,6.289,31,5.914,31,5.5C31,4.672,30.329,4,29.5,4c-0.414,0-0.789,0.168-1.061,0.44 l-2,2C26.168,6.711,26,7.086,26,7.5C26,8.328,26.671,9,27.5,9z M6.439,8.561C6.711,8.832,7.086,9,7.5,9C8.328,9,9,8.328,9,7.5 c0-0.414-0.168-0.789-0.439-1.061l-2-2C6.289,4.168,5.914,4,5.5,4C4.672,4,4,4.672,4,5.5c0,0.414,0.168,0.789,0.439,1.06 L6.439,8.561z M33.5,16h-3c-0.828,0-1.5,0.672-1.5,1.5s0.672,1.5,1.5,1.5h3c0.828,0,1.5-0.672,1.5-1.5S34.328,16,33.5,16z M28.561,26.439C28.289,26.168,27.914,26,27.5,26c-0.828,0-1.5,0.672-1.5,1.5c0,0.414,0.168,0.789,0.439,1.06l2,2 C28.711,30.832,29.086,31,29.5,31c0.828,0,1.5-0.672,1.5-1.5c0-0.414-0.168-0.789-0.439-1.061L28.561,26.439z M17.5,29 c-0.829,0-1.5,0.672-1.5,1.5v3c0,0.828,0.671,1.5,1.5,1.5s1.5-0.672,1.5-1.5v-3C19,29.672,18.329,29,17.5,29z M17.5,7 C11.71,7,7,11.71,7,17.5S11.71,28,17.5,28S28,23.29,28,17.5S23.29,7,17.5,7z M17.5,25c-4.136,0-7.5-3.364-7.5-7.5 c0-4.136,3.364-7.5,7.5-7.5c4.136,0,7.5,3.364,7.5,7.5C25,21.636,21.636,25,17.5,25z" })
]
}
),
/* @__PURE__ */ u2(
"svg",
{
xmlns: "http://www.w3.org/2000/svg",
xmlnsXlink: "http://www.w3.org/1999/xlink",
version: "1.1",
class: "nightIcon",
x: "0px",
y: "0px",
viewBox: "0 0 100 100",
style: "enable-background:new 0 0 100 100",
xmlSpace: "preserve",
"aria-label": lightModeLabel,
children: [
/* @__PURE__ */ u2("title", { children: lightModeLabel }),
/* @__PURE__ */ u2("path", { d: "M96.76,66.458c-0.853-0.852-2.15-1.064-3.23-0.534c-6.063,2.991-12.858,4.571-19.655,4.571 C62.022,70.495,50.88,65.88,42.5,57.5C29.043,44.043,25.658,23.536,34.076,6.47c0.532-1.08,0.318-2.379-0.534-3.23 c-0.851-0.852-2.15-1.064-3.23-0.534c-4.918,2.427-9.375,5.619-13.246,9.491c-9.447,9.447-14.65,22.008-14.65,35.369 c0,13.36,5.203,25.921,14.65,35.368s22.008,14.65,35.368,14.65c13.361,0,25.921-5.203,35.369-14.65 c3.872-3.871,7.064-8.328,9.491-13.246C97.826,68.608,97.611,67.309,96.76,66.458z" })
]
}
)
] });
};
Darkmode.beforeDOMLoaded = darkmode_inline_default;
Darkmode.css = darkmode_default;
var Darkmode_default = (() => Darkmode);
export { Darkmode_default as Darkmode };
//# sourceMappingURL=index.js.map
//# sourceMappingURL=index.js.map