{"version":3,"file":"HotReloadForm.CXuxIolC.mjs","names":["u","p"],"sources":["https:/framerusercontent.com/modules/uM9lDQC7ArO8a7wQhXCU/j6Uy45DhokIpDDOslZW6/HotReloadForm.js"],"sourcesContent":["import{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import*as React from\"react\";import{addPropertyControls,ControlType}from\"framer\";import{createPortal}from\"react-dom\";export default function HotReloadForm({aspect,maxWidth,heroContent,placeholderImgDesktop=\"https://storage.googleapis.com/saltfish-public/test/Anon2.png\",bleedOffsetTop=64}){const[img,setImg]=React.useState(null);const[loading,setLoading]=React.useState(false);const[value,setValue]=React.useState(\"\");const[error,setError]=React.useState(null);const[domain,setDomain]=React.useState(null);const[submittedUrl,setSubmittedUrl]=React.useState(null);const[iframeReady,setIframeReady]=React.useState(false);const[embedFailed,setEmbedFailed]=React.useState(false);// --- Option A refs (root + hero font source)\nconst rootRef=React.useRef(null);const heroFontRef=React.useRef(null);// progress overlay (0..1)\nconst[progress,setProgress]=React.useState(0);const[progressVisible,setProgressVisible]=React.useState(false);const PROGRESS_MS=12e3;const cardRef=React.useRef(null);const[overlayTop,setOverlayTop]=React.useState(0);const[imgAspect,setImgAspect]=React.useState(null)// width / height\n;const[immersiveHeightPx,setImmersiveHeightPx]=React.useState(null);React.useEffect(()=>{if(typeof window===\"undefined\")return;const mq=window.matchMedia(\"(max-width: 640px)\");if(!(mq.matches&&!!img))return;const update=()=>{const el=cardRef.current;if(!el)return;const rect=el.getBoundingClientRect();setOverlayTop(Math.max(0,rect.top+window.scrollY-bleedOffsetTop));};update();window.addEventListener(\"scroll\",update,{passive:true});window.addEventListener(\"resize\",update);return()=>{window.removeEventListener(\"scroll\",update);window.removeEventListener(\"resize\",update);};},[img,bleedOffsetTop]);// Mobile viewport detection to drive immersive layout (no initial flash)\nconst[isMobileViewport,setIsMobileViewport]=React.useState(()=>{if(typeof window===\"undefined\")return false;try{return window.matchMedia(\"(max-width: 640px)\").matches;}catch{return false;}});React.useEffect(()=>{if(typeof window===\"undefined\")return;const mq=window.matchMedia(\"(max-width: 640px)\");const handler=e=>setIsMobileViewport(\"matches\"in e?e.matches:e.matches);handler(mq);if(\"addEventListener\"in mq)mq.addEventListener(\"change\",handler);else mq.addListener(handler);return()=>{if(\"removeEventListener\"in mq)mq.removeEventListener(\"change\",handler);else mq.removeListener(handler);};},[]);const[hydrated,setHydrated]=React.useState(false);React.useLayoutEffect(()=>setHydrated(true),[]);React.useEffect(()=>{if(!(isMobileViewport&&img&&imgAspect))return;const compute=()=>{const vw=Math.max(document.documentElement.clientWidth||0,window.innerWidth||0);const h=Math.round(vw/imgAspect);setImmersiveHeightPx(`${h}px`);};compute();window.addEventListener(\"resize\",compute);return()=>window.removeEventListener(\"resize\",compute);},[isMobileViewport,img,imgAspect]);const normalizeUrl=raw=>{let u=raw.trim();if(!/^https?:\\/\\//i.test(u))u=\"https://\"+u;return u;};// progress animation; completes immediately once img is set\nconst startProgress=React.useCallback(()=>{setProgressVisible(true);setProgress(0);const t0=performance.now();let raf=0;const tick=t=>{const elapsed=t-t0;const frac=Math.min(1,elapsed/PROGRESS_MS);const eased=1-Math.pow(1-frac,2)// easeOutQuad\n;const SOFT_CAP=.985;const target=Math.min(SOFT_CAP,eased);setProgress(p=>target>p?target:p);if(!img&&target<SOFT_CAP)raf=requestAnimationFrame(tick);};raf=requestAnimationFrame(tick);return()=>cancelAnimationFrame(raf);},[img]);React.useEffect(()=>{if(!img||!progressVisible)return;setProgress(1);const to=setTimeout(()=>setProgressVisible(false),400);return()=>clearTimeout(to);},[img,progressVisible]);React.useEffect(()=>{if(!img)return;setIframeReady(false);setEmbedFailed(false);const t=setTimeout(()=>setEmbedFailed(true),4e3);return()=>clearTimeout(t);},[img]);// --- Option A: copy computed hero font into --sf-font once fonts are ready\nReact.useEffect(()=>{const updateFontVar=()=>{const el=heroFontRef.current;const root=rootRef.current;if(!el||!root)return;const ff=getComputedStyle(el).fontFamily;if(ff)root.style.setProperty(\"--sf-font\",ff);};updateFontVar();// Re-run when web fonts finish loading (where supported)\nconst anyDoc=document;if(anyDoc.fonts&&typeof anyDoc.fonts.ready?.then===\"function\"){anyDoc.fonts.ready.then(updateFontVar).catch(()=>{});}// Also observe inline style changes on the hero (Framer swaps variants sometimes)\nconst mo=new MutationObserver(updateFontVar);if(heroFontRef.current)mo.observe(heroFontRef.current,{attributes:true,attributeFilter:[\"style\",\"class\"]});return()=>mo.disconnect();},[hydrated,heroContent]);const submit=async raw=>{const trimmed=normalizeUrl(raw);setError(null);setLoading(true);setDomain(null);const stopProgress=startProgress();try{const isMobile=navigator.userAgentData?.mobile??/Mobi|Android/i.test(navigator.userAgent);const r=await fetch(\"https://n8n.saltfish.ai/webhook/screenshot\",{method:\"POST\",headers:{\"Content-Type\":\"application/json\"},body:JSON.stringify({url:trimmed,viewport:{width:Math.max(document.documentElement.clientWidth||0,window.innerWidth||0),height:Math.max(document.documentElement.clientHeight||0,window.innerHeight||0),dpr:window.devicePixelRatio||1},isMobile})});const dRaw=await r.json();const d=Array.isArray(dRaw)?dRaw[0]:dRaw;const imgUrl=d?.imageUrl;if(imgUrl){const finalUrl=imgUrl+(imgUrl.includes(\"?\")?\"&\":\"?\")+\"v=\"+Date.now();const preload=new Image;preload.onload=()=>{setImg(finalUrl);if(preload.naturalWidth&&preload.naturalHeight){setImgAspect(preload.naturalWidth/preload.naturalHeight);}try{const host=new URL(trimmed).hostname.replace(/^www\\./,\"\");setDomain(host);}catch{}setLoading(false);};preload.onerror=()=>{setError(\"Could not load preview\");setLoading(false);};preload.src=finalUrl;}else{setError(\"Screenshot not ready\");setLoading(false);}}catch(err){console.error(err);setError(\"Oops, there was an error with your domain.\");setProgressVisible(false);setProgress(0);setSubmittedUrl(null);setLoading(false);setImg(null);setDomain(null);setValue(\"\");}finally{stopProgress?.();}};const onSubmit=e=>{e?.preventDefault();if(!value.trim())return setError(\"Please enter a website URL\");const normalized=normalizeUrl(value);setSubmittedUrl(normalized);setValue(\"\");submit(normalized);};const toPreview=()=>{const u=submittedUrl||normalizeUrl(value||\"\");const slug=(()=>{try{return new URL(u).hostname.replace(/^www\\./,\"\");}catch{return\"preview\";}})();const target=`/preview?u=${encodeURIComponent(u)}&img=${encodeURIComponent(img||\"\")}&slug=${slug}`;location.assign(target);};const showShimmer=(loading||progressVisible)&&!img;const wrapperMaxWidth=maxWidth;const isImmersiveMobile=isMobileViewport&&!!img;const cardDims={aspectRatio:aspect};const isPre=!img;return /*#__PURE__*/_jsxs(\"div\",{ref:rootRef,className:`sf-scope ${isPre?\"pre\":\"\"}`,style:{width:\"100%\",height:\"100%\",display:\"grid\",placeItems:\"start\"},children:[/*#__PURE__*/_jsxs(\"div\",{style:{width:\"100%\",maxWidth:wrapperMaxWidth,marginInline:\"auto\",transition:hydrated?\"max-width 280ms ease\":\"none\"},children:[/*#__PURE__*/_jsxs(\"div\",{ref:cardRef,style:{position:\"relative\",width:\"100%\",overflow:\"hidden\",background:\"white\",border:isImmersiveMobile?\"0\":\"10px solid rgba(255,255,255,0.4)\",boxSizing:\"border-box\",backgroundClip:\"padding-box\",isolation:\"isolate\",transition:hydrated?\"height 280ms ease\":\"none\",...cardDims},children:[!img&&/*#__PURE__*/_jsx(\"img\",{src:placeholderImgDesktop,alt:\"\",\"aria-hidden\":\"true\",decoding:\"async\",loading:\"eager\",style:{position:\"absolute\",inset:0,width:\"100%\",height:\"100%\",objectFit:\"cover\",zIndex:0}}),!img&&/*#__PURE__*/_jsx(\"div\",{style:{position:\"absolute\",inset:0,display:\"grid\",placeItems:\"center\",padding:16,zIndex:2,pointerEvents:\"none\"},children:/*#__PURE__*/_jsx(\"div\",{ref:heroFontRef,className:\"hero-slot\",style:{position:\"absolute\",left:\"50%\",transform:\"translateX(-50%)\",width:\"min(82%, 1100px)\",maxWidth:\"100%\",pointerEvents:\"auto\",display:\"grid\",placeItems:\"center\",textAlign:\"center\"},children:heroContent?/*#__PURE__*/_jsx(\"div\",{style:{width:\"100%\",marginInline:\"auto\",textAlign:\"center\",display:\"grid\",justifyItems:\"center\",maxWidth:\"100%\"},children:heroContent}):/*#__PURE__*/_jsxs(\"div\",{style:{textAlign:\"center\",color:\"#0b0b0c\",fontFamily:\"Uncut Sans\",lineHeight:1.05,fontWeight:800,letterSpacing:\"-0.01em\",fontSize:\"var(--fs-hero)\"},children:[/*#__PURE__*/_jsx(\"div\",{children:\"Book more demos\"}),/*#__PURE__*/_jsx(\"div\",{children:\"with interactive\"}),/*#__PURE__*/_jsx(\"div\",{children:\"video on your site\"})]})})}),showShimmer&&/*#__PURE__*/_jsx(\"div\",{style:{position:\"absolute\",inset:0,background:\"linear-gradient(90deg, rgba(255,255,255,0) 25%, rgba(255,255,255,0.55) 37%, rgba(255,255,255,0) 63%)\",backgroundSize:\"400% 100%\",animation:\"shimmer 1.2s infinite\",zIndex:1,pointerEvents:\"none\"}}),img&&!isImmersiveMobile&&/*#__PURE__*/_jsx(\"img\",{src:img,alt:\"Preview\",style:{position:\"absolute\",inset:0,width:\"100%\",height:\"100%\",objectFit:\"cover\"}}),!img&&/*#__PURE__*/_jsx(\"div\",{style:{position:\"absolute\",inset:0,display:\"grid\",placeItems:\"center\",zIndex:3,pointerEvents:\"none\",padding:16,transform:\"translateY(var(--form-offset))\"},children:/*#__PURE__*/_jsx(\"div\",{style:{position:\"relative\",width:\"min(680px, 94%)\"},children:/*#__PURE__*/_jsxs(\"div\",{style:{position:\"relative\",width:\"100%\",border:\"1px solid #121212\",overflow:\"visible\",pointerEvents:\"auto\",background:\"transparent\"},children:[progressVisible&&/*#__PURE__*/_jsx(\"div\",{style:{position:\"absolute\",inset:0,background:\"#ffffff\",zIndex:0},\"aria-hidden\":true,children:/*#__PURE__*/_jsx(\"div\",{style:{height:\"100%\",width:`${Math.round(progress*100)}%`,transition:\"width 160ms linear\",willChange:\"width\",background:\"#111\"}})}),progressVisible&&/*#__PURE__*/_jsx(\"div\",{style:{position:\"absolute\",inset:0,display:\"grid\",placeItems:\"center\",zIndex:2,pointerEvents:\"none\"},\"aria-hidden\":true,children:/*#__PURE__*/_jsx(\"div\",{style:{fontWeight:500,fontSize:\"var(--fs-input)\",color:\"#ffffff\",textAlign:\"center\",lineHeight:1,padding:\"2px 16px\",whiteSpace:\"nowrap\",textOverflow:\"ellipsis\",overflow:\"visible\"},children:\"Generating your demo\"})}),/*#__PURE__*/_jsxs(\"form\",{onSubmit:onSubmit,style:{position:\"relative\",display:\"flex\",gap:0,background:\"transparent\",zIndex:1},children:[/*#__PURE__*/_jsx(\"input\",{value:value,onChange:e=>setValue(e.target.value),placeholder:progressVisible?\"\":\"Enter your website\",disabled:loading||progressVisible,\"aria-busy\":loading||progressVisible,style:{flex:1,minWidth:0,padding:\"var(--pad-input-y) var(--pad-input-x)\",border:\"none\",outline:\"none\",fontSize:\"var(--fs-input)\",fontWeight:500,background:progressVisible?\"transparent\":\"#ffffff\",color:\"#121212\"}}),!progressVisible&&/*#__PURE__*/_jsx(\"button\",{type:\"submit\",disabled:loading,className:\"cta cta--flat\",style:{padding:\"var(--pad-btn-y) var(--pad-btn-x)\",border:\"none\",borderLeft:\"1px solid #121212\",color:\"white\",cursor:loading?\"not-allowed\":\"pointer\",fontWeight:600,fontSize:\"var(--fs-btn)\",backgroundColor:\"#111\"},children:loading?\"Generating…\":\"Generate demo\"})]}),error&&/*#__PURE__*/_jsx(\"div\",{style:{position:\"absolute\",left:4,top:\"calc(100% + 6px)\",fontSize:14,fontWeight:500,color:\"#b00020\",textAlign:\"left\",pointerEvents:\"none\",whiteSpace:\"nowrap\"},children:error})]})})}),img&&(isImmersiveMobile?/*#__PURE__*/createPortal(/*#__PURE__*/_jsx(\"div\",{style:{position:\"absolute\",top:overlayTop,left:0,width:\"100vw\",height:immersiveHeightPx||`calc(100vh - ${bleedOffsetTop}px)`,zIndex:9999,background:\"#fff\"},children:/*#__PURE__*/_jsx(\"iframe\",{src:(()=>{const u=submittedUrl||normalizeUrl(value||\"\");const slug=(()=>{try{return new URL(u).hostname.replace(/^www\\./,\"\");}catch{return\"preview\";}})();return`/preview?u=${encodeURIComponent(u)}&img=${encodeURIComponent(img||\"\")}&slug=${slug}`;})(),title:\"Interactive preview\",style:{position:\"absolute\",inset:0,width:\"100%\",height:\"100%\",border:0,opacity:iframeReady?1:0,transition:\"opacity 300ms ease\"},allow:\"autoplay; fullscreen; clipboard-read; clipboard-write\",referrerPolicy:\"no-referrer-when-downgrade\",onLoad:()=>{setIframeReady(true);setEmbedFailed(false);}})}),document.body):/*#__PURE__*/_jsx(\"div\",{style:{position:\"absolute\",inset:0,zIndex:4},children:/*#__PURE__*/_jsx(\"iframe\",{src:(()=>{const u=submittedUrl||normalizeUrl(value||\"\");const slug=(()=>{try{return new URL(u).hostname.replace(/^www\\./,\"\");}catch{return\"preview\";}})();return`/preview?u=${encodeURIComponent(u)}&img=${encodeURIComponent(img||\"\")}&slug=${slug}`;})(),title:\"Interactive preview\",style:{position:\"absolute\",inset:0,width:\"100%\",height:\"100%\",border:\"0\",opacity:iframeReady?1:0,transition:\"opacity 300ms ease\"},allow:\"autoplay; fullscreen; clipboard-read; clipboard-write\",referrerPolicy:\"no-referrer-when-downgrade\",onLoad:()=>{setIframeReady(true);setEmbedFailed(false);}})}))]}),img&&/*#__PURE__*/_jsx(\"div\",{style:{marginTop:12,textAlign:\"center\",fontSize:14,color:\"#222222\"},children:\"Don’t see any video? Make sure to disable your ad blocker.\"}),domain&&!img&&/*#__PURE__*/_jsxs(\"div\",{style:{display:\"inline-flex\",alignItems:\"center\",gap:6,padding:\"6px 10px\",background:\"#f4f4f5\",borderRadius:999,marginTop:8,fontSize:\"var(--fs-badge)\"},children:[/*#__PURE__*/_jsx(\"span\",{style:{width:6,height:6,background:\"#10b981\",borderRadius:999}}),domain]})]}),/*#__PURE__*/_jsx(\"style\",{children:`\n        /* Typography & spacing (scoped) */\n        .sf-scope,\n        .sf-scope input,\n        .sf-scope button,\n        .sf-scope select,\n        .sf-scope textarea {\n          /* Use the computed hero font if available; otherwise fall back */\n          font-family: var(--sf-font, \"Uncut Sans\", ui-sans-serif, system-ui, -apple-system, \"Segoe UI\", Roboto, Arial, sans-serif);\n          font-synthesis-weight: none;\n          -webkit-font-smoothing: antialiased;\n          -moz-osx-font-smoothing: grayscale;\n        }\n        /* Make form controls actually inherit on all browsers */\n        .sf-scope input,\n        .sf-scope button,\n        .sf-scope textarea,\n        .sf-scope select {\n          font: inherit;\n          font-family: inherit;\n        }\n\n        .sf-scope{\n          --fs-placeholder: 24px;\n          --fs-hero: 58px;\n          --fs-input: 16px;\n          --fs-btn: 16px;\n          --fs-cta: 22px;\n          --fs-badge: 12px;\n          --pad-input-y: 24px;\n          --pad-btn-y: 20px;\n          --pad-input-x: 24px;\n          --pad-btn-x: 24px;\n          --pad-cta-y: 18px;\n          --hero-offset: 2%;\n          --form-offset: 28%;\n        }\n\n        /* Border-box for predictable sizing */\n        .sf-scope, .sf-scope * , .sf-scope *::before, .sf-scope *::after { box-sizing: border-box; }\n\n        @media (max-width:1150px){\n          .sf-scope{\n            --fs-placeholder: 18px;\n            --fs-hero: 38px;\n            --fs-input: 16px;\n            --fs-btn: 12px;\n            --fs-cta: 18px;\n            --fs-badge: 11px;\n            --pad-input-y: 16px;\n            --pad-btn-y: 16px;\n            --pad-input-x: 20px;\n            --pad-btn-x: 20px;\n            --pad-cta-y: 14px;\n            --hero-offset: 1%;\n            --form-offset: 28%;\n          }\n        }\n\n        @keyframes shimmer {\n          0% { background-position: 0% 0; }\n          100% { background-position: -135% 0; }\n        }\n\n        /* CTA styling */\n        .cta {\n          background-image: linear-gradient(55deg, #284bd9 0 50%, #111 50% 100%);\n          background-size: 200% 200%;\n          background-position: 100% 0;\n          transition: background-position 400ms ease, transform 160ms ease, font-size 200ms ease;\n          box-shadow: none;\n        }\n        .cta:hover { background-position: 0 100%; }\n        .cta--flat:hover, .cta--flat:active { transform: none; }\n        .cta--raise:hover { background-position: 0 100%; transform: scale(1.10); }\n        .cta--raise:active { transform: translateY(0) scale(0.995); }\n\n        .cta:disabled {\n          opacity: .65;\n          cursor: not-allowed;\n          background: #111 !important;\n          background-image: none !important;\n          transform: none;\n        }\n\n        /* Input placeholder styling */\n        .sf-scope input::placeholder {\n          color: #0b0b0c;\n          font-weight: 500;\n          opacity: 1;\n        }\n        .sf-scope input[aria-busy=\"true\"]::placeholder { color: transparent !important; }\n      `})]});}addPropertyControls(HotReloadForm,{aspect:{type:ControlType.String,defaultValue:\"16 / 10\",title:\"Aspect\"},placeholderImgDesktop:{type:ControlType.String,title:\"Placeholder Image\",defaultValue:\"https://storage.googleapis.com/saltfish-public/test/Anon2.png\"},bleedOffsetTop:{type:ControlType.Number,defaultValue:110,title:\"Nav Offset (px)\"},maxWidth:{type:ControlType.String,defaultValue:\"980px\"},heroContent:{type:ControlType.ComponentInstance,title:\"Hero Content\"}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"HotReloadForm\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./HotReloadForm.map"],"mappings":"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"}