/
vladlevin790
/
cpp-lab-2
Обзор
Документация
Войти
/
vladlevin790
/
cpp-lab-2
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
master
web/js/theme.js
42 строки
1 KB
vladlevin790
init
05 май 2026, 21:32
05 май 2026, 21:32
3310cbd
Код
Авторство
О чём код?
import { t } from "./i18n.js"; function setThemeButtonLabel(button, value) { if (!button) { return; } const label = button.querySelector(".dock-text") ?? button; label.textContent = value; } export function refreshThemeLabel(elements) { const current = document.documentElement.dataset.theme === "light" ? "light" : "dark"; setThemeButtonLabel( elements.themeToggleBtn, current === "light" ? t("theme.dark") : t("theme.light") ); } export function applyTheme(elements, theme) { const normalized = theme === "light" ? "light" : "dark"; document.documentElement.dataset.theme = normalized; localStorage.setItem("lab-theme", normalized); refreshThemeLabel(elements); } export function toggleTheme(elements) { const current = document.documentElement.dataset.theme === "light" ? "light" : "dark"; applyTheme(elements, current === "light" ? "dark" : "light"); } export function loadTheme(elements) { const saved = localStorage.getItem("lab-theme"); applyTheme(elements, saved === "light" ? "light" : "dark"); }