index.b327a5f4.js 1.4 KB

1
  1. import{G as k,S as m,E as f,d as _,H as z,aX as P,y as S,W as y,Z as b,i,L as C,$ as w}from"./index.2557005b.js";const p={name:k,shape:m("round"),disabled:Boolean,iconSize:f,modelValue:k,checkedColor:String,labelPosition:String,labelDisabled:Boolean};var D=_({props:z({},p,{bem:P(Function),role:String,parent:Object,checked:Boolean,bindGroup:S}),emits:["click","toggle"],setup(e,{emit:t,slots:n}){const s=y(),r=o=>{if(e.parent&&e.bindGroup)return e.parent.props[o]},c=b(()=>r("disabled")||e.disabled),u=b(()=>r("direction")),x=b(()=>{const o=e.checkedColor||r("checkedColor");if(o&&e.checked&&!c.value)return{borderColor:o,backgroundColor:o}}),g=o=>{const{target:l}=o,a=s.value,d=a===l||(a==null?void 0:a.contains(l));!c.value&&(d||!e.labelDisabled)&&t("toggle"),t("click",o)},v=()=>{const{bem:o,shape:l,checked:a}=e,d=e.iconSize||r("iconSize");return i("div",{ref:s,class:o("icon",[l,{disabled:c.value,checked:a}]),style:{fontSize:w(d)}},[n.icon?n.icon({checked:a,disabled:c.value}):i(C,{name:"success",style:x.value},null)])},h=()=>{if(n.default)return i("span",{class:e.bem("label",[e.labelPosition,{disabled:c.value}])},[n.default()])};return()=>{const o=e.labelPosition==="left"?[h(),v()]:[v(),h()];return i("div",{role:e.role,class:e.bem([{disabled:c.value,"label-disabled":e.labelDisabled},u.value]),tabindex:c.value?void 0:0,"aria-checked":e.checked,onClick:g},[o])}}});export{p as c,D as s};