{ "version": 3, "sources": ["../../theme.ts"], "sourcesContent": ["import { ThemeID } from \"./common\"\n\nexport {}\n\ndeclare global {\n interface Window {\n updateStoredTheme: (theme: ThemeID) => void\n getStoredTheme: () => ThemeID\n }\n}\n\nwindow.getStoredTheme = () => {\n const stored = localStorage.getItem('theme')\n return stored ? stored as ThemeID : 'auto'\n}\n\nwindow.updateStoredTheme = (theme) => {\n if (theme == 'auto') {\n localStorage.removeItem('theme')\n } else {\n localStorage.setItem('theme', theme)\n }\n setTheme(theme)\n}\n\nwindow.matchMedia('(prefers-color-scheme: dark)').addEventListener('change', () => {\n const storedTheme = window.getStoredTheme()\n if (storedTheme !== 'light' && storedTheme !== 'dark') {\n setTheme(storedTheme)\n }\n})\n\nconst setTheme = (theme: ThemeID) => {\n if (theme === 'auto') {\n document.documentElement.setAttribute('data-bs-theme', (window.matchMedia('(prefers-color-scheme: dark)').matches ? 'dark' : 'light'))\n } else {\n document.documentElement.setAttribute('data-bs-theme', theme)\n }\n}\n\nsetTheme(window.getStoredTheme())\n"], "mappings": "MAWA,OAAO,eAAiB,IAAM,CAC1B,IAAMA,EAAS,aAAa,QAAQ,OAAO,EAC3C,OAAOA,GAA6B,MACxC,EAEA,OAAO,kBAAqBC,GAAU,CAC9BA,GAAS,OACT,aAAa,WAAW,OAAO,EAE/B,aAAa,QAAQ,QAASA,CAAK,EAEvCC,EAASD,CAAK,CAClB,EAEA,OAAO,WAAW,8BAA8B,EAAE,iBAAiB,SAAU,IAAM,CAC/E,IAAME,EAAc,OAAO,eAAe,EACtCA,IAAgB,SAAWA,IAAgB,QAC3CD,EAASC,CAAW,CAE5B,CAAC,EAED,IAAMD,EAAYD,GAAmB,CAC7BA,IAAU,OACV,SAAS,gBAAgB,aAAa,gBAAkB,OAAO,WAAW,8BAA8B,EAAE,QAAU,OAAS,OAAQ,EAErI,SAAS,gBAAgB,aAAa,gBAAiBA,CAAK,CAEpE,EAEAC,EAAS,OAAO,eAAe,CAAC", "names": ["stored", "theme", "setTheme", "storedTheme"] }