{"version":3,"file":"AutoOpenForm.C8dJsmsD.mjs","names":["__esmMin","window","init_ssg_sandbox_shims","init_npm_react_18_3_1","ce","init_jsx_runtime","c","addPropertyControls","init_framer_D6uXRwWs","RenderTarget","ControlType","AutoOpenForm","props","isCanvas","enabled","oncePerVisit","STORAGE_KEY","done","startedAt","delayMs","mobileDelaySeconds","delaySeconds","minMs","minSeconds","baselineForms","timer","minTimer","observer","cleanup","onScroll","onVisible","markDone","findTrigger","list","triggerName","el","open","opts","fire","active","max","scrollPercent","elapsed","init_AutoOpenForm"],"sources":["https:/framerusercontent.com/modules/VSxGryV8YxD89mka5IJI/1krKsxYsHFOvRZ9K8Xx8/AutoOpenForm.js"],"sourcesContent":["import{jsx as _jsx}from\"react/jsx-runtime\";import{useEffect}from\"react\";import{addPropertyControls,ControlType,RenderTarget}from\"framer\";const STORAGE_KEY=\"asolar_autopopup_done\";/**\n * Öppnar offertformuläret automatiskt efter en stund eller efter scroll.\n * Den \"trycker\" på knappen med lagret-namnet i `triggerName`, så det är samma\n * formulär som när besökaren själv klickar.\n *\n * @framerSupportedLayoutWidth fixed\n * @framerSupportedLayoutHeight fixed\n */export default function AutoOpenForm(props){const{enabled=true,delaySeconds=30,mobileDelaySeconds=40,scrollPercent=50,minSeconds=10,triggerName=\"\\xd6ppna offert (hero)\",oncePerVisit=true}=props;const isCanvas=RenderTarget.current()===RenderTarget.canvas;useEffect(()=>{if(typeof window===\"undefined\"||isCanvas||!enabled)return;try{if(oncePerVisit&&window.sessionStorage.getItem(STORAGE_KEY))return;}catch(e){}let done=false;const startedAt=Date.now();const isMobile=window.innerWidth<810;const delayMs=(isMobile?mobileDelaySeconds:delaySeconds)*1e3;const minMs=minSeconds*1e3;const baselineForms=document.querySelectorAll(\"form\").length;let timer;let minTimer;let observer;const cleanup=()=>{window.clearTimeout(timer);window.clearTimeout(minTimer);window.removeEventListener(\"scroll\",onScroll);document.removeEventListener(\"visibilitychange\",onVisible);if(observer)observer.disconnect();};const markDone=()=>{if(done)return;done=true;try{window.sessionStorage.setItem(STORAGE_KEY,\"1\");}catch(e){}cleanup();};const findTrigger=()=>{const list=Array.from(document.querySelectorAll('[data-framer-name=\"'+triggerName+'\"]'));for(const el of list){if(el.getClientRects().length>0)return el;}return null;};const open=()=>{const el=findTrigger();if(!el)return false;const opts={bubbles:true,cancelable:true,composed:true,pointerId:1,pointerType:\"mouse\",isPrimary:true,button:0,buttons:1};el.dispatchEvent(new PointerEvent(\"pointerdown\",opts));el.dispatchEvent(new PointerEvent(\"pointerup\",{...opts,buttons:0}));window.setTimeout(()=>{if(document.querySelectorAll(\"form\").length<=baselineForms){el.click();}},400);return true;};const fire=()=>{if(done)return;if(document.hidden)return;// väntar tills fliken är synlig igen\nconst active=document.activeElement;if(active&&/^(INPUT|TEXTAREA|SELECT)$/.test(active.tagName))return;if(open())markDone();};const onVisible=()=>{if(!document.hidden&&Date.now()-startedAt>=delayMs)fire();};const onScroll=()=>{if(done)return;const max=document.documentElement.scrollHeight-window.innerHeight;if(max<=0)return;const pct=window.scrollY/max*100;if(pct<scrollPercent)return;const elapsed=Date.now()-startedAt;if(elapsed>=minMs){fire();}else if(minTimer===undefined){minTimer=window.setTimeout(()=>{minTimer=undefined;fire();},minMs-elapsed);}};// Om besökaren själv öppnar ett formulär behöver vi inte visa det automatiskt.\nobserver=new MutationObserver(()=>{if(document.querySelectorAll(\"form\").length>baselineForms)markDone();});observer.observe(document.body,{childList:true,subtree:true});timer=window.setTimeout(fire,delayMs);window.addEventListener(\"scroll\",onScroll,{passive:true});document.addEventListener(\"visibilitychange\",onVisible);return cleanup;},[enabled,delaySeconds,mobileDelaySeconds,scrollPercent,minSeconds,triggerName,oncePerVisit,isCanvas]);if(isCanvas){return /*#__PURE__*/_jsx(\"div\",{style:{width:\"100%\",height:\"100%\",display:\"flex\",alignItems:\"center\",justifyContent:\"center\",border:\"1px dashed rgb(120, 60, 240)\",borderRadius:8,color:\"rgb(120, 60, 240)\",background:\"rgba(120, 60, 240, 0.06)\",font:\"600 12px Inter, sans-serif\",textAlign:\"center\",padding:8,boxSizing:\"border-box\"},children:enabled?\"Auto-popup: \"+delaySeconds+\" s / \"+scrollPercent+\" % scroll\":\"Auto-popup (avst\\xe4ngd)\"});}return /*#__PURE__*/_jsx(\"div\",{\"aria-hidden\":\"true\",style:{width:1,height:1}});}addPropertyControls(AutoOpenForm,{enabled:{type:ControlType.Boolean,title:\"P\\xe5\",defaultValue:true},delaySeconds:{type:ControlType.Number,title:\"F\\xf6rdr\\xf6jning\",defaultValue:30,min:5,max:120,step:1,unit:\"s\"},mobileDelaySeconds:{type:ControlType.Number,title:\"F\\xf6rdr. mobil\",defaultValue:40,min:5,max:120,step:1,unit:\"s\"},scrollPercent:{type:ControlType.Number,title:\"Scroll\",defaultValue:50,min:10,max:100,step:5,unit:\"%\"},minSeconds:{type:ControlType.Number,title:\"Minst efter\",defaultValue:10,min:0,max:60,step:1,unit:\"s\"},triggerName:{type:ControlType.String,title:\"Knappens namn\",defaultValue:\"\\xd6ppna offert (hero)\"},oncePerVisit:{type:ControlType.Boolean,title:\"Bara en g\\xe5ng\",defaultValue:true}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"AutoOpenForm\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\",\"framerSupportedLayoutWidth\":\"fixed\",\"framerSupportedLayoutHeight\":\"fixed\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./AutoOpenForm.map"],"mappings":"A,gMAOG,SAAwBW,EAAa,EAAM,CAAC,GAAK,CAAC,UAAQ,GAAK,eAAa,GAAG,qBAAmB,GAAG,gBAAc,GAAG,aAAW,GAAG,cAAY,sBAAyB,eAAa,IAAMC,EAAYC,EAASJ,EAAa,QAAQ,IAAIA,EAAa,OAEioB,OAF1nBL,MAAc,CAAC,GAAUH,IAAS,QAAaY,GAAU,CAACC,EAAQ,OAAO,GAAG,CAAC,GAAGC,GAAcd,EAAO,eAAe,QAAQe,CAAW,EAAE,MAAO,MAAS,CAAC,CAAC,IAAIC,EAAK,GAAYC,EAAU,KAAK,IAAI,EAA6CC,GAA5BlB,EAAO,WAAW,IAA4BmB,EAAmBC,GAAc,IAAUC,EAAMC,EAAW,IAAUC,EAAc,SAAS,iBAAiB,MAAM,CAAC,CAAC,OAAWC,EAAUC,EAAaC,EAAeC,MAAY,CAAC3B,EAAO,aAAawB,CAAK,EAAExB,EAAO,aAAayB,CAAQ,EAAEzB,EAAO,oBAAoB,SAAS4B,CAAQ,EAAE,SAAS,oBAAoB,mBAAmBC,CAAS,EAAKH,GAASA,EAAS,WAAW,CAAE,EAAQI,MAAa,CAAC,GAAG,GAAY,GAAK,GAAK,GAAG,CAAC9B,EAAO,eAAe,QAAQe,EAAY,GAAG,CAAE,MAAS,CAAC,CAACY,EAAQ,CAA3E,CAA6E,EAAQI,MAAgB,CAAC,IAAMC,EAAK,MAAM,KAAK,SAAS,iBAAiB,sBAAsBC,EAAY,IAAI,CAAC,EAAE,IAAI,IAAMC,KAAMF,EAAM,GAAGE,EAAG,eAAe,CAAC,CAAC,OAAO,EAAE,OAAOA,EAAI,OAAO,IAAK,EAAQC,MAAS,CAAC,IAAMD,EAAGH,EAAY,EAAE,GAAG,CAACG,EAAG,MAAO,GAAM,IAAME,EAAK,CAAC,QAAQ,GAAK,WAAW,GAAK,SAAS,GAAK,UAAU,EAAE,YAAY,QAAQ,UAAU,GAAK,OAAO,EAAE,QAAQ,CAAC,EAAmO,OAAjOF,EAAG,cAAc,IAAI,aAAa,cAAcE,CAAI,CAAC,EAAEF,EAAG,cAAc,IAAI,aAAa,YAAY,CAAC,GAAGE,EAAK,QAAQ,CAAC,CAAC,CAAC,EAAEpC,EAAO,eAAe,CAAI,SAAS,iBAAiB,MAAM,CAAC,CAAC,QAAQuB,GAAeW,EAAG,MAAM,CAAG,EAAE,GAAG,EAAS,EAAK,EAAQG,MAAS,CAAgB,GAAZrB,GAAe,SAAS,OAAO,OACzoD,IAAMsB,EAAO,SAAS,cAAiBA,GAAQ,4BAA4B,KAAKA,EAAO,OAAO,GAAYH,EAAK,GAAEL,EAAS,CAAE,EAAQD,MAAc,CAAI,CAAC,SAAS,QAAQ,KAAK,IAAI,EAAEZ,GAAWC,GAAQmB,EAAK,CAAE,EAAQT,MAAa,CAAC,GAAGZ,EAAK,OAAO,IAAMuB,EAAI,SAAS,gBAAgB,aAAavC,EAAO,YAA8D,GAA/CuC,GAAK,GAAmBvC,EAAO,QAAQuC,EAAI,IAAWC,EAAc,OAAO,IAAMC,EAAQ,KAAK,IAAI,EAAExB,EAAawB,GAASpB,EAAOgB,EAAK,EAAWZ,IAAW,IAAA,KAAW,EAASzB,EAAO,eAAe,CAAC,EAAS,IAAA,GAAUqC,EAAK,CAAE,EAAEhB,EAAMoB,CAAO,EAAG,EAC1O,MAAjU,GAAS,IAAI,qBAAqB,CAAI,SAAS,iBAAiB,MAAM,CAAC,CAAC,OAAOlB,GAAcO,EAAS,CAAE,CAAC,EAAEJ,EAAS,QAAQ,SAAS,KAAK,CAAC,UAAU,GAAK,QAAQ,EAAI,CAAC,EAAE,EAAM1B,EAAO,WAAWqC,EAAKnB,CAAO,EAAElB,EAAO,iBAAiB,SAAS4B,EAAS,CAAC,QAAQ,EAAI,CAAC,EAAE,SAAS,iBAAiB,mBAAmBC,CAAS,EAASF,CAAQ,EAAE,CAACd,EAAQO,EAAaD,EAAmBqB,EAAclB,EAAWW,EAAYnB,EAAaF,CAAQ,CAAC,EAAKA,EAA8B,gBAAK,MAAM,CAAC,MAAM,CAAC,MAAM,OAAO,OAAO,OAAO,QAAQ,OAAO,WAAW,SAAS,eAAe,SAAS,OAAO,+BAA+B,aAAa,EAAE,MAAM,oBAAoB,WAAW,2BAA2B,KAAK,6BAA6B,UAAU,SAAS,QAAQ,EAAE,UAAU,YAAY,EAAE,SAASC,EAAQ,eAAeO,EAAa,QAAQoB,EAAc,YAAY,uBAA0B,CAAC,EAAuB,gBAAK,MAAM,CAAC,cAAc,OAAO,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,CAAE,C,oDAT5zB,EAAY,wBASizBlC,EAAoBI,EAAa,CAAC,QAAQ,CAAC,KAAKD,EAAY,QAAQ,MAAM,KAAQ,aAAa,EAAI,EAAE,aAAa,CAAC,KAAKA,EAAY,OAAO,MAAM,cAAoB,aAAa,GAAG,IAAI,EAAE,IAAI,IAAI,KAAK,EAAE,KAAK,GAAG,EAAE,mBAAmB,CAAC,KAAKA,EAAY,OAAO,MAAM,eAAkB,aAAa,GAAG,IAAI,EAAE,IAAI,IAAI,KAAK,EAAE,KAAK,GAAG,EAAE,cAAc,CAAC,KAAKA,EAAY,OAAO,MAAM,SAAS,aAAa,GAAG,IAAI,GAAG,IAAI,IAAI,KAAK,EAAE,KAAK,GAAG,EAAE,WAAW,CAAC,KAAKA,EAAY,OAAO,MAAM,cAAc,aAAa,GAAG,IAAI,EAAE,IAAI,GAAG,KAAK,EAAE,KAAK,GAAG,EAAE,YAAY,CAAC,KAAKA,EAAY,OAAO,MAAM,gBAAgB,aAAa,qBAAwB,EAAE,aAAa,CAAC,KAAKA,EAAY,QAAQ,MAAM,eAAkB,aAAa,EAAI,CAAC,CAAC,C"}