@coreui/vue
Version:
UI Components Library for Vue.js
56 lines (52 loc) • 1.57 kB
JavaScript
var vue = require('vue');
var props = require('../../props.js');
const CProgressBar = vue.defineComponent({
name: 'CProgressBar',
props: {
/**
* Use to animate the stripes right to left via CSS3 animations.
*/
animated: Boolean,
/**
* Sets the color context of the component to one of CoreUI’s themed colors.
*
* @values 'primary', 'secondary', 'success', 'danger', 'warning', 'info', 'dark', 'light'
*/
color: props.Color,
/**
* The percent to progress the ProgressBar.
*/
value: {
type: Number,
default: 0,
},
/**
* Set the progress bar variant to optional striped.
*
* @values 'striped'
*/
variant: {
type: String,
validator: (value) => {
return value === 'striped';
},
},
},
setup(props, { slots }) {
const stacked = vue.inject('stacked', false);
return () => vue.h('div', {
class: [
'progress-bar',
`bg-${props.color}`,
{
[`progress-bar-${props.variant}`]: props.variant,
['progress-bar-animated']: props.animated,
},
],
...(!stacked && { style: { width: `${props.value}%` } }),
}, slots.default && slots.default());
},
});
exports.CProgressBar = CProgressBar;
//# sourceMappingURL=CProgressBar.js.map
;