import{aV as P,d as k,bB as w,w as I,c0 as D,f as r,bo as _,bR as g,aY as z,bm as R,bp as $,bz as F,l as N,e as s,I as O,bM as v,bs as Y,bF as j,bG as q}from"./index-d2fedb3b.js";const[x,A]=P("radio-group"),E={shape:String,disabled:Boolean,iconSize:_,direction:String,modelValue:g,checkedColor:String},y=Symbol(x);var K=k({name:x,props:E,emits:["change","update:modelValue"],setup(e,{emit:c,slots:t}){const{linkChildren:l}=w(y),o=a=>c("update:modelValue",a);return I(()=>e.modelValue,a=>c("change",a)),l({props:e,updateValue:o}),D(()=>e.modelValue),()=>{var a;return r("div",{class:A([e.direction]),role:"radiogroup"},[(a=t.default)==null?void 0:a.call(t)])}}});const J=z(K),B={name:g,disabled:Boolean,iconSize:_,modelValue:g,checkedColor:String,labelPosition:String,labelDisabled:Boolean};var L=k({props:R({},B,{bem:$(Function),role:String,shape:String,parent:Object,checked:Boolean,bindGroup:F,indeterminate:{type:Boolean,default:null}}),emits:["click","toggle"],setup(e,{emit:c,slots:t}){const l=N(),o=n=>{if(e.parent&&e.bindGroup)return e.parent.props[n]},a=s(()=>{if(e.parent&&e.bindGroup){const n=o("disabled")||e.disabled;if(e.role==="checkbox"){const i=o("modelValue").length,d=o("max"),u=d&&i>=+d;return n||u&&!e.checked}return n}return e.disabled}),f=s(()=>o("direction")),b=s(()=>{const n=e.checkedColor||o("checkedColor");if(n&&e.checked&&!a.value)return{borderColor:n,backgroundColor:n}}),m=s(()=>e.shape||o("shape")||"round"),G=n=>{const{target:i}=n,d=l.value,u=d===i||(d==null?void 0:d.contains(i));!a.value&&(u||!e.labelDisabled)&&c("toggle"),c("click",n)},C=()=>{var n,i;const{bem:d,checked:u,indeterminate:V}=e,h=e.iconSize||o("iconSize");return r("div",{ref:l,class:d("icon",[m.value,{disabled:a.value,checked:u,indeterminate:V}]),style:m.value!=="dot"?{fontSize:v(h)}:{width:v(h),height:v(h),borderColor:(n=b.value)==null?void 0:n.borderColor}},[t.icon?t.icon({checked:u,disabled:a.value}):m.value!=="dot"?r(O,{name:V?"minus":"success",style:b.value},null):r("div",{class:d("icon--dot__icon"),style:{backgroundColor:(i=b.value)==null?void 0:i.backgroundColor}},null)])},S=()=>{if(t.default)return r("span",{class:e.bem("label",[e.labelPosition,{disabled:a.value}])},[t.default()])};return()=>{const n=e.labelPosition==="left"?[S(),C()]:[C(),S()];return r("div",{role:e.role,class:e.bem([{disabled:a.value,"label-disabled":e.labelDisabled},f.value]),tabindex:a.value?void 0:0,"aria-checked":e.checked,onClick:G},[n])}}});const M=R({},B,{shape:String}),[T,U]=P("radio");var p=k({name:T,props:M,emits:["update:modelValue"],setup(e,{emit:c,slots:t}){const{parent:l}=Y(y),o=()=>(l?l.props.modelValue:e.modelValue)===e.name,a=()=>{l?l.updateValue(e.name):c("update:modelValue",e.name)};return()=>r(L,q({bem:U,role:"radio",parent:l,checked:o(),onToggle:a},e),j(t,["default","icon"]))}});const Q=z(p);export{J as R,Q as a};