import{r as n,j as r,R as o,af as N,E}from"./index-2dTGQAIg.js";function L({children:u,className:h,showArrows:m=!0,showDots:f=!0,itemClassName:b}){const l=n.useRef(null),[x,p]=n.useState(0),[v,g]=n.useState(!1),[j,w]=n.useState(!0),c=n.Children.toArray(u),i=c.length,a=n.useCallback(()=>{if(!l.current)return;const{scrollLeft:e,scrollWidth:t,clientWidth:s}=l.current;g(e>10),w(e<t-s-10);const C=s*.85,S=Math.round(e/C);p(Math.min(S,i-1))},[i]);n.useEffect(()=>{const e=l.current;if(e)return e.addEventListener("scroll",a,{passive:!0}),a(),()=>e.removeEventListener("scroll",a)},[a]);const d=e=>{if(!l.current)return;const{clientWidth:t}=l.current,s=t*.85;l.current.scrollBy({left:e==="left"?-s:s,behavior:"smooth"})},y=e=>{if(!l.current)return;const{clientWidth:t}=l.current,s=t*.85*e;l.current.scrollTo({left:s,behavior:"smooth"})};return r.jsxs("div",{className:o("relative",h),children:[r.jsx("div",{ref:l,className:"flex gap-4 overflow-x-auto carousel-scroll-snap scrollbar-hide px-4 md:px-0",children:c.map((e,t)=>r.jsx("div",{className:o("flex-shrink-0 w-[85%] sm:w-[80%] md:w-auto",b),children:e},t))}),m&&r.jsxs(r.Fragment,{children:[r.jsx("button",{onClick:()=>d("left"),disabled:!v,className:o("hidden md:flex absolute left-0 top-1/2 -translate-y-1/2 -translate-x-4 z-10","h-10 w-10 items-center justify-center rounded-full","bg-card border border-border shadow-premium-md","text-foreground hover:bg-neutral-100 transition-all duration-200","disabled:opacity-0 disabled:pointer-events-none"),"aria-label":"Previous",children:r.jsx(N,{className:"h-5 w-5"})}),r.jsx("button",{onClick:()=>d("right"),disabled:!j,className:o("hidden md:flex absolute right-0 top-1/2 -translate-y-1/2 translate-x-4 z-10","h-10 w-10 items-center justify-center rounded-full","bg-card border border-border shadow-premium-md","text-foreground hover:bg-neutral-100 transition-all duration-200","disabled:opacity-0 disabled:pointer-events-none"),"aria-label":"Next",children:r.jsx(E,{className:"h-5 w-5"})})]}),f&&i>1&&r.jsx("div",{className:"flex justify-center gap-2 mt-6",children:c.map((e,t)=>r.jsx("button",{onClick:()=>y(t),className:o("h-2 rounded-full transition-all duration-300",x===t?"w-6 bg-primary":"w-2 bg-neutral-300 hover:bg-neutral-400"),"aria-label":`Go to slide ${t+1}`},t))})]})}export{L as S};