{"version":3,"file":"Carousel_Controls_2.Db_v2dkk.mjs","names":["useRef","useState","useMemo","__esmMin","init_ssg_sandbox_shims","init_npm_react_18_3_1","window","pe","le","_e","de","c","ce","addPropertyControls","init_framer_DymZktPS","ControlType","CarouselControls","props","carouselRef","isScrollContainerRef","canGoPrevious","setCanGoPrevious","canGoNext","setCanGoNext","dragStartRef","dragLastRef","draggingRef","isElementScrollable","el","mayScroll","v","overflow","overflowX","overflowY","isHorizontal","direction","schedule","batched","fn","checkScrollState","container","left","max","top","queryOnce","name","selectedCarousel","updateForCarousel","isScroll","q","s","qa","prevBtn","nextBtn","indicators","active","list","i","slideContainer","slides","observer","onScroll","isHorizontalDir","onPointerDown","e","onPointerMove","current","delta","endDrag","clickOrKey","type","target","focusable","ev","previousEnabled","nextEnabled","baseButtonStyle","size","backgroundColor","borderRadius","disabledStyle","arrowStyle","arrowColor","containerStyle","spacing","labelStyle","font","renderArrow","icon","kind","previousIcon","nextIcon","useCustomIcons","enabled","onHover","up","showLabels","previousLabel","nextLabel","init_Carousel_Controls_2","init_jsx_runtime"],"sources":["https:/framerusercontent.com/modules/oVvg3KGPUgVB2n0pw2PU/5HAPtcUVVgAFlJlCBZie/Carousel_Controls_2.js"],"sourcesContent":["/// Arrow controls for carousels and scroll containers\n// Optimized for Framer code components with drag/swipe support\nimport{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{useEffect,useLayoutEffect,useMemo,useRef,useState}from\"react\";import{addPropertyControls,ControlType}from\"framer\";/**\n * @framerSupportedLayoutWidth auto\n * @framerSupportedLayoutHeight auto\n */export default function CarouselControls(props){const{direction=\"horizontal\",arrowColor=\"#000000\",backgroundColor=\"#F5F5F5\",borderRadius=8,size=40,spacing=12,selectedCarousel=\"\",showLabels=false,previousLabel=\"Previous\",nextLabel=\"Next\",font,useCustomIcons=false,previousIcon=\"\",nextIcon=\"\"}=props;const carouselRef=useRef(null);const isScrollContainerRef=useRef(false);const[canGoPrevious,setCanGoPrevious]=useState(false);const[canGoNext,setCanGoNext]=useState(true);// Drag state refs\nconst dragStartRef=useRef(null);const dragLastRef=useRef(null);const draggingRef=useRef(false);const isElementScrollable=el=>{if(!el)return false;const{overflow,overflowX,overflowY}=el.style;const mayScroll=v=>v===\"scroll\"||v===\"auto\";if(!(mayScroll(overflow)||mayScroll(overflowX)||mayScroll(overflowY)))return false;return el.scrollWidth>el.clientWidth||el.scrollHeight>el.clientHeight;};const isHorizontal=direction===\"horizontal\";const schedule=useRef(null);const batched=fn=>{if(schedule.current!=null)return;schedule.current=requestAnimationFrame(()=>{schedule.current=null;fn();});};const checkScrollState=container=>{if(!container){setCanGoPrevious(false);setCanGoNext(false);return;}if(isHorizontal){const left=container.scrollLeft;const max=container.scrollWidth-container.clientWidth;setCanGoPrevious(left>1);setCanGoNext(left<max-1);}else{const top=container.scrollTop;const max=container.scrollHeight-container.clientHeight;setCanGoPrevious(top>1);setCanGoNext(top<max-1);}};const queryOnce=()=>{if(typeof window===\"undefined\")return null;const name=selectedCarousel?.trim();if(!name)return null;const named=document.querySelector(`[data-framer-name=\"${CSS.escape(name)}\"]`);if(named)return named;const byClass=Array.from(document.querySelectorAll('[class*=\"carousel\" i]')).find(el=>el.className.toLowerCase().includes(name.toLowerCase()));if(byClass)return byClass;const byLabel=Array.from(document.querySelectorAll('[role*=\"carousel\" i], [aria-label*=\"carousel\" i]')).find(el=>(el.getAttribute(\"aria-label\")||el.getAttribute(\"role\")||\"\").toLowerCase().includes(name.toLowerCase()));return byLabel||null;};const updateForCarousel=el=>{carouselRef.current=el;const isScroll=isElementScrollable(el);isScrollContainerRef.current=isScroll;if(!el){setCanGoPrevious(false);setCanGoNext(false);return;}if(isScroll){checkScrollState(el);return;}const q=s=>el.querySelector(s);const qa=s=>el.querySelectorAll(s);const prevBtn=q('[aria-label*=\"previous\" i], .carousel-prev, .prev');const nextBtn=q('[aria-label*=\"next\" i], .carousel-next, .next');if(prevBtn)setCanGoPrevious(!prevBtn.disabled&&!prevBtn.hasAttribute(\"aria-disabled\"));if(nextBtn)setCanGoNext(!nextBtn.disabled&&!nextBtn.hasAttribute(\"aria-disabled\"));const indicators=qa('[role=\"tab\"], .carousel-indicator, .slide-indicator');if(indicators.length){const active=el.querySelector('[role=\"tab\"][aria-selected=\"true\"], .carousel-indicator.active, .slide-indicator.active');if(active){const list=Array.from(indicators);const i=list.indexOf(active);setCanGoPrevious(i>0);setCanGoNext(i<list.length-1);return;}}const slideContainer=q('.carousel-inner, .slides-container, [data-framer-name*=\"slide\" i]');if(slideContainer){const slides=Array.from(slideContainer.children);const active=slideContainer.querySelector('.active, .current, [aria-current=\"true\"]');if(active){const i=slides.indexOf(active);setCanGoPrevious(i>0);setCanGoNext(i<slides.length-1);}}};useEffect(()=>{setCanGoPrevious(false);setCanGoNext(true);},[]);useLayoutEffect(()=>{const el=queryOnce();updateForCarousel(el);if(!el)return;const observer=new MutationObserver(()=>{batched(()=>updateForCarousel(el));});observer.observe(el,{subtree:true,childList:true,attributes:true,attributeFilter:[\"class\",\"data-framer-name\",\"role\",\"aria-label\",\"aria-selected\",\"aria-current\",\"disabled\",\"aria-disabled\"]});return()=>observer.disconnect();},[selectedCarousel,direction]);useEffect(()=>{const el=carouselRef.current;if(!el||!isScrollContainerRef.current)return;const onScroll=()=>batched(()=>checkScrollState(el));el.addEventListener(\"scroll\",onScroll,{passive:true});checkScrollState(el);return()=>el.removeEventListener(\"scroll\",onScroll);},[carouselRef.current,direction]);// 🧭 Drag-to-scroll / swipe support with grab cursor\nuseEffect(()=>{const el=carouselRef.current;if(!el)return;const isHorizontalDir=isHorizontal;const onPointerDown=e=>{draggingRef.current=true;dragStartRef.current=isHorizontalDir?e.clientX:e.clientY;dragLastRef.current=dragStartRef.current;el.style.cursor=\"grabbing\";el.style.userSelect=\"none\";document.body.style.userSelect=\"none\";};const onPointerMove=e=>{if(!draggingRef.current||dragStartRef.current==null)return;const current=isHorizontalDir?e.clientX:e.clientY;const delta=current-(dragLastRef.current??current);dragLastRef.current=current;if(isScrollContainerRef.current){if(isHorizontalDir)el.scrollLeft-=delta;else el.scrollTop-=delta;}};const endDrag=e=>{if(!draggingRef.current)return;draggingRef.current=false;el.style.cursor=\"grab\";document.body.style.userSelect=\"\";el.style.userSelect=\"\";if(e&&dragStartRef.current!=null){const end=isHorizontalDir?e.clientX:e.clientY;const delta=(end??0)-dragStartRef.current;const threshold=50;if(Math.abs(delta)>threshold){clickOrKey(delta>0?\"prev\":\"next\");}}dragStartRef.current=null;dragLastRef.current=null;};el.style.cursor=\"grab\";el.addEventListener(\"pointerdown\",onPointerDown,{passive:true});window.addEventListener(\"pointermove\",onPointerMove,{passive:true});window.addEventListener(\"pointerup\",endDrag,{passive:true});window.addEventListener(\"pointercancel\",endDrag,{passive:true});return()=>{el.removeEventListener(\"pointerdown\",onPointerDown);window.removeEventListener(\"pointermove\",onPointerMove);window.removeEventListener(\"pointerup\",endDrag);window.removeEventListener(\"pointercancel\",endDrag);};},[direction,carouselRef.current]);const clickOrKey=type=>{const el=carouselRef.current;if(!el)return;if(isScrollContainerRef.current){const delta=(isHorizontal?el.clientWidth:el.clientHeight)*.8*(type===\"prev\"?-1:1);if(isHorizontal)el.scrollBy({left:delta,behavior:\"smooth\"});else el.scrollBy({top:delta,behavior:\"smooth\"});return;}const target=el.querySelector(type===\"prev\"?'[aria-label*=\"previous\" i], .carousel-prev, .prev':'[aria-label*=\"next\" i], .carousel-next, .next');if(target){target.click();setTimeout(()=>updateForCarousel(el),80);return;}const focusable=el.querySelector('[tabindex], button, [role=\"button\"]');if(focusable){focusable.focus();const key=isHorizontal?type===\"prev\"?\"ArrowLeft\":\"ArrowRight\":type===\"prev\"?\"ArrowUp\":\"ArrowDown\";const ev=new KeyboardEvent(\"keydown\",{key,bubbles:true});focusable.dispatchEvent(ev);setTimeout(()=>updateForCarousel(el),80);}};const previousEnabled=!!carouselRef.current&&canGoPrevious;const nextEnabled=!!carouselRef.current&&canGoNext;const baseButtonStyle=useMemo(()=>({width:size,height:size,backgroundColor,border:\"none\",borderRadius,display:\"flex\",alignItems:\"center\",justifyContent:\"center\",transition:\"transform .18s cubic-bezier(.4,0,.2,1), opacity .18s\",willChange:\"transform\",userSelect:\"none\",cursor:\"pointer\"}),[size,backgroundColor,borderRadius]);const disabledStyle=useMemo(()=>({opacity:.4,cursor:\"not-allowed\"}),[]);const arrowStyle=useMemo(()=>({width:size*.4,height:size*.4,fill:\"none\",stroke:arrowColor,strokeWidth:2,strokeLinecap:\"round\",strokeLinejoin:\"round\",transition:\"stroke .18s\"}),[size,arrowColor]);const containerStyle=useMemo(()=>({display:\"flex\",alignItems:\"center\",gap:spacing,flexDirection:isHorizontal?\"row\":\"column\",width:\"100%\",height:\"100%\",WebkitUserSelect:\"none\"}),[spacing,isHorizontal]);const labelStyle=useMemo(()=>({...font||{},color:arrowColor,margin:0,userSelect:\"none\"}),[font,arrowColor]);const renderArrow=(kind,enabled)=>{const icon=kind===\"prev\"?previousIcon:nextIcon;if(useCustomIcons&&icon){return /*#__PURE__*/_jsx(\"img\",{src:icon,alt:kind===\"prev\"?\"previous\":\"next\",style:{width:size*.5,height:size*.5,objectFit:\"contain\",opacity:enabled?1:.4}});}return /*#__PURE__*/_jsx(\"svg\",{style:{...arrowStyle,stroke:enabled?arrowColor:\"#999999\"},viewBox:\"0 0 24 24\",\"aria-hidden\":true,children:/*#__PURE__*/_jsx(\"path\",{d:kind===\"prev\"?\"M15 18l-6-6 6-6\":\"M9 18l6-6-6-6\"})});};const onHover=(e,up)=>{const el=e.currentTarget;if(up&&(previousEnabled||nextEnabled)||!up)el.style.transform=up?\"scale(1.05)\":\"scale(1)\";};return /*#__PURE__*/_jsxs(\"div\",{style:containerStyle,children:[/*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",alignItems:\"center\",gap:8,flexDirection:isHorizontal?\"row\":\"column\"},children:[/*#__PURE__*/_jsx(\"button\",{style:{...baseButtonStyle,...previousEnabled?{}:disabledStyle},onClick:()=>clickOrKey(\"prev\"),disabled:!previousEnabled,\"aria-label\":\"Previous\",onMouseEnter:e=>onHover(e,true),onMouseLeave:e=>onHover(e,false),children:renderArrow(\"prev\",previousEnabled)}),showLabels&&/*#__PURE__*/_jsx(\"span\",{style:labelStyle,children:previousLabel})]}),/*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",alignItems:\"center\",gap:8,flexDirection:isHorizontal?\"row\":\"column\"},children:[/*#__PURE__*/_jsx(\"button\",{style:{...baseButtonStyle,...nextEnabled?{}:disabledStyle},onClick:()=>clickOrKey(\"next\"),disabled:!nextEnabled,\"aria-label\":\"Next\",onMouseEnter:e=>onHover(e,true),onMouseLeave:e=>onHover(e,false),children:renderArrow(\"next\",nextEnabled)}),showLabels&&/*#__PURE__*/_jsx(\"span\",{style:labelStyle,children:nextLabel})]})]});}addPropertyControls(CarouselControls,{selectedCarousel:{type:ControlType.String,title:\"Select Carousel\",defaultValue:\"\",placeholder:\"Enter carousel name...\"},direction:{type:ControlType.Enum,title:\"Direction\",options:[\"horizontal\",\"vertical\"],optionTitles:[\"↔\",\"↕\"],defaultValue:\"horizontal\",displaySegmentedControl:true},size:{type:ControlType.Number,title:\"Button Size\",defaultValue:40,min:24,max:80,step:4,unit:\"px\"},spacing:{type:ControlType.Number,title:\"Spacing\",defaultValue:12,min:0,max:40,step:2,unit:\"px\"},useCustomIcons:{type:ControlType.Boolean,title:\"Custom Icons\",defaultValue:false,enabledTitle:\"Custom\",disabledTitle:\"Default\"},previousIcon:{type:ControlType.File,title:\"Previous Icon\",allowedFileTypes:[\"jpg\",\"jpeg\",\"png\",\"gif\",\"webp\",\"svg\"],hidden:({useCustomIcons})=>!useCustomIcons},nextIcon:{type:ControlType.File,title:\"Next Icon\",allowedFileTypes:[\"jpg\",\"jpeg\",\"png\",\"gif\",\"webp\",\"svg\"],hidden:({useCustomIcons})=>!useCustomIcons},arrowColor:{type:ControlType.Color,title:\"Arrow Color\",defaultValue:\"#000000\",hidden:({useCustomIcons})=>useCustomIcons},backgroundColor:{type:ControlType.Color,title:\"Background Color\",defaultValue:\"#F5F5F5\"},borderRadius:{type:ControlType.Number,title:\"Border Radius\",defaultValue:8,min:0,step:1,unit:\"px\"},showLabels:{type:ControlType.Boolean,title:\"Show Labels\",defaultValue:false,enabledTitle:\"Show\",disabledTitle:\"Hide\"},previousLabel:{type:ControlType.String,title:\"Previous Label\",defaultValue:\"Previous\",hidden:({showLabels})=>!showLabels},nextLabel:{type:ControlType.String,title:\"Next Label\",defaultValue:\"Next\",hidden:({showLabels})=>!showLabels},font:{type:ControlType.Font,title:\"Label Font\",defaultValue:{fontSize:\"14px\",variant:\"Medium\",letterSpacing:\"-0.01em\",lineHeight:\"1em\"},controls:\"extended\",defaultFontType:\"sans-serif\",hidden:({showLabels})=>!showLabels}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"CarouselControls\",\"slots\":[],\"annotations\":{\"framerSupportedLayoutWidth\":\"auto\",\"framerContractVersion\":\"1\",\"framerSupportedLayoutHeight\":\"auto\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./Carousel_Controls_2.map"],"mappings":"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"}