UNPKG

vue-jsbarcode

Version:

A Vue 3 wrapper for JsBarcode.

2 lines (1 loc) 1.48 kB
(function(t,e){typeof exports=="object"&&typeof module<"u"?module.exports=e(require("jsbarcode"),require("vue")):typeof define=="function"&&define.amd?define(["jsbarcode","vue"],e):(t=typeof globalThis<"u"?globalThis:t||self,t.VueJsBarcode=e(t.JsBarcode,t.Vue))})(this,function(t,e){"use strict";const r=e.defineComponent({name:"VueJsBarcode",props:{value:{type:[String,Number],default:""},format:[String],width:[String,Number],height:[String,Number],displayValue:{type:[String,Boolean],default:!0},text:[String,Number],fontOptions:[String],font:[String],textAlign:[String],textPosition:[String],textMargin:[String,Number],fontSize:[String,Number],background:[String],lineColor:[String],margin:[String,Number],marginTop:[String,Number],marginBottom:[String,Number],marginLeft:[String,Number],marginRight:[String,Number],flat:[Boolean],ean128:[String,Boolean],elementTag:{type:String,default:"svg",validator(n){return["canvas","svg","img"].includes(n)}}},setup(n,{slots:o}){const a=e.ref(!0),d=e.ref(null);function l(){const i={...n,valid:u=>{a.value=u}};g(i),d.value&&t(d.value,String(n.value),i)}function g(i){Object.keys(i).forEach(u=>{i[u]===void 0&&delete i[u]})}return e.onMounted(()=>{e.watch(()=>({...n}),()=>{l()},{deep:!0,immediate:!0})}),()=>e.h("div",[e.h(n.elementTag,{ref:d,style:{display:a.value?void 0:"none"},class:["vue3-jsbarcode"]}),e.h("div",{style:{display:a.value?"none":void 0}},o.default?o.default():null)])}});return r.install=n=>{n.component(r.name,r)},r});