buefy
Version:
Lightweight UI components for Vue.js (v3) based on Bulma
3 lines (2 loc) • 4.45 kB
JavaScript
/*! Buefy v3.0.0 | MIT License | github.com/buefy/buefy */
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("vue")):"function"==typeof define&&define.amd?define(["exports","vue"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).Checkbox={},e.Vue)}(this,(function(e,t){"use strict";var n=t.defineComponent({props:{modelValue:[String,Number,Boolean,Function,Object,Array],nativeValue:[String,Number,Boolean,Function,Object,Array],type:String,disabled:Boolean,required:Boolean,name:String,size:String},emits:{"update:modelValue":e=>!0},data(){return{newValue:this.modelValue}},computed:{computedValue:{get(){return this.newValue},set(e){this.newValue=e,this.$emit("update:modelValue",e)}},disabledOrUndefined(){return this.disabled||void 0},requiredOrUndefined(){return this.required||void 0}},watch:{modelValue(e){this.newValue=e}},methods:{focus(){this.$refs.input.focus()}}}),a=t.defineComponent({name:"BCheckbox",mixins:[n],props:{indeterminate:Boolean,ariaLabelledby:String,trueValue:{type:[String,Number,Boolean,Function,Object,Array],default:!0},falseValue:{type:[String,Number,Boolean,Function,Object,Array],default:!1},autocomplete:{type:String,default:"on"},inputId:{type:String,default:""}}}),i=(e,t)=>{const n=e.__vccOpts||e;for(const[e,a]of t)n[e]=a;return n};const l=["disabled"],o=["id",".indeterminate","autocomplete","disabled","required","name","value","true-value","false-value","aria-labelledby"],d=["id"];var r=i(a,[["render",function(e,n,a,i,r,s){return t.openBlock(),t.createElementBlock("label",{class:t.normalizeClass(["b-checkbox checkbox",[e.size,{"is-disabled":e.disabled}]]),ref:"label",disabled:e.disabledOrUndefined,onClick:n[2]||(n[2]=(...t)=>e.focus&&e.focus(...t)),onKeydown:[n[3]||(n[3]=t.withKeys(t.withModifiers((t=>e.$refs.label.click()),["prevent"]),["enter"])),n[4]||(n[4]=t.withKeys(t.withModifiers((t=>e.$refs.label.click()),["prevent"]),["space"]))]},[t.createCommentVNode(" Checkbox needs to listen for a space event instead of a just a\n click and enter event so that that using the keyboard spacebar will also\n trigger the checkbox change in the b-table "),t.withDirectives(t.createElementVNode("input",{"onUpdate:modelValue":n[0]||(n[0]=t=>e.computedValue=t),id:e.inputId,".indeterminate":e.indeterminate,type:"checkbox",ref:"input",onClick:n[1]||(n[1]=t.withModifiers((()=>{}),["stop"])),autocomplete:e.autocomplete,disabled:e.disabledOrUndefined,required:e.requiredOrUndefined,name:e.name,value:e.nativeValue,"true-value":e.trueValue,"false-value":e.falseValue,"aria-labelledby":e.ariaLabelledby},null,40,o),[[t.vModelCheckbox,e.computedValue]]),t.createElementVNode("span",{class:t.normalizeClass(["check",e.type])},null,2),t.createElementVNode("span",{id:e.ariaLabelledby,class:"control-label"},[t.renderSlot(e.$slots,"default")],8,d)],42,l)}]]),s=t.defineComponent({name:"BCheckboxButton",mixins:[n],props:{type:{type:String,default:"is-primary"},expanded:Boolean},data:()=>({isFocused:!1}),computed:{checked(){return Array.isArray(this.newValue)?this.newValue.indexOf(this.nativeValue)>=0:this.newValue===this.nativeValue}}});const u=["disabled"],c=["disabled","required","name","value"];var b=i(s,[["render",function(e,n,a,i,l,o){return t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(["control",{"is-expanded":e.expanded}])},[t.createElementVNode("label",{class:t.normalizeClass(["b-checkbox checkbox button",[e.checked?e.type:null,e.size,{"is-disabled":e.disabled,"is-focused":e.isFocused}]]),ref:"label",disabled:e.disabledOrUndefined,onClick:n[4]||(n[4]=(...t)=>e.focus&&e.focus(...t)),onKeydown:n[5]||(n[5]=t.withKeys(t.withModifiers((t=>e.$refs.label.click()),["prevent"]),["enter"]))},[t.renderSlot(e.$slots,"default"),t.withDirectives(t.createElementVNode("input",{"onUpdate:modelValue":n[0]||(n[0]=t=>e.computedValue=t),type:"checkbox",ref:"input",onClick:n[1]||(n[1]=t.withModifiers((()=>{}),["stop"])),disabled:e.disabledOrUndefined,required:e.requiredOrUndefined,name:e.name,value:e.nativeValue,onFocus:n[2]||(n[2]=t=>e.isFocused=!0),onBlur:n[3]||(n[3]=t=>e.isFocused=!1)},null,40,c),[[t.vModelCheckbox,e.computedValue]])],42,u)],2)}]]);const p=(e,t,n)=>{const a=t.name;if(null==a)throw new Error("Buefy.registerComponent: missing component name");e.component(a,t)},f={install(e){p(e,r),p(e,b)}};e.BCheckbox=r,e.BCheckboxButton=b,e.default=f,Object.defineProperty(e,"__esModule",{value:!0})}));