1
0
mirror of https://github.com/ZeroCatDev/Classworks.git synced 2025-07-02 00:59:23 +00:00
Classworks/assets/VSwitch-Ny54d8kI.js

2 lines
2.6 KiB
JavaScript

import{g as j,p as E,a7 as V,bX as O,r as W,bI as X,t as g,aL as Y,j as Z,aM as $,k as a,Z as b,F as q,a4 as G,ca as H,V as J,bY as K,cb as Q}from"./index-ByVcHmHP.js";import{u as ee,a as w,m as ae}from"./VTextField-xmohowzo.js";import{a as y,b as te}from"./VCheckboxBtn-Bft-Eh3Z.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}=O(e),{isFocused:_,focus:I,blur:F}=ee(e),m=W(),h=X&&window.matchMedia("(forced-colors: active)").matches,x=g(()=>typeof e.loading=="string"&&e.loading!==""?e.loading:e.color),A=Y(),B=g(()=>e.id||`switch-${A}`);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 Z(()=>{const[i,u]=$(S),r=w.filterProps(e),M=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:B.value,focused:_.value,style:e.style}),{...t,default:c=>{let{id:z,messagesId:D,isDisabled:L,isReadonly:N,isValid:k}=c;const d={model:s,isValid:k};return a(y,b({ref:m},M,{modelValue:s.value,"onUpdate:modelValue":[o=>s.value=o,R],id:z.value,"aria-describedby":D.value,type:"checkbox","aria-checked":n.value?"mixed":void 0,disabled:L.value,readonly:N.value,onFocus:I,onBlur:F},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(H,null,{default:()=>[e.loading?a(K,{name:"v-switch",active:!0,color:k.value===!1?void 0:x.value},{default:f=>t.loader?t.loader(f):a(Q,{active:f.isActive,color:f.color,indeterminate:!0,size:"16",width:"2"},null)}):l&&a(J,{key:String(l),icon:l,size:"x-small"},null)]})])])}})}})}),{}}});export{ie as V};