primevue
Version:
[](https://opensource.org/licenses/MIT) [](https://badge.fury.io/js/primevue) [ • 2.21 kB
JavaScript
this.primevue=this.primevue||{},this.primevue.inputswitch=function(e){"use strict";var t={name:"InputSwitch",inheritAttrs:!1,emits:["click","update:modelValue","change","input"],props:{modelValue:{type:null,default:!1},class:null,style:null,trueValue:{type:null,default:!0},falseValue:{type:null,default:!1}},data:()=>({focused:!1}),methods:{onClick(e){if(!this.$attrs.disabled){const t=this.checked?this.falseValue:this.trueValue;this.$emit("click",e),this.$emit("update:modelValue",t),this.$emit("change",e),this.$emit("input",t),this.$refs.input.focus()}e.preventDefault()},onFocus(){this.focused=!0},onBlur(){this.focused=!1}},computed:{containerClass(){return["p-inputswitch p-component",this.class,{"p-inputswitch-checked":this.checked,"p-disabled":this.$attrs.disabled,"p-focus":this.focused}]},checked(){return this.modelValue===this.trueValue}}};const n={class:"p-hidden-accessible"},i=["checked","aria-checked"],s=e.createElementVNode("span",{class:"p-inputswitch-slider"},null,-1);return function(e,t){void 0===t&&(t={});var n=t.insertAt;if(e&&"undefined"!=typeof document){var i=document.head||document.getElementsByTagName("head")[0],s=document.createElement("style");s.type="text/css","top"===n&&i.firstChild?i.insertBefore(s,i.firstChild):i.appendChild(s),s.styleSheet?s.styleSheet.cssText=e:s.appendChild(document.createTextNode(e))}}('\n.p-inputswitch {\n position: relative;\n display: inline-block;\n}\n.p-inputswitch-slider {\n position: absolute;\n cursor: pointer;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n}\n.p-inputswitch-slider:before {\n position: absolute;\n content: "";\n top: 50%;\n}\n'),t.render=function(t,l,c,o,u,a){return e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(a.containerClass),onClick:l[3]||(l[3]=e=>a.onClick(e)),style:e.normalizeStyle(c.style)},[e.createElementVNode("div",n,[e.createElementVNode("input",e.mergeProps({ref:"input",type:"checkbox",checked:a.checked},t.$attrs,{onFocus:l[0]||(l[0]=e=>a.onFocus(e)),onBlur:l[1]||(l[1]=e=>a.onBlur(e)),onKeydown:l[2]||(l[2]=e.withKeys(e.withModifiers((e=>a.onClick(e)),["prevent"]),["enter"])),role:"switch","aria-checked":a.checked}),null,16,i)]),s],6)},t}(Vue);