{"version":3,"file":"DeferredEmbed.ObVYO2TK.mjs","names":["useRef","useState","__esmMin","init_ssg_sandbox_shims","init_npm_react_18_3_1","_e","de","c","init_jsx_runtime","ce","window","addPropertyControls","init_framer_BWFVvmND","ControlType","RenderTarget","DeferredEmbed","props","isCanvas","ref","load","setLoad","shown","setShown","w","cleanups","done","go","t","delay","start","el","io","entries","afterLoad","events","opts","maxWait","id","style","html","fade","init_DeferredEmbed","p"],"sources":["https:/framerusercontent.com/modules/tPuTGbgfaGJS1PKjV0nB/rwPJZIvnxIK75FA07bOX/DeferredEmbed.js"],"sourcesContent":["import{jsx as _jsx}from\"react/jsx-runtime\";import{useEffect,useRef,useState}from\"react\";import{addPropertyControls,ControlType,RenderTarget}from\"framer\";/**\n * Loads an HTML embed late so heavy demo code stays out of page load\n * (better PageSpeed / LCP / Total Blocking Time), then fades it in.\n *\n * Start:\n * - After Load: once the page has loaded and the browser is idle\n * - On Interaction: first scroll, pointer move, touch or key press after\n *   load (falls back to \"Max Wait\" seconds if nobody interacts)\n * - In View: when the embed comes near the viewport\n *\n * @framerSupportedLayoutWidth any\n * @framerSupportedLayoutHeight any\n */export default function DeferredEmbed(props){const{html,title,start,delay,maxWait,fade,style}=props;const isCanvas=RenderTarget.current()===RenderTarget.canvas;const ref=useRef(null);const[load,setLoad]=useState(isCanvas);const[shown,setShown]=useState(isCanvas);useEffect(()=>{if(isCanvas||load)return;const w=window;const cleanups=[];let done=false;const go=()=>{if(done)return;done=true;cleanups.forEach(c=>c());const t=window.setTimeout(()=>setLoad(true),Math.max(0,delay)*1e3);cleanups.push(()=>window.clearTimeout(t));};if(start===\"In View\"){const el=ref.current;if(!el||typeof IntersectionObserver===\"undefined\")go();else{const io=new IntersectionObserver(entries=>{if(entries.some(e=>e.isIntersecting))go();},{rootMargin:\"300px 0px\"});io.observe(el);cleanups.push(()=>io.disconnect());}}else{const afterLoad=()=>{if(start===\"On Interaction\"){const events=[\"scroll\",\"pointermove\",\"pointerdown\",\"touchstart\",\"keydown\",\"wheel\"];const opts={passive:true,once:true};events.forEach(e=>window.addEventListener(e,go,opts));cleanups.push(()=>events.forEach(e=>window.removeEventListener(e,go,opts)));if(maxWait>0){const t=window.setTimeout(go,maxWait*1e3);cleanups.push(()=>window.clearTimeout(t));}}else if(typeof w.requestIdleCallback===\"function\"){const id=w.requestIdleCallback(go,{timeout:2e3});cleanups.push(()=>w.cancelIdleCallback?.(id));}else go();};if(document.readyState===\"complete\")afterLoad();else{window.addEventListener(\"load\",afterLoad,{once:true});cleanups.push(()=>window.removeEventListener(\"load\",afterLoad));}}return()=>cleanups.forEach(c=>c());},[]);return /*#__PURE__*/_jsx(\"div\",{ref:ref,style:{...style,position:\"relative\",width:\"100%\",height:\"100%\",overflow:\"hidden\"},children:load&&html?/*#__PURE__*/_jsx(\"iframe\",{title:title,srcDoc:html,loading:\"eager\",onLoad:()=>setShown(true),style:{position:\"absolute\",inset:0,width:\"100%\",height:\"100%\",border:\"none\",display:\"block\",opacity:shown?1:0,transition:`opacity ${fade}s cubic-bezier(0.23, 1, 0.32, 1)`}}):null});}DeferredEmbed.defaultProps={html:\"\",title:\"Morning Consult product demo\",start:\"After Load\",delay:0,maxWait:6,fade:.4};addPropertyControls(DeferredEmbed,{html:{type:ControlType.String,title:\"HTML\",displayTextArea:true},title:{type:ControlType.String,title:\"Title\",defaultValue:\"Morning Consult product demo\"},start:{type:ControlType.Enum,title:\"Start\",options:[\"After Load\",\"On Interaction\",\"In View\"],defaultValue:\"After Load\"},delay:{type:ControlType.Number,title:\"Extra Delay\",defaultValue:0,min:0,max:5,step:.1,unit:\"s\"},maxWait:{type:ControlType.Number,title:\"Max Wait\",defaultValue:6,min:0,max:20,step:.5,unit:\"s\",hidden:p=>p.start!==\"On Interaction\"},fade:{type:ControlType.Number,title:\"Fade\",defaultValue:.4,min:0,max:2,step:.05,unit:\"s\"}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"DeferredEmbed\",\"slots\":[],\"annotations\":{\"framerSupportedLayoutWidth\":\"any\",\"framerSupportedLayoutHeight\":\"any\",\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./DeferredEmbed.map"],"mappings":"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"}