Telegram Web, preconfigured for usage in I2P.
http://web.telegram.i2p/
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
58 lines
1023 B
58 lines
1023 B
11 years ago
|
var BaseReporter = require('./Base');
|
||
|
|
||
|
|
||
|
var ProgressReporter = function(formatError, reportSlow) {
|
||
|
BaseReporter.call(this, formatError, reportSlow);
|
||
|
|
||
|
|
||
|
this.writeCommonMsg = function(msg) {
|
||
|
this.write(this._remove() + msg + this._render());
|
||
|
};
|
||
|
|
||
|
|
||
|
this.specSuccess = function() {
|
||
|
this.write(this._refresh());
|
||
|
};
|
||
|
|
||
|
|
||
|
this.onBrowserComplete = function() {
|
||
|
this.write(this._refresh());
|
||
|
};
|
||
|
|
||
|
|
||
|
this.onRunStart = function(browsers) {
|
||
|
this._browsers = browsers;
|
||
|
this._isRendered = false;
|
||
|
};
|
||
|
|
||
|
|
||
|
this._remove = function() {
|
||
|
if (!this._isRendered) {
|
||
|
return '';
|
||
|
}
|
||
|
|
||
|
var cmd = '';
|
||
|
this._browsers.forEach(function() {
|
||
|
cmd += '\x1B[1A' + '\x1B[2K';
|
||
|
});
|
||
|
|
||
|
this._isRendered = false;
|
||
|
|
||
|
return cmd;
|
||
|
};
|
||
|
|
||
|
this._render = function() {
|
||
|
this._isRendered = true;
|
||
|
|
||
|
return this._browsers.map(this.renderBrowser).join('\n') + '\n';
|
||
|
};
|
||
|
|
||
|
this._refresh = function() {
|
||
|
return this._remove() + this._render();
|
||
|
};
|
||
|
};
|
||
|
|
||
|
|
||
|
// PUBLISH
|
||
|
module.exports = ProgressReporter;
|