mirror of
https://github.com/ZeroCatDev/Classworks.git
synced 2025-07-03 01:39:22 +00:00
2 lines
2.6 KiB
JavaScript
2 lines
2.6 KiB
JavaScript
import{g as j,p as E,a7 as V,bS as H,r as K,bD as O,t as g,aK as W,j as Y,aL as $,k as a,Y as b,H as q,a4 as G,c4 as J,V as Q,bT as X,c5 as Z}from"./index-CLEuF09V.js";import{u as ee,a as w,m as ae}from"./VTextField-dhOEHggu.js";import{a as y,b as te}from"./VCheckboxBtn-CobWP2LW.js";const le=E({indeterminate:Boolean,inset:Boolean,flat:Boolean,loading:{type:[Boolean,String],default:!1},...ae(),...te()},"VSwitch"),ie=j()({name:"VSwitch",inheritAttrs:!1,props:le(),emits:{"update:focused":e=>!0,"update:modelValue":e=>!0,"update:indeterminate":e=>!0},setup(e,C){let{attrs:S,slots:t}=C;const n=V(e,"indeterminate"),s=V(e,"modelValue"),{loaderClasses:P}=H(e),{isFocused:_,focus:I,blur:x}=ee(e),m=K(),h=O&&window.matchMedia("(forced-colors: active)").matches,A=g(()=>typeof e.loading=="string"&&e.loading!==""?e.loading:e.color),B=W(),F=g(()=>e.id||`switch-${B}`);function R(){n.value&&(n.value=!1)}function p(i){var u,r;i.stopPropagation(),i.preventDefault(),(r=(u=m.value)==null?void 0:u.input)==null||r.click()}return Y(()=>{const[i,u]=$(S),r=w.filterProps(e),D=y.filterProps(e);return a(w,b({class:["v-switch",{"v-switch--flat":e.flat},{"v-switch--inset":e.inset},{"v-switch--indeterminate":n.value},P.value,e.class]},i,r,{modelValue:s.value,"onUpdate:modelValue":c=>s.value=c,id:F.value,focused:_.value,style:e.style}),{...t,default:c=>{let{id:z,messagesId:L,isDisabled:M,isReadonly:N,isValid:k}=c;const d={model:s,isValid:k};return a(y,b({ref:m},D,{modelValue:s.value,"onUpdate:modelValue":[o=>s.value=o,R],id:z.value,"aria-describedby":L.value,type:"checkbox","aria-checked":n.value?"mixed":void 0,disabled:M.value,readonly:N.value,onFocus:I,onBlur:x},u),{...t,default:o=>{let{backgroundColorClasses:v,backgroundColorStyles:l}=o;return a("div",{class:["v-switch__track",h?void 0:v.value],style:l.value,onClick:p},[t["track-true"]&&a("div",{key:"prepend",class:"v-switch__track-true"},[t["track-true"](d)]),t["track-false"]&&a("div",{key:"append",class:"v-switch__track-false"},[t["track-false"](d)])])},input:o=>{let{inputNode:v,icon:l,backgroundColorClasses:T,backgroundColorStyles:U}=o;return a(q,null,[v,a("div",{class:["v-switch__thumb",{"v-switch__thumb--filled":l||e.loading},e.inset||h?void 0:T.value],style:e.inset?void 0:U.value},[t.thumb?a(G,{defaults:{VIcon:{icon:l,size:"x-small"}}},{default:()=>[t.thumb({...d,icon:l})]}):a(J,null,{default:()=>[e.loading?a(X,{name:"v-switch",active:!0,color:k.value===!1?void 0:A.value},{default:f=>t.loader?t.loader(f):a(Z,{active:f.isActive,color:f.color,indeterminate:!0,size:"16",width:"2"},null)}):l&&a(Q,{key:String(l),icon:l,size:"x-small"},null)]})])])}})}})}),{}}});export{ie as V};
|