import{bE as W,co as fe,cN as he,q as l,e6 as Q,cX as le,b7 as S,a$ as Z,aM as ee,dS as ke,aG as pe,dL as se,c2 as re,bI as ne,d9 as ye,aa as oe,cR as Se,bM as ge,bR as ie,d3 as M,I as v,bz as te,aS as we,dh as Ce,bp as _e,dT as Ve,cw as Te,d4 as ae}from"./index-pVvkWKzi.js";const H=Symbol.for("vuetify:v-slider");function xe(e,t,o){const i=o==="vertical",u=t.getBoundingClientRect(),m="touches"in e?e.touches[0]:e;return i?m.clientY-(u.top+u.height/2):m.clientX-(u.left+u.width/2)}function Fe(e,t){return"touches"in e&&e.touches.length?e.touches[0][t]:"changedTouches"in e&&e.changedTouches.length?e.changedTouches[0][t]:e[t]}const Le=W({disabled:{type:Boolean,default:null},error:Boolean,readonly:{type:Boolean,default:null},max:{type:[Number,String],default:100},min:{type:[Number,String],default:0},step:{type:[Number,String],default:0},thumbColor:String,thumbLabel:{type:[Boolean,String],default:void 0,validator:e=>typeof e=="boolean"||e==="always"},thumbSize:{type:[Number,String],default:20},showTicks:{type:[Boolean,String],default:!1,validator:e=>typeof e=="boolean"||e==="always"},ticks:{type:[Array,Object]},tickSize:{type:[Number,String],default:2},color:String,trackColor:String,trackFillColor:String,trackSize:{type:[Number,String],default:4},direction:{type:String,default:"horizontal",validator:e=>["vertical","horizontal"].includes(e)},reverse:Boolean,...fe(),...he({elevation:2}),ripple:{type:Boolean,default:!0}},"Slider"),Me=e=>{const t=l(()=>parseFloat(e.min)),o=l(()=>parseFloat(e.max)),i=l(()=>+e.step>0?parseFloat(e.step):0),u=l(()=>Math.max(Q(i.value),Q(t.value)));function m(h){if(h=parseFloat(h),i.value<=0)return h;const g=se(h,t.value,o.value),f=t.value%i.value,w=Math.round((g-f)/i.value)*i.value+f;return parseFloat(Math.min(w,o.value).toFixed(u.value))}return{min:t,max:o,step:i,decimals:u,roundValue:m}},Ne=e=>{let{props:t,steps:o,onSliderStart:i,onSliderMove:u,onSliderEnd:m,getActiveThumb:h}=e;const{isRtl:g}=le(),f=S(t,"reverse"),w=l(()=>t.direction==="vertical"),_=l(()=>w.value!==f.value),{min:b,max:k,step:V,decimals:N,roundValue:F}=o,q=l(()=>parseInt(t.thumbSize,10)),O=l(()=>parseInt(t.tickSize,10)),I=l(()=>parseInt(t.trackSize,10)),T=l(()=>(k.value-b.value)/V.value),K=S(t,"disabled"),z=l(()=>t.error||t.disabled?void 0:t.thumbColor??t.color),R=l(()=>t.error||t.disabled?void 0:t.trackColor??t.color),P=l(()=>t.error||t.disabled?void 0:t.trackFillColor??t.color),E=Z(!1),p=Z(0),L=ee(),y=ee();function s(a){var J;const n=t.direction==="vertical",ue=n?"top":"left",ce=n?"height":"width",de=n?"clientY":"clientX",{[ue]:ve,[ce]:me}=(J=L.value)==null?void 0:J.$el.getBoundingClientRect(),be=Fe(a,de);let G=Math.min(Math.max((be-ve-p.value)/me,0),1)||0;return(n?_.value:_.value!==g.value)&&(G=1-G),F(b.value+G*(k.value-b.value))}const C=a=>{m({value:s(a)}),E.value=!1,p.value=0},x=a=>{y.value=h(a),y.value&&(y.value.focus(),E.value=!0,y.value.contains(a.target)?p.value=xe(a,y.value,t.direction):(p.value=0,u({value:s(a)})),i({value:s(a)}))},d={passive:!0,capture:!0};function B(a){u({value:s(a)})}function A(a){a.stopPropagation(),a.preventDefault(),C(a),window.removeEventListener("mousemove",B,d),window.removeEventListener("mouseup",A)}function $(a){var n;C(a),window.removeEventListener("touchmove",B,d),(n=a.target)==null||n.removeEventListener("touchend",$)}function Y(a){var n;x(a),window.addEventListener("touchmove",B,d),(n=a.target)==null||n.addEventListener("touchend",$,{passive:!1})}function c(a){a.preventDefault(),x(a),window.addEventListener("mousemove",B,d),window.addEventListener("mouseup",A,{passive:!1})}const r=a=>{const n=(a-b.value)/(k.value-b.value)*100;return se(isNaN(n)?0:n,0,100)},D=S(t,"showTicks"),j=l(()=>D.value?t.ticks?Array.isArray(t.ticks)?t.ticks.map(a=>({value:a,position:r(a),label:a.toString()})):Object.keys(t.ticks).map(a=>({value:parseFloat(a),position:r(parseFloat(a)),label:t.ticks[a]})):T.value!==1/0?ke(T.value+1).map(a=>{const n=b.value+a*V.value;return{value:n,position:r(n)}}):[]:[]),X=l(()=>j.value.some(a=>{let{label:n}=a;return!!n})),U={activeThumbRef:y,color:S(t,"color"),decimals:N,disabled:K,direction:S(t,"direction"),elevation:S(t,"elevation"),hasLabels:X,isReversed:f,indexFromEnd:_,min:b,max:k,mousePressed:E,numTicks:T,onSliderMousedown:c,onSliderTouchstart:Y,parsedTicks:j,parseMouseMove:s,position:r,readonly:S(t,"readonly"),rounded:S(t,"rounded"),roundValue:F,showTicks:D,startOffset:p,step:V,thumbSize:q,thumbColor:z,thumbLabel:S(t,"thumbLabel"),ticks:S(t,"ticks"),tickSize:O,trackColor:R,trackContainerRef:L,trackFillColor:P,trackSize:I,vertical:w};return pe(H,U),U},ze=W({focused:Boolean,max:{type:Number,required:!0},min:{type:Number,required:!0},modelValue:{type:Number,required:!0},position:{type:Number,required:!0},ripple:{type:[Boolean,Object],default:!0},name:String,...re()},"VSliderThumb"),Pe=ne()({name:"VSliderThumb",directives:{Ripple:ye},props:ze(),emits:{"update:modelValue":e=>!0},setup(e,t){let{slots:o,emit:i}=t;const u=oe(H),{isRtl:m,rtlClasses:h}=le();if(!u)throw new Error("[Vuetify] v-slider-thumb must be used inside v-slider or v-range-slider");const{thumbColor:g,step:f,disabled:w,thumbSize:_,thumbLabel:b,direction:k,isReversed:V,vertical:N,readonly:F,elevation:q,mousePressed:O,decimals:I,indexFromEnd:T}=u,K=l(()=>w.value?void 0:q.value),{elevationClasses:z}=Se(K),{textColorClasses:R,textColorStyles:P}=ge(g),{pageup:E,pagedown:p,end:L,home:y,left:s,right:C,down:x,up:d}=Ve,B=[E,p,L,y,s,C,x,d],A=l(()=>f.value?[1,2,3]:[1,5,10]);function $(c,r){if(!B.includes(c.key))return;c.preventDefault();const D=f.value||.1,j=(e.max-e.min)/D;if([s,C,x,d].includes(c.key)){const U=(N.value?[m.value?s:C,V.value?x:d]:T.value!==m.value?[s,d]:[C,d]).includes(c.key)?1:-1,a=c.shiftKey?2:c.ctrlKey?1:0;r=r+U*D*A.value[a]}else if(c.key===y)r=e.min;else if(c.key===L)r=e.max;else{const X=c.key===p?1:-1;r=r-X*D*(j>100?j/10:10)}return Math.max(e.min,Math.min(e.max,r))}function Y(c){const r=$(c,e.modelValue);r!=null&&i("update:modelValue",r)}return ie(()=>{const c=M(T.value?100-e.position:e.position,"%");return v("div",{class:["v-slider-thumb",{"v-slider-thumb--focused":e.focused,"v-slider-thumb--pressed":e.focused&&O.value},e.class,h.value],style:[{"--v-slider-thumb-position":c,"--v-slider-thumb-size":M(_.value)},e.style],role:"slider",tabindex:w.value?-1:0,"aria-label":e.name,"aria-valuemin":e.min,"aria-valuemax":e.max,"aria-valuenow":e.modelValue,"aria-readonly":!!F.value,"aria-orientation":k.value,onKeydown:F.value?void 0:Y},[v("div",{class:["v-slider-thumb__surface",R.value,z.value],style:{...P.value}},null),te(v("div",{class:["v-slider-thumb__ripple",R.value],style:P.value},null),[[we("ripple"),e.ripple,null,{circle:!0,center:!0}]]),v(Ce,{origin:"bottom center"},{default:()=>{var r;return[te(v("div",{class:"v-slider-thumb__label-container"},[v("div",{class:["v-slider-thumb__label"]},[v("div",null,[((r=o["thumb-label"])==null?void 0:r.call(o,{modelValue:e.modelValue}))??e.modelValue.toFixed(f.value?I.value:1)])])]),[[_e,b.value&&e.focused||b.value==="always"]])]}})])}),{}}}),Re=W({start:{type:Number,required:!0},stop:{type:Number,required:!0},...re()},"VSliderTrack"),Be=ne()({name:"VSliderTrack",props:Re(),emits:{},setup(e,t){let{slots:o}=t;const i=oe(H);if(!i)throw new Error("[Vuetify] v-slider-track must be inside v-slider or v-range-slider");const{color:u,parsedTicks:m,rounded:h,showTicks:g,tickSize:f,trackColor:w,trackFillColor:_,trackSize:b,vertical:k,min:V,max:N,indexFromEnd:F}=i,{roundedClasses:q}=Te(h),{backgroundColorClasses:O,backgroundColorStyles:I}=ae(_),{backgroundColorClasses:T,backgroundColorStyles:K}=ae(w),z=l(()=>`inset-${k.value?"block":"inline"}-${F.value?"end":"start"}`),R=l(()=>k.value?"height":"width"),P=l(()=>({[z.value]:"0%",[R.value]:"100%"})),E=l(()=>e.stop-e.start),p=l(()=>({[z.value]:M(e.start,"%"),[R.value]:M(E.value,"%")})),L=l(()=>g.value?(k.value?m.value.slice().reverse():m.value).map((s,C)=>{var d;const x=s.value!==V.value&&s.value!==N.value?M(s.position,"%"):void 0;return v("div",{key:s.value,class:["v-slider-track__tick",{"v-slider-track__tick--filled":s.position>=e.start&&s.position<=e.stop,"v-slider-track__tick--first":s.value===V.value,"v-slider-track__tick--last":s.value===N.value}],style:{[z.value]:x}},[(s.label||o["tick-label"])&&v("div",{class:"v-slider-track__tick-label"},[((d=o["tick-label"])==null?void 0:d.call(o,{tick:s,index:C}))??s.label])])}):[]);return ie(()=>v("div",{class:["v-slider-track",q.value,e.class],style:[{"--v-slider-track-size":M(b.value),"--v-slider-tick-size":M(f.value)},e.style]},[v("div",{class:["v-slider-track__background",T.value,{"v-slider-track__background--opacity":!!u.value||!_.value}],style:{...P.value,...K.value}},null),v("div",{class:["v-slider-track__fill",O.value],style:{...p.value,...I.value}},null),g.value&&v("div",{class:["v-slider-track__ticks",{"v-slider-track__ticks--always-show":g.value==="always"}]},[L.value])])),{}}});export{Be as V,Ne as a,Pe as b,xe as g,Le as m,Me as u};