42 lines
945 B
JavaScript
42 lines
945 B
JavaScript
|
import Vue from 'vue';
|
||
|
import VProgressLinear from '../../components/VProgressLinear';
|
||
|
/**
|
||
|
* Loadable
|
||
|
*
|
||
|
* @mixin
|
||
|
*
|
||
|
* Used to add linear progress bar to components
|
||
|
* Can use a default bar with a specific color
|
||
|
* or designate a custom progress linear bar
|
||
|
*/
|
||
|
|
||
|
/* @vue/component */
|
||
|
|
||
|
export default Vue.extend().extend({
|
||
|
name: 'loadable',
|
||
|
props: {
|
||
|
loading: {
|
||
|
type: [Boolean, String],
|
||
|
default: false
|
||
|
},
|
||
|
loaderHeight: {
|
||
|
type: [Number, String],
|
||
|
default: 2
|
||
|
}
|
||
|
},
|
||
|
methods: {
|
||
|
genProgress() {
|
||
|
if (this.loading === false) return null;
|
||
|
return this.$slots.progress || this.$createElement(VProgressLinear, {
|
||
|
props: {
|
||
|
absolute: true,
|
||
|
color: this.loading === true || this.loading === '' ? this.color || 'primary' : this.loading,
|
||
|
height: this.loaderHeight,
|
||
|
indeterminate: true
|
||
|
}
|
||
|
});
|
||
|
}
|
||
|
|
||
|
}
|
||
|
});
|
||
|
//# sourceMappingURL=index.js.map
|