import{u as L,a as B,m as U,V as $,b as A}from"./CDtq2cxa.js";import{u as E,V as p,m as G,a as J,b as O}from"./DlrL_d2K.js";import{f as j}from"./C-GTDzx5.js";import{dF as q,dG as z,cJ as h,eM as D,eN as H,cO as Q,dK as W,cS as r,dL as X,cU as m,cV as Y}from"./BC4hLSsA.js";const Z=z({...J(),...U(),...G(),modelValue:{type:[Number,String],default:0}},"VSlider"),se=q()({name:"VSlider",props:Z(),emits:{"update:focused":e=>!0,"update:modelValue":e=>!0,start:e=>!0,end:e=>!0},setup(e,k){let{slots:l,emit:b}=k;const o=h(),f=h(),{rtlClasses:y}=D(),i=L(e),s=H(e,"modelValue",void 0,a=>i.roundValue(a??i.min.value)),{min:P,max:F,mousePressed:g,roundValue:V,onSliderMousedown:x,onSliderTouchstart:R,trackContainerRef:M,position:T,hasLabels:C,disabled:N,readonly:c,noKeyboard:_}=B({props:e,steps:i,onSliderStart:()=>{b("start",s.value)},onSliderEnd:a=>{let{value:d}=a;const u=V(d);s.value=u,b("end",u)},onSliderMove:a=>{let{value:d}=a;return s.value=V(d)},getActiveThumb:()=>{var a;return(a=o.value)==null?void 0:a.$el}}),{isFocused:v,focus:w,blur:I}=E(e),S=Q(()=>T(s.value));return W(()=>{const a=p.filterProps(e),d=!!(e.label||l.label||l.prepend);return r(p,X({ref:f,class:["v-slider",{"v-slider--has-labels":!!l["tick-label"]||C.value,"v-slider--focused":v.value,"v-slider--pressed":g.value,"v-slider--disabled":e.disabled},y.value,e.class],style:e.style},a,{focused:v.value}),{...l,prepend:d?u=>{var n,t;return m(Y,null,[((n=l.label)==null?void 0:n.call(l,u))??(e.label?r(O,{id:u.id.value,class:"v-slider__label",text:e.label},null):void 0),(t=l.prepend)==null?void 0:t.call(l,u)])}:void 0,default:u=>{let{id:n,messagesId:t}=u;return m("div",{class:"v-slider__container",onMousedown:c.value?void 0:x,onTouchstartPassive:c.value?void 0:R},[m("input",{id:n.value,name:e.name||n.value,disabled:!!N.value,readonly:!!c.value,tabindex:"-1",value:s.value},null),r($,{ref:M,start:0,stop:S.value},{"tick-label":l["tick-label"]}),r(A,{ref:o,"aria-describedby":t.value,focused:v.value,noKeyboard:_.value,min:P.value,max:F.value,modelValue:s.value,"onUpdate:modelValue":K=>s.value=K,position:S.value,elevation:e.elevation,onFocus:w,onBlur:I,ripple:e.ripple,name:e.name},{"thumb-label":l["thumb-label"]})])}})}),j({focus:()=>{var a;return(a=o.value)==null?void 0:a.$el.focus()}},f)}});export{se as V};