mirror of
https://github.com/ZeroCatDev/Classworks.git
synced 2026-08-12 09:20:31 +00:00
2 lines
12 KiB
JavaScript
2 lines
12 KiB
JavaScript
import{q as Ce,t as B,e as n,b as le,s as ae,I as Ve,p as _e,d as ye,o as Te,k as f,N as Y,n as D,R as fe,j as G,V as Fe,m as be,F as xe}from"./vendor-vue-BiQC5iF7.js";import{ag as Re,R as Le,ao as he,G as Ne,H as oe,ap as Pe,af as ze,N as Ee,I as Me}from"./index-D042plwv.js";import{f as Be,u as De,b as ke,a as Ke,m as Ie,g as Ae}from"./VTextField-BoJUR4Xs.js";import{A as ie,z as ue,aH as qe,p as se,aI as pe,f as de,aJ as Oe,u as ce,s as j,k as Se,n as je,aB as $e}from"./vendor-vuetify-DpmmaPkh.js";const ve=Symbol.for("vuetify:v-slider");function He(e,l,s){const u=s==="vertical",c=l.getBoundingClientRect(),m="touches"in e?e.touches[0]:e;return u?m.clientY-(c.top+c.height/2):m.clientX-(c.left+c.width/2)}function Ue(e,l){return"touches"in e&&e.touches.length?e.touches[0][l]:"changedTouches"in e&&e.changedTouches.length?e.changedTouches[0][l]:e[l]}const Xe=se({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"||e==="hover"},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,noKeyboard:Boolean,...Le(),...Re({elevation:2}),ripple:{type:Boolean,default:!0}},"Slider"),Ye=e=>{const l=n(()=>parseFloat(e.min)),s=n(()=>parseFloat(e.max)),u=n(()=>Number(e.step)>0?parseFloat(e.step):0),c=n(()=>Math.max(pe(u.value),pe(l.value)));function m(p){if(p=parseFloat(p),u.value<=0)return p;const i=ue(p,l.value,s.value),b=l.value%u.value;let d=Math.round((i-b)/u.value)*u.value+b;return i>d&&d+u.value>s.value&&(d=s.value),parseFloat(Math.min(d,s.value).toFixed(c.value))}return{min:l,max:s,step:u,decimals:c,roundValue:m}},Ge=e=>{let{props:l,steps:s,onSliderStart:u,onSliderMove:c,onSliderEnd:m,getActiveThumb:p}=e;const i=Be(l),{isRtl:b}=ie(),d=B(()=>l.reverse),z=n(()=>l.direction==="vertical"),_=n(()=>z.value!==d.value),{min:v,max:S,step:g,decimals:A,roundValue:K}=s,q=n(()=>parseInt(l.thumbSize,10)),I=n(()=>parseInt(l.tickSize,10)),T=n(()=>parseInt(l.trackSize,10)),k=n(()=>(S.value-v.value)/g.value),E=n(()=>l.error||i.isDisabled.value?void 0:l.thumbColor??l.color),F=n(()=>l.error||i.isDisabled.value?void 0:l.thumbColor),M=n(()=>l.error||i.isDisabled.value?void 0:l.trackColor??l.color),R=n(()=>l.error||i.isDisabled.value?void 0:l.trackFillColor??l.color),L=ae(!1),o=ae(0),w=le(),r=le();function N(t){var me;const a=(me=w.value)==null?void 0:me.$el;if(!a)return;const h=l.direction==="vertical",U=h?"top":"left",Z=h?"height":"width",ee=h?"clientY":"clientX",{[U]:te,[Z]:ge}=a.getBoundingClientRect(),we=Ue(t,ee);let ne=ue((we-te-o.value)/ge)||0;return(h?_.value:_.value!==b.value)&&(ne=1-ne),K(v.value+ne*(S.value-v.value))}const C=t=>{const a=N(t);a!=null&&m({value:a}),L.value=!1,o.value=0},y=t=>{const a=N(t);r.value=p(t),r.value&&(L.value=!0,r.value.contains(t.target)?o.value=He(t,r.value,l.direction):(o.value=0,a!=null&&c({value:a})),a!=null&&u({value:a}),Ve(()=>{var h;return(h=r.value)==null?void 0:h.focus()}))},V={passive:!0,capture:!0};function x(t){const a=N(t);a!=null&&c({value:a})}function $(t){t.stopPropagation(),t.preventDefault(),C(t),window.removeEventListener("mousemove",x,V),window.removeEventListener("mouseup",$)}function O(t){var a;C(t),window.removeEventListener("touchmove",x,V),(a=t.target)==null||a.removeEventListener("touchend",O)}function H(t){var a;y(t),window.addEventListener("touchmove",x,V),(a=t.target)==null||a.addEventListener("touchend",O,{passive:!1})}function X(t){t.button===0&&(t.preventDefault(),y(t),window.addEventListener("mousemove",x,V),window.addEventListener("mouseup",$,{passive:!1}))}Ce(()=>{window.removeEventListener("touchmove",x),window.removeEventListener("mousemove",x),window.removeEventListener("mouseup",$)});const P=t=>{const a=(t-v.value)/(S.value-v.value)*100;return ue(isNaN(a)?0:a,0,100)},J=B(()=>l.showTicks),W=n(()=>J.value?l.ticks?Array.isArray(l.ticks)?l.ticks.map(t=>({value:t,position:P(t),label:t.toString()})):Object.keys(l.ticks).map(t=>({value:parseFloat(t),position:P(parseFloat(t)),label:l.ticks[t]})):k.value!==1/0?qe(k.value+1).map(t=>{const a=v.value+t*g.value;return{value:a,position:P(a)}}):[]:[]),re=n(()=>W.value.some(t=>{let{label:a}=t;return!!a})),Q={activeThumbRef:r,color:B(()=>l.color),decimals:A,disabled:i.isDisabled,direction:B(()=>l.direction),elevation:B(()=>l.elevation),hasLabels:re,isReversed:d,indexFromEnd:_,min:v,max:S,mousePressed:L,noKeyboard:B(()=>l.noKeyboard),numTicks:k,onSliderMousedown:X,onSliderTouchstart:H,parsedTicks:W,parseMouseMove:N,position:P,readonly:i.isReadonly,rounded:B(()=>l.rounded),roundValue:K,showTicks:J,startOffset:o,step:g,thumbSize:q,thumbColor:E,thumbLabelColor:F,thumbLabel:B(()=>l.thumbLabel),ticks:B(()=>l.ticks),tickSize:I,trackColor:M,trackContainerRef:w,trackFillColor:R,trackSize:T,vertical:z};return _e(ve,Q),Q},Je=se({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,noKeyboard:Boolean,...Se()},"VSliderThumb"),We=de()({name:"VSliderThumb",directives:{vRipple:he},props:Je(),emits:{"update:modelValue":e=>!0},setup(e,l){let{slots:s,emit:u}=l;const c=ye(ve),{isRtl:m,rtlClasses:p}=ie();if(!c)throw new Error("[Vuetify] v-slider-thumb must be used inside v-slider or v-range-slider");const{min:i,max:b,thumbColor:d,thumbLabelColor:z,step:_,disabled:v,thumbSize:S,thumbLabel:g,direction:A,isReversed:K,vertical:q,readonly:I,elevation:T,mousePressed:k,decimals:E,indexFromEnd:F}=c,M=ae(!1),R=ae(!1),L=n(()=>v.value?void 0:T.value),{elevationClasses:o}=ze(L),{textColorClasses:w,textColorStyles:r}=Ne(d),{backgroundColorClasses:N,backgroundColorStyles:C}=oe(z),{pageup:y,pagedown:V,end:x,home:$,left:O,right:H,down:X,up:P}=Oe,J=[y,V,x,$,O,H,X,P],W=n(()=>_.value?[1,2,3]:[1,5,10]);function re(t,a){if(e.noKeyboard||v.value||!J.includes(t.key))return;t.preventDefault();const h=_.value||.1,U=(b.value-i.value)/h;if([O,H,X,P].includes(t.key)){const ee=(q.value?[m.value?O:H,K.value?X:P]:F.value!==m.value?[O,P]:[H,P]).includes(t.key)?1:-1,te=t.shiftKey?2:t.ctrlKey?1:0;ee===-1&&a===b.value&&!te&&!Number.isInteger(U)?a=a-U%1*h:a=a+ee*h*W.value[te]}else if(t.key===$)a=i.value;else if(t.key===x)a=b.value;else{const Z=t.key===V?1:-1;a=a-Z*h*(U>100?U/10:10)}return Math.max(e.min,Math.min(e.max,a))}function Q(t){const a=re(t,e.modelValue);a!=null&&(R.value=!1,u("update:modelValue",a))}return Te(()=>e.focused,t=>{t&&(R.value=!1)}),ce(()=>{const t=j(F.value?100-e.position:e.position,"%"),a=g.value==="always"||g.value===!0&&e.focused||g.value==="hover"&&(M.value||e.focused&&!R.value);return f("div",{class:D(["v-slider-thumb",{"v-slider-thumb--focused":e.focused,"v-slider-thumb--pressed":e.focused&&k.value},e.class,p.value]),style:Y([{"--v-slider-thumb-position":t,"--v-slider-thumb-size":j(S.value)},e.style]),role:"slider",tabindex:v.value?-1:0,"aria-label":e.name,"aria-valuemin":i.value,"aria-valuemax":b.value,"aria-valuenow":e.modelValue,"aria-readonly":!!I.value,"aria-orientation":A.value,onKeydown:I.value?void 0:Q,onMouseenter:()=>{M.value=!0},onMouseleave:()=>{M.value=!1,R.value=!0}},[f("div",{class:D(["v-slider-thumb__surface",w.value,o.value]),style:Y(r.value)},null),fe(f("div",{class:D(["v-slider-thumb__ripple",w.value]),style:Y(r.value)},null),[[he,e.ripple,null,{circle:!0,center:!0}]]),G(Pe,{origin:"bottom center"},{default:()=>{var h;return[fe(f("div",{class:"v-slider-thumb__label-container"},[f("div",{class:D(["v-slider-thumb__label",N.value]),style:Y(C.value)},[f("div",null,[((h=s["thumb-label"])==null?void 0:h.call(s,{modelValue:e.modelValue}))??e.modelValue.toFixed(_.value?E.value:1)]),f("div",{class:"v-slider-thumb__label-wedge"},null)])]),[[Fe,a]])]}})])}),{}}}),Qe=se({start:{type:Number,required:!0},stop:{type:Number,required:!0},...Se()},"VSliderTrack"),Ze=de()({name:"VSliderTrack",props:Qe(),emits:{},setup(e,l){let{slots:s}=l;const u=ye(ve);if(!u)throw new Error("[Vuetify] v-slider-track must be inside v-slider or v-range-slider");const{color:c,parsedTicks:m,rounded:p,showTicks:i,tickSize:b,trackColor:d,trackFillColor:z,trackSize:_,vertical:v,min:S,max:g,indexFromEnd:A}=u,{roundedClasses:K}=Ee(p),{backgroundColorClasses:q,backgroundColorStyles:I}=oe(z),{backgroundColorClasses:T,backgroundColorStyles:k}=oe(d),E=n(()=>`inset-${v.value?"block":"inline"}-${A.value?"end":"start"}`),F=n(()=>v.value?"height":"width"),M=n(()=>({[E.value]:"0%",[F.value]:"100%"})),R=n(()=>e.stop-e.start),L=n(()=>({[E.value]:j(e.start,"%"),[F.value]:j(R.value,"%")})),o=n(()=>i.value?(v.value?m.value.slice().reverse():m.value).map((r,N)=>{var y;const C=r.value!==S.value&&r.value!==g.value?j(r.position,"%"):void 0;return f("div",{key:r.value,class:D(["v-slider-track__tick",{"v-slider-track__tick--filled":r.position>=e.start&&r.position<=e.stop,"v-slider-track__tick--first":r.value===S.value,"v-slider-track__tick--last":r.value===g.value}]),style:{[E.value]:C}},[(r.label||s["tick-label"])&&f("div",{class:"v-slider-track__tick-label"},[((y=s["tick-label"])==null?void 0:y.call(s,{tick:r,index:N}))??r.label])])}):[]);return ce(()=>f("div",{class:D(["v-slider-track",K.value,e.class]),style:Y([{"--v-slider-track-size":j(_.value),"--v-slider-tick-size":j(b.value)},e.style])},[f("div",{class:D(["v-slider-track__background",T.value,{"v-slider-track__background--opacity":!!c.value||!z.value}]),style:{...M.value,...k.value}},null),f("div",{class:D(["v-slider-track__fill",q.value]),style:{...L.value,...I.value}},null),i.value&&f("div",{class:D(["v-slider-track__ticks",{"v-slider-track__ticks--always-show":i.value==="always"}])},[o.value])])),{}}}),et=se({...Ae(),...Xe(),...Ie(),modelValue:{type:[Number,String],default:0}},"VSlider"),rt=de()({name:"VSlider",inheritAttrs:!1,props:et(),emits:{"update:focused":e=>!0,"update:modelValue":e=>!0,start:e=>!0,end:e=>!0},setup(e,l){let{slots:s,emit:u,attrs:c}=l;const m=le(),p=le(),{rtlClasses:i}=ie(),b=Ye(e),d=je(e,"modelValue",void 0,o=>b.roundValue(o??b.min.value)),{min:z,max:_,mousePressed:v,roundValue:S,onSliderMousedown:g,onSliderTouchstart:A,trackContainerRef:K,position:q,hasLabels:I,disabled:T,readonly:k,noKeyboard:E}=Ge({props:e,steps:b,onSliderStart:()=>{!T.value&&!k.value&&u("start",d.value)},onSliderEnd:o=>{let{value:w}=o;const r=S(w);!T.value&&!k.value&&(d.value=r),u("end",r)},onSliderMove:o=>{let{value:w}=o;!T.value&&!k.value&&(d.value=S(w))},getActiveThumb:()=>{var o;return(o=m.value)==null?void 0:o.$el}}),{isFocused:F,focus:M,blur:R}=De(e),L=n(()=>q(d.value));return ce(()=>{const o=ke.filterProps(e),[w,r]=$e(c),N=!!(e.label||s.label||s.prepend);return G(ke,be({ref:p,class:["v-slider",{"v-slider--has-labels":!!s["tick-label"]||I.value,"v-slider--focused":F.value,"v-slider--pressed":v.value,"v-slider--disabled":T.value},i.value,e.class],style:e.style},o,w,{focused:F.value}),{...s,prepend:N?C=>{var y,V;return f(xe,null,[((y=s.label)==null?void 0:y.call(s,C))??(e.label?G(Ke,{id:C.id.value,class:"v-slider__label",text:e.label},null):void 0),(V=s.prepend)==null?void 0:V.call(s,C)])}:void 0,default:C=>{let{id:y,messagesId:V}=C;return f("div",{class:"v-slider__container",onMousedown:k.value?void 0:g,onTouchstartPassive:k.value?void 0:A},[f("input",{id:y.value,name:e.name||y.value,disabled:T.value,readonly:k.value,tabindex:"-1",value:d.value},null),G(Ze,{ref:K,start:0,stop:L.value},{"tick-label":s["tick-label"]}),G(We,be({ref:m,"aria-describedby":V.value,focused:F.value,noKeyboard:E.value,min:z.value,max:_.value,modelValue:d.value,"onUpdate:modelValue":x=>d.value=x,position:L.value,elevation:e.elevation,onFocus:M,onBlur:R,ripple:e.ripple,name:e.name},r),{"thumb-label":s["thumb-label"]})])}})}),Me({focus:()=>{var o;return(o=m.value)==null?void 0:o.$el.focus()}},p)}});export{rt as V};
|