primevue
Version:
[](https://opensource.org/licenses/MIT) [](https://badge.fury.io/js/primevue) [ • 5.45 kB
JavaScript
this.primevue=this.primevue||{},this.primevue.tristatecheckbox=function(e,t,n,o){"use strict";function c(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var l=c(e),r=c(t),i={name:"TriStateCheckbox",extends:{name:"BaseTriStateCheckbox",extends:c(n).default,props:{modelValue:null,inputId:{type:String,default:null},inputProps:{type:null,default:null},disabled:{type:Boolean,default:!1},tabindex:{type:Number,default:0},"aria-labelledby":{type:String,default:null},"aria-label":{type:String,default:null}},css:{classes:{root:function(e){var t=e.props;return["p-checkbox p-component",{"p-checkbox-checked":!0===t.modelValue,"p-checkbox-disabled":t.disabled,"p-checkbox-focused":e.instance.focused}]},checkbox:function(e){var t=e.props;return["p-checkbox-box",{"p-highlight":null!=t.modelValue,"p-disabled":t.disabled,"p-focus":e.instance.focused}]},checkIcon:"p-checkbox-icon",uncheckIcon:"p-checkbox-icon",nullableIcon:"p-checkbox-icon"}},provide:function(){return{$parentInstance:this}}},emits:["click","update:modelValue","change","keydown","focus","blur"],data:function(){return{focused:!1}},methods:{getPTOptions:function(e){return this.ptm(e,{context:{active:null!==this.modelValue,focused:this.focused,disabled:this.disabled}})},updateModel:function(){if(!this.disabled){var e;switch(this.modelValue){case!0:e=!1;break;case!1:e=null;break;default:e=!0}this.$emit("update:modelValue",e)}},onClick:function(e){this.updateModel(),this.$emit("click",e),this.$emit("change",e),this.$refs.input.focus()},onKeyDown:function(e){"Enter"===e.code&&(this.updateModel(),this.$emit("keydown",e),e.preventDefault())},onFocus:function(e){this.focused=!0,this.$emit("focus",e)},onBlur:function(e){this.focused=!1,this.$emit("blur",e)}},computed:{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:l.default,TimesIcon:r.default}};function a(e){return a="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},a(e)}function u(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);t&&(o=o.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,o)}return n}function s(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?u(Object(n),!0).forEach((function(t){d(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):u(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function d(e,t,n){return(t=p(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function p(e){var t=b(e,"string");return"symbol"===a(t)?t:String(t)}function b(e,t){if("object"!==a(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var o=n.call(e,t||"default");if("object"!==a(o))return o;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}var f=["id","checked","tabindex","disabled","aria-labelledby","aria-label"],m=["data-p-highlight","data-p-disabled","data-p-focused"];return i.render=function(e,t,n,c,l,r){return o.openBlock(),o.createElementBlock("div",o.mergeProps({class:e.cx("root"),onClick:t[3]||(t[3]=function(e){return r.onClick(e)})},e.ptm("root"),{"data-pc-name":"tristatecheckbox"}),[o.createElementVNode("div",o.mergeProps({class:"p-hidden-accessible"},e.ptm("hiddenInputWrapper"),{"data-p-hidden-accessible":!0}),[o.createElementVNode("input",o.mergeProps({ref:"input",id:e.inputId,type:"checkbox",checked:!0===e.modelValue,tabindex:e.tabindex,disabled:e.disabled,"aria-labelledby":e.ariaLabelledby,"aria-label":e.ariaLabel,onKeydown:t[0]||(t[0]=function(e){return r.onKeyDown(e)}),onFocus:t[1]||(t[1]=function(e){return r.onFocus(e)}),onBlur:t[2]||(t[2]=function(e){return r.onBlur(e)})},s(s({},e.inputProps),e.ptm("hiddenInput"))),null,16,f)],16),o.createElementVNode("span",o.mergeProps({role:"status",class:"p-hidden-accessible","aria-live":"polite"},e.ptm("hiddenValueLabel"),{"data-p-hidden-accessible":!0}),o.toDisplayString(r.ariaValueLabel),17),o.createElementVNode("div",o.mergeProps({ref:"box",class:e.cx("checkbox")},r.getPTOptions("checkbox"),{"data-p-highlight":null!=e.modelValue,"data-p-disabled":e.disabled,"data-p-focused":l.focused}),[!0===e.modelValue?o.renderSlot(e.$slots,"checkicon",{key:0,class:o.normalizeClass(e.cx("checkIcon"))},(function(){return[(o.openBlock(),o.createBlock(o.resolveDynamicComponent("CheckIcon"),o.mergeProps({class:e.cx("checkIcon")},e.ptm("checkIcon")),null,16,["class"]))]})):!1===e.modelValue?o.renderSlot(e.$slots,"uncheckicon",{key:1,class:o.normalizeClass(e.cx("uncheckIcon"))},(function(){return[(o.openBlock(),o.createBlock(o.resolveDynamicComponent("TimesIcon"),o.mergeProps({class:e.cx("uncheckIcon")},e.ptm("uncheckIcon")),null,16,["class"]))]})):o.renderSlot(e.$slots,"nullableicon",{key:2,class:o.normalizeClass(e.cx("nullableIcon"))},(function(){return[o.createElementVNode("span",o.mergeProps({class:e.cx("nullableIcon")},e.ptm("nullableIcon")),null,16)]}))],16,m)],16)},i}(primevue.icons.check,primevue.icons.times,primevue.basecomponent,Vue);