* fixed issues for eslint one-var and no-var rules Co-authored-by: Joshi <simplyrender@gmail.com> Co-authored-by: Andrew Henry <akhenry@gmail.com>
50 lines
1.3 KiB
JavaScript
50 lines
1.3 KiB
JavaScript
import ProgressDialogComponent from './components/ProgressDialogComponent.vue';
|
|
import Overlay from './Overlay';
|
|
import Vue from 'vue';
|
|
|
|
let component;
|
|
|
|
class ProgressDialog extends Overlay {
|
|
constructor({progressPerc, progressText, iconClass, message, title, hint, timestamp, ...options}) {
|
|
component = new Vue({
|
|
provide: {
|
|
iconClass,
|
|
message,
|
|
title,
|
|
hint,
|
|
timestamp
|
|
},
|
|
components: {
|
|
ProgressDialogComponent: ProgressDialogComponent
|
|
},
|
|
data() {
|
|
return {
|
|
model: {
|
|
progressPerc: progressPerc || 0,
|
|
progressText
|
|
}
|
|
};
|
|
},
|
|
template: '<progress-dialog-component :model="model"></progress-dialog-component>'
|
|
}).$mount();
|
|
|
|
super({
|
|
element: component.$el,
|
|
size: 'fit',
|
|
dismissable: false,
|
|
...options
|
|
});
|
|
|
|
this.once('destroy', () => {
|
|
component.$destroy();
|
|
});
|
|
}
|
|
|
|
updateProgress(progressPerc, progressText) {
|
|
component.model.progressPerc = progressPerc;
|
|
component.model.progressText = progressText;
|
|
}
|
|
}
|
|
|
|
export default ProgressDialog;
|