{"version":3,"file":"DraggableImageTrack.DnToC6We.mjs","names":["useRef","useState","useMemo","useCallback"],"sources":["https:/framerusercontent.com/modules/t88z7BdNl9U15D9f4Vcb/THgR2oSEq7XFo9GsVgSL/DraggableImageTrack.js"],"sourcesContent":["// Draggable horizontal image gallery with parallax effect\nimport{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{useRef,useState,useCallback,useEffect,startTransition,useMemo}from\"react\";import{addPropertyControls,ControlType}from\"framer\";/**\n * Draggable Image Track\n *\n * @framerIntrinsicWidth 1200\n * @framerIntrinsicHeight 600\n *\n * @framerSupportedLayoutWidth fixed\n * @framerSupportedLayoutHeight fixed\n */export default function DraggableImageTrack(props){const{media,gap,imageWidth,imageHeight,animationDuration,backgroundColor,autoRotate,rotationSpeed,tiltEnabled,tiltIntensity,glowEnabled,glowColor,glowIntensity,glowSpread,borderEnabled,borderWidth,borderColor,borderRadius,nameFont,nameColor}=props;const trackRef=useRef(null);const[mouseDownAt,setMouseDownAt]=useState(0);const[offset,setOffset]=useState(0);const prevOffsetRef=useRef(0);const currentOffsetRef=useRef(0);const isDraggingRef=useRef(false);const[isDragging,setIsDragging]=useState(false);const[hoveredIndex,setHoveredIndex]=useState(null);const[tiltStyle,setTiltStyle]=useState({rotateX:0,rotateY:0});const[isHolding,setIsHolding]=useState(false);// Triple the images array for infinite scroll - memoized\nconst displayImages=useMemo(()=>[...media,...media,...media],[media]);// Calculate total width of one set of images - memoized\nconst singleSetWidth=useMemo(()=>media.length*(imageWidth+gap),[media.length,imageWidth,gap]);const handleOnDown=useCallback(clientX=>{setMouseDownAt(clientX);isDraggingRef.current=true;setIsDragging(true);setIsHolding(true);prevOffsetRef.current=currentOffsetRef.current;},[]);const handleOnUp=useCallback(()=>{setMouseDownAt(0);isDraggingRef.current=false;setIsDragging(false);setIsHolding(false);prevOffsetRef.current=currentOffsetRef.current;},[]);const handleOnMove=useCallback(clientX=>{if(mouseDownAt===0||!isDraggingRef.current)return;const mouseDelta=mouseDownAt-clientX;const nextOffset=prevOffsetRef.current+mouseDelta;currentOffsetRef.current=nextOffset;// Update offset state during drag to maintain position\nstartTransition(()=>setOffset(nextOffset));},[mouseDownAt]);const handleCardMouseMove=useCallback((e,index)=>{if(!tiltEnabled||isDraggingRef.current)return;const card=e.currentTarget;const rect=card.getBoundingClientRect();const x=e.clientX-rect.left;const y=e.clientY-rect.top;const centerX=rect.width/2;const centerY=rect.height/2;const rotateX=(y-centerY)/centerY*-tiltIntensity;const rotateY=(x-centerX)/centerX*tiltIntensity;setHoveredIndex(index);setTiltStyle({rotateX,rotateY});},[tiltEnabled,tiltIntensity]);const handleCardMouseLeave=useCallback(()=>{setHoveredIndex(null);setTiltStyle({rotateX:0,rotateY:0});},[]);// Auto-rotation effect using CSS animation\nuseEffect(()=>{if(!trackRef.current)return;if(autoRotate&&!isDragging&&!isHolding){const animationDuration=singleSetWidth/rotationSpeed*1e3;trackRef.current.style.animation=`autoRotate ${animationDuration}ms linear infinite`;trackRef.current.style.animationPlayState=\"running\";}else{trackRef.current.style.animation=\"none\";}},[autoRotate,rotationSpeed,singleSetWidth,isDragging,isHolding]);useEffect(()=>{if(typeof window===\"undefined\")return;const onMouseDown=e=>handleOnDown(e.clientX);const onTouchStart=e=>handleOnDown(e.touches[0].clientX);const onMouseUp=()=>handleOnUp();const onTouchEnd=()=>handleOnUp();const onMouseMove=e=>handleOnMove(e.clientX);const onTouchMove=e=>handleOnMove(e.touches[0].clientX);window.addEventListener(\"mousedown\",onMouseDown);window.addEventListener(\"touchstart\",onTouchStart);window.addEventListener(\"mouseup\",onMouseUp);window.addEventListener(\"touchend\",onTouchEnd);window.addEventListener(\"mousemove\",onMouseMove);window.addEventListener(\"touchmove\",onTouchMove);return()=>{window.removeEventListener(\"mousedown\",onMouseDown);window.removeEventListener(\"touchstart\",onTouchStart);window.removeEventListener(\"mouseup\",onMouseUp);window.removeEventListener(\"touchend\",onTouchEnd);window.removeEventListener(\"mousemove\",onMouseMove);window.removeEventListener(\"touchmove\",onTouchMove);};},[handleOnDown,handleOnUp,handleOnMove]);return /*#__PURE__*/_jsxs(\"div\",{style:{width:\"100%\",height:\"100%\",backgroundColor,overflow:\"hidden\",position:\"relative\"},children:[/*#__PURE__*/_jsx(\"style\",{children:`\n                @keyframes autoRotate {\n                    from {\n                        transform: translate(calc(-50% - ${offset%singleSetWidth}vmin), -50%);\n                    }\n                    to {\n                        transform: translate(calc(-50% - ${offset%singleSetWidth+singleSetWidth}vmin), -50%);\n                    }\n                }\n            `}),/*#__PURE__*/_jsx(\"div\",{ref:trackRef,style:{display:\"flex\",gap:`${gap}vmin`,position:\"absolute\",left:\"50%\",top:\"50%\",transform:`translate(calc(-50% - ${offset%singleSetWidth}vmin), -50%)`,userSelect:\"none\",willChange:\"transform\",transition:isDragging?\"none\":`transform ${animationDuration}ms cubic-bezier(0.25, 0.46, 0.45, 0.94)`},children:displayImages.map((image,index)=>{const originalIndex=index%media.length;const isVideo=image.mediaType===\"video\";const MediaElement=isVideo?\"video\":\"img\";const mediaSrc=image.inputMethod===\"upload\"?image.fileUpload:image.src;const isHovered=hoveredIndex===index;const verticalOffset=originalIndex%2===0?\"0\":Math.floor(originalIndex/2)%2===0?\"-8vmin\":\"8vmin\";return /*#__PURE__*/_jsxs(\"div\",{style:{position:\"relative\",width:`${imageWidth}vmin`,height:`${imageHeight}vmin`},onMouseMove:e=>handleCardMouseMove(e,index),onMouseLeave:handleCardMouseLeave,onMouseDown:e=>handleOnDown(e.clientX),onTouchStart:e=>{e.preventDefault();handleOnDown(e.touches[0].clientX);},children:[/*#__PURE__*/_jsx(MediaElement,{className:\"image\",src:mediaSrc,alt:image.alt,draggable:false,...isVideo?{autoPlay:true,loop:true,muted:true,playsInline:true,preload:\"auto\"}:{loading:index<media.length*2?\"eager\":\"lazy\"},style:{width:\"100%\",height:\"100%\",objectFit:\"cover\",objectPosition:\"50% center\",pointerEvents:\"auto\",transform:isHovered&&tiltEnabled?`translateY(${verticalOffset}) perspective(1000px) rotateX(${tiltStyle.rotateX}deg) rotateY(${tiltStyle.rotateY}deg) scale(1.05)`:`translateY(${verticalOffset})`,transition:isHovered?\"transform 0.1s ease-out, box-shadow 0.1s ease-out, filter 0.1s ease-out\":\"transform 0.3s ease-out, box-shadow 0.3s ease-out, filter 0.3s ease-out\",boxShadow:isHovered&&glowEnabled?`0 0 ${glowSpread*.5}px ${glowColor}, 0 0 ${glowSpread}px ${glowColor}`:\"none\",filter:isHovered&&glowEnabled?`brightness(${1+glowIntensity/100})`:\"none\",willChange:isHovered?\"transform, box-shadow, filter\":\"auto\",border:borderEnabled?`${borderWidth}px solid ${borderColor}`:\"none\",borderRadius:`${borderRadius}px`}}),image.name&&/*#__PURE__*/_jsx(\"div\",{style:{position:\"absolute\",bottom:\"0\",left:\"50%\",transform:`translateX(-50%) translateY(${verticalOffset})`,color:nameColor,padding:\"8px 16px\",borderRadius:`${borderRadius}px ${borderRadius}px 0 0`,whiteSpace:\"nowrap\",opacity:isHovered?1:0,transition:\"opacity 0.2s ease-out\",pointerEvents:\"none\",...nameFont},children:image.name})]},index);})})]});}addPropertyControls(DraggableImageTrack,{media:{type:ControlType.Array,control:{type:ControlType.Object,controls:{mediaType:{type:ControlType.Enum,title:\"Type\",options:[\"image\",\"video\"],optionTitles:[\"Image\",\"Video\"],defaultValue:\"image\",displaySegmentedControl:true},inputMethod:{type:ControlType.Enum,title:\"Input Method\",options:[\"link\",\"upload\"],optionTitles:[\"Link\",\"Upload\"],defaultValue:\"link\",displaySegmentedControl:true},src:{type:ControlType.String,title:\"URL\",defaultValue:\"https://images.unsplash.com/photo-1524781289445-ddf8f5695861?ixlib=rb-4.0.3&ixid=MnwxMjA3fDB8MHxwaG90by1wYWdlfHx8fGVufDB8fHx8&auto=format&fit=crop&w=1770&q=80\",hidden:({inputMethod})=>inputMethod===\"upload\"},fileUpload:{type:ControlType.File,title:\"File\",allowedFileTypes:[\"jpg\",\"jpeg\",\"png\",\"gif\",\"webp\",\"svg\",\"mp4\",\"webm\",\"mov\"],hidden:({inputMethod})=>inputMethod===\"link\"},name:{type:ControlType.String,title:\"Name\",defaultValue:\"\"},alt:{type:ControlType.String,defaultValue:\"Gallery image\"}}},defaultValue:[{src:\"https://images.unsplash.com/photo-1524781289445-ddf8f5695861?ixlib=rb-4.0.3&ixid=MnwxMjA3fDB8MHxwaG90by1wYWdlfHx8fGVufDB8fHx8&auto=format&fit=crop&w=1770&q=80\",alt:\"Gallery image 1\",mediaType:\"image\",inputMethod:\"link\",name:\"Image 1\"},{src:\"https://framerusercontent.com/assets/MLWPbW1dUQawJLhhun3dBwpgJak.mp4\",alt:\"Gallery video 1\",mediaType:\"video\",inputMethod:\"link\",name:\"Video 1\"},{src:\"https://images.unsplash.com/photo-1618202133208-2907bebba9e1?ixlib=rb-4.0.3&ixid=MnwxMjA3fDB8MHxwaG90by1wYWdlfHx8fGVufDB8fHx8&auto=format&fit=crop&w=1770&q=80\",alt:\"Gallery image 2\",mediaType:\"image\",inputMethod:\"link\",name:\"Image 2\"},{src:\"https://framerusercontent.com/assets/MLWPbW1dUQawJLhhun3dBwpgJak.mp4\",alt:\"Gallery video 2\",mediaType:\"video\",inputMethod:\"link\",name:\"Video 2\"},{src:\"https://images.unsplash.com/photo-1548021682-1720ed403a5b?ixlib=rb-4.0.3&ixid=MnwxMjA3fDB8MHxwaG90by1wYWdlfHx8fGVufDB8fHx8&auto=format&fit=crop&w=1770&q=80\",alt:\"Gallery image 3\",mediaType:\"image\",inputMethod:\"link\",name:\"Image 3\"},{src:\"https://framerusercontent.com/assets/MLWPbW1dUQawJLhhun3dBwpgJak.mp4\",alt:\"Gallery video 3\",mediaType:\"video\",inputMethod:\"link\",name:\"Video 3\"}]},autoRotate:{type:ControlType.Boolean,title:\"Auto Rotate\",defaultValue:true,enabledTitle:\"On\",disabledTitle:\"Off\"},rotationSpeed:{type:ControlType.Number,title:\"Rotation Speed\",defaultValue:10,min:1,max:50,step:1,unit:\"vmin/s\",hidden:({autoRotate})=>!autoRotate},tiltEnabled:{type:ControlType.Boolean,title:\"Tilt Effect\",defaultValue:true,enabledTitle:\"On\",disabledTitle:\"Off\"},tiltIntensity:{type:ControlType.Number,title:\"Tilt Intensity\",defaultValue:15,min:5,max:30,step:1,unit:\"deg\",hidden:({tiltEnabled})=>!tiltEnabled},glowEnabled:{type:ControlType.Boolean,title:\"Glow Effect\",defaultValue:true,enabledTitle:\"On\",disabledTitle:\"Off\"},glowColor:{type:ControlType.Color,title:\"Glow Color\",defaultValue:\"rgba(255, 255, 255, 0.6)\",hidden:({glowEnabled})=>!glowEnabled},glowIntensity:{type:ControlType.Number,title:\"Glow Intensity\",defaultValue:10,min:0,max:50,step:1,unit:\"%\",hidden:({glowEnabled})=>!glowEnabled},glowSpread:{type:ControlType.Number,title:\"Glow Spread\",defaultValue:60,min:10,max:100,step:5,unit:\"px\",hidden:({glowEnabled})=>!glowEnabled},borderEnabled:{type:ControlType.Boolean,title:\"Border\",defaultValue:false,enabledTitle:\"On\",disabledTitle:\"Off\"},borderWidth:{type:ControlType.Number,title:\"Border Width\",defaultValue:2,min:1,max:10,step:1,unit:\"px\",hidden:({borderEnabled})=>!borderEnabled},borderColor:{type:ControlType.Color,title:\"Border Color\",defaultValue:\"#FFFFFF\",hidden:({borderEnabled})=>!borderEnabled},borderRadius:{type:ControlType.Number,title:\"Border Radius\",defaultValue:8,min:0,max:50,step:1,unit:\"px\",hidden:({borderEnabled})=>!borderEnabled},nameFont:{type:ControlType.Font,title:\"Name Font\",defaultValue:{fontSize:\"14px\",variant:\"Medium\",letterSpacing:\"-0.01em\",lineHeight:\"1em\"},controls:\"extended\",defaultFontType:\"sans-serif\"},nameColor:{type:ControlType.Color,title:\"Name Color\",defaultValue:\"#FFFFFF\"},gap:{type:ControlType.Number,title:\"Gap\",defaultValue:4,min:0,max:10,step:.5,unit:\"vmin\"},imageWidth:{type:ControlType.Number,title:\"Image Width\",defaultValue:36,min:10,max:80,step:1,unit:\"vmin\"},imageHeight:{type:ControlType.Number,title:\"Image Height\",defaultValue:50.4,min:10,max:100,step:1,unit:\"vmin\"},animationDuration:{type:ControlType.Number,title:\"Animation Duration\",defaultValue:1200,min:100,max:3e3,step:100,unit:\"ms\"},backgroundColor:{type:ControlType.Color,title:\"Background\",defaultValue:\"#000000\"}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"DraggableImageTrack\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\",\"framerIntrinsicHeight\":\"600\",\"framerSupportedLayoutHeight\":\"fixed\",\"framerSupportedLayoutWidth\":\"fixed\",\"framerIntrinsicWidth\":\"1200\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./DraggableImageTrack.map"],"mappings":"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"}