tyh-ui2
Version:
The next generation ui component library of tyh-ui is based on vue3 Version, fully embrace vue3.
2 lines (1 loc) • 1.46 kB
JavaScript
;Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("vue"),m=require("./index2.js"),c=["name","value","disabled"],y=e.defineComponent({name:"TyhRadio"}),f=e.defineComponent({...y,props:m.Props,emits:["update:modelValue","change"],setup(n,{emit:t}){const l=n,r=new Proxy(l,{set(){return!0}}),s=o=>{t("update:modelValue",o.target.value),t("change",o.target.value)},a=e.computed(()=>l.modelValue===l.label),u=e.computed(()=>["tyh-radio-o",a.value?l.disabled?"tyh-radio-disabled":"tyh-radio-hig":""]),i=e.computed(()=>({color:a.value?l.disabled?"#b6b5b5":"#3a6ff4":l.disabled?"#b6b5b5":"#333"})),b=e.computed(()=>({cursor:l.disabled?"no-drop":"pointer",border:l.border?` 1px solid ${a.value?l.disabled?"#b6b5b5":"#3a6ff4":"#b6b5b5"}`:""}));return(o,d)=>(e.openBlock(),e.createElementBlock("label",{class:e.normalizeClass(["tyh-radio",{[`tyh-radio-${o.size}`]:o.border,"tyh-radio-border":o.border}]),style:e.normalizeStyle(e.unref(b))},[e.createElementVNode("span",{class:e.normalizeClass(e.unref(u))},[e.withDirectives(e.createElementVNode("input",{"onUpdate:modelValue":d[0]||(d[0]=p=>e.unref(r).modelValue=p),type:"radio",name:o.name,value:o.label,disabled:o.disabled,onInput:s},null,40,c),[[e.vModelRadio,e.unref(r).modelValue]])],2),e.createElementVNode("span",{class:"tyh-radio-text",style:e.normalizeStyle(e.unref(i))},[e.renderSlot(o.$slots,"default")],4)],6))}});exports.default=f;