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

2 lines
2.6 KiB
JavaScript

import{g as E,p as G,a8 as g,bW as O,r as X,bH as $,t as b,aL as q,j as J,aM as K,k as l,a0 as w,G as n,n as y,l as C,a5 as Q,c9 as Y,V as Z,bX as ee,ca as ae,H as te}from"./index-DpRopL3V.js";import{u as le,a as S,m as se}from"./VTextField-BILbZBCf.js";import{a as P,b as oe}from"./VCheckboxBtn-BMVogzxc.js";const ne=G({indeterminate:Boolean,inset:Boolean,flat:Boolean,loading:{type:[Boolean,String],default:!1},...se(),...oe()},"VSwitch"),ce=E()({name:"VSwitch",inheritAttrs:!1,props:ne(),emits:{"update:focused":e=>!0,"update:modelValue":e=>!0,"update:indeterminate":e=>!0},setup(e,_){let{attrs:I,slots:a}=_;const i=g(e,"indeterminate"),s=g(e,"modelValue"),{loaderClasses:B}=O(e),{isFocused:x,focus:A,blur:F}=le(e),h=X(),k=$&&window.matchMedia("(forced-colors: active)").matches,z=b(()=>typeof e.loading=="string"&&e.loading!==""?e.loading:e.color),R=q(),p=b(()=>e.id||`switch-${R}`);function M(){i.value&&(i.value=!1)}function N(r){var u,c;r.stopPropagation(),r.preventDefault(),(c=(u=h.value)==null?void 0:u.input)==null||c.click()}return J(()=>{const[r,u]=K(I),c=S.filterProps(e),D=P.filterProps(e);return l(S,w({class:["v-switch",{"v-switch--flat":e.flat},{"v-switch--inset":e.inset},{"v-switch--indeterminate":i.value},B.value,e.class]},r,c,{modelValue:s.value,"onUpdate:modelValue":d=>s.value=d,id:p.value,focused:x.value,style:e.style}),{...a,default:d=>{let{id:L,messagesId:H,isDisabled:T,isReadonly:U,isValid:V}=d;const v={model:s,isValid:V};return l(P,w({ref:h},D,{modelValue:s.value,"onUpdate:modelValue":[o=>s.value=o,M],id:L.value,"aria-describedby":H.value,type:"checkbox","aria-checked":i.value?"mixed":void 0,disabled:T.value,readonly:U.value,onFocus:A,onBlur:F},u),{...a,default:o=>{let{backgroundColorClasses:f,backgroundColorStyles:t}=o;return n("div",{class:C(["v-switch__track",k?void 0:f.value]),style:y(t.value),onClick:N},[a["track-true"]&&n("div",{key:"prepend",class:"v-switch__track-true"},[a["track-true"](v)]),a["track-false"]&&n("div",{key:"append",class:"v-switch__track-false"},[a["track-false"](v)])])},input:o=>{let{inputNode:f,icon:t,backgroundColorClasses:W,backgroundColorStyles:j}=o;return n(te,null,[f,n("div",{class:C(["v-switch__thumb",{"v-switch__thumb--filled":t||e.loading},e.inset||k?void 0:W.value]),style:y(e.inset?void 0:j.value)},[a.thumb?l(Q,{defaults:{VIcon:{icon:t,size:"x-small"}}},{default:()=>[a.thumb({...v,icon:t})]}):l(Y,null,{default:()=>[e.loading?l(ee,{name:"v-switch",active:!0,color:V.value===!1?void 0:z.value},{default:m=>a.loader?a.loader(m):l(ae,{active:m.isActive,color:m.color,indeterminate:!0,size:"16",width:"2"},null)}):t&&l(Z,{key:String(t),icon:t,size:"x-small"},null)]})])])}})}})}),{}}});export{ce as V};