primevue
Version:
[](https://opensource.org/licenses/MIT) [](https://badge.fury.io/js/primevue) [ • 1.46 kB
JavaScript
import{ObjectUtils as e}from"primevue/utils";import{openBlock as t,createBlock as s,createVNode as i,mergeProps as o}from"vue";var l={name:"RadioButton",inheritAttrs:!1,emits:["click","update:modelValue","change"],props:{value:null,modelValue:null,class:null,style:null},data:()=>({focused:!1}),methods:{onClick(e){this.$attrs.disabled||(this.$emit("click",e),this.$emit("update:modelValue",this.value),this.$refs.input.focus(),this.checked||this.$emit("change",e))},onFocus(){this.focused=!0},onBlur(){this.focused=!1}},computed:{checked(){return null!=this.modelValue&&e.equals(this.modelValue,this.value)},containerClass(){return["p-radiobutton p-component",this.class,{"p-radiobutton-checked":this.checked,"p-radiobutton-disabled":this.$attrs.disabled,"p-radiobutton-focused":this.focused}]}}};const c={class:"p-hidden-accessible"},u=i("div",{class:"p-radiobutton-icon"},null,-1);l.render=function(e,l,a,d,n,r){return t(),s("div",{class:r.containerClass,onClick:l[3]||(l[3]=e=>r.onClick(e)),style:a.style},[i("div",c,[i("input",o({ref:"input",type:"radio",checked:r.checked,value:a.value},e.$attrs,{onFocus:l[1]||(l[1]=(...e)=>r.onFocus&&r.onFocus(...e)),onBlur:l[2]||(l[2]=(...e)=>r.onBlur&&r.onBlur(...e))}),null,16,["checked","value"])]),i("div",{ref:"box",class:["p-radiobutton-box",{"p-highlight":r.checked,"p-disabled":e.$attrs.disabled,"p-focus":n.focused}],role:"radio","aria-checked":r.checked},[u],10,["aria-checked"])],6)};export default l;