{"version":3,"file":"RTLProjectsCarousel.ChYf9aES.mjs","names":["useState","useRef","Children","useCallback"],"sources":["https:/framerusercontent.com/modules/qRsQ5bJqKtq9IddtNwYC/SVoA67iXm9Pqc9uOHP4i/RTLProjectsCarousel.js"],"sourcesContent":["// Default Framer carousel with RTL (right-to-left) support\n// Simple horizontal carousel that doesn't style children - just handles RTL navigation\nimport{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{useState,useRef,useEffect,useCallback,startTransition,Children}from\"react\";import{addPropertyControls,ControlType}from\"framer\";/**\n * RTL Carousel\n *\n * @framerIntrinsicWidth 800\n * @framerIntrinsicHeight 400\n *\n * @framerSupportedLayoutWidth any-prefer-fixed\n * @framerSupportedLayoutHeight any-prefer-fixed\n */export default function RTLCarousel(props){const{children,gap=10,padding=0,showArrows=true,showDots=true,arrowColor=\"#000000\",dotColor=\"#CCCCCC\",activeDotColor=\"#000000\",slideDistance=1,snapToItems=true,dragDirection=\"rtl\",dragSpeed=1,friction=.95}=props;const[currentIndex,setCurrentIndex]=useState(0);const[visibleCount,setVisibleCount]=useState(1);const[maxIndex,setMaxIndex]=useState(0);const containerRef=useRef(null);const trackRef=useRef(null);const scrollPositionRef=useRef(0);const childrenArray=Children.toArray(children);const totalSlides=childrenArray.length;// Calculate visible items and item width\nuseEffect(()=>{if(typeof window!==\"undefined\"&&containerRef.current&&trackRef.current){const updateLayout=()=>{if(!containerRef.current||!trackRef.current||childrenArray.length===0)return;const viewportWidth=containerRef.current.offsetWidth-padding*2;const firstItem=trackRef.current.children[0];if(!firstItem)return;const itemWidth=firstItem.getBoundingClientRect().width+gap;const count=Math.max(1,Math.floor((viewportWidth+gap)/itemWidth));const max=Math.max(0,totalSlides-count);startTransition(()=>{setVisibleCount(count);setMaxIndex(max);});};updateLayout();window.addEventListener(\"resize\",updateLayout);return()=>window.removeEventListener(\"resize\",updateLayout);}},[childrenArray.length,gap,padding,totalSlides]);// Calculate arrow visibility based on scroll position\nconst getArrowVisibility=useCallback(()=>{if(!trackRef.current||childrenArray.length===0){return{canGoNext:false,canGoPrevious:false};}const scrollLeft=trackRef.current.scrollLeft;const scrollWidth=trackRef.current.scrollWidth;const clientWidth=trackRef.current.clientWidth;// canGoNext means can scroll left (reveal left items)\nconst canGoNext=scrollLeft>1;// canGoPrevious means can scroll right (reveal right items)\nconst canGoPrevious=scrollLeft<scrollWidth-clientWidth-1;return{canGoNext,canGoPrevious};},[childrenArray.length]);const[arrowVisibility,setArrowVisibility]=useState({canGoNext:false,canGoPrevious:false});// Update arrow visibility on scroll\nconst handleScroll=useCallback(()=>{if(!trackRef.current)return;scrollPositionRef.current=trackRef.current.scrollLeft;const visibility=getArrowVisibility();setArrowVisibility(visibility);// Update current index based on scroll position\nif(trackRef.current.children.length>0){const firstItem=trackRef.current.children[0];const itemWidth=firstItem.getBoundingClientRect().width+gap;const newIndex=Math.round(scrollPositionRef.current/itemWidth);if(newIndex!==currentIndex){startTransition(()=>setCurrentIndex(Math.max(0,Math.min(newIndex,maxIndex))));}}},[getArrowVisibility,gap,currentIndex,maxIndex]);// Initial arrow visibility\nuseEffect(()=>{const visibility=getArrowVisibility();setArrowVisibility(visibility);},[getArrowVisibility]);// Align carousel to the right on mount and when children change\nuseEffect(()=>{if(typeof window!==\"undefined\"&&trackRef.current){const scrollToRight=()=>{if(!trackRef.current)return;const scrollWidth=trackRef.current.scrollWidth;const clientWidth=trackRef.current.clientWidth;trackRef.current.scrollLeft=scrollWidth-clientWidth;};// Small delay to ensure layout is complete\nconst timer=setTimeout(scrollToRight,0);return()=>clearTimeout(timer);}},[childrenArray.length]);const moveTo=useCallback(index=>{const clampedIndex=Math.max(0,Math.min(index,maxIndex));if(!trackRef.current||trackRef.current.children.length===0)return;const firstItem=trackRef.current.children[0];const itemWidth=firstItem.getBoundingClientRect().width+gap;const scrollTarget=clampedIndex*itemWidth;trackRef.current.scrollTo({left:scrollTarget,behavior:\"smooth\"});startTransition(()=>setCurrentIndex(clampedIndex));},[maxIndex,gap]);// ⬅️ Left button: move carousel LEFT (show items further to the left)\nconst handlePrevious=useCallback(()=>{if(!trackRef.current||!arrowVisibility.canGoNext)return;if(trackRef.current.children.length===0)return;const firstItem=trackRef.current.children[0];const itemWidth=firstItem.getBoundingClientRect().width+gap;// figure out which item is \"currently\" aligned\nconst rawIndex=trackRef.current.scrollLeft/itemWidth;const current=Math.round(rawIndex);// Left arrow: DECREASE index to reveal items on the left\nconst targetIndex=current-slideDistance;moveTo(targetIndex);},[arrowVisibility.canGoNext,gap,slideDistance,moveTo]);// ➡️ Right button: RESET to initial right-aligned position\nconst handleNext=useCallback(()=>{if(!trackRef.current)return;const track=trackRef.current;const scrollWidth=track.scrollWidth;const clientWidth=track.clientWidth;const targetScrollLeft=scrollWidth-clientWidth;track.scrollTo({left:targetScrollLeft,behavior:\"smooth\"});// logically, this corresponds to the highest index\nstartTransition(()=>setCurrentIndex(maxIndex));},[maxIndex]);// Keyboard navigation (RTL: right arrow = reset/right, left arrow = previous/left)\nuseEffect(()=>{const handleKeyDown=e=>{if(e.key===\"ArrowRight\"&&arrowVisibility.canGoPrevious){handleNext();}else if(e.key===\"ArrowLeft\"&&arrowVisibility.canGoNext){handlePrevious();}};if(typeof window!==\"undefined\"){window.addEventListener(\"keydown\",handleKeyDown);return()=>window.removeEventListener(\"keydown\",handleKeyDown);}},[handleNext,handlePrevious,arrowVisibility.canGoNext,arrowVisibility.canGoPrevious]);return /*#__PURE__*/_jsxs(\"div\",{ref:containerRef,style:{...props.style,position:\"relative\",width:\"100%\",height:\"100%\",overflow:\"hidden\",display:\"flex\",alignItems:\"center\",justifyContent:\"center\"},children:[/*#__PURE__*/_jsxs(\"div\",{ref:trackRef,onScroll:handleScroll,style:{width:\"100%\",height:\"100%\",display:\"flex\",gap,padding:`0 ${padding}px`,overflowX:\"auto\",overflowY:\"hidden\",scrollbarWidth:\"none\",msOverflowStyle:\"none\",WebkitOverflowScrolling:\"touch\",scrollSnapType:snapToItems?\"x mandatory\":\"none\",cursor:\"grab\",userSelect:\"none\"},children:[/*#__PURE__*/_jsx(\"style\",{children:`\n\t\t\t\t\t\tdiv::-webkit-scrollbar {\n\t\t\t\t\t\t\tdisplay: none;\n\t\t\t\t\t\t}\n\t\t\t\t\t`}),childrenArray.map((child,index)=>/*#__PURE__*/_jsx(\"div\",{style:{flex:\"0 0 auto\",height:\"100%\",display:\"flex\",alignItems:\"center\",justifyContent:\"center\",scrollSnapAlign:snapToItems?\"start\":\"none\"},children:child},index))]}),showArrows&&arrowVisibility.canGoPrevious&&/*#__PURE__*/_jsx(\"button\",{onClick:handleNext,style:{position:\"absolute\",right:20,top:\"50%\",transform:\"translateY(-50%)\",width:48,height:48,borderRadius:\"50%\",backgroundColor:\"rgba(255, 255, 255, 0.9)\",border:\"none\",cursor:\"pointer\",display:\"flex\",alignItems:\"center\",justifyContent:\"center\",boxShadow:\"0 2px 8px rgba(0,0,0,0.15)\",zIndex:10,transition:\"transform 0.2s\"},onMouseEnter:e=>{e.currentTarget.style.transform=\"translateY(-50%) scale(1.1)\";},onMouseLeave:e=>{e.currentTarget.style.transform=\"translateY(-50%) scale(1)\";},\"aria-label\":\"Reset to start\",children:/*#__PURE__*/_jsxs(\"svg\",{width:\"24\",height:\"24\",viewBox:\"0 0 24 24\",fill:\"none\",children:[/*#__PURE__*/_jsx(\"title\",{children:\"Reset\"}),/*#__PURE__*/_jsx(\"path\",{d:\"M9 6l6 6-6 6\",stroke:arrowColor,strokeWidth:\"2\",strokeLinecap:\"round\",strokeLinejoin:\"round\"})]})}),showArrows&&arrowVisibility.canGoNext&&/*#__PURE__*/_jsx(\"button\",{onClick:handlePrevious,style:{position:\"absolute\",left:20,top:\"50%\",transform:\"translateY(-50%)\",width:48,height:48,borderRadius:\"50%\",backgroundColor:\"rgba(255, 255, 255, 0.9)\",border:\"none\",cursor:\"pointer\",display:\"flex\",alignItems:\"center\",justifyContent:\"center\",boxShadow:\"0 2px 8px rgba(0,0,0,0.15)\",zIndex:10,transition:\"transform 0.2s\"},onMouseEnter:e=>{e.currentTarget.style.transform=\"translateY(-50%) scale(1.1)\";},onMouseLeave:e=>{e.currentTarget.style.transform=\"translateY(-50%) scale(1)\";},\"aria-label\":\"Previous slide\",children:/*#__PURE__*/_jsxs(\"svg\",{width:\"24\",height:\"24\",viewBox:\"0 0 24 24\",fill:\"none\",children:[/*#__PURE__*/_jsx(\"title\",{children:\"Previous\"}),/*#__PURE__*/_jsx(\"path\",{d:\"M15 18l-6-6 6-6\",stroke:arrowColor,strokeWidth:\"2\",strokeLinecap:\"round\",strokeLinejoin:\"round\"})]})}),showDots&&totalSlides>1&&/*#__PURE__*/_jsx(\"div\",{style:{position:\"absolute\",bottom:20,left:\"50%\",transform:\"translateX(-50%)\",display:\"flex\",gap:8,zIndex:10},children:childrenArray.map((_,index)=>/*#__PURE__*/_jsx(\"button\",{onClick:()=>{moveTo(index);},style:{width:8,height:8,borderRadius:\"50%\",border:\"none\",backgroundColor:index===currentIndex?activeDotColor:dotColor,cursor:\"pointer\",transition:\"background-color 0.3s\",padding:0},\"aria-label\":`Go to slide ${index+1}`,\"aria-current\":index===currentIndex?\"true\":\"false\"},index))})]});}addPropertyControls(RTLCarousel,{children:{type:ControlType.Array,title:\"Slides\",control:{type:ControlType.ComponentInstance},maxCount:10},dragDirection:{type:ControlType.Enum,title:\"Drag Direction\",options:[\"rtl\",\"ltr\"],optionTitles:[\"RTL\",\"LTR\"],defaultValue:\"rtl\",displaySegmentedControl:true},dragSpeed:{type:ControlType.Number,title:\"Drag Speed\",defaultValue:1,min:.1,max:3,step:.1},friction:{type:ControlType.Number,title:\"Friction\",defaultValue:.95,min:.8,max:.99,step:.01},gap:{type:ControlType.Number,title:\"Gap\",defaultValue:10,min:0,max:100,step:5,unit:\"px\"},padding:{type:ControlType.Number,title:\"Padding\",defaultValue:0,min:0,max:200,step:10,unit:\"px\"},slideDistance:{type:ControlType.Number,title:\"Slide Distance\",defaultValue:1,min:1,max:10,step:1,displayStepper:true},snapToItems:{type:ControlType.Boolean,title:\"Snap to Items\",defaultValue:true,enabledTitle:\"On\",disabledTitle:\"Off\"},showArrows:{type:ControlType.Boolean,title:\"Arrows\",defaultValue:true,enabledTitle:\"Show\",disabledTitle:\"Hide\"},showDots:{type:ControlType.Boolean,title:\"Dots\",defaultValue:true,enabledTitle:\"Show\",disabledTitle:\"Hide\"},arrowColor:{type:ControlType.Color,title:\"Arrow Color\",defaultValue:\"#000000\",hidden:({showArrows})=>!showArrows},dotColor:{type:ControlType.Color,title:\"Dot Color\",defaultValue:\"#CCCCCC\",hidden:({showDots})=>!showDots},activeDotColor:{type:ControlType.Color,title:\"Active Dot\",defaultValue:\"#000000\",hidden:({showDots})=>!showDots}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"RTLCarousel\",\"slots\":[\"children\"],\"annotations\":{\"framerSupportedLayoutHeight\":\"any-prefer-fixed\",\"framerIntrinsicHeight\":\"400\",\"framerContractVersion\":\"1\",\"framerIntrinsicWidth\":\"800\",\"framerSupportedLayoutWidth\":\"any-prefer-fixed\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./RTLProjectsCarousel.map"],"mappings":"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"}