{
  "version": 3,
  "sources": ["ssg:https://framerusercontent.com/modules/xJXZDgMtfT1oB93VwT32/DGd893dzhOCMlGIfVqQ4/Session_modal_Override.js"],
  "sourcesContent": ["import{jsx as _jsx}from\"react/jsx-runtime\";import{useEffect,useState}from\"react\";import{addPropertyControls,ControlType}from\"framer\";import{createStore}from\"https://framer.com/m/framer/store.js@^1.0.0\";// Create a store to manage modal state\nconst useStore=createStore({modal:false});// Main modal function\nexport function sessionModal(OriginalComponent){return function Override(props){// const [store, setStore] = useStore()\n// const showModal = \"false\"\nconst[showModal,setShowModal]=useState(false);const[store,setStore]=useStore();useEffect(()=>{const hasSeenModal=sessionStorage.getItem(\"modalShown\");const isModalVisible=sessionStorage.getItem(\"modalIsVisible\");if(!hasSeenModal&&!isModalVisible){const timer=setTimeout(()=>{sessionStorage.setItem(\"modalShown\",\"true\");sessionStorage.setItem(\"modalIsVisible\",\"true\");setStore({modal:true});},3e4)// 30 second\n;return()=>clearTimeout(timer)// Cleanup function\n;}},[setStore]);console.log(store);return store.modal?/*#__PURE__*/_jsx(OriginalComponent,{...props}):null;// return <OriginalComponent {...props} />\n};}// Separate Close Button using the Store\nexport function CloseButton(Component){// Get store state and setter function\nreturn function Override(props){const[store,setStore]=useStore();useEffect(()=>{const hasSeenModal=sessionStorage.getItem(\"modalShown\");const isModalVisible=sessionStorage.getItem(\"modalIsVisible\");if(!hasSeenModal&&!isModalVisible){setStore({modal:true});}},[setStore]);return store.modal?/*#__PURE__*/_jsx(Component,{...props,onClick:()=>{sessionStorage.setItem(\"modalIsVisible\",\"false\");setStore({modal:false})// Set the store to hide modal\n;}}):null;};}// Add property controls (optional)\naddPropertyControls(sessionModal,{resetSession:{type:ControlType.Boolean,defaultValue:false,title:\"Reset Session\"}});\nexport const __FramerMetadata__ = {\"exports\":{\"CloseButton\":{\"type\":\"reactHoc\",\"name\":\"CloseButton\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"sessionModal\":{\"type\":\"reactHoc\",\"name\":\"sessionModal\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./Session_modal_Override.map"],
  "mappings": "gJACA,IAAMA,EAASC,EAAY,CAAC,MAAM,EAAK,CAAC,EACjC,SAASC,EAAaC,EAAkB,CAAC,OAAO,SAAkBC,EAAM,CAE/E,GAAK,CAACC,EAAUC,CAAY,EAAEC,EAAS,EAAK,EAAO,CAACC,EAAMC,CAAQ,EAAET,EAAS,EAAE,OAAAU,EAAU,IAAI,CAAC,IAAMC,EAAa,eAAe,QAAQ,YAAY,EAAQC,EAAe,eAAe,QAAQ,gBAAgB,EAAE,GAAG,CAACD,GAAc,CAACC,EAAe,CAAC,IAAMC,EAAM,WAAW,IAAI,CAAC,eAAe,QAAQ,aAAa,MAAM,EAAE,eAAe,QAAQ,iBAAiB,MAAM,EAAEJ,EAAS,CAAC,MAAM,EAAI,CAAC,CAAE,EAAE,GAAG,EAC1Y,MAAM,IAAI,aAAaI,CAAK,CAC5B,CAAC,EAAE,CAACJ,CAAQ,CAAC,EAAE,QAAQ,IAAID,CAAK,EAASA,EAAM,MAAmBM,EAAKX,EAAkB,CAAC,GAAGC,CAAK,CAAC,EAAE,IACtG,CAAE,CACK,SAASW,EAAYC,EAAU,CACtC,OAAO,SAAkBZ,EAAM,CAAC,GAAK,CAACI,EAAMC,CAAQ,EAAET,EAAS,EAAE,OAAAU,EAAU,IAAI,CAAC,IAAMC,EAAa,eAAe,QAAQ,YAAY,EAAQC,EAAe,eAAe,QAAQ,gBAAgB,EAAK,CAACD,GAAc,CAACC,GAAgBH,EAAS,CAAC,MAAM,EAAI,CAAC,CAAG,EAAE,CAACA,CAAQ,CAAC,EAASD,EAAM,MAAmBM,EAAKE,EAAU,CAAC,GAAGZ,EAAM,QAAQ,IAAI,CAAC,eAAe,QAAQ,iBAAiB,OAAO,EAAEK,EAAS,CAAC,MAAM,EAAK,CAAC,CAC3Z,CAAC,CAAC,EAAE,IAAK,CAAE,CACZQ,EAAoBf,EAAa,CAAC,aAAa,CAAC,KAAKgB,EAAY,QAAQ,aAAa,GAAM,MAAM,eAAe,CAAC,CAAC",
  "names": ["useStore", "createStore", "sessionModal", "OriginalComponent", "props", "showModal", "setShowModal", "ye", "store", "setStore", "ue", "hasSeenModal", "isModalVisible", "timer", "p", "CloseButton", "Component", "addPropertyControls", "ControlType"]
}
