import{t as $,z as l,s as a,A as O,v as L,x as Q,y as V,T as I,b as H,O as K,R,M as U,K as m,H as j}from"./entry.5131710f.js";import{u as G,a as J,b as W,c as X}from"./use-panel.3a368380.js";import{u as Y,a as Z,b as p}from"./use-fullscreen.df433772.js";const le=$({name:"QCarouselSlide",props:{...G,imgSrc:String},setup(e,{slots:r}){const i=l(()=>e.imgSrc?{backgroundImage:`url("${e.imgSrc}")`}:{});return()=>a("div",{class:"q-carousel__slide",style:i.value},O(r.default))}}),ee=["top","right","bottom","left"],ne=["regular","flat","outline","push","unelevated"],ie=$({name:"QCarousel",props:{...L,...J,...Y,transitionPrev:{type:String,default:"fade"},transitionNext:{type:String,default:"fade"},height:String,padding:Boolean,controlColor:String,controlTextColor:String,controlType:{type:String,validator:e=>ne.includes(e),default:"flat"},autoplay:[Number,Boolean],arrows:Boolean,prevIcon:String,nextIcon:String,navigation:Boolean,navigationPosition:{type:String,validator:e=>ee.includes(e)},navigationIcon:String,navigationActiveIcon:String,thumbnails:Boolean},emits:[...Z,...W],setup(e,{slots:r}){const{proxy:{$q:i}}=Q(),T=V(e,i);let o=null,s;const{updatePanelsList:B,getPanelContent:D,panelDirectives:N,goToPanel:f,previousPanel:x,nextPanel:y,getEnabledPanels:A,panelIndex:u}=X(),{inFullscreen:h}=p(),E=l(()=>h.value!==!0&&e.height!==void 0?{height:e.height}:{}),v=l(()=>e.vertical===!0?"vertical":"horizontal"),F=l(()=>`q-carousel q-panel-parent q-carousel--with${e.padding===!0?"":"out"}-padding`+(h.value===!0?" fullscreen":"")+(T.value===!0?" q-carousel--dark q-dark":"")+(e.arrows===!0?` q-carousel--arrows-${v.value}`:"")+(e.navigation===!0?` q-carousel--navigation-${C.value}`:"")),q=l(()=>{const n=[e.prevIcon||i.iconSet.carousel[e.vertical===!0?"up":"left"],e.nextIcon||i.iconSet.carousel[e.vertical===!0?"down":"right"]];return e.vertical===!1&&i.lang.rtl===!0?n.reverse():n}),b=l(()=>e.navigationIcon||i.iconSet.carousel.navigationIcon),M=l(()=>e.navigationActiveIcon||b.value),C=l(()=>e.navigationPosition||(e.vertical===!0?"right":"bottom")),_=l(()=>({color:e.controlColor,textColor:e.controlTextColor,round:!0,[e.controlType]:!0,dense:!0}));I(()=>e.modelValue,()=>{e.autoplay&&g()}),I(()=>e.autoplay,n=>{n?g():o!==null&&(clearTimeout(o),o=null)});function g(){const n=U(e.autoplay)===!0?Math.abs(e.autoplay):5e3;o!==null&&clearTimeout(o),o=setTimeout(()=>{o=null,n>=0?y():x()},n)}H(()=>{e.autoplay&&g()}),K(()=>{o!==null&&clearTimeout(o)});function P(n,c){return a("div",{class:`q-carousel__control q-carousel__navigation no-wrap absolute flex q-carousel__navigation--${n} q-carousel__navigation--${C.value}`+(e.controlColor!==void 0?` text-${e.controlColor}`:"")},[a("div",{class:"q-carousel__navigation-inner flex flex-center no-wrap"},A().map(c))])}function z(){const n=[];if(e.navigation===!0){const c=r["navigation-icon"]!==void 0?r["navigation-icon"]:t=>a(m,{key:"nav"+t.name,class:`q-carousel__navigation-icon q-carousel__navigation-icon--${t.active===!0?"":"in"}active`,...t.btnProps,onClick:t.onClick}),d=s-1;n.push(P("buttons",(t,S)=>{const w=t.props.name,k=u.value===S;return c({index:S,maxIndex:d,name:w,active:k,btnProps:{icon:k===!0?M.value:b.value,size:"sm",..._.value},onClick:()=>{f(w)}})}))}else if(e.thumbnails===!0){const c=e.controlColor!==void 0?` text-${e.controlColor}`:"";n.push(P("thumbnails",d=>{const t=d.props;return a("img",{key:"tmb#"+t.name,class:`q-carousel__thumbnail q-carousel__thumbnail--${t.name===e.modelValue?"":"in"}active`+c,src:t.imgSrc||t["img-src"],onClick:()=>{f(t.name)}})}))}return e.arrows===!0&&u.value>=0&&((e.infinite===!0||u.value>0)&&n.push(a("div",{key:"prev",class:`q-carousel__control q-carousel__arrow q-carousel__prev-arrow q-carousel__prev-arrow--${v.value} absolute flex flex-center`},[a(m,{icon:q.value[0],..._.value,onClick:x})])),(e.infinite===!0||u.value<s-1)&&n.push(a("div",{key:"next",class:`q-carousel__control q-carousel__arrow q-carousel__next-arrow q-carousel__next-arrow--${v.value} absolute flex flex-center`},[a(m,{icon:q.value[1],..._.value,onClick:y})]))),j(r.control,n)}return()=>(s=B(r),a("div",{class:F.value,style:E.value},[R("div",{class:"q-carousel__slides-container"},D(),"sl-cont",e.swipeable,()=>N.value)].concat(z())))}});export{le as _,ie as a};
