1import{c as A}from"./wzWXuswT.js";import{K as be,H as ge}from"#entry";import{y as ae,k as we,E as ke,o as xe,A as d,ak as g,F as w,a4 as v,ao as X,X as q,al as te,ag as R,j as i,D as u,_ as f,ab as ye,ai as Ce,a1 as oe,a0 as Se,aq as Me,M as De}from"./D0rPpKiU.js";import{s as le}from"./DDOY1lLW.js";import"./D_gTWDL9.js";const Be={key:0,class:"flex justify-center items-center gap-2 mt-4",role:"tablist","aria-label":"Carousel pagination"},Pe=["aria-selected","aria-label","onClick"],Ie=ae({__name:"InfiniteCarouselBase",props:{items:{},class:{},autoScroll:{type:Boolean,default:!0},speed:{default:20},hoverSpeed:{default:40},direction:{default:"horizontal"},reverseDirection:{type:Boolean,default:!1},maxRepeats:{default:3},itemsPerPageDesktop:{default:3},itemsPerPageMobile:{default:1},gap:{default:16},heightDesktop:{default:"auto"},heightMobile:{default:"auto"},showArrows:{type:Boolean,default:!1},showDots:{type:Boolean,default:!1},fillHeight:{type:Boolean,default:!1},containerAlignStart:{type:Boolean,default:!1}},setup(r){const t=r,h=i(null),k=i(null),l=i(0),a=i(0),x=i(!1),b=i(0);let m=null,T=null,$=null,C=null,N=null;const S=i(2),_=i(typeof window<"u"?window.innerWidth:1024),V=i(0),G=i(0),c=i(!1),W=i(0),Y=i(0),M=i(0);let D=!1,B=!1;const p=u(()=>String(t.direction||"horizontal").toLowerCase()==="vertical"),P=u(()=>!t.autoScroll),E=u(()=>{if(!t.containerAlignStart)return 0;const e=_.value,o=e>=1280?0:16;return Math.max(o,Math.floor((e-1200)/2)+o)}),Z=u(()=>!P.value||t.showArrows),re=u(()=>{const e=Number(t.speed)||20,o=Number(t.hoverSpeed)||40;return x.value?o:e}),ne=u(()=>{const e=Array.isArray(t.items)?t.items:[];if(!Z.value)return e;const o=[];for(let n=0;n<Math.max(2,S.value);n++)o.push(...e);return o}),F=u(()=>_.value<768),H=u(()=>{const e=F.value?t.heightMobile:t.heightDesktop;return!!e&&e!=="auto"}),se=u(()=>{const e=F.value?t.heightMobile:t.heightDesktop;return!e||e==="auto"?{}:e==="full"?{height:"100%"}:{height:`${e}px`}}),ie=u(()=>{if(p.value)return{};const e=F.value?t.itemsPerPageMobile:t.itemsPerPageDesktop;if(!e||e<=0)return{};const o=t.gap??16,n=V.value,s=E.value;return n>0?{flex:`0 0 ${`${((n-s-(e-1)*o)/e).toFixed(2)}px`}`}:{flex:`0 0 ${o>0?`calc((100vw - ${s+(e-1)*o}px) / ${e})`:`${(100/e).toFixed(6)}vw`}`}}),ue=u(()=>{const e=c.value?"transform 0.35s ease-out":"none",o={gap:`${t.gap??16}px`},n=E.value>0?{marginLeft:`${E.value}px`}:{};return p.value?{transform:`translate3d(0, ${l.value}px, 0)`,transition:e,...o}:{transform:`translate3d(${l.value}px, 0, 0)`,transition:e,...o,...n}}),I=()=>{if(a.value<=0||t.items.length===0)return;const e=a.value/t.items.length;if(e<=0)return;const o=(-l.value%a.value+a.value)%a.value;b.value=Math.min(Math.floor(o/e),t.items.length-1)},L=()=>{const e=h.value,o=k.value;if(!e||typeof window>"u")return;o&&(V.value=o.clientWidth);const n=window.getComputedStyle(e),s=parseFloat(n.columnGap||n.gap||"0");G.value=Number.isFinite(s)?s:0;const j=p.value?e.scrollHeight:e.scrollWidth,O=p.value?e.clientHeight:e.clientWidth;let z=Math.floor(j/Math.max(1,S.value));if(Z.value&&z>0&&z<O){const ee=Math.min(t.maxRepeats||3,Math.max(2,Math.ceil(O/z)+1));if(ee!==S.value){S.value=ee,setTimeout(()=>L(),0);return}}a.value=z,l.value=t.reverseDirection?-a.value:0},ce=()=>{!h.value||P.value||a.value<=0||(p.value,t.reverseDirection?l.value=l.value>=0?-a.value:l.value+1:l.value=l.value<=-a.value?0:l.value-1,t.showDots&&I())},y=()=>{m&&clearInterval(m),!(!t.autoScroll||t.showArrows||a.value<=0)&&(m=be(ce,Math.max(5,re.value)))},K=()=>{const e=h.value;if(!e)return 0;const o=e.querySelector('[role="listitem"]');return o?o.offsetWidth+G.value:0},ve=()=>{c.value=!1,l.value<=-a.value?l.value=0:l.value>=0&&t.reverseDirection&&(l.value=-a.value),t.showDots&&I()},U=()=>{if(c.value)return;const e=K();e<=0||a.value<=0||(l.value>=0?(l.value=-a.value,requestAnimationFrame(()=>{requestAnimationFrame(()=>{c.value=!0,l.value=-a.value+e})})):(c.value=!0,l.value=l.value+e),t.showDots&&I())},J=()=>{if(c.value)return;const e=K();e<=0||a.value<=0||(c.value=!0,l.value=l.value-e,t.showDots&&I())},de=e=>{if(a.value<=0||t.items.length===0)return;const o=a.value/t.items.length;
1o<=0||(b.value=e,c.value=!0,l.value=-(e*o))},fe=e=>{e.pointerType!=="touch"&&(x.value=!0,y())},he=e=>{e.pointerType!=="touch"&&(x.value=!1,y())},me=e=>{const o=e.touches[0];o&&(W.value=o.clientX,Y.value=o.clientY,M.value=l.value,D=!1,B=!1)},Q=e=>{if(!P.value&&!t.showArrows)return;const o=e.touches[0];if(!o)return;const n=o.clientX-W.value,s=o.clientY-Y.value;if(!B){if(Math.abs(n)<5&&Math.abs(s)<5)return;D=Math.abs(n)>Math.abs(s),B=!0}D&&(e.preventDefault(),c.value=!1,l.value=M.value+n)},pe=e=>{if(!P.value&&!t.showArrows||!B||!D)return;const o=e.changedTouches[0];if(!o)return;const n=o.clientX-W.value;l.value=M.value,Math.abs(n)<30?(c.value=!0,l.value=M.value):n>0?U():J()};return we(async()=>{await ke();const e=h.value;e&&(N=e,e.addEventListener("touchmove",Q,{passive:!1}),$=new ResizeObserver(()=>{L(),y()}),$.observe(e),C=()=>{_.value=window.innerWidth,L(),y()},window.addEventListener("resize",C),T=setTimeout(()=>{L(),y()},100))}),xe(()=>{m&&clearInterval(m),T&&clearTimeout(T),N&&N.removeEventListener("touchmove",Q),$?.disconnect(),C&&window.removeEventListener("resize",C)}),(e,o)=>(f(),d("div",{class:g(w(A)("flex flex-col",t.class))},[v("div",{ref_key:"container",ref:k,class:"relative overflow-hidden",style:X(se.value)},[v("div",{ref_key:"strip",ref:h,class:g(["scroller-base-strip",{"scroller-base-vertical":p.value,"h-full":H.value&&!p.value}]),style:X(ue.value),role:"list",onPointerenter:fe,onPointerleave:he,onTransitionend:ve,onTouchstartPassive:me,onTouchend:pe},[(f(!0),d(q,null,te(ne.value,(n,s)=>(f(),d("div",{key:s,class:g(["scroller-base-item",{"h-full":H.value,"scroller-base-item-fill":H.value&&t.fillHeight}]),style:X(ie.value),role:"listitem"},[ye(e.$slots,"item",{item:n,index:s%t.items.length},void 0,!0)],6))),128))],38),r.showArrows?(f(),d(q,{key:0},[v("button",{type:"button","aria-label":"Previous slide",class:g(w(A)("absolute top-1/2 -translate-y-1/2 z-10 cursor-pointer","hidden md:flex items-center justify-center","w-[50px] h-[50px] rounded-[25px]","bg-white/40 backdrop-blur-md border border-black/[0.08]","hover:bg-mv-purple hover:text-white hover:border-mv-purple","transition-colors duration-200","shadow-[0_15px_30px_rgba(0,0,0,0.20)]","left-3")),onClick:U},[...o[0]||(o[0]=[v("svg",{xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",viewBox:"0 0 24 24",fill:"none","aria-hidden":"true"},[v("path",{d:"M15.8838 5.11621C15.3956 4.62806 14.6044 4.62806 14.1162 5.11621L8.11621 11.1162C7.62806 11.6044 7.62806 12.3956 8.11621 12.8838L14.1162 18.8838C14.6044 19.3719 15.3956 19.3719 15.8838 18.8838C16.3719 18.3956 16.3719 17.6044 15.8838 17.1162L10.7676 12L15.8838 6.88379C16.3719 6.39565 16.3719 5.60435 15.8838 5.11621Z",fill:"currentColor"})],-1)])],2),v("button",{type:"button","aria-label":"Next slide",class:g(w(A)("absolute top-1/2 -translate-y-1/2 z-10 cursor-pointer","hidden md:flex items-center justify-center","w-[50px] h-[50px] rounded-[25px]","bg-white/40 backdrop-blur-md border border-black/[0.08]","hover:bg-mv-purple hover:text-white hover:border-mv-purple","transition-colors duration-200","shadow-[0_15px_30px_rgba(0,0,0,0.20)]","right-3")),onClick:J},[...o[1]||(o[1]=[v("svg",{xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",viewBox:"0 0 24 24",fill:"none","aria-hidden":"true"},[v("path",{d:"M8.11621 5.11621C8.60435 4.62806 9.39565 4.62806 9.88379 5.11621L15.8838 11.1162C16.3719 11.6044 16.3719 12.3956 15.8838 12.8838L9.88379 18.8838C9.39565 19.3719 8.60435 19.3719 8.11621 18.8838C7.62806 18.3956 7.62806 17.6044 8.11621 17.1162L13.2324 12L8.11621 6.88379C7.62806 6.39565 7.62806 5.60435 8.11621 5.11621Z",fill:"currentColor"})],-1)])],2)],64)):R("",!0)],4),r.showDots&&t.items.length>1?(f(),d("div",Be,[(f(!0),d(q,null,te(t.items,(n,s)=>(f(),d("button",{key:s,type:"button",role:"tab","aria-selected":b.value===s,"aria-label":`Go to slide ${s+1}`,class:g(w(A)("rounded-full transition-all duration-150 cursor-pointer",b.value===s?"size-3.5 bg-purple-600":"size-3.5 bg-cool-grey-300")),onClick:j=>de(s)},null,10,Pe))),128))])):R("",!0)],2))}}),Le=Object.assign(ge(Ie,[["__scopeId","data-v-bcccd4f8"]]),{__name:"InfiniteCarouselBase"}),ze=["aria-label"],Ae=ae({__name:"InfiniteCarousel",props:{blok:{}},setup(r){const t=r,h=u(()=>String(t.blok.direction||"horizontal").toLowerCase()==="vertical"?"vertical":"horizontal");function k(l){if(!l&&l!==0)return"auto";if(l==="full")return"full";const a=Number(l);return Number.isFinite(a)&&a>0?a:"auto"}return(l,a)=>{const x=De("StoryblokComponent"),b=Me("editable");return w(le)(r.blok.body).length?Ce((f(),d("section",{key:0,"aria-label":r.blok.aria_label||"Carousel"},[oe(Le,{items:w(le)(r.blok.body),"auto-scroll":!r.blok.no_scroll,speed:Number(r.blok.speed)||20,"hover-speed":Number(r.blok.hover_speed)||40,direction:h.value,"reverse-direction":!!r.blok.reverse_direction,"items-per-page-desktop":Number(r.blok.items_per_page_desktop)||3,"items-per-page-mobile":Number(r.blok.items_per_page_mobile)||1,gap:Number(r.blok.gap)||16,"height-desktop":k(r.blok.height_desktop),"height-mobile":k(r.blok.height_mobile),"show-arrows":!!r.blok.show_arrows,"show-dots":!!r.blok.show_dots,"fill-height":!!r.blok.fill_height,"container-align-start":!!r.blok.container_start},{item:Se(({item:m})=>[oe(x,{blok:m},null,8,["blok"])]),_:1},8,["items","auto-scroll","speed","hover-speed","direction","reverse-direction","items-per-page-desktop","items-per-page-mobile","gap","height-desktop","height-mobile","show-arrows","show-dots","fill-height","container-align-start"])],8,ze)),[[b,r.blok]]):R("",!0)}}}),Ee=Object.assign(Ae,{__name:"InfiniteCarousel"});export{Ee as default};
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.