{"version":3,"file":"Global_Inbound.fjsY59pc.mjs","names":["useRef","useState"],"sources":["https:/framerusercontent.com/modules/XDYz5kvCBSHkJjMCF05h/SwtcIr2I7W2FFlJqFAKw/Global_Inbound.js"],"sourcesContent":["import{jsx as _jsx}from\"react/jsx-runtime\";import{useEffect,useRef,useState}from\"react\";import{addPropertyControls,ControlType}from\"framer\";// 임베드를 서빙하는 오리진. 배포 도메인과 정확히 일치해야 합니다.\nconst EMBED_ORIGIN=\"https://marketing.revu.net\";// 광고 유입값(UTM)을 폼으로 넘길 때 쓰는 키\nconst UTM_KEYS=[\"utm_source\",\"utm_medium\",\"utm_campaign\",\"utm_content\",\"utm_term\"];const UTM_STORAGE_KEY=\"revu_embed_utm\";// 폼은 다른 도메인이라 이 페이지 주소를 읽을 수 없습니다.\n// 그래서 페이지 주소의 UTM과 현재 페이지 경로(referer)를 iframe 주소 뒤에 붙여 넘깁니다.\n// 사이트 안에서 이동해 오면 주소의 UTM이 사라지므로, 받은 UTM을 세션 동안 보관해 둡니다.\nfunction buildEmbedSrc(base){try{const url=new URL(base);const page=new URLSearchParams(window.location.search);let utm={};for(const key of UTM_KEYS){const value=page.get(key);if(value)utm[key]=value;}if(Object.keys(utm).length>0){try{window.sessionStorage.setItem(UTM_STORAGE_KEY,JSON.stringify(utm));}catch{}}else{try{const saved=JSON.parse(window.sessionStorage.getItem(UTM_STORAGE_KEY)||\"{}\");if(saved&&typeof saved===\"object\")utm=saved;}catch{}}// Embed URL에 이미 적어 둔 값은 덮어쓰지 않습니다\nfor(const[key,value]of Object.entries(utm)){if(UTM_KEYS.includes(key)&&!url.searchParams.has(key)){url.searchParams.set(key,String(value));}}if(!url.searchParams.has(\"referer\")){url.searchParams.set(\"referer\",window.location.origin+window.location.pathname);}return url.toString();}catch{return base;}}export default function InboundEmbed(props){const{src,minHeight}=props;const ref=useRef(null);const[height,setHeight]=useState(minHeight);// 서버에서 미리 그리는 HTML에는 iframe을 넣지 않습니다.\n// 브라우저에서 주소를 완성한 뒤 한 번만 그려야 폼이 두 번 로드되지 않습니다.\nconst[frameSrc,setFrameSrc]=useState(null);useEffect(()=>{setFrameSrc(buildEmbedSrc(src));},[src]);useEffect(()=>{function onMessage(event){if(event.origin!==EMBED_ORIGIN)return;// 오리진 검증\nconst data=event.data;if(!data||typeof data!==\"object\")return;if(data.type===\"bizcenter:embed:height\"&&typeof data.height===\"number\"){setHeight(data.height);}if(data.type===\"bizcenter:embed:submitted\"){window.dataLayer?.push({event:\"inbound_submit\",inbound_type:data.inboundType});// 필요 시 여기서 감사 페이지로 이동시키거나 스크롤 처리\n}}window.addEventListener(\"message\",onMessage);return()=>window.removeEventListener(\"message\",onMessage);},[]);if(!frameSrc){return /*#__PURE__*/_jsx(\"div\",{style:{width:\"100%\",height,display:\"block\"}});}return /*#__PURE__*/_jsx(\"iframe\",{ref:ref,src:frameSrc,style:{width:\"100%\",height,border:0,display:\"block\"},allow:\"clipboard-write\"});}addPropertyControls(InboundEmbed,{src:{type:ControlType.String,title:\"Embed URL\",defaultValue:\"https://marketing.revu.net/inbound/global\"},minHeight:{type:ControlType.Number,title:\"Min Height\",defaultValue:600}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"InboundEmbed\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./Global_Inbound.map"],"mappings":"sMAKA,SAAS,EAAc,EAAK,CAAC,GAAG,CAAC,IAAM,EAAI,IAAI,IAAI,CAAI,EAAQ,EAAK,IAAI,gBAAgB,EAAO,SAAS,MAAM,EAAM,EAAI,CAAC,EAAE,IAAI,IAAM,KAAO,EAAS,CAAC,IAAM,EAAM,EAAK,IAAI,CAAG,EAAK,IAAM,EAAI,GAAK,EAAM,CAAC,GAAG,OAAO,KAAK,CAAG,CAAC,CAAC,OAAO,EAAG,GAAG,CAAC,EAAO,eAAe,QAAQ,EAAgB,KAAK,UAAU,CAAG,CAAC,CAAE,MAAM,CAAC,MAAO,GAAG,CAAC,IAAM,EAAM,KAAK,MAAM,EAAO,eAAe,QAAQ,CAAe,GAAG,IAAI,EAAK,GAAO,OAAO,GAAQ,WAAS,EAAI,EAAM,MAAM,CAAC,CAChc,IAAI,GAAK,CAAC,EAAI,KAAS,OAAO,QAAQ,CAAG,EAAM,EAAS,SAAS,CAAG,GAAG,CAAC,EAAI,aAAa,IAAI,CAAG,GAAG,EAAI,aAAa,IAAI,EAAI,OAAO,CAAK,CAAC,EAA0H,OAAlH,EAAI,aAAa,IAAI,SAAS,GAAG,EAAI,aAAa,IAAI,UAAU,EAAO,SAAS,OAAO,EAAO,SAAS,QAAQ,EAAU,EAAI,SAAS,CAAE,MAAM,CAAC,OAAO,CAAK,CAAC,CAAC,SAAwB,EAAa,EAAM,CAAC,GAAK,CAAC,MAAI,aAAW,EAAY,EAAIA,EAAO,IAAI,EAAO,CAAC,EAAO,GAAWC,EAAS,CAAS,EAEjb,CAAC,EAAS,GAAaA,EAAS,IAAI,EAEmK,OAFjK,MAAc,CAAC,EAAY,EAAc,CAAG,CAAC,CAAE,EAAE,CAAC,CAAG,CAAC,EAAE,MAAc,CAAC,SAAS,EAAU,EAAM,CAAC,GAAG,EAAM,SAAS,EAAa,OAC3K,IAAM,EAAK,EAAM,KAAQ,CAAC,GAAM,OAAO,GAAO,WAAmB,EAAK,OAAO,0BAA0B,OAAO,EAAK,QAAS,UAAU,EAAU,EAAK,MAAM,EAAM,EAAK,OAAO,6BAA6B,EAAO,WAAW,KAAK,CAAC,MAAM,iBAAiB,aAAa,EAAK,WAAW,CAAC,EACtR,CAA8C,OAA7C,EAAO,iBAAiB,UAAU,CAAS,MAAY,EAAO,oBAAoB,UAAU,CAAS,CAAE,EAAE,CAAC,CAAC,EAAM,EAA6G,EAAK,SAAS,CAAK,MAAI,IAAI,EAAS,MAAM,CAAC,MAAM,OAAO,SAAO,OAAO,EAAE,QAAQ,OAAO,EAAE,MAAM,iBAAiB,CAAC,EAAhM,EAAK,MAAM,CAAC,MAAM,CAAC,MAAM,OAAO,SAAO,QAAQ,OAAO,CAAC,CAAC,CAA0I,2BAVzS,IAA6C,IAAoD,EACrI,EAAa,6BACb,EAAS,CAAC,aAAa,aAAa,eAAe,cAAc,UAAU,EAAQ,EAAgB,iBAQ2O,EAAoB,EAAa,CAAC,IAAI,CAAC,KAAK,EAAY,OAAO,MAAM,YAAY,aAAa,2CAA2C,EAAE,UAAU,CAAC,KAAK,EAAY,OAAO,MAAM,aAAa,aAAa,GAAG,CAAC,CAAC"}