{
  "version": 3,
  "sources": ["ssg:https://framerusercontent.com/modules/t9IIeLHyL0pO1m1BxAVL/5CZmcTDqji4gr0cIMJ3b/Theme.js"],
  "sourcesContent": ["import{jsx as _jsx}from\"react/jsx-runtime\";import{useEffect,useState}from\"react\";const isDarkPreferred=()=>{const mediaQuery=window.matchMedia(\"(prefers-color-scheme: dark)\");return mediaQuery.matches;};export const withTheme=Component=>{return props=>{const[isDarkTheme,setIsDarkTheme]=useState(null);useEffect(()=>{// Function to handle attribute changes\nconst handleThemeChange=()=>{const currentTheme=document.body.getAttribute(\"framestack-theme\");if(currentTheme===\"deviceTheme\"){setIsDarkTheme(isDarkPreferred());}else{setIsDarkTheme(currentTheme===\"dark\");}};// Create a MutationObserver to watch for changes to the \"framestack-theme\" attribute\nconst observer=new MutationObserver(mutationsList=>{for(const mutation of mutationsList){if(mutation.type===\"attributes\"&&mutation.attributeName===\"framestack-theme\"){handleThemeChange();}}});// Observe attribute changes on the body\nobserver.observe(document.body,{attributes:true,attributeFilter:[\"framestack-theme\"]});// Clean up observer on component unmount\nreturn()=>observer.disconnect();},[]);useEffect(()=>{const mediaQuery=window.matchMedia(\"(prefers-color-scheme: dark)\");const updateTheme=()=>{const currentToggleState=localStorage.getItem(\"currentToggleState\");console.log(\"currentToggleState:\",currentToggleState);console.log(\"mediaQuery.matches:\",mediaQuery.matches);setIsDarkTheme(currentToggleState===\"dark\"||currentToggleState===null&&mediaQuery.matches);};const osThemeChange=e=>{const currentToggleState=localStorage.getItem(\"currentToggleState\");console.log(\"OS Theme Change - currentToggleState:\",currentToggleState);console.log(\"OS Theme Change - e.matches:\",e.matches);if(currentToggleState===null){setIsDarkTheme(e.matches);}};updateTheme();window.addEventListener(\"themeChange\",updateTheme);mediaQuery.addEventListener(\"change\",osThemeChange);return()=>{window.removeEventListener(\"themeChange\",updateTheme);mediaQuery.removeEventListener(\"change\",osThemeChange);};},[]);console.log(\"Render - isDarkTheme:\",isDarkTheme);// if (isDarkTheme === null) {\n//     return null\n// }\nconst variant=isDarkTheme?\"Dark\":\"Light\";return /*#__PURE__*/_jsx(Component,{...props,variant:variant});};};\nexport const __FramerMetadata__ = {\"exports\":{\"withTheme\":{\"type\":\"reactHoc\",\"name\":\"withTheme\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./Theme.map"],
  "mappings": "gGAAiF,IAAMA,EAAgB,IAAsBC,EAAO,WAAW,8BAA8B,EAAoB,QAAuBC,EAAUC,GAAmBC,GAAO,CAAC,GAAK,CAACC,EAAYC,CAAc,EAAEC,EAAS,IAAI,EAAE,OAAAC,EAAU,IAAI,CAC5T,IAAMC,EAAkB,IAAI,CAAC,IAAMC,EAAa,SAAS,KAAK,aAAa,kBAAkB,EAAmCJ,EAA9BI,IAAe,cAA8BV,EAAgB,EAAwBU,IAAe,MAAtC,CAA+C,EACzMC,EAAS,IAAI,iBAAiBC,GAAe,CAAC,QAAUC,KAAYD,EAAkBC,EAAS,OAAO,cAAcA,EAAS,gBAAgB,oBAAoBJ,EAAkB,CAAI,CAAC,EAC9L,OAAAE,EAAS,QAAQ,SAAS,KAAK,CAAC,WAAW,GAAK,gBAAgB,CAAC,kBAAkB,CAAC,CAAC,EAC/E,IAAIA,EAAS,WAAW,CAAE,EAAE,CAAC,CAAC,EAAEH,EAAU,IAAI,CAAC,IAAMM,EAAWb,EAAO,WAAW,8BAA8B,EAAQc,EAAY,IAAI,CAAC,IAAMC,EAAmB,aAAa,QAAQ,oBAAoB,EAAE,QAAQ,IAAI,sBAAsBA,CAAkB,EAAE,QAAQ,IAAI,sBAAsBF,EAAW,OAAO,EAAER,EAAeU,IAAqB,QAAQA,IAAqB,MAAMF,EAAW,OAAO,CAAE,EAAQG,EAAc,GAAG,CAAC,IAAMD,EAAmB,aAAa,QAAQ,oBAAoB,EAAE,QAAQ,IAAI,wCAAwCA,CAAkB,EAAE,QAAQ,IAAI,+BAA+B,EAAE,OAAO,EAAKA,IAAqB,MAAMV,EAAe,EAAE,OAAO,CAAG,EAAE,OAAAS,EAAY,EAAEd,EAAO,iBAAiB,cAAcc,CAAW,EAAED,EAAW,iBAAiB,SAASG,CAAa,EAAQ,IAAI,CAAChB,EAAO,oBAAoB,cAAcc,CAAW,EAAED,EAAW,oBAAoB,SAASG,CAAa,CAAE,CAAE,EAAE,CAAC,CAAC,EAAE,QAAQ,IAAI,wBAAwBZ,CAAW,EAGx5Ba,EAAKf,EAAU,CAAC,GAAGC,EAAM,QAAxEC,EAAY,OAAO,OAAoE,CAAC,CAAE",
  "names": ["isDarkPreferred", "window", "withTheme", "Component", "props", "isDarkTheme", "setIsDarkTheme", "ye", "ue", "handleThemeChange", "currentTheme", "observer", "mutationsList", "mutation", "mediaQuery", "updateTheme", "currentToggleState", "osThemeChange", "p"]
}
