{
  "version": 3,
  "sources": ["ssg:https://framerusercontent.com/modules/Q8A3yafsT8jD0A4Z56gn/mw5unVZyIS101pKe7nd0/Image_Gallery.js"],
  "sourcesContent": ["import{jsx as _jsx,jsxs as _jsxs,Fragment as _Fragment}from\"react/jsx-runtime\";import*as React from\"react\";import{Frame,addPropertyControls,ControlType}from\"framer\";export function ImageGallery({uploadedImages,cmsImages,columns,gap,imageFit,cornerRadius}){const[lightboxOpen,setLightboxOpen]=React.useState(false);const[currentIndex,setCurrentIndex]=React.useState(0);const imageList=Array.isArray(cmsImages)&&cmsImages.length>0?cmsImages:uploadedImages;const safeImages=imageList.filter(img=>img&&img.url).slice(0,20);const openLightbox=index=>{setCurrentIndex(index);setLightboxOpen(true);};const closeLightbox=()=>setLightboxOpen(false);const goNext=()=>setCurrentIndex((currentIndex+1)%safeImages.length);const goPrev=()=>setCurrentIndex((currentIndex-1+safeImages.length)%safeImages.length);React.useEffect(()=>{const onKeyDown=e=>{if(e.key===\"Escape\")closeLightbox();};window.addEventListener(\"keydown\",onKeyDown);return()=>window.removeEventListener(\"keydown\",onKeyDown);},[]);return /*#__PURE__*/_jsxs(Frame,{width:\"100%\",height:\"100%\",background:\"transparent\",children:[/*#__PURE__*/_jsx(\"div\",{style:{display:\"grid\",gridTemplateColumns:`repeat(${columns}, 1fr)`,gap:gap,width:\"100%\",height:\"100%\"},children:safeImages.map((img,index)=>/*#__PURE__*/_jsx(\"img\",{src:img.url,onClick:()=>openLightbox(index),style:{width:\"100%\",height:\"auto\",objectFit:imageFit,cursor:\"pointer\",borderRadius:cornerRadius,transition:\"transform 0.2s ease\"},onMouseOver:e=>e.currentTarget.style.transform=\"scale(1.03)\",onMouseOut:e=>e.currentTarget.style.transform=\"scale(1)\"},index))}),lightboxOpen&&safeImages.length>0&&/*#__PURE__*/_jsx(\"div\",{style:{position:\"fixed\",top:0,left:0,width:\"100vw\",height:\"100vh\",background:\"rgba(0,0,0,0.9)\",zIndex:9999,display:\"flex\",alignItems:\"center\",justifyContent:\"center\"},onClick:closeLightbox,children:/*#__PURE__*/_jsxs(\"div\",{style:{position:\"relative\",width:\"90%\",height:\"90%\"},onClick:e=>e.stopPropagation(),children:[/*#__PURE__*/_jsx(\"img\",{src:safeImages[currentIndex].url,style:{width:\"100%\",height:\"100%\",objectFit:\"contain\",userSelect:\"none\",pointerEvents:\"none\"}}),/*#__PURE__*/_jsx(\"div\",{onClick:closeLightbox,style:{position:\"absolute\",top:20,right:20,cursor:\"pointer\",zIndex:1e4},children:/*#__PURE__*/_jsxs(\"svg\",{width:\"20\",height:\"20\",viewBox:\"0 0 24 24\",fill:\"none\",stroke:\"white\",strokeWidth:\"2\",strokeLinecap:\"round\",strokeLinejoin:\"round\",children:[/*#__PURE__*/_jsx(\"line\",{x1:\"18\",y1:\"6\",x2:\"6\",y2:\"18\"}),/*#__PURE__*/_jsx(\"line\",{x1:\"6\",y1:\"6\",x2:\"18\",y2:\"18\"})]})}),safeImages.length>1&&/*#__PURE__*/_jsxs(_Fragment,{children:[/*#__PURE__*/_jsx(\"div\",{onClick:goPrev,style:{position:\"absolute\",left:16,top:\"50%\",transform:\"translateY(-50%)\",cursor:\"pointer\",zIndex:1e4},children:/*#__PURE__*/_jsx(\"svg\",{width:\"20\",height:\"20\",viewBox:\"0 0 24 24\",fill:\"none\",stroke:\"white\",strokeWidth:\"2\",strokeLinecap:\"round\",strokeLinejoin:\"round\",children:/*#__PURE__*/_jsx(\"polyline\",{points:\"15 18 9 12 15 6\"})})}),/*#__PURE__*/_jsx(\"div\",{onClick:goNext,style:{position:\"absolute\",right:16,top:\"50%\",transform:\"translateY(-50%)\",cursor:\"pointer\",zIndex:1e4},children:/*#__PURE__*/_jsx(\"svg\",{width:\"20\",height:\"20\",viewBox:\"0 0 24 24\",fill:\"none\",stroke:\"white\",strokeWidth:\"2\",strokeLinecap:\"round\",strokeLinejoin:\"round\",children:/*#__PURE__*/_jsx(\"polyline\",{points:\"9 18 15 12 9 6\"})})})]})]})})]});}// Property Controls\naddPropertyControls(ImageGallery,{uploadedImages:{type:ControlType.Array,title:\"Upload Images\",propertyControl:{type:ControlType.Object,controls:{url:{type:ControlType.Image,title:\"Image\"}}}},cmsImages:{type:ControlType.Variable,allowedTypes:[\"array\"],title:\"CMS Images\"},columns:{type:ControlType.Number,defaultValue:3,min:1,max:6,step:1,title:\"Columns\"},gap:{type:ControlType.Number,defaultValue:4,min:0,max:32,step:1,title:\"Gap\"},imageFit:{type:ControlType.Enum,options:[\"cover\",\"contain\",\"fill\",\"none\",\"scale-down\"],optionTitles:[\"Cover\",\"Contain\",\"Fill\",\"None\",\"Scale Down\"],defaultValue:\"cover\",title:\"Image Fit\"},cornerRadius:{type:ControlType.Number,defaultValue:0,min:0,max:32,step:1,title:\"Corner Radius\"}});\nexport const __FramerMetadata__ = {\"exports\":{\"ImageGallery\":{\"type\":\"reactComponent\",\"name\":\"ImageGallery\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./Image_Gallery.map"],
  "mappings": "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",
  "names": ["ImageGallery", "uploadedImages", "cmsImages", "columns", "gap", "imageFit", "cornerRadius", "lightboxOpen", "setLightboxOpen", "ye", "currentIndex", "setCurrentIndex", "safeImages", "img", "openLightbox", "index", "closeLightbox", "goNext", "goPrev", "ue", "onKeyDown", "e", "window", "u", "Frame", "p", "l", "addPropertyControls", "ControlType"]
}
