// Theme detection and switching const getPreferredTheme = () => { return window.matchMedia('(prefers-color-scheme: dark)').matches ? 'dark' : 'light' } const setTheme = theme => { document.documentElement.setAttribute('data-bs-theme', theme) } // Set initial theme setTheme(getPreferredTheme()) // Listen for changes in user's preferred color scheme window.matchMedia('(prefers-color-scheme: dark)').addEventListener('change', () => { setTheme(getPreferredTheme()) }) export { getPreferredTheme, setTheme };