primevue
Version:
PrimeVue is an open source UI library for Vue featuring a rich set of 80+ components, a theme designer, various theme alternatives such as Material, Bootstrap, Tailwind, premium templates and professional support. In addition, it integrates with PrimeBloc
2 lines (1 loc) • 3.49 kB
JavaScript
this.primevue=this.primevue||{},this.primevue.tristatecheckbox=function(e,t,a,l,n){"use strict";function i(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var o=i(e),c=i(t),s={name:"TriStateCheckbox",extends:{name:"BaseTriStateCheckbox",extends:i(a).default,props:{modelValue:null,disabled:{type:Boolean,default:!1},readonly:{type:Boolean,default:!1},tabindex:{type:Number,default:null},inputId:{type:String,default:null},inputClass:{type:[String,Object],default:null},inputStyle:{type:Object,default:null},ariaLabelledby:{type:String,default:null},ariaLabel:{type:String,default:null}},style:i(l).default,provide:function(){return{$parentInstance:this}}},emits:["update:modelValue","change","focus","blur"],methods:{getPTOptions:function(e){return this.ptm(e,{context:{active:this.active,disabled:this.disabled}})},updateModel:function(){var e;switch(this.modelValue){case!0:e=!1;break;case!1:e=null;break;default:e=!0}this.$emit("update:modelValue",e)},onChange:function(e){this.disabled||this.readonly||(this.updateModel(),this.$emit("change",e))},onFocus:function(e){this.$emit("focus",e)},onBlur:function(e){this.$emit("blur",e)}},computed:{active:function(){return null!=this.modelValue},checked:function(){return!0===this.modelValue},ariaValueLabel:function(){return this.modelValue?this.$primevue.config.locale.aria.trueLabel:!1===this.modelValue?this.$primevue.config.locale.aria.falseLabel:this.$primevue.config.locale.aria.nullLabel}},components:{CheckIcon:o.default,TimesIcon:c.default}},u=["data-p-highlight","data-p-disabled"],r=["id","value","checked","tabindex","disabled","readonly","aria-labelledby","aria-label"];return s.render=function(e,t,a,l,i,o){var c=n.resolveComponent("CheckIcon"),s=n.resolveComponent("TimesIcon");return n.openBlock(),n.createElementBlock("div",n.mergeProps({class:e.cx("root")},o.getPTOptions("root"),{"data-pc-name":"tristatecheckbox","data-p-highlight":o.active,"data-p-disabled":e.disabled}),[n.createElementVNode("input",n.mergeProps({id:e.inputId,type:"checkbox",class:[e.cx("input"),e.inputClass],style:e.inputStyle,value:e.modelValue,checked:o.checked,tabindex:e.tabindex,disabled:e.disabled,readonly:e.readonly,"aria-labelledby":e.ariaLabelledby,"aria-label":e.ariaLabel,onFocus:t[0]||(t[0]=function(){return o.onFocus&&o.onFocus.apply(o,arguments)}),onBlur:t[1]||(t[1]=function(){return o.onBlur&&o.onBlur.apply(o,arguments)}),onChange:t[2]||(t[2]=function(){return o.onChange&&o.onChange.apply(o,arguments)})},o.getPTOptions("input")),null,16,r),n.createElementVNode("span",n.mergeProps({role:"status",class:"p-hidden-accessible","aria-live":"polite"},o.getPTOptions("hiddenValueLabel"),{"data-p-hidden-accessible":!0}),n.toDisplayString(o.ariaValueLabel),17),n.createElementVNode("div",n.mergeProps({class:e.cx("box")},o.getPTOptions("box")),[!0===e.modelValue?n.renderSlot(e.$slots,"checkicon",{key:0,class:n.normalizeClass(e.cx("checkIcon"))},(function(){return[n.createVNode(c,n.mergeProps({class:e.cx("checkIcon")},o.getPTOptions("checkIcon")),null,16,["class"])]})):!1===e.modelValue?n.renderSlot(e.$slots,"uncheckicon",{key:1,class:n.normalizeClass(e.cx("uncheckIcon"))},(function(){return[n.createVNode(s,n.mergeProps({class:e.cx("uncheckIcon")},o.getPTOptions("uncheckIcon")),null,16,["class"])]})):n.renderSlot(e.$slots,"nullableicon",{key:2,class:n.normalizeClass(e.cx("nullableIcon"))})],16)],16,u)},s}(primevue.icons.check,primevue.icons.times,primevue.basecomponent,primevue.tristatecheckbox.style,Vue);