Files
ai-nav/web10/resources/js/app.js

27 lines
876 B
JavaScript
Raw Normal View History

2026-02-05 22:22:10 +08:00
import './bootstrap';
const themeKey = 'theme';
const prefersDark = window.matchMedia && window.matchMedia('(prefers-color-scheme: dark)').matches;
const stored = localStorage.getItem(themeKey);
const initialTheme = stored || (prefersDark ? 'dark' : 'light');
const applyTheme = (theme) => {
document.documentElement.setAttribute('data-theme', theme);
const icon = document.querySelector('.theme-icon');
if (icon) {
icon.textContent = theme === 'dark' ? '☀' : '☾';
}
};
applyTheme(initialTheme);
const toggle = document.getElementById('theme-toggle');
if (toggle) {
toggle.addEventListener('click', () => {
const current = document.documentElement.getAttribute('data-theme') || 'light';
const next = current === 'dark' ? 'light' : 'dark';
localStorage.setItem(themeKey, next);
applyTheme(next);
});
}