{"version":3,"file":"ImageComparisonSlider.DJTY9zFa.mjs","names":["useRef","useState","useCallback","_Fragment","__esmMin","init_ssg_sandbox_shims","init_npm_react_18_3_1","window","te","ce","init_jsx_runtime","ne","c","_e","de","addPropertyControls","init_framer_BWFVvmND","useIsStaticRenderer","ControlType","ImageComparisonSlider","props","isHorizontal","orientation","containerRef","position","setPosition","initialPosition","targetPosition","setTargetPosition","isDragging","setIsDragging","isStatic","hovering","setHovering","updatePositionFromEvent","rect","x","newPosition","followCursor","y","handleClick","handleDoubleClick","handleMouseDown","handleMouseMove","handleMouseUp","handleGlobalMouseMove","handleGlobalMouseUp","animationFrameId","animate","diff","currentPosition","step","cursorStyle","afterImage","beforeImage","dividerWidth","dividerColor","dividerShadow","showHandle","handleSize","handleColor","l","init_ImageComparisonSlider"],"sources":["https:/framerusercontent.com/modules/dHk0vI2CBAhvC99p5kcD/2FhfMjn6qX7tX8EzWawO/ImageComparisonSlider.js"],"sourcesContent":["// Image Comparison Slider with interactive divider that follows the web cursor\nimport{jsx as _jsx,jsxs as _jsxs,Fragment as _Fragment}from\"react/jsx-runtime\";import{addPropertyControls,ControlType,useIsStaticRenderer}from\"framer\";import{useCallback,useEffect,useRef,useState,startTransition}from\"react\";/**\n * Image Comparison Slider\n *\n * @framerIntrinsicWidth 500\n * @framerIntrinsicHeight 300\n *\n * @framerSupportedLayoutWidth fixed\n * @framerSupportedLayoutHeight fixed\n */export default function ImageComparisonSlider(props){const{beforeImage={src:\"https://framerusercontent.com/images/GfGkADagM4KEibNcIiRUWlfrR0.jpg\",alt:\"Before image\"},afterImage={src:\"https://framerusercontent.com/images/aNsAT3jCvt4zglbWCUoFe33Q.jpg\",alt:\"After image\"},orientation=\"horizontal\",initialPosition=50,dividerColor=\"#FFFFFF\",dividerWidth=2,dividerShadow=true,showHandle=false,handleColor=\"#FFFFFF\",handleSize=40,followCursor=true,cursorStyle=\"resize\"}=props;const isHorizontal=orientation===\"horizontal\";const containerRef=useRef(null);const[position,setPosition]=useState(initialPosition);const[targetPosition,setTargetPosition]=useState(initialPosition);const[isDragging,setIsDragging]=useState(false);const isStatic=useIsStaticRenderer();// For cursor-following\nconst[hovering,setHovering]=useState(false);const updatePositionFromEvent=useCallback(e=>{if(!containerRef.current)return;const rect=containerRef.current.getBoundingClientRect();if(isHorizontal){const x=e.clientX-rect.left;const newPosition=Math.max(0,Math.min(100,x/rect.width*100));if(isDragging){startTransition(()=>setPosition(newPosition));}else if(followCursor&&hovering){startTransition(()=>setTargetPosition(newPosition));}}else{const y=e.clientY-rect.top;const newPosition=Math.max(0,Math.min(100,y/rect.height*100));if(isDragging){startTransition(()=>setPosition(newPosition));}else if(followCursor&&hovering){startTransition(()=>setTargetPosition(newPosition));}}},[isHorizontal,isDragging,followCursor,hovering]);const handleClick=useCallback(e=>{if(!isDragging){updatePositionFromEvent(e);if(!containerRef.current)return;const rect=containerRef.current.getBoundingClientRect();if(isHorizontal){const x=e.clientX-rect.left;const newPosition=Math.max(0,Math.min(100,x/rect.width*100));startTransition(()=>setPosition(newPosition));}else{const y=e.clientY-rect.top;const newPosition=Math.max(0,Math.min(100,y/rect.height*100));startTransition(()=>setPosition(newPosition));}}},[isDragging,updatePositionFromEvent,isHorizontal]);const handleDoubleClick=()=>{startTransition(()=>setPosition(initialPosition));};const handleMouseDown=e=>{e.preventDefault();startTransition(()=>setIsDragging(true));};const handleMouseMove=useCallback(e=>{if(isDragging||followCursor&&hovering){updatePositionFromEvent(e);}},[isDragging,updatePositionFromEvent,followCursor,hovering]);const handleMouseUp=useCallback(()=>{startTransition(()=>setIsDragging(false));},[]);useEffect(()=>{if(isStatic)return;const handleGlobalMouseMove=e=>handleMouseMove(e);const handleGlobalMouseUp=()=>handleMouseUp();if(isDragging){window.addEventListener(\"mousemove\",handleGlobalMouseMove);window.addEventListener(\"mouseup\",handleGlobalMouseUp);}return()=>{window.removeEventListener(\"mousemove\",handleGlobalMouseMove);window.removeEventListener(\"mouseup\",handleGlobalMouseUp);};},[isDragging,handleMouseMove,handleMouseUp,isStatic]);// Smooth animation loop for cursor following\nuseEffect(()=>{if(isStatic||isDragging||!followCursor||!hovering)return;let animationFrameId;const animate=()=>{setPosition(currentPosition=>{const diff=targetPosition-currentPosition;const step=diff*.08// Easing factor for smooth follow\n;if(Math.abs(diff)<.1){return targetPosition;}return currentPosition+step;});animationFrameId=requestAnimationFrame(animate);};animationFrameId=requestAnimationFrame(animate);return()=>{if(animationFrameId){cancelAnimationFrame(animationFrameId);}};},[targetPosition,isStatic,isDragging,followCursor,hovering]);// For hover/cursor-follow\nconst handleMouseEnter=()=>setHovering(true);const handleMouseLeave=()=>setHovering(false);const getCursorStyle=()=>{if(cursorStyle===\"none\")return\"none\";if(cursorStyle===\"pointer\")return\"pointer\";if(isDragging){return isHorizontal?\"ew-resize\":\"ns-resize\";}if(followCursor){return isHorizontal?\"ew-resize\":\"ns-resize\";}return\"pointer\";};return /*#__PURE__*/_jsxs(\"div\",{ref:containerRef,style:{position:\"relative\",width:\"100%\",height:\"100%\",overflow:\"hidden\",cursor:getCursorStyle(),userSelect:\"none\"},onClick:isStatic?undefined:handleClick,onMouseMove:isStatic?undefined:handleMouseMove,onMouseDown:isStatic?undefined:handleMouseDown,onMouseUp:isStatic?undefined:handleMouseUp,onDoubleClick:handleDoubleClick,onMouseEnter:handleMouseEnter,onMouseLeave:handleMouseLeave,tabIndex:0,role:\"slider\",\"aria-valuenow\":position,\"aria-valuemin\":0,\"aria-valuemax\":100,\"aria-orientation\":orientation,children:[/*#__PURE__*/_jsx(\"div\",{style:{position:\"absolute\",top:0,left:0,width:\"100%\",height:\"100%\",backgroundImage:`url(${afterImage.src})`,backgroundSize:\"cover\",backgroundPosition:\"center\"},\"aria-label\":afterImage.alt,role:\"img\"}),/*#__PURE__*/_jsx(\"div\",{style:{position:\"absolute\",top:0,left:0,width:\"100%\",height:\"100%\",backgroundImage:`url(${beforeImage.src})`,backgroundSize:\"cover\",backgroundPosition:\"center\",clipPath:isHorizontal?`inset(0 ${100-position}% 0 0)`:`inset(0 0 ${100-position}% 0)`},\"aria-label\":beforeImage.alt,role:\"img\"}),/*#__PURE__*/_jsx(\"div\",{style:{position:\"absolute\",top:isHorizontal?0:`${position}%`,left:isHorizontal?`${position}%`:0,width:isHorizontal?`${dividerWidth}px`:\"100%\",height:isHorizontal?\"100%\":`${dividerWidth}px`,backgroundColor:dividerColor,boxShadow:dividerShadow?\"0 0 5px rgba(0, 0, 0, 0.7)\":\"none\",transform:isHorizontal?`translateX(-${dividerWidth/2}px) translate3d(0, 0, 0)`:`translateY(-${dividerWidth/2}px) translate3d(0, 0, 0)`,cursor:cursorStyle===\"none\"?\"none\":isHorizontal?\"ew-resize\":\"ns-resize\",zIndex:2,transition:isDragging?\"none\":hovering&&!isDragging?\"background 0.15s, box-shadow 0.15s\":\"all 0.1s ease-out\"},onMouseDown:isStatic?undefined:handleMouseDown}),showHandle&&/*#__PURE__*/_jsx(\"div\",{style:{position:\"absolute\",top:isHorizontal?`calc(50% - ${handleSize/2}px)`:`${position}%`,left:isHorizontal?`${position}%`:`calc(50% - ${handleSize/2}px)`,width:`${handleSize}px`,height:`${handleSize}px`,borderRadius:\"50%\",backgroundColor:handleColor,border:`2px solid ${handleColor}`,boxShadow:\"0 0 5px rgba(0, 0, 0, 0.5)\",transform:isHorizontal?`translateX(-${handleSize/2}px) translate3d(0, 0, 0)`:`translateY(-${handleSize/2}px) translate3d(0, 0, 0)`,cursor:cursorStyle===\"none\"?\"none\":isHorizontal?\"ew-resize\":\"ns-resize\",zIndex:3,display:\"flex\",justifyContent:\"center\",alignItems:\"center\",transition:isDragging?\"none\":\"all 0.1s ease-out\"},onMouseDown:isStatic?undefined:handleMouseDown,children:/*#__PURE__*/_jsx(\"svg\",{width:handleSize*1.04,height:handleSize*1.04,viewBox:\"0 0 56 48\",fill:\"none\",xmlns:\"http://www.w3.org/2000/svg\",style:{display:\"block\"},\"aria-hidden\":\"true\",children:isHorizontal?/*#__PURE__*/_jsxs(_Fragment,{children:[/*#__PURE__*/_jsx(\"polyline\",{points:\"20,16 12,24 20,32\",stroke:\"black\",strokeWidth:\"4\",strokeLinecap:\"round\",strokeLinejoin:\"round\",fill:\"none\"}),/*#__PURE__*/_jsx(\"polyline\",{points:\"36,16 44,24 36,32\",stroke:\"black\",strokeWidth:\"4\",strokeLinecap:\"round\",strokeLinejoin:\"round\",fill:\"none\"})]}):/*#__PURE__*/_jsxs(_Fragment,{children:[/*#__PURE__*/_jsx(\"polyline\",{points:\"16,20 28,10 40,20\",stroke:\"black\",strokeWidth:\"4\",strokeLinecap:\"round\",strokeLinejoin:\"round\",fill:\"none\"}),/*#__PURE__*/_jsx(\"polyline\",{points:\"16,36 28,46 40,36\",stroke:\"black\",strokeWidth:\"4\",strokeLinecap:\"round\",strokeLinejoin:\"round\",fill:\"none\"})]})})})]});}addPropertyControls(ImageComparisonSlider,{beforeImage:{type:ControlType.ResponsiveImage,title:\"Before Image\"},afterImage:{type:ControlType.ResponsiveImage,title:\"After Image\"},orientation:{type:ControlType.Enum,title:\"Orientation\",options:[\"horizontal\",\"vertical\"],optionTitles:[\"Horizontal\",\"Vertical\"],defaultValue:\"horizontal\",displaySegmentedControl:true},initialPosition:{type:ControlType.Number,title:\"Initial Position\",defaultValue:50,min:0,max:100,step:1,unit:\"%\"},dividerColor:{type:ControlType.Color,title:\"Divider Color\",defaultValue:\"#FFFFFF\"},dividerWidth:{type:ControlType.Number,title:\"Divider Width\",defaultValue:2,min:1,max:20,step:1,unit:\"px\"},dividerShadow:{type:ControlType.Boolean,title:\"Divider Shadow\",defaultValue:true,enabledTitle:\"On\",disabledTitle:\"Off\"},showHandle:{type:ControlType.Boolean,title:\"Show Handle\",defaultValue:false,enabledTitle:\"Show\",disabledTitle:\"Hide\"},handleColor:{type:ControlType.Color,title:\"Handle Color\",defaultValue:\"#FFFFFF\",hidden:({showHandle})=>!showHandle},handleSize:{type:ControlType.Number,title:\"Handle Size\",defaultValue:40,min:20,max:80,step:1,unit:\"px\",hidden:({showHandle})=>!showHandle},followCursor:{type:ControlType.Boolean,title:\"Follow Cursor\",defaultValue:true,enabledTitle:\"On\",disabledTitle:\"Off\"},cursorStyle:{type:ControlType.Enum,title:\"Cursor Style\",options:[\"resize\",\"pointer\",\"none\"],optionTitles:[\"Resize\",\"Pointer\",\"None\"],defaultValue:\"resize\",displaySegmentedControl:true}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"ImageComparisonSlider\",\"slots\":[],\"annotations\":{\"framerIntrinsicWidth\":\"500\",\"framerSupportedLayoutHeight\":\"fixed\",\"framerSupportedLayoutWidth\":\"fixed\",\"framerContractVersion\":\"1\",\"framerIntrinsicHeight\":\"300\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./ImageComparisonSlider.map"],"mappings":"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"}