const e=require("../_util/type.js"),t=require("../_util/warning.js"),n=require("../_util/classNames.js"),r=require("../config-provider/hooks/useConfigInject.js"),i=require("../_util/vue-types/index.js"),a=require("../vc-slick/index.js"),o=require("./style/index.js");let s=require("vue");var c=()=>({effect:e.stringType(),dots:e.booleanType(!0),vertical:e.booleanType(),autoplay:e.booleanType(),easing:String,beforeChange:e.functionType(),afterChange:e.functionType(),prefixCls:String,accessibility:e.booleanType(),nextArrow:i.default.any,prevArrow:i.default.any,pauseOnHover:e.booleanType(),adaptiveHeight:e.booleanType(),arrows:e.booleanType(!1),autoplaySpeed:Number,centerMode:e.booleanType(),centerPadding:String,cssEase:String,dotsClass:String,draggable:e.booleanType(!1),fade:e.booleanType(),focusOnSelect:e.booleanType(),infinite:e.booleanType(),initialSlide:Number,lazyLoad:e.stringType(),rtl:e.booleanType(),slide:String,slidesToShow:Number,slidesToScroll:Number,speed:Number,swipe:e.booleanType(),swipeToSlide:e.booleanType(),swipeEvent:e.functionType(),touchMove:e.booleanType(),touchThreshold:Number,variableWidth:e.booleanType(),useCSS:e.booleanType(),slickGoTo:Number,responsive:Array,dotPosition:e.stringType(),verticalSwiping:e.booleanType(!1)}),l=(0,s.defineComponent)({compatConfig:{MODE:3},name:`ACarousel`,inheritAttrs:!1,props:c(),setup(e,{slots:i,attrs:c,expose:l}){let u=(0,s.ref)();l({goTo:(e,t=!1)=>{u.value?.slickGoTo(e,t)},autoplay:e=>{u.value?.innerSlider?.handleAutoPlay(e)},prev:()=>{u.value?.slickPrev()},next:()=>{u.value?.slickNext()},innerSlider:(0,s.computed)(()=>u.value?.innerSlider)}),(0,s.watchEffect)(()=>{t.default(e.vertical===void 0,`Carousel`,"`vertical` is deprecated, please use `dotPosition` instead.")});let{prefixCls:d,direction:f}=r.default(`carousel`,e),[p,m]=o.default(d),h=(0,s.computed)(()=>e.dotPosition?e.dotPosition:e.vertical===void 0?`bottom`:e.vertical?`right`:`bottom`),g=(0,s.computed)(()=>h.value===`left`||h.value===`right`),_=(0,s.computed)(()=>{let t=`slick-dots`;return n.default({[t]:!0,[`${t}-${h.value}`]:!0,[`${e.dotsClass}`]:!!e.dotsClass})});return()=>{let{dots:t,arrows:r,draggable:o,effect:l}=e,{class:h,style:v,...y}=c,b=l===`fade`||e.fade,x=n.default(d.value,{[`${d.value}-rtl`]:f.value===`rtl`,[`${d.value}-vertical`]:g.value,[`${h}`]:!!h},m.value);return p((0,s.createVNode)(`div`,{class:x,style:v},[(0,s.createVNode)(a.default,{ref:u,...e,...y,dots:!!t,dotsClass:_.value,arrows:r,draggable:o,fade:b,vertical:g.value},i)]))}}}),u=e.withInstall(l);exports.carouselProps=c,exports.default=u;