index-d4a466e8.js 2.2 KB

1
  1. import{aV as v,d as m,bK as y,w as B,cc as I,f as i,bA as f,c1 as b,aY as S,bO as _,by as p,bB as w,bN as D,l as G,e as u,I as $,bY as x,bE as N,bL as O,bS as Y}from"./index-1c3b512b.js";const[V,A]=v("radio-group"),E={disabled:Boolean,iconSize:f,direction:String,modelValue:b,checkedColor:String},C=Symbol(V);var F=m({name:V,props:E,emits:["change","update:modelValue"],setup(e,{emit:t,slots:o}){const{linkChildren:l}=y(C),c=a=>t("update:modelValue",a);return B(()=>e.modelValue,a=>t("change",a)),l({props:e,updateValue:c}),I(()=>e.modelValue),()=>{var a;return i("div",{class:A([e.direction]),role:"radiogroup"},[(a=o.default)==null?void 0:a.call(o)])}}});const U=S(F),P={name:b,shape:_("round"),disabled:Boolean,iconSize:f,modelValue:b,checkedColor:String,labelPosition:String,labelDisabled:Boolean};var K=m({props:p({},P,{bem:w(Function),role:String,parent:Object,checked:Boolean,bindGroup:D}),emits:["click","toggle"],setup(e,{emit:t,slots:o}){const l=G(),c=n=>{if(e.parent&&e.bindGroup)return e.parent.props[n]},a=u(()=>c("disabled")||e.disabled),k=u(()=>c("direction")),z=u(()=>{const n=e.checkedColor||c("checkedColor");if(n&&e.checked&&!a.value)return{borderColor:n,backgroundColor:n}}),R=n=>{const{target:r}=n,d=l.value,s=d===r||(d==null?void 0:d.contains(r));!a.value&&(s||!e.labelDisabled)&&t("toggle"),t("click",n)},g=()=>{const{bem:n,shape:r,checked:d}=e,s=e.iconSize||c("iconSize");return i("div",{ref:l,class:n("icon",[r,{disabled:a.value,checked:d}]),style:{fontSize:x(s)}},[o.icon?o.icon({checked:d,disabled:a.value}):i($,{name:"success",style:z.value},null)])},h=()=>{if(o.default)return i("span",{class:e.bem("label",[e.labelPosition,{disabled:a.value}])},[o.default()])};return()=>{const n=e.labelPosition==="left"?[h(),g()]:[g(),h()];return i("div",{role:e.role,class:e.bem([{disabled:a.value,"label-disabled":e.labelDisabled},k.value]),tabindex:a.value?void 0:0,"aria-checked":e.checked,onClick:R},[n])}}});const[L,j]=v("radio");var q=m({name:L,props:P,emits:["update:modelValue"],setup(e,{emit:t,slots:o}){const{parent:l}=N(C),c=()=>(l?l.props.modelValue:e.modelValue)===e.name,a=()=>{l?l.updateValue(e.name):t("update:modelValue",e.name)};return()=>i(K,Y({bem:j,role:"radio",parent:l,checked:c(),onToggle:a},e),O(o,["default","icon"]))}});const H=S(q);export{U as R,H as a};