{"version":3,"file":"RenderScriptsInOverlay_ProjectGallery.DR8FtsXY.mjs","names":["React.useState","p","React.useCallback"],"sources":["https:/framerusercontent.com/modules/EqaiH9srWPMCM4ffUsmL/IDpj6s36P3X8Gh8c4VfG/RenderScriptsInOverlay_ProjectGallery.js"],"sourcesContent":["import{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import*as React from\"react\";import{addPropertyControls,ControlType,useIsOnFramerCanvas,RenderTarget}from\"framer\";import{createPortal}from\"react-dom\";const OVERLAY_ID=\"popup-overlay-project-gallery\";const MODAL_ID=\"academy-live-interactions-2\";const CLOSE_BUTTON_ID=\"popup-close\";const TRIGGER_ON_LOAD=false;function useBodyScrollLock(locked){React.useEffect(()=>{if(!locked)return;if(typeof document===\"undefined\")return;const html=document.documentElement;const body=document.body;const prevHtmlOverflow=html.style.overflow;const prevBodyOverflow=body.style.overflow;const prevBodyPaddingRight=body.style.paddingRight;const Root=document.querySelector(\"root-container\");const scrollbarWidth=window.innerWidth-html.clientWidth;if(scrollbarWidth>0)body.style.paddingRight=`${scrollbarWidth}px`;html.style.overflow=\"hidden\";body.style.overflow=\"hidden\";return()=>{html.style.overflow=prevHtmlOverflow;body.style.overflow=prevBodyOverflow;body.style.paddingRight=prevBodyPaddingRight;};},[locked]);}function useIsMobile(breakpoint=1024){const[isMobile,setIsMobile]=React.useState(false);React.useEffect(()=>{if(typeof window===\"undefined\")return;const mq=window.matchMedia(`(max-width: ${breakpoint}px)`);const update=()=>setIsMobile(mq.matches);update();if(mq.addEventListener){mq.addEventListener(\"change\",update);return()=>mq.removeEventListener(\"change\",update);}else{mq.addListener(update);return()=>mq.removeListener(update);}},[breakpoint]);return isMobile;}const CloseIcon=({size,color})=>/*#__PURE__*/_jsxs(\"svg\",{width:size,height:size,viewBox:\"0 0 24 24\",fill:\"none\",style:{display:\"block\"},xmlns:\"http://www.w3.org/2000/svg\",children:[/*#__PURE__*/_jsx(\"path\",{d:\"M6 6L18 18\",stroke:color,strokeWidth:\"2.5\",strokeLinecap:\"round\"}),/*#__PURE__*/_jsx(\"path\",{d:\"M18 6L6 18\",stroke:color,strokeWidth:\"2.5\",strokeLinecap:\"round\"})]});function applyOpacityToColor(color,opacity){if(!color||color.trim()===\"\")return`rgba(0,0,0,${opacity})`;const rgbaMatch=color.match(/rgba?\\((\\d+),\\s*(\\d+),\\s*(\\d+)(?:,\\s*[\\d.]+)?\\)/i);if(rgbaMatch){const r=rgbaMatch[1];const g=rgbaMatch[2];const b=rgbaMatch[3];return`rgba(${r}, ${g}, ${b}, ${opacity})`;}if(color.startsWith(\"#\")){let hex=color.replace(\"#\",\"\").trim();if(hex.length===3){hex=hex.split(\"\").map(c=>c+c).join(\"\");}if(hex.length>=6){const r=parseInt(hex.substring(0,2),16);const g=parseInt(hex.substring(2,4),16);const b=parseInt(hex.substring(4,6),16);return`rgba(${r}, ${g}, ${b}, ${opacity})`;}}return color;}function resetBodyScroll(doc){const d=doc??(typeof document!==\"undefined\"?document:null);if(!d)return;d.documentElement.style.overflow=\"\";d.body.style.overflow=\"\";d.body.style.paddingRight=\"\";}function addModuleScriptToBodyOnce(src){if(typeof document===\"undefined\")return;const existing=document.querySelector(`script[type=\"module\"][src=\"${src}\"]`);if(existing)return;const script=document.createElement(\"script\");script.type=\"module\";script.src=src;document.body.insertBefore(script,document.body.firstChild);}export default function Overlay(props){const{runtimeUrl,polyfillsUrl,mainUrl,overlayBackgroundColor,overlayOpacity,closeIconColor,closeIconSize,zIndex}=props;const isOnCanvas=useIsOnFramerCanvas();const isMobile=useIsMobile(1024);const[isOpen,setIsOpen]=React.useState(TRIGGER_ON_LOAD);React.useEffect(()=>{if(typeof document===\"undefined\")return;[runtimeUrl,polyfillsUrl,mainUrl].filter(Boolean).forEach(addModuleScriptToBodyOnce);},[runtimeUrl,polyfillsUrl,mainUrl]);const togglePopup=React.useCallback(()=>{setIsOpen(p=>!p);},[]);const closePopup=React.useCallback(e=>{setIsOpen(false);// Portal may render into a different document; hide the overlay via DOM\n// and reset body scroll so it's restored even when effect cleanup doesn't run.\nconst target=e?.currentTarget;const overlay=target&&target instanceof HTMLElement?target.closest(\".pop-up-overlay\"):null;if(overlay&&overlay instanceof HTMLElement){overlay.style.display=\"none\";resetBodyScroll(overlay.ownerDocument);}else{resetBodyScroll();}},[]);const closeOnOverlayClick=false;const showCloseButton=true;const shouldLockScroll=isOpen&&!isOnCanvas&&RenderTarget.current()!==RenderTarget.canvas;useBodyScrollLock(shouldLockScroll);const overlayStyle={position:\"fixed\",top:0,left:0,display:isOpen?\"flex\":\"none\",alignItems:\"center\",justifyContent:\"center\",padding:0,height:\"100vh\",width:\"100%\",backgroundColor:applyOpacityToColor(overlayBackgroundColor||\"#000000\",overlayOpacity??.5),zIndex:0};const viewportContainerStyle={position:\"relative\",width:\"100%\",maxWidth:isMobile?\"100%\":560,height:isMobile?\"100vh\":\"auto\",backgroundColor:\"transparent\"};const modalStyle={position:\"relative\",width:\"100%\",maxWidth:isMobile?\"100%\":560,height:isMobile?\"100vh\":640,maxHeight:isMobile?\"100vh\":640,overflowY:\"auto\",background:\"#fff\",borderRadius:isMobile?0:12,padding:16};const webCloseStyle={position:\"absolute\",top:0,left:\"100%\",marginLeft:8,background:\"#fff\",border:\"none\",padding:10,borderRadius:999,cursor:\"pointer\"};const mobileCloseStyle={position:\"absolute\",top:8,right:8,background:\"#fff\",border:\"none\",padding:8,cursor:\"pointer\"};const popup=/*#__PURE__*/_jsx(\"div\",{id:OVERLAY_ID,className:\"pop-up-overlay\",style:overlayStyle,children:/*#__PURE__*/_jsxs(\"div\",{style:viewportContainerStyle,children:[/*#__PURE__*/_jsxs(\"div\",{style:modalStyle,children:[/*#__PURE__*/_jsx(\"h2\",{style:{marginBottom:16,fontSize:24,fontWeight:600},children:\"Register for Free Live Session\"}),/*#__PURE__*/_jsx(\"div\",{id:MODAL_ID})]}),showCloseButton&&/*#__PURE__*/_jsx(\"button\",{id:CLOSE_BUTTON_ID,type:\"button\",\"aria-label\":\"Close\",style:isMobile?mobileCloseStyle:webCloseStyle,onClick:e=>closePopup(e),children:/*#__PURE__*/_jsx(CloseIcon,{size:closeIconSize,color:closeIconColor})})]})});const shouldPortal=!isOnCanvas&&typeof document!==\"undefined\";return shouldPortal?/*#__PURE__*/createPortal(popup,document.body):popup;}addPropertyControls(Overlay,{runtimeUrl:{type:ControlType.String,title:\"Runtime URL\"},polyfillsUrl:{type:ControlType.String,title:\"Polyfills URL\"},mainUrl:{type:ControlType.String,title:\"Main URL\"},overlayBackgroundColor:{type:ControlType.Color,title:\"Overlay BG\",defaultValue:\"#000000\"},overlayOpacity:{type:ControlType.Number,title:\"Overlay Opacity\",defaultValue:.5,min:0,max:1,step:.05},closeIconColor:{type:ControlType.Color,title:\"Close Icon Color\",defaultValue:\"#000000\"},closeIconSize:{type:ControlType.Number,title:\"Close Icon Size\",defaultValue:18,min:8,max:48,step:1},zIndex:{type:ControlType.Number,title:\"Z-Index\",defaultValue:0,min:0,step:1}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"Overlay\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./RenderScriptsInOverlay_ProjectGallery.map"],"mappings":"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"}