{"version":3,"file":"Embed.CVFGrpCu.mjs","names":["useMemo","useRef","useState","useState","useRef"],"sources":["https:/framerusercontent.com/modules/CpCSUBSn3CVLQfiPBv9e/BlgOk6grWakGGrueXvFa/aRNVnaLSp.js","https:/framerusercontent.com/modules/Nno4V2toanLDA34WyaDU/Lf8lOgmGVvGLIf45ojAV/Highlights_mobile.js","https:/framerusercontent.com/modules/o1PI5S8YtkA5bP5g4dFz/s801VqobGI0Gkh3K9b41/Embed.js"],"sourcesContent":["// Generated by Framer (6ca5d98)\nimport{jsx as _jsx}from\"react/jsx-runtime\";import{addPropertyControls,ControlType,cx,motion,withCSS}from\"framer\";import*as React from\"react\";import{forwardRef}from\"react\";const mask='url(\\'data:image/svg+xml,<svg display=\"block\" role=\"presentation\" viewBox=\"0 0 24 24\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M 4.53 9.85 C 5.3 8.46 6.78 7.64 7.64 6.41 C 8.55 5.12 8.04 2.71 5.46 2.71 C 3.77 2.71 2.94 3.99 2.59 5.05 L 0 3.96 C 0.71 1.83 2.64 0 5.45 0 C 7.8 0 9.41 1.07 10.23 2.41 C 10.93 3.56 11.34 5.71 10.26 7.31 C 9.06 9.08 7.91 9.62 7.29 10.76 C 7.04 11.22 6.94 11.52 6.94 13 L 4.05 13 C 4.04 12.22 3.92 10.95 4.53 9.85 Z M 7.46 17 C 7.46 18.1 6.56 19 5.46 19 C 4.36 19 3.46 18.1 3.46 17 C 3.46 15.9 4.36 15 5.46 15 C 6.56 15 7.46 15.9 7.46 17 Z\" fill=\"var(--esondr, rgb(0,0,0))\" height=\"19px\" id=\"Y00TZTuwa\" transform=\"translate(6.539 2.5)\" width=\"10.922469778199419px\"/></svg>\\') alpha no-repeat center / auto var(--framer-icon-mask-mode, add), var(--framer-icon-mask, none)';const SVG=/*#__PURE__*/forwardRef((props,ref)=>{const{animated,layoutId,children,...rest}=props;return animated?/*#__PURE__*/_jsx(motion.div,{...rest,layoutId:layoutId,ref:ref}):/*#__PURE__*/_jsx(\"div\",{...rest,ref:ref});});const getProps=({fill,height,id,width,...props})=>{return{...props,K5AAorpEW:fill??props.K5AAorpEW??\"rgb(0, 0, 0)\"};};const Component=/*#__PURE__*/React.forwardRef(function(props,ref){const{style,className,layoutId,variant,K5AAorpEW,...restProps}=getProps(props);return /*#__PURE__*/_jsx(SVG,{...restProps,className:cx(\"framer-pirrw\",className),layoutId:layoutId,ref:ref,style:{\"--esondr\":K5AAorpEW,...style}});});const css=[`.framer-pirrw { -webkit-mask: ${mask}; aspect-ratio: 1; background-color: var(--esondr); mask: ${mask}; width: 24px; }`];/**\n * This is a generated Framer component.\n * @framerIntrinsicWidth 24\n * @framerIntrinsicHeight 24\n * @framerSupportedLayoutWidth any-prefer-fixed\n * @framerSupportedLayoutHeight any-prefer-fixed\n * @framerVariables {\"K5AAorpEW\":\"fill\"}\n * @framerImmutableVariables true\n * @framerVector {\"name\":\"Question Mark\",\"color\":{\"type\":\"variable\",\"value\":\"esondr\"},\"set\":{\"localId\":\"vectorSet/DnLsXE00W\",\"id\":\"DnLsXE00W\",\"moduleId\":\"JIScivAkNLgXrcOUxHXD\"}}\n * @framerDisableUnlink true\n */const Icon=withCSS(Component,css,\"framer-pirrw\");Icon.displayName=\"Question Mark\";export default Icon;addPropertyControls(Icon,{K5AAorpEW:{defaultValue:\"rgb(0, 0, 0)\",hidden:false,title:\"Fill\",type:ControlType.Color}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"Icon\",\"slots\":[],\"annotations\":{\"framerIntrinsicWidth\":\"24\",\"framerVector\":\"{\\\"name\\\":\\\"Question Mark\\\",\\\"color\\\":{\\\"type\\\":\\\"variable\\\",\\\"value\\\":\\\"esondr\\\"},\\\"set\\\":{\\\"localId\\\":\\\"vectorSet/DnLsXE00W\\\",\\\"id\\\":\\\"DnLsXE00W\\\",\\\"moduleId\\\":\\\"JIScivAkNLgXrcOUxHXD\\\"}}\",\"framerContractVersion\":\"1\",\"framerSupportedLayoutHeight\":\"any-prefer-fixed\",\"framerIntrinsicHeight\":\"24\",\"framerImmutableVariables\":\"true\",\"framerVariables\":\"{\\\"K5AAorpEW\\\":\\\"fill\\\"}\",\"framerSupportedLayoutWidth\":\"any-prefer-fixed\",\"framerDisableUnlink\":\"true\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","import{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{useEffect,useMemo,useRef,useState}from\"react\";/* -------- helpers -------- */const isLikelyIOS=()=>typeof navigator!==\"undefined\"&&/iPhone|iPad|iPod/i.test(navigator.userAgent);const isSmallScreen=()=>typeof window!==\"undefined\"&&window.innerWidth<=820;/** Wrap Framer-decorated nodes with <mark><span>… */function setupHighlightWrap(root){const targets=root.querySelectorAll(`[style*=\"--framer-text-decoration\"]`);targets.forEach(el=>{if(el?.dataset?.hlWrapped)return;el.dataset.hlWrapped=\"1\";el.style.removeProperty(\"--framer-text-decoration\");const mark=document.createElement(\"mark\");const span=document.createElement(\"span\");const parent=el.parentNode;if(!parent)return;parent.insertBefore(mark,el);mark.appendChild(el);const children=Array.from(el.childNodes);children.forEach(n=>span.appendChild(n));el.appendChild(span);});}/** Observe marks and toggle .hl-on (class-based, iOS-safe) */function observeMarks(root,options){const marks=root.querySelectorAll(\"mark\");// No IO? Show immediately.\nif(!(\"IntersectionObserver\"in window)){marks.forEach(m=>m.classList.add(\"hl-on\"));return{disconnect:()=>{}};}const io=new IntersectionObserver(entries=>{entries.forEach(entry=>{const m=entry.target;if(entry.isIntersecting){m.classList.add(\"hl-on\");}else{m.classList.remove(\"hl-on\");}});},{root:null,rootMargin:\"0px 0px -20% 0px\",threshold:[0,.1,.25,.5,.75,1],...options});marks.forEach(m=>io.observe(m));return io;}/** Merge inline styles */function mergeStyles(a,b){if(!a)return b;if(!b)return a;return{...a,...b};}/** Stable scope class */function useScopeClass(prefix=\"hl-scope\"){return useMemo(()=>`${prefix}-${Math.random().toString(36).slice(2,9)}`,[]);}/* ===============================\n   Variant 1 — PAINT SWIPE\n   =============================== */export function withHighlightColor1(Wrapped){return props=>{const scope=useScopeClass(\"hl1\");const rootRef=useRef(null);const[ready,setReady]=useState(false);useEffect(()=>{if(!rootRef.current)return;const root=rootRef.current;let cleanup=()=>{};const raf=requestAnimationFrame(()=>{setupHighlightWrap(root);setReady(true);const obs=observeMarks(root);cleanup=()=>obs.disconnect?.();// iOS/small-screen failsafe so you never see a single “dot”\nsetTimeout(()=>{if(!(isLikelyIOS()||isSmallScreen()))return;root.querySelectorAll(\"mark\").forEach(m=>{if(!m.classList.contains(\"hl-on\"))m.classList.add(\"hl-on\");});},180);});return()=>{cancelAnimationFrame(raf);cleanup();};},[props]);return /*#__PURE__*/_jsxs(\"div\",{ref:rootRef,className:scope,children:[/*#__PURE__*/_jsx(\"style\",{children:`\n.${scope} {\n  --highlight: #e61d2b;\n  --hl-text: #ffffff;\n  --hl-speed: 900ms;\n}\n\n/* base */\n.${scope} mark {\n  position: relative;\n  background: transparent;\n}\n.${scope} mark > span {\n  position: relative;\n  z-index: 2;\n  color: var(--hl-text);\n}\n\n/* PAINT SWIPE — start hidden to avoid the “dot” */\n.${scope} mark::before{\n  content:\"\";\n  position:absolute;\n  left:-.18em; right:-.18em;\n  top:60%;\n  height:.62em;\n  transform-origin:left center;\n  transform: skewX(-7deg) scaleX(0.01);\n  opacity: 0;\n  transition: transform var(--hl-speed) cubic-bezier(.2,.8,.2,1),\n              opacity   var(--hl-speed) ease-out;\n  background:\n    radial-gradient(.55em .34em at .4em 50%, var(--highlight) 98%, transparent 100%) left center / .95em 100% no-repeat,\n    radial-gradient(.55em .34em at calc(100% - .4em) 50%, var(--highlight) 98%, transparent 100%) right center / .95em 100% no-repeat,\n    linear-gradient(var(--highlight), var(--highlight));\n  border-radius:.2em;\n  filter: saturate(1.05) contrast(1.05);\n  box-shadow: 0 .02em .35em rgba(230, 29, 43, 0.4);\n}\n.${scope} mark.hl-on::before{\n  transform: skewX(-7deg) scaleX(1);\n  opacity: 1;\n}\n@supports (color: color-mix(in srgb, white, black)) {\n  .${scope} mark::before{\n    box-shadow: 0 .02em .35em color-mix(in srgb, var(--highlight) 40%, transparent);\n  }\n}\n        `}),/*#__PURE__*/_jsx(Wrapped,{...props,style:mergeStyles(props.style,!ready?{opacity:.001}:undefined)})]});};}/* ===============================\n   Variant 2 — NEON GLOW UNDERLINE\n   =============================== */export function withHighlightColor2(Wrapped){return props=>{const scope=useScopeClass(\"hl2\");const rootRef=useRef(null);const[ready,setReady]=useState(false);useEffect(()=>{if(!rootRef.current)return;const root=rootRef.current;let cleanup=()=>{};const raf=requestAnimationFrame(()=>{setupHighlightWrap(root);setReady(true);const obs=observeMarks(root);cleanup=()=>obs.disconnect?.();setTimeout(()=>{if(!(isLikelyIOS()||isSmallScreen()))return;root.querySelectorAll(\"mark\").forEach(m=>{if(!m.classList.contains(\"hl-on\"))m.classList.add(\"hl-on\");});},180);});return()=>{cancelAnimationFrame(raf);cleanup();};},[props]);return /*#__PURE__*/_jsxs(\"div\",{ref:rootRef,className:scope,children:[/*#__PURE__*/_jsx(\"style\",{children:`\n.${scope}{\n  --highlight: #ff1f3d;\n  --hl-text: #ffffff;\n  --hl-speed: 800ms;\n}\n\n/* base */\n.${scope} mark{\n  position: relative;\n  background: transparent;\n}\n.${scope} mark > span{\n  position: relative;\n  z-index: 2;\n  color: var(--hl-text);\n}\n\n/* NEON underline — start hidden */\n.${scope} mark::after{\n  content:\"\";\n  position:absolute;\n  left:-.12em; right:-.12em;\n  bottom:-.14em;\n  height:.30em;\n  border-radius:.24em;\n  transform-origin:left center;\n  transform: scaleX(0.01);\n  opacity: 0;\n  transition: transform var(--hl-speed) cubic-bezier(.2,.8,.2,1),\n              opacity   var(--hl-speed) ease-out;\n  background:\n    radial-gradient(.35em .2em at .28em 50%, var(--highlight) 98%, transparent 100%) left center / .6em 100% no-repeat,\n    radial-gradient(.35em .2em at calc(100% - .28em) 50%, var(--highlight) 98%, transparent 100%) right center / .6em 100% no-repeat,\n    linear-gradient(var(--highlight), var(--highlight));\n  box-shadow:\n    0 0 .5em rgba(255, 31, 61, 0.6),\n    0 0 1.2em rgba(255, 31, 61, 0.35);\n}\n.${scope} mark.hl-on::after{\n  transform: scaleX(1);\n  opacity: 1;\n}\n@supports (color: color-mix(in srgb, white, black)) {\n  .${scope} mark::after{\n    box-shadow:\n      0 0 .5em color-mix(in srgb, var(--highlight) 60%, transparent),\n      0 0 1.2em color-mix(in srgb, var(--highlight) 35%, transparent);\n  }\n}\n        `}),/*#__PURE__*/_jsx(Wrapped,{...props,style:mergeStyles(props.style,!ready?{opacity:.001}:undefined)})]});};}/* ===============================\n   Variant 3 — DOUBLE STRIKE\n   =============================== */export function withHighlightColor3(Wrapped){return props=>{const scope=useScopeClass(\"hl3\");const rootRef=useRef(null);const[ready,setReady]=useState(false);useEffect(()=>{if(!rootRef.current)return;const root=rootRef.current;let cleanup=()=>{};const raf=requestAnimationFrame(()=>{setupHighlightWrap(root);setReady(true);const obs=observeMarks(root);cleanup=()=>obs.disconnect?.();setTimeout(()=>{if(!(isLikelyIOS()||isSmallScreen()))return;root.querySelectorAll(\"mark\").forEach(m=>{if(!m.classList.contains(\"hl-on\"))m.classList.add(\"hl-on\");});},180);});return()=>{cancelAnimationFrame(raf);cleanup();};},[props]);return /*#__PURE__*/_jsxs(\"div\",{ref:rootRef,className:scope,children:[/*#__PURE__*/_jsx(\"style\",{children:`\n.${scope}{\n  --highlight: #40cf08;\n  --hl-text: #ffffff;\n  --hl-speed: 850ms;\n}\n\n/* base */\n.${scope} mark{\n  position: relative;\n  background: transparent;\n}\n.${scope} mark > span{\n  position: relative;\n  z-index: 2;\n  color: var(--hl-text);\n}\n\n/* DOUBLE STRIKE — start hidden */\n.${scope} mark::before,\n.${scope} mark::after{\n  content:\"\";\n  position:absolute;\n  left:-.14em; right:-.14em;\n  transform-origin:left center;\n  transition: transform var(--hl-speed) cubic-bezier(.2,.8,.2,1),\n              opacity   var(--hl-speed) ease-out;\n  opacity: 0;\n}\n\n.${scope} mark::before{\n  bottom:-.4em;\n  height:.46em;\n  border-radius:.26em;\n  transform: scaleX(0.01);\n  background: linear-gradient(var(--highlight), var(--highlight));\n  box-shadow: 0 0 .35em rgba(64, 207, 8, 0.3);\n}\n.${scope} mark::after{\n  bottom:-.06em;\n  height:.1em;\n  border-radius:.1em;\n  transform: scaleX(0.05);\n  background: currentColor;\n}\n\n.${scope} mark.hl-on::before{\n  transform: scaleX(1);\n  opacity: 1;\n}\n.${scope} mark.hl-on::after{\n  transform: scaleX(1);\n  opacity: .9;\n}\n\n@supports (color: color-mix(in srgb, white, black)) {\n  .${scope} mark::before{\n    box-shadow: 0 0 .35em color-mix(in srgb, var(--highlight) 30%, transparent);\n  }\n}\n        `}),/*#__PURE__*/_jsx(Wrapped,{...props,style:mergeStyles(props.style,!ready?{opacity:.001}:undefined)})]});};}\nexport const __FramerMetadata__ = {\"exports\":{\"withHighlightColor2\":{\"type\":\"reactHoc\",\"name\":\"withHighlightColor2\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"withHighlightColor3\":{\"type\":\"reactHoc\",\"name\":\"withHighlightColor3\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"withHighlightColor1\":{\"type\":\"reactHoc\",\"name\":\"withHighlightColor1\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./Highlights_mobile.map","import{jsx as _jsx}from\"react/jsx-runtime\";import{useEffect,useRef,useState}from\"react\";import{addPropertyControls,ControlType}from\"framer\";import{useIsOnCanvas,emptyStateStyle,containerStyles}from\"https://framer.com/m/framer/default-utils.js\";/**\n * @framerIntrinsicWidth 600\n * @framerIntrinsicHeight 400\n *\n * @framerSupportedLayoutWidth fixed\n * @framerSupportedLayoutHeight any-prefer-fixed\n *\n * @framerDisableUnlink\n */export default function Embed({type,url,html,zoom,radius,border,style={}}){if(type===\"url\"&&url){return /*#__PURE__*/_jsx(EmbedUrl,{url:url,zoom:zoom,radius:radius,border:border,style:style});}if(type===\"html\"&&html){return /*#__PURE__*/_jsx(EmbedHtml,{html:html,style:style});}return /*#__PURE__*/_jsx(Instructions,{style:style});}addPropertyControls(Embed,{type:{type:ControlType.Enum,defaultValue:\"url\",displaySegmentedControl:true,options:[\"url\",\"html\"],optionTitles:[\"URL\",\"HTML\"]},url:{title:\"URL\",type:ControlType.String,description:\"Some websites don’t support embedding.\",hidden(props){return props.type!==\"url\";}},html:{title:\"HTML\",type:ControlType.String,displayTextArea:true,hidden(props){return props.type!==\"html\";}},border:{title:\"Border\",type:ControlType.Border,optional:true,hidden(props){return props.type!==\"url\";}},radius:{type:ControlType.BorderRadius,title:\"Radius\",hidden(props){return props.type!==\"url\";}},zoom:{title:\"Zoom\",defaultValue:1,type:ControlType.Number,hidden(props){return props.type!==\"url\";},min:.1,max:1,step:.1,displayStepper:true}});function Instructions({style}){return /*#__PURE__*/_jsx(\"div\",{style:{minHeight:getMinHeight(style),...emptyStateStyle,overflow:\"hidden\",...style},children:/*#__PURE__*/_jsx(\"div\",{style:centerTextStyle,children:\"To embed a website or widget, add it to the properties\\xa0panel.\"})});}function EmbedUrl({url,zoom,radius,border,style}){const hasAutoHeight=!style.height;// Add https:// if the URL does not have a protocol.\nif(!/[a-z]+:\\/\\//.test(url)){url=\"https://\"+url;}const onCanvas=useIsOnCanvas();// We need to check if the url is blocked inside an iframe by the X-Frame-Options\n// or Content-Security-Policy headers on the backend.\nconst[state,setState]=useState(onCanvas?undefined:false);useEffect(()=>{// We only want to check on the canvas.\n// On the website we want to avoid the additional delay.\nif(!onCanvas)return;// TODO: We could also use AbortController here.\nlet isLastEffect=true;setState(undefined);async function load(){const response=await fetch(\"https://api.framer.com/functions/check-iframe-url?url=\"+encodeURIComponent(url));if(response.status==200){const{isBlocked}=await response.json();if(isLastEffect){setState(isBlocked);}}else{const message=await response.text();console.error(message);const error=new Error(\"This site can’t be reached.\");setState(error);}}load().catch(error=>{console.error(error);setState(error);});return()=>{isLastEffect=false;};},[url]);if(onCanvas&&hasAutoHeight){return /*#__PURE__*/_jsx(ErrorMessage,{message:\"URL embeds do not support auto height.\",style:style});}if(!url.startsWith(\"https://\")){return /*#__PURE__*/_jsx(ErrorMessage,{message:\"Unsupported protocol.\",style:style});}if(state===undefined){return /*#__PURE__*/_jsx(LoadingIndicator,{});}if(state instanceof Error){return /*#__PURE__*/_jsx(ErrorMessage,{message:state.message,style:style});}if(state===true){const message=`Can’t embed ${url} due to its content security policy.`;return /*#__PURE__*/_jsx(ErrorMessage,{message:message,style:style});}return /*#__PURE__*/_jsx(\"iframe\",{src:url,style:{...iframeStyle,...style,...border,zoom:zoom,borderRadius:radius,transformOrigin:\"top center\"},loading:\"lazy\",// @ts-ignore\nfetchPriority:onCanvas?\"low\":\"auto\",referrerPolicy:\"no-referrer\",sandbox:getSandbox(onCanvas)});}const iframeStyle={width:\"100%\",height:\"100%\",border:\"none\"};function getSandbox(onCanvas){const result=[\"allow-same-origin\",\"allow-scripts\"];if(!onCanvas){result.push(\"allow-downloads\",\"allow-forms\",\"allow-modals\",\"allow-orientation-lock\",\"allow-pointer-lock\",\"allow-popups\",\"allow-popups-to-escape-sandbox\",\"allow-presentation\",\"allow-storage-access-by-user-activation\",\"allow-top-navigation-by-user-activation\");}return result.join(\" \");}function EmbedHtml({html,...props}){const hasScript=html.includes(\"</script>\");if(hasScript){const hasSplineViewer=html.includes(\"</spline-viewer>\");const hasComment=html.includes(\"<!-- framer-direct-embed -->\");if(hasSplineViewer||hasComment){return /*#__PURE__*/_jsx(EmbedHtmlWithScripts,{html:html,...props});}return /*#__PURE__*/_jsx(EmbedHtmlInsideIframe,{html:html,...props});}return /*#__PURE__*/_jsx(EmbedHtmlWithoutScripts,{html:html,...props});}function EmbedHtmlInsideIframe({html,style}){const ref=useRef();const[iframeHeight,setIframeHeight]=useState(0);// Handle auto sizing\nuseEffect(()=>{const iframeWindow=ref.current?.contentWindow;function handleMessage(event){if(event.source!==iframeWindow)return;const data=event.data;if(typeof data!==\"object\"||data===null)return;const height=data.embedHeight;if(typeof height!==\"number\")return;setIframeHeight(height);}window.addEventListener(\"message\",handleMessage);// After SSG the iframe loads before we attach the event handler,\n// therefore we need to request the latest height from the iframe.\niframeWindow?.postMessage(\"getEmbedHeight\",\"*\");return()=>{window.removeEventListener(\"message\",handleMessage);};},[]);// The CSS is mainly copied from:\n// FramerStudio/src/app/vekter/src/renderer/setDefaultFont.ts\n// FramerStudio/src/app/vekter/src/export/globalStylesForExport.ts\nconst srcDoc=`\n<html>\n    <head>\n        <style>\n            html, body {\n                margin: 0;\n                padding: 0;\n            }\n\n            body {\n                display: flex;\n                justify-content: center;\n                align-items: center;\n            }\n\n            :root {\n                -webkit-font-smoothing: antialiased;\n                -moz-osx-font-smoothing: grayscale;\n            }\n\n            * {\n                box-sizing: border-box;\n                -webkit-font-smoothing: inherit;\n            }\n\n            h1, h2, h3, h4, h5, h6, p, figure {\n                margin: 0;\n            }\n\n            body, input, textarea, select, button {\n                font-size: 12px;\n                font-family: sans-serif;\n            }\n        </style>\n    </head>\n    <body>\n        ${html}\n        <script type=\"module\">\n            let height = 0\n\n            function sendEmbedHeight() {\n                window.parent.postMessage({\n                    embedHeight: height\n                }, \"*\")\n            }\n\n            const observer = new ResizeObserver((entries) => {\n                if (entries.length !== 1) return\n                const entry = entries[0]\n                if (entry.target !== document.body) return\n\n                height = entry.contentRect.height\n                sendEmbedHeight()\n            })\n\n            observer.observe(document.body)\n\n            window.addEventListener(\"message\", (event) => {\n                if (event.source !== window.parent) return\n                if (event.data !== \"getEmbedHeight\") return\n                sendEmbedHeight()\n            })\n        </script>\n    <body>\n</html>\n`;const currentStyle={...iframeStyle,...style};const hasAutoHeight=!style.height;if(hasAutoHeight){currentStyle.height=iframeHeight+\"px\";}return /*#__PURE__*/_jsx(\"iframe\",{ref:ref,style:currentStyle,srcDoc:srcDoc});}function EmbedHtmlWithScripts({html,style}){const ref=useRef();useEffect(()=>{const div=ref.current;if(!div)return;div.innerHTML=html;executeScripts(div);return()=>{div.innerHTML=\"\";};},[html]);return /*#__PURE__*/_jsx(\"div\",{ref:ref,style:{...htmlStyle,...style}});}function EmbedHtmlWithoutScripts({html,style}){return /*#__PURE__*/_jsx(\"div\",{style:{...htmlStyle,...style},dangerouslySetInnerHTML:{__html:html}});}const htmlStyle={width:\"100%\",height:\"100%\",display:\"flex\",flexDirection:\"column\",justifyContent:\"center\",alignItems:\"center\"};// This function replaces scripts with executable ones.\n// https://stackoverflow.com/questions/1197575/can-scripts-be-inserted-with-innerhtml\nfunction executeScripts(node){if(node instanceof Element&&node.tagName===\"SCRIPT\"){const script=document.createElement(\"script\");script.text=node.innerHTML;for(const{name,value}of node.attributes){script.setAttribute(name,value);}node.parentElement.replaceChild(script,node);}else{for(const child of node.childNodes){executeScripts(child);}}}// Generic components\nfunction LoadingIndicator(){return /*#__PURE__*/_jsx(\"div\",{className:\"framerInternalUI-componentPlaceholder\",style:{...containerStyles,overflow:\"hidden\"},children:/*#__PURE__*/_jsx(\"div\",{style:centerTextStyle,children:\"Loading…\"})});}function ErrorMessage({message,style}){return /*#__PURE__*/_jsx(\"div\",{className:\"framerInternalUI-errorPlaceholder\",style:{minHeight:getMinHeight(style),...containerStyles,overflow:\"hidden\",...style},children:/*#__PURE__*/_jsx(\"div\",{style:centerTextStyle,children:message})});}const centerTextStyle={textAlign:\"center\",minWidth:140};// Returns a min-height if the component is using auto-height.\nfunction getMinHeight(style){const hasAutoHeight=!style.height;if(hasAutoHeight)return 200;}\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"Embed\",\"slots\":[],\"annotations\":{\"framerSupportedLayoutHeight\":\"any-prefer-fixed\",\"framerIntrinsicHeight\":\"400\",\"framerSupportedLayoutWidth\":\"fixed\",\"framerContractVersion\":\"1\",\"framerDisableUnlink\":\"\",\"framerIntrinsicWidth\":\"600\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./Embed.map"],"mappings":"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"}