import styles from './Footer.module.css'; import { useEffect, useState } from 'react'; import { FiSun, FiMoon, FiMonitor } from 'react-icons/fi'; export default function Footer() { const [theme, setTheme] = useState('system'); const applyTheme = (selected) => { if (selected === 'system') { const prefersDark = window.matchMedia( '(prefers-color-scheme: dark)', ).matches; document.documentElement.setAttribute( 'data-theme', prefersDark ? 'dark' : 'light', ); } else { document.documentElement.setAttribute('data-theme', selected); } }; useEffect(() => { const stored = localStorage.getItem('theme'); const initialTheme = stored === 'light' || stored === 'dark' ? stored : 'system'; setTheme(initialTheme); applyTheme(initialTheme); const media = window.matchMedia('(prefers-color-scheme: dark)'); const listener = () => { if (theme === 'system') applyTheme('system'); }; media.addEventListener('change', listener); return () => media.removeEventListener('change', listener); }, [theme]); const setAndStoreTheme = (selected) => { setTheme(selected); localStorage.setItem('theme', selected); applyTheme(selected); }; return ( ); }