totvs-dtsenv-cli
Version:
TOTVS Datasul Environment Command Line
46 lines (31 loc) • 898 B
text/typescript
import * as cliProgress from 'cli-progress';
export default class ProgressBarUtils {
private barProcess: any;
private intervalProcess: any;
constructor(private infinityBar:boolean) {
let options = {};
if (this.infinityBar)
options = {'clearOnComplete':true}
this.barProcess = new cliProgress.Bar(options, cliProgress.Presets.shades_classic);
}
public start() {
let self = this;
let currentValue = 0;
if (this.infinityBar) {
self.barProcess.start(500, 0);
self.intervalProcess = setInterval(function() {
currentValue = currentValue + 50;
if (currentValue > 500)
currentValue = 0;
self.barProcess.update(currentValue);
},1000);
}
else
self.barProcess.start(200, 0);
}
public stop() {
this.barProcess.stop();
if (this.infinityBar)
clearInterval(this.intervalProcess)
}
}