import{d as E,e as o,o as p,h as m,E as z,G as B,j as y,z as _,A as G,a8 as I,_ as H,u as ie,C as S,a9 as W,y as j,O as U,F as Y,r as R,m as T,i as V,k as ce,l as se,w as J,B as le,aa as N,ab as X}from"./DcNopBx2.js";import{u as ue}from"./D1hftb5s.js";const de={class:"h-carousel-card-wrapper__card"},ve=E({__name:"HCarouselCardWrapper",props:{type:{type:String,default:"default"},index:{type:Number,default:0},currentCardIndex:{type:Number,default:0},cardsGap:{type:Number,default:0},isCarouselVisible:Boolean,desktopView:Boolean,cardsData:{type:Array,default:()=>[]},backgroundColor:{type:String,default:"light"}},setup(r){const a=r,f=o(()=>a.isCarouselVisible&&a.currentCardIndex!==a.index),e=o(()=>{if(!f.value)return[];let n="";return["black","primary-dark"].includes(a.backgroundColor)&&(n=`-${a.backgroundColor}`),[{[`h-carousel-card-wrapper__gradient--left${n}`]:a.index<=a.currentCardIndex-1},{[`h-carousel-card-wrapper__gradient--right${n}`]:a.index>=a.currentCardIndex+1}]}),i=n=>a.type==="multiLine"&&!a.desktopView?`margin: ${a.cardsGap/2}px`:n===a.cardsData.length-1||a.type==="multiLine"?"margin:0":`margin-inline-end: ${a.cardsGap}px`;return(n,g)=>(p(),m("div",{class:"h-carousel-card-wrapper",style:I(i(r.index))},[z(y("span",{class:_(["h-carousel-card-wrapper__gradient",e.value])},null,2),[[B,f.value]]),y("div",de,[G(n.$slots,"card",{},void 0,!0)])],4))}}),pe=H(ve,[["__scopeId","data-v-902a87ad"]]),ge=["onClick"],he=["data-click-id"],me={class:"h-carousel-track__container"},fe=["id"],ke=["data-click-id"],_e=E({__name:"HCarouselTrack",props:{type:{type:String,default:"default"},indicator:{type:String,default:"top"},startingIndex:{type:Number,default:0},navButtonPosition:{type:String,default:"middle"},screenMode:{type:String,default:""},cardsGap:{type:Number,default:0},paginationFactor:{type:Number,default:0},cardsData:{type:Array,default:()=>[]},originateFrom:{type:String,default:""},backgroundColor:{type:String,default:"light"},desktopColumnCount:{type:Number,required:!0}},setup(r){const{direction:a}=ie(),f=ue(),e=r,i=S(0),n=S(0),g=o(()=>document.getElementById(`carousel-track-${f}`)),D=o(()=>e.indicator==="top"?"h-carousel-track":"h-carousel-track h-carousel-track--reverse"),h=o(()=>e.indicator==="top"?"h-carousel-track__indicator-container":"h-carousel-track__indicator-container h-carousel-track__indicator-container--bottom"),c=o(()=>e.screenMode==="tablet"||e.screenMode==="mobile"),u=o(()=>e.screenMode==="desktop"),w=o(()=>!F.value&&!!e.paginationFactor&&e.screenMode==="tablet"),C=o(()=>!A.value&&!!e.paginationFactor&&e.screenMode==="tablet"),$=o(()=>({height:12,width:12})),K=o(()=>e.cardsData.length>1&&c.value?Math.round(e.paginationFactor*1.5):0),Q=o(()=>[{"h-carousel-track__overflow-container--single":e.cardsData.length===1},{"h-carousel-track__overflow-container":c.value}]),Z=o(()=>{if(e.screenMode!=="desktop")return{transform:"translateX("+i.value+"px)"}}),ee=o(()=>`margin-right: ${K.value}px`),te=o(()=>e.paginationFactor?e.screenMode==="desktop"?"":`width: ${e.paginationFactor*5}px`:"width: 100%"),b=o(()=>{const t=(window==null?void 0:window.outerWidth)>768&&window.outerWidth<1025?1.8:2;return t*(e.paginationFactor+e.cardsGap/t)}),F=o(()=>a.value==="rtl"?n.value===0:n.value===e.cardsData.length-1),A=o(()=>a.value==="ltr"?n.value===0:n.value===e.cardsData.length-1),ae=()=>[{"h-grid h-grid--cols-m-1 h-grid--cols-t-2":e.type==="multiLine"},{"h-carousel-track__cards-container--grid h-grid--cols-d-2":u.value&&e.desktopColumnCount===2},{"h-carousel-track__cards-container--grid h-grid--cols-d-3":u.value&&e.desktopColumnCount===3},{"h-carousel-track__cards-container--wider-grid h-grid--cols-d-4":u.value&&e.desktopColumnCount===4},{"h-carousel-track__cards-container":!0}],q=t=>t.changedTouches.length!==1||!["tablet","mobile"].includes(e.screenMode),re=(t,l,k,v)=>Math.abs(v-k)>Math.abs(70)||Math.abs(l-t)<Math.abs(35),P=t=>{var v,d,s;if(q(t))return;const l=((v=t.changedTouches[0])==null?void 0:v.clientX)||0,k=((d=t.changedTouches[0])==null?void 0:d.clientY)||0;(s=g.value)==null||s.addEventListener("touchend",x=>ne(x,l,k),{once:!0,passive:!0})},ne=(t,l,k)=>{var s,x;if(q(t))return;const v=((s=t.changedTouches[0])==null?void 0:s.clientX)||0,d=((x=t.changedTouches[0])==null?void 0:x.clientY)||0;re(l,v,k,d)||(l<v&&!A.value?M(-1):l>v&&!F.value&&M(1))},O=()=>[e.navButtonPosition==="middle"?"h-carousel-track__nav-container--middle":"h-carousel-track__nav-container--top"],L=t=>{n.value=t,i.value=a.value==="rtl"?b.value*t:-b.value*t},oe=t=>({"h-carousel-track__indicator-item--active":t===n.value}),M=t=>{if(t===1&&!F.value){i.value-=b.value,n.value=a.value==="rtl"?n.value-1:n.value+1;return}i.value+=b.value,n.value=a.value==="rtl"?n.value+1:n.value-1};return W(()=>e.startingIndex,t=>{L(t)}),W(()=>e.paginationFactor,()=>{e.startingIndex&&L(e.startingIndex),!(!i.value||!b.value)&&(i.value=Math.sign(i.value)*b.value*n.value)},{immediate:!0}),j(()=>{var t;(t=g.value)==null||t.addEventListener("touchstart",P,{passive:!0})}),U(()=>{var t;(t=g.value)==null||t.removeEventListener("touchstart",P)}),(t,l)=>{const k=le,v=pe;return p(),m("div",{class:_(D.value)},[!u.value&&r.indicator!=="none"?(p(),m("div",{key:0,class:_(h.value)},[(p(!0),m(Y,null,R(r.cardsData,(d,s)=>(p(),m("span",{key:`${d}-${s}`,class:_(["h-carousel-track__indicator-item",oe(s)]),onClick:x=>L(s)},null,10,ge))),128))],2)):T("",!0),z(y("div",{class:_(["h-carousel-track__nav-container h-carousel-track__nav-container--left",O()]),"data-click-id":`hgr-${r.originateFrom}-carousel-left`,onClick:l[0]||(l[0]=d=>M(-1))},[V(k,{icon:"ui-icons/ic-arrow-left","view-box":"0 0 24 24",size:$.value},null,8,["size"])],10,he),[[B,C.value]]),y("div",me,[y("div",{class:"h-carousel-track__container",style:I(te.value)},[y("div",{id:`carousel-track-${ce(f)}`,class:_(Q.value)},[y("div",{class:_(ae()),style:I(Z.value)},[!u.value&&r.type!=="multiLine"?(p(),m("div",{key:0,style:I(ee.value)},null,4)):T("",!0),(p(!0),m(Y,null,R(r.cardsData,(d,s)=>(p(),se(v,{key:`${d.productSlug}-${s}`,"cards-data":r.cardsData,index:s,"current-card-index":n.value,"pagination-factor":r.paginationFactor,"cards-gap":r.cardsGap,"screen-mode":r.screenMode,"desktop-view":u.value,type:r.type,"is-carousel-visible":c.value,"background-color":r.backgroundColor},{card:J(()=>[G(t.$slots,"items",{item:d,index:s},void 0,!0)]),_:2},1032,["cards-data","index","current-card-index","pagination-factor","cards-gap","screen-mode","desktop-view","type","is-carousel-visible","background-color"]))),128))],6)],10,fe)],4)]),z(y("div",{class:_(["h-carousel-track__nav-container h-carousel-track__nav-container--right",O()]),"data-click-id":`hgr-${r.originateFrom}-carousel-right`,onClick:l[1]||(l[1]=d=>M(1))},[V(k,{icon:"ui-icons/ic-arrow-right",size:$.value,"view-box":"0 0 24 24"},null,8,["size"])],10,ke),[[B,w.value]])],2)}}}),ye=H(_e,[["__scopeId","data-v-2edc955d"]]),Ce=["id"],be={key:0,class:"h-carousel__wrapper"},we=E({__name:"HCarousel",props:{id:{type:String,default:""},type:{type:String,default:"default",validator:N(["multiLine","default"])},startingIndex:{type:Number,default:0},indicator:{type:String,default:"top",validator:N(["top","bottom","none"])},navButtonPosition:{type:String,default:"middle",validator:N(["top","middle"])},cardWidth:{type:Number,default:0},cardsData:{type:Array,required:!0},originateFrom:{type:String,default:""},backgroundColor:{type:String,default:"light"},desktopColumnCount:{type:Number,required:!0}},setup(r){const a=r,f=S("default"),e=S(0),i=S("tablet"),n=o(()=>e.value/7.5),g=()=>{const h=a.id?document.querySelectorAll(`#${a.id} .h-carousel-card-wrapper__card`)[0]:document.querySelector(".h-carousel-card-wrapper__card"),c=a.cardWidth||(h==null?void 0:h.offsetWidth);if(c){const u=window.outerWidth||window.innerWidth;e.value=c/2,D(c,u)}},D=(h,c)=>{const w=h*a.cardsData.length+n.value*(a.cardsData.length-1)<c-200,C=a.type==="multiLine"&&c>1024,$=a.cardsData.length===4&&c>1024;if(f.value=C?"multiLine":"default",w||C||$){i.value="desktop";return}if(c<768){i.value="mobile";return}i.value="tablet"};return j(()=>{a.cardsData.length&&(g(),window.addEventListener("resize",X(g,100)))}),U(()=>{window.removeEventListener("resize",X(g,100))}),W(()=>a.cardWidth,()=>{g()}),(h,c)=>{const u=ye;return p(),m("div",{id:r.id,class:"h-carousel"},[r.cardsData.length?(p(),m("div",be,[V(u,{"pagination-factor":e.value,"cards-data":r.cardsData,"screen-mode":i.value,"cards-gap":n.value,indicator:r.indicator,"starting-index":r.startingIndex,type:f.value,"nav-button-position":r.navButtonPosition,"desktop-column-count":r.desktopColumnCount,"originate-from":r.originateFrom,"background-color":r.backgroundColor},{items:J(({item:w,index:C})=>[G(h.$slots,"items",{item:w,index:C},void 0,!0)]),_:2},1032,["pagination-factor","cards-data","screen-mode","cards-gap","indicator","starting-index","type","nav-button-position","desktop-column-count","originate-from","background-color"])])):T("",!0)],8,Ce)}}}),$e=H(we,[["__scopeId","data-v-50b6c80c"]]);export{$e as _};
