{"version":3,"file":"RoomImageCompare.BuffzUt7.mjs","names":["React.useState","React.useRef","React.useCallback","React.useMemo","React.startTransition"],"sources":["https:/framerusercontent.com/modules/FfobjRIxW7WMv9jtsD7R/J5DaxcyUYzQ6psWLOihn/RoomImageCompare.js"],"sourcesContent":["import{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import*as React from\"react\";import{createPortal}from\"react-dom\";import{addPropertyControls,ControlType,useIsStaticRenderer}from\"framer\";import{motion,AnimatePresence}from\"framer-motion\";/**\n * @framerSupportedLayoutWidth any-prefer-fixed\n * @framerSupportedLayoutHeight any-prefer-fixed\n */export default function RoomImageCompare(props){const{imageA={src:\"https://framerusercontent.com/images/f9RiWoNpmlCMqVRIHz8l8wYfeI.jpg\",alt:\"Room state A\"},imageB={src:\"https://framerusercontent.com/images/2uTNEj5aTl2K3NJaEFWMbnrA.jpg\",alt:\"Room state B\"},initialPosition,dividerColor,handleSize,cornerRadius,backdropColor,enableLightbox,labelA,labelB,labelFont,style}=props;const isStatic=useIsStaticRenderer();const[position,setPosition]=React.useState(()=>Math.max(0,Math.min(100,initialPosition)));const[isDragging,setIsDragging]=React.useState(false);const[isOpen,setIsOpen]=React.useState(false);const[isFinePointer,setIsFinePointer]=React.useState(false);const[isHovered,setIsHovered]=React.useState(false);const rafRef=React.useRef(null);const pendingPositionRef=React.useRef(position);const previousBodyStylesRef=React.useRef({userSelect:\"\",overflow:\"\"});const gestureRef=React.useRef(null);const[isOverHitZone,setIsOverHitZone]=React.useState(false);React.useEffect(()=>{if(typeof window!==\"undefined\"){const mediaQuery=window.matchMedia(\"(hover: hover) and (pointer: fine)\");setIsFinePointer(mediaQuery.matches);}},[]);React.useEffect(()=>{const clamped=Math.max(0,Math.min(100,initialPosition));React.startTransition(()=>setPosition(clamped));},[initialPosition]);React.useEffect(()=>{return()=>{if(rafRef.current!==null&&typeof window!==\"undefined\"){window.cancelAnimationFrame(rafRef.current);}};},[]);React.useEffect(()=>{if(typeof window===\"undefined\")return;if(!isOpen)return;const onKeyDown=event=>{if(event.key===\"Escape\"){React.startTransition(()=>setIsOpen(false));}};window.addEventListener(\"keydown\",onKeyDown);return()=>window.removeEventListener(\"keydown\",onKeyDown);},[isOpen]);const updatePosition=React.useCallback(next=>{pendingPositionRef.current=Math.max(0,Math.min(100,next));if(rafRef.current!==null||typeof window===\"undefined\")return;rafRef.current=window.requestAnimationFrame(()=>{const safe=pendingPositionRef.current;React.startTransition(()=>setPosition(safe));rafRef.current=null;});},[]);const updateFromPointer=React.useCallback((clientX,element)=>{const rect=element.getBoundingClientRect();if(rect.width<=0)return;const next=(clientX-rect.left)/rect.width*100;updatePosition(next);},[updatePosition]);const isWithinInlineHitZone=React.useCallback((clientX,element)=>{const rect=element.getBoundingClientRect();if(rect.width<=0)return false;const dividerX=rect.left+position/100*rect.width;const hitPadding=12;const halfZone=handleSize/2+hitPadding;return Math.abs(clientX-dividerX)<=halfZone;},[handleSize,position]);const lockBodyInteractions=React.useCallback(()=>{if(typeof document===\"undefined\")return;previousBodyStylesRef.current={userSelect:document.body.style.userSelect,overflow:document.body.style.overflow};document.body.style.userSelect=\"none\";document.body.style.overflow=\"hidden\";},[]);const unlockBodyInteractions=React.useCallback(()=>{if(typeof document===\"undefined\")return;document.body.style.userSelect=previousBodyStylesRef.current.userSelect;document.body.style.overflow=previousBodyStylesRef.current.overflow;},[]);const onPointerDownFullSurface=React.useCallback(event=>{if(isStatic)return;const element=event.currentTarget;event.preventDefault();updateFromPointer(event.clientX,element);element.setPointerCapture?.(event.pointerId);lockBodyInteractions();React.startTransition(()=>setIsDragging(true));},[isStatic,lockBodyInteractions,updateFromPointer]);const onPointerMoveFullSurface=React.useCallback(event=>{if(!isDragging||isStatic)return;updateFromPointer(event.clientX,event.currentTarget);},[isDragging,isStatic,updateFromPointer]);const onPointerUpFullSurface=React.useCallback(event=>{if(isStatic)return;event.currentTarget.releasePointerCapture?.(event.pointerId);unlockBodyInteractions();React.startTransition(()=>setIsDragging(false));},[isStatic,unlockBodyInteractions]);const onPointerDownInline=React.useCallback(event=>{if(isStatic)return;const element=event.currentTarget;const startedInHitZone=isWithinInlineHitZone(event.clientX,element);gestureRef.current={pointerId:event.pointerId,startX:event.clientX,startY:event.clientY,moved:false,startedInHitZone};if(!startedInHitZone)return;event.preventDefault();updateFromPointer(event.clientX,element);element.setPointerCapture?.(event.pointerId);lockBodyInteractions();React.startTransition(()=>setIsDragging(true));},[isStatic,isWithinInlineHitZone,lockBodyInteractions,updateFromPointer]);const onPointerMoveInline=React.useCallback(event=>{if(isStatic)return;const overHit=isWithinInlineHitZone(event.clientX,event.currentTarget);React.startTransition(()=>setIsOverHitZone(previous=>previous===overHit?previous:overHit));const gesture=gestureRef.current;if(!gesture||gesture.pointerId!==event.pointerId)return;const movedDistance=Math.hypot(event.clientX-gesture.startX,event.clientY-gesture.startY);if(movedDistance>6&&!gesture.moved){gestureRef.current={...gesture,moved:true};}if(!gesture.startedInHitZone||!isDragging)return;updateFromPointer(event.clientX,event.currentTarget);},[isDragging,isStatic,isWithinInlineHitZone,updateFromPointer]);const onPointerUpInline=React.useCallback(event=>{if(isStatic)return;const gesture=gestureRef.current;if(!gesture||gesture.pointerId!==event.pointerId)return;if(gesture.startedInHitZone){event.currentTarget.releasePointerCapture?.(event.pointerId);unlockBodyInteractions();React.startTransition(()=>setIsDragging(false));}else if(!gesture.moved){if(enableLightbox){React.startTransition(()=>setIsOpen(true));}else{updateFromPointer(event.clientX,event.currentTarget);}}gestureRef.current=null;},[enableLightbox,isStatic,unlockBodyInteractions,updateFromPointer]);const onPointerCancelInline=React.useCallback(event=>{if(isStatic)return;const gesture=gestureRef.current;if(!gesture||gesture.pointerId!==event.pointerId)return;if(gesture.startedInHitZone){event.currentTarget.releasePointerCapture?.(event.pointerId);unlockBodyInteractions();React.startTransition(()=>setIsDragging(false));}gestureRef.current=null;},[isStatic,unlockBodyInteractions]);React.useEffect(()=>{return()=>unlockBodyInteractions();},[unlockBodyInteractions]);const labelBaseStyle=React.useMemo(()=>({position:\"absolute\",top:12,zIndex:4,padding:\"6px 9px\",borderRadius:999,background:\"rgba(0,0,0,0.35)\",color:\"#FFFFFF\",textTransform:\"uppercase\",pointerEvents:\"none\",fontFamily:labelFont?.fontFamily,fontSize:labelFont?.fontSize,lineHeight:labelFont?.lineHeight,letterSpacing:labelFont?.letterSpacing,fontWeight:labelFont?.fontWeight,fontStyle:labelFont?.fontStyle,textAlign:labelFont?.textAlign,width:\"max-content\",minWidth:\"max-content\"}),[labelFont]);const showExpandButton=enableLightbox&&(!isFinePointer||isHovered);const dividerLeft=`${position}%`;const comparisonView=isInLightbox=>/*#__PURE__*/_jsxs(\"div\",{style:{position:\"relative\",width:\"100%\",height:\"100%\",overflow:\"hidden\",borderRadius:cornerRadius,cursor:isStatic?\"default\":isInLightbox?\"ew-resize\":isOverHitZone||isDragging?\"ew-resize\":enableLightbox?\"zoom-in\":\"pointer\",touchAction:isStatic?\"auto\":isInLightbox?\"none\":\"manipulation\",background:\"#FFFFFF\"},onPointerDown:isInLightbox?onPointerDownFullSurface:onPointerDownInline,onPointerMove:isInLightbox?onPointerMoveFullSurface:onPointerMoveInline,onPointerUp:isInLightbox?onPointerUpFullSurface:onPointerUpInline,onPointerCancel:isInLightbox?onPointerUpFullSurface:onPointerCancelInline,onMouseEnter:()=>{if(!isStatic)React.startTransition(()=>setIsHovered(true));},onMouseLeave:()=>{if(!isStatic){React.startTransition(()=>{setIsHovered(false);setIsOverHitZone(false);});}},role:\"slider\",\"aria-label\":\"Room image comparison\",\"aria-valuemin\":0,\"aria-valuemax\":100,\"aria-valuenow\":Math.round(position),tabIndex:isStatic?-1:0,onKeyDown:event=>{if(isStatic)return;if(event.key===\"ArrowLeft\")updatePosition(position-2);if(event.key===\"ArrowRight\")updatePosition(position+2);},children:[/*#__PURE__*/_jsx(\"img\",{...imageA,alt:imageA?.alt||\"Room state A\",style:{position:\"absolute\",inset:0,width:\"100%\",height:\"100%\",objectFit:\"cover\",userSelect:\"none\",pointerEvents:\"none\"}}),/*#__PURE__*/_jsx(\"div\",{style:{position:\"absolute\",inset:0,overflow:\"hidden\",clipPath:`inset(0 ${100-position}% 0 0)`},children:/*#__PURE__*/_jsx(\"img\",{...imageB,alt:imageB?.alt||\"Room state B\",style:{position:\"absolute\",inset:0,width:\"100%\",height:\"100%\",objectFit:\"cover\",userSelect:\"none\",pointerEvents:\"none\"}})}),labelA?/*#__PURE__*/_jsx(\"div\",{style:{...labelBaseStyle,left:12},children:labelA}):null,labelB?/*#__PURE__*/_jsx(\"div\",{style:{...labelBaseStyle,right:12},children:labelB}):null,/*#__PURE__*/_jsx(\"div\",{style:{position:\"absolute\",top:0,bottom:0,left:dividerLeft,transform:\"translateX(-0.5px)\",width:1,background:dividerColor,zIndex:5,pointerEvents:\"none\"}}),/*#__PURE__*/_jsx(\"div\",{style:{position:\"absolute\",left:dividerLeft,top:\"50%\",transform:\"translate(-50%, -50%)\",width:handleSize,height:handleSize,borderRadius:\"50%\",border:`1px solid ${dividerColor}`,background:\"rgba(0,0,0,0.2)\",backdropFilter:\"blur(2px)\",zIndex:6,pointerEvents:\"none\",boxSizing:\"border-box\"}}),showExpandButton&&!isInLightbox?/*#__PURE__*/_jsx(\"button\",{type:\"button\",\"aria-label\":\"Expand comparison\",onClick:event=>{event.stopPropagation();React.startTransition(()=>setIsOpen(true));},style:{position:\"absolute\",right:12,bottom:12,width:30,height:30,borderRadius:999,border:\"none\",background:\"rgba(0,0,0,0.55)\",color:\"#FFFFFF\",display:\"flex\",alignItems:\"center\",justifyContent:\"center\",cursor:\"pointer\",zIndex:7},children:/*#__PURE__*/_jsx(\"span\",{\"aria-hidden\":true,style:{fontSize:14,lineHeight:1},children:\"⤢\"})}):null]});const aspectRatio=React.useMemo(()=>{const widthValue=typeof style?.width===\"number\"?style.width:336;const heightValue=typeof style?.height===\"number\"?style.height:533;return`${widthValue} / ${heightValue}`;},[style?.height,style?.width]);const lightbox=typeof document!==\"undefined\"&&enableLightbox?/*#__PURE__*/createPortal(/*#__PURE__*/_jsx(AnimatePresence,{children:isOpen?/*#__PURE__*/_jsx(motion.div,{initial:{opacity:0},animate:{opacity:1},exit:{opacity:0},transition:{duration:.2,ease:\"easeOut\"},style:{position:\"fixed\",inset:0,zIndex:10,background:backdropColor,display:\"flex\",alignItems:\"center\",justifyContent:\"center\",padding:24},onClick:()=>React.startTransition(()=>setIsOpen(false)),children:/*#__PURE__*/_jsx(motion.div,{initial:{opacity:0,scale:.98},animate:{opacity:1,scale:1},exit:{opacity:0,scale:.98},transition:{duration:.24,ease:\"easeOut\"},style:{width:\"min(92vw, 1200px)\",maxHeight:\"88vh\",aspectRatio},onClick:event=>event.stopPropagation(),children:comparisonView(true)})},\"room-compare-lightbox\"):null}),document.body):null;return /*#__PURE__*/_jsxs(\"div\",{style:{position:\"relative\",width:336,height:533,...style},children:[comparisonView(false),lightbox]});}addPropertyControls(RoomImageCompare,{imageA:{type:ControlType.ResponsiveImage,title:\"Image A\"},imageB:{type:ControlType.ResponsiveImage,title:\"Image B\"},initialPosition:{type:ControlType.Number,title:\"Start\",min:0,max:100,step:1,defaultValue:50},dividerColor:{type:ControlType.Color,title:\"Divider\",defaultValue:\"#FFFFFF\"},handleSize:{type:ControlType.Number,title:\"Handle\",min:16,max:72,step:1,defaultValue:34},cornerRadius:{type:ControlType.BorderRadius,title:\"Radius\",defaultValue:\"0px\"},backdropColor:{type:ControlType.Color,title:\"Backdrop\",defaultValue:\"rgba(0,0,0,0.75)\"},enableLightbox:{type:ControlType.Boolean,title:\"Lightbox\",defaultValue:true,enabledTitle:\"On\",disabledTitle:\"Off\"},labelA:{type:ControlType.String,title:\"Label A\",defaultValue:\"\",placeholder:\"Before\"},labelB:{type:ControlType.String,title:\"Label B\",defaultValue:\"\",placeholder:\"After\"},labelFont:{type:ControlType.Font,title:\"Label Font\",defaultValue:{fontSize:\"11px\",variant:\"Semibold\",letterSpacing:\"0.08em\",lineHeight:\"1em\",textAlign:\"left\"},controls:\"extended\",defaultFontType:\"sans-serif\"}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"RoomImageCompare\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\",\"framerSupportedLayoutWidth\":\"any-prefer-fixed\",\"framerSupportedLayoutHeight\":\"any-prefer-fixed\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./RoomImageCompare.map"],"mappings":"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"}