primevue
Version:
[](https://opensource.org/licenses/MIT) [](https://badge.fury.io/js/primevue)
2 lines (1 loc) • 1.44 kB
JavaScript
import{ObjectUtils as e}from"primevue/utils";import{openBlock as t,createBlock as s,createVNode as i,mergeProps as l}from"vue";var o={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);o.render=function(e,o,d,a,n,r){return t(),s("div",{class:r.containerClass,onClick:o[3]||(o[3]=e=>r.onClick(e)),style:d.style},[i("div",c,[i("input",l({ref:"input",type:"radio",checked:r.checked,value:d.value},e.$attrs,{onFocus:o[1]||(o[1]=(...e)=>r.onFocus&&r.onFocus(...e)),onBlur:o[2]||(o[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 o;