{
  "version": 3,
  "sources": ["ssg:https://framerusercontent.com/modules/iCT15RoLnUA3HQGrcqU3/ApZB1X5i388rGRdAPNo0/LightBox.js"],
  "sourcesContent": ["import{jsx as _jsx,jsxs as _jsxs,Fragment as _Fragment}from\"react/jsx-runtime\";import{addPropertyControls,ControlType,motion,AnimatePresence}from\"framer\";import{useRef,useState,useEffect}from\"react\";/**\n * @framerIntrinsicWidth 400\n * @framerIntrinsicHeight 300\n * @framerDisableUnlink\n */export default function LightboxImage(props){const{image=\"\",alt=\"\",style}=props;const[showLightbox,setShowLightbox]=useState(false);const mouseDownTime=useRef(0);const mouseDownPosition=useRef({x:0,y:0});// Effect to prevent scrolling when lightbox is open\nuseEffect(()=>{if(showLightbox){// Save current body styles\nconst originalStyles={overflow:document.body.style.overflow,position:document.body.style.position,top:document.body.style.top,width:document.body.style.width,height:document.body.style.height};// Get current scroll position\nconst scrollY=window.scrollY;// Apply fixed position to body\ndocument.body.style.overflow=\"hidden\";document.body.style.position=\"fixed\";document.body.style.top=`-${scrollY}px`;document.body.style.width=\"100%\";document.body.style.height=\"100%\";// Restore on cleanup\nreturn()=>{// Restore body styles\ndocument.body.style.overflow=originalStyles.overflow;document.body.style.position=originalStyles.position;document.body.style.top=originalStyles.top;document.body.style.width=originalStyles.width;document.body.style.height=originalStyles.height;// Restore scroll position\nwindow.scrollTo(0,scrollY);};}},[showLightbox]);return /*#__PURE__*/_jsxs(_Fragment,{children:[/*#__PURE__*/_jsx(AnimatePresence,{children:showLightbox&&/*#__PURE__*/_jsx(motion.div,{initial:{opacity:0},animate:{opacity:1},exit:{opacity:0},style:{position:\"fixed\",top:0,left:0,right:0,bottom:0,backgroundColor:\"rgba(0, 0, 0, 0.9)\",zIndex:2147483647,display:\"flex\",alignItems:\"center\",justifyContent:\"center\",cursor:\"pointer\",touchAction:\"none\",isolation:\"isolate\"},onClick:()=>setShowLightbox(false),children:/*#__PURE__*/_jsx(motion.img,{src:image,alt:alt,initial:{scale:.8,opacity:0},animate:{scale:1,opacity:1},exit:{scale:.8,opacity:0},transition:{type:\"spring\",damping:25,stiffness:120},style:{maxWidth:\"90vw\",maxHeight:\"90vh\",objectFit:\"contain\",cursor:\"pointer\"},onClick:e=>{e.stopPropagation();setShowLightbox(false);}})})}),/*#__PURE__*/_jsx(motion.div,{style:{...style,width:\"100%\",height:\"100%\",position:\"relative\",overflow:\"hidden\",cursor:\"pointer\"},whileHover:{boxShadow:\"0px 4px 12px rgba(0, 0, 0, 0.08)\"},initial:{boxShadow:\"0px 0px 0px rgba(0, 0, 0, 0)\"},transition:{duration:.2},onMouseDown:e=>{mouseDownTime.current=Date.now();mouseDownPosition.current={x:e.clientX,y:e.clientY};},onClick:e=>{const clickDuration=Date.now()-mouseDownTime.current;// Calculate distance moved\nconst deltaX=Math.abs(e.clientX-mouseDownPosition.current.x);const deltaY=Math.abs(e.clientY-mouseDownPosition.current.y);const distance=Math.sqrt(deltaX*deltaX+deltaY*deltaY);// Only trigger if it was both quick and minimal movement\nif(clickDuration<150&&distance<5){setShowLightbox(true);}},children:/*#__PURE__*/_jsx(\"img\",{src:image,alt:alt,style:{width:\"100%\",height:\"100%\",objectFit:\"cover\",display:\"block\",userSelect:\"none\",WebkitUserDrag:\"none\"},draggable:false})})]});}addPropertyControls(LightboxImage,{image:{type:ControlType.Image,title:\"Image\"},alt:{type:ControlType.String,title:\"Alt Text\",defaultValue:\"\",optional:true}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"LightboxImage\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\",\"framerIntrinsicHeight\":\"300\",\"framerDisableUnlink\":\"\",\"framerIntrinsicWidth\":\"400\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./LightBox.map"],
  "mappings": "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",
  "names": ["LightboxImage", "props", "image", "alt", "style", "showLightbox", "setShowLightbox", "ye", "mouseDownTime", "pe", "mouseDownPosition", "ue", "originalStyles", "scrollY", "window", "u", "l", "p", "AnimatePresence", "motion", "e", "clickDuration", "deltaX", "deltaY", "distance", "addPropertyControls", "ControlType"]
}
