mirror of
https://github.com/GMWalletApp/epusdt.git
synced 2026-07-07 18:26:16 +00:00
1 line
1.0 KiB
JavaScript
1 line
1.0 KiB
JavaScript
import{af as e,nf as t,tf as n}from"./messages-BvSF842O.js";import{n as r,r as i,t as a}from"./cookies-C6BqVyqT.js";var o=e(t(),1),s=n(),c=`system`,l=`theme`,u=3600*24*365,d=(0,o.createContext)({defaultTheme:c,resolvedTheme:`light`,theme:c,setTheme:()=>null,resetTheme:()=>null});function f({children:e,defaultTheme:t=c,storageKey:n=l,...f}){let[p,m]=(0,o.useState)(()=>a(n)||t),h=(0,o.useMemo)(()=>p===`system`?window.matchMedia(`(prefers-color-scheme: dark)`).matches?`dark`:`light`:p,[p]);return(0,o.useEffect)(()=>{let e=window.document.documentElement,t=window.matchMedia(`(prefers-color-scheme: dark)`),n=t=>{e.dataset.mode=t,e.style.colorScheme=t},r=()=>{p===`system`&&n(t.matches?`dark`:`light`)};return n(h),t.addEventListener(`change`,r),()=>t.removeEventListener(`change`,r)},[p,h]),(0,s.jsx)(d,{value:{defaultTheme:t,resolvedTheme:h,resetTheme:()=>{r(n),m(c)},theme:p,setTheme:e=>{i(n,e,u),m(e)}},...f,children:e})}var p=()=>{let e=(0,o.useContext)(d);if(!e)throw Error(`useTheme must be used within a ThemeProvider`);return e};export{p as n,f as t}; |