UNPKG

@gits-id/progress-bar

Version:

GITS Progress Bar Component

2 lines (1 loc) 2.35 kB
(function(a,e){typeof exports=="object"&&typeof module<"u"?e(exports,require("vue")):typeof define=="function"&&define.amd?define(["exports","vue"],e):(a=typeof globalThis<"u"?globalThis:a||self,e(a.VProgress={},a.Vue))})(this,function(a,e){"use strict";const u="",i=["aria-valuemin","aria-valuemax","aria-valuenow"],n=e.defineComponent({__name:"VProgressBar",props:{modelValue:{type:[Number,String],default:0},color:{type:String,default:"default"},min:{type:[Number,String],default:0},max:{type:[Number,String],default:100},height:{type:[Number,String],default:""},bgColor:{type:String,default:""},fillColor:{type:String,default:""},bgClass:{type:String,default:""},fillClass:{type:String,default:""},label:{type:String,default:""},labelClass:{type:String,default:""},indeterminate:{type:Boolean,default:!1}},emits:["update:modelValue"],setup(r,{emit:d}){const l=r,{modelValue:f}=e.toRefs(l),o=e.ref(l.modelValue);e.watch(f,t=>{o.value=t}),e.watch(o,t=>{d("update:modelValue",t)});const g=e.computed(()=>typeof l.height=="string"?l.height:`${l.height}px`),m=e.computed(()=>{const t={};return l.height&&(t["--v-progress-bar-height"]=g.value),l.bgColor&&(t["--v-progress-bar-bg-color"]=l.bgColor),l.fillColor&&(t["--v-progress-bar-fill-color"]=l.fillColor),t}),s=e.computed(()=>Math.floor(+o.value/+l.max*100));return(t,b)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["v-progress-bar",[`v-progress-bar-${r.color}`,`v-progress-bar--${e.unref(s)}`,{"v-progress-bar--indeterminate":r.indeterminate}]]),role:"progressbar","aria-valuemin":r.min,"aria-valuemax":r.max,"aria-valuenow":e.unref(s),"aria-labelledby":"progress-label",style:e.normalizeStyle(e.unref(m))},[e.createElementVNode("div",{class:e.normalizeClass(["v-progress-bar-label",r.labelClass]),id:"progress-label"},[e.renderSlot(t.$slots,"label",{value:e.unref(s)},()=>[e.createTextVNode(e.toDisplayString(r.label),1)])],2),e.createElementVNode("div",{class:e.normalizeClass(["v-progress-bar-background",r.bgClass])},[e.createElementVNode("div",{style:e.normalizeStyle({width:r.indeterminate?"100%":e.unref(s)+"%"}),class:e.normalizeClass(["v-progress-bar-fill",r.fillClass])},[e.renderSlot(t.$slots,"default",{value:e.unref(s)})],6)],2)],14,i))}}),c="";a.VProgressBar=n,a.default=n,Object.defineProperties(a,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})});