{"version":3,"file":"shared-lib.C1UPK3RY.mjs","names":["useRef","useState"],"sources":["https:/framerusercontent.com/modules/5LU6IzCs8sQK1sCMcFuh/1TbOAc9HGW0xY7bMSkHP/FactoryPage.js"],"sourcesContent":["import{jsx as _jsx}from\"react/jsx-runtime\";import{useEffect,useRef,useState}from\"react\";import{addPropertyControls,ControlType}from\"framer\";/**\n * FactoryPage v2 — mostra um bloco de página da Factory.\n *\n * O HTML vai direto no HTML publicado pelo Framer: a página aparece na hora,\n * sem esperar o JavaScript, e o Google e os robôs de IA conseguem ler o texto.\n * Os scripts da página ficam inertes no HTML e rodam uma vez, depois que a página carrega.\n *\n * @framerSupportedLayoutWidth any\n * @framerSupportedLayoutHeight auto\n */// Deixa os <script> inertes (o navegador não os executa sozinho); o componente roda cada um depois.\n// Scripts de dados (ex.: type=\"application/ld+json\") continuam como estão.\nfunction prepare(html){return(html||\"\").replace(/<script\\b([^>]*)>/gi,(tag,attrs)=>{const t=/type\\s*=\\s*[\"']([^\"']*)[\"']/i.exec(attrs||\"\");if(t&&!/^(text\\/javascript|module|application\\/javascript)$/i.test(t[1]))return tag;const rest=(attrs||\"\").replace(/\\stype\\s*=\\s*[\"'][^\"']*[\"']/i,\"\");return`<script type=\"text/fx-script\"${rest}>`;});}function runScripts(el){el.querySelectorAll('script[type=\"text/fx-script\"]').forEach(old=>{const s=document.createElement(\"script\");for(const a of Array.from(old.attributes)){if(a.name!==\"type\")s.setAttribute(a.name,a.value);}s.textContent=old.textContent;old.replaceWith(s);});// avisa os scripts da página que o tamanho mudou (ajustes de layout)\nrequestAnimationFrame(()=>window.dispatchEvent(new Event(\"resize\")));setTimeout(()=>window.dispatchEvent(new Event(\"resize\")),800);}export default function FactoryPage(props){const ref=useRef(null);const[remote,setRemote]=useState(\"\");const html=prepare((props.html||\"\").trim()||remote);// opcional: busca o bloco por URL quando o campo HTML estiver vazio\nuseEffect(()=>{if((props.html||\"\").trim()||!props.url)return;let cancelled=false;fetch(props.url,{cache:\"no-store\"}).then(r=>r.text()).then(t=>{if(!cancelled)setRemote(t);}).catch(()=>{});return()=>{cancelled=true;};},[props.html,props.url]);useEffect(()=>{if(ref.current)runScripts(ref.current);},[html]);return /*#__PURE__*/_jsx(\"div\",{ref:ref,style:{width:\"100%\"},dangerouslySetInnerHTML:{__html:html}});}FactoryPage.defaultProps={html:\"\",url:\"\"};addPropertyControls(FactoryPage,{html:{type:ControlType.String,title:\"HTML\",displayTextArea:true,placeholder:\"Cole aqui o bloco da p\\xe1gina (arquivo .txt inteiro)\"},url:{type:ControlType.String,title:\"URL\",placeholder:\"Opcional: endere\\xe7o do bloco hospedado\"}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"FactoryPage\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./FactoryPage.map"],"mappings":"sMAWA,SAAS,EAAQ,EAAK,CAAC,OAAO,GAAM,GAAA,CAAI,QAAQ,uBAAuB,EAAI,IAAQ,CAAC,IAAM,EAAE,+BAA+B,KAAK,GAAO,EAAE,EAAwJ,OAAnJ,GAAG,CAAC,uDAAuD,KAAK,EAAE,EAAE,EAAS,EAA4E,iCAA5D,GAAO,GAAA,CAAI,QAAQ,+BAA+B,EAA6C,EAAE,EAAG,CAAC,CAAE,CAAC,SAAS,EAAW,EAAG,CAAC,EAAG,iBAAiB,+BAA+B,CAAC,CAAC,QAAQ,GAAK,CAAC,IAAM,EAAE,SAAS,cAAc,QAAQ,EAAE,IAAI,IAAM,KAAK,MAAM,KAAK,EAAI,UAAU,EAAM,EAAE,OAAO,QAAO,EAAE,aAAa,EAAE,KAAK,EAAE,KAAK,EAAG,EAAE,YAAY,EAAI,YAAY,EAAI,YAAY,CAAC,CAAE,CAAC,EACvmB,0BAA0B,EAAO,cAAc,IAAI,MAAM,QAAQ,CAAC,CAAC,EAAE,eAAe,EAAO,cAAc,IAAI,MAAM,QAAQ,CAAC,EAAE,GAAG,CAAE,CAAC,SAAwB,EAAY,EAAM,CAAC,IAAM,EAAIA,EAAO,IAAI,EAAO,CAAC,EAAO,GAAWC,EAAS,EAAE,EAAQ,EAAK,GAAS,EAAM,MAAM,GAAA,CAAI,KAAK,GAAG,CAAM,EACqB,OAAlT,MAAc,CAAC,IAAI,EAAM,MAAM,GAAA,CAAI,KAAK,GAAG,CAAC,EAAM,IAAI,OAAO,IAAI,EAAU,GAAiH,OAA3G,MAAM,EAAM,IAAI,CAAC,MAAM,UAAU,CAAC,CAAC,CAAC,KAAK,GAAG,EAAE,KAAK,CAAC,CAAC,CAAC,KAAK,GAAG,CAAK,GAAU,EAAU,CAAC,CAAE,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,MAAY,CAAC,EAAU,EAAK,CAAE,EAAE,CAAC,EAAM,KAAK,EAAM,GAAG,CAAC,EAAE,MAAc,CAAI,EAAI,SAAQ,EAAW,EAAI,OAAO,CAAE,EAAE,CAAC,CAAI,CAAC,EAAsB,EAAK,MAAM,CAAK,MAAI,MAAM,CAAC,MAAM,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAI,CAAC,CAAC,CAAE,qBAb7W,IAA6C,IAAoD,EAa6Q,EAAY,aAAa,CAAC,KAAK,GAAG,IAAI,EAAE,EAAE,EAAoB,EAAY,CAAC,KAAK,CAAC,KAAK,EAAY,OAAO,MAAM,OAAO,gBAAgB,GAAK,YAAY,oDAAuD,EAAE,IAAI,CAAC,KAAK,EAAY,OAAO,MAAM,MAAM,YAAY,uCAA0C,CAAC,CAAC"}