st.once('testserver', server => { if (cli.flags.verbose) { stats.data = { server: map(server) }; } setState('download'); const ping = Math.round(server.bestPing); stats.ping = cli.flags.json ? ping : chalk.cyan(ping + chalk.dim(' ms')); });
st.once('uploadspeed', speed => { setState(''); speed *= multiplier; const upload = roundTo(speed, speed >= 10 && !cli.flags.json ? 0 : 1); stats.upload = cli.flags.json ? upload : chalk.cyan(upload + ' ' + chalk.dim(unit)); });
function setState(newState) { state = newState; if (newState && newState.length > 0) { stats[newState] = chalk.yellow(`0 ${chalk.dim(unit)}`); } }
const speedText = () => cli.flags.upload ? `${downloadColor(downloadSpeed())} ${chalk.dim('/')} ${uploadColor(uploadSpeed())}` : downloadColor(downloadSpeed())
neon(str, frame) { const color = (frame % 2 === 0) ? chalk.dim.rgb(88, 80, 85) : chalk.bold.rgb(213, 70, 242); return color(str); }
st.on('downloadspeedprogress', speed => { if (state === 'download' && cli.flags.json !== true) { speed *= multiplier; const download = roundTo(speed, speed >= 10 ? 0 : 1); stats.download = chalk.yellow(`${download} ${chalk.dim(unit)}`); } });
function render() { if (cli.flags.json) { console.log(JSON.stringify(stats)); return; } let output = ` Ping ${getSpinnerFromState('ping')}${stats.ping} Download ${getSpinnerFromState('download')}${stats.download} Upload ${getSpinnerFromState('upload')}${stats.upload}`; if (cli.flags.verbose) { output += [ '', ' Server ' + (stats.data === undefined ? '' : chalk.cyan(stats.data.server.host)), ' Location ' + (stats.data === undefined ? '' : chalk.cyan(stats.data.server.location + chalk.dim(' (' + stats.data.server.country + ')'))), ' Distance ' + (stats.data === undefined ? '' : chalk.cyan(roundTo(stats.data.server.distance, 1) + chalk.dim(' km'))) ].join('\n'); } logUpdate(output); }
const downloadSpeed = () => `${data.downloadSpeed} ${chalk.dim(data.downloadUnit)} ↓`
// clean out blacklisted content function clean(root, name) { const blacklist = ['.git', 'node_modules']; for (const item of blacklist) { const pathToItem = path.join(root, item); if (fs.pathExistsSync(pathToItem)) { fs.removeSync(pathToItem); console.log(`${chalk.dim.redBright(item)} has been removed from ${chalk.yellow(name)}`); } } }
log(...args) { if (!this.isEnabled || this._options.logLevel > logLevels.info) { return; } if (is.renderer) { electron.ipcRenderer.send(logChannel, args); } else if (this.name) { args.unshift(this._getPrefix() + ' ' + chalk.dim('›')); } if (this._options.ignore && this._options.ignore.test(args.join(' '))) { return; } this._console.log(...args); }
inquirer .prompt({ type: 'static-select', name: 'date', message: 'Choose date (use arrows):', choices: Array .from({ length: 31 }, (x, i) => i) .map(x => moment().subtract(x, 'days')) .map(date => ({ name: chalk.cyan(date.format('YYYY-MM-DD')) + chalk.dim(date.format(' (dddd)')), value: date.format('YYYY-MM-DD'), })), }) .then(({ date }) => date)
/** * Prints a separator to the screen. */ function printSeparator() { console.log(chalk.dim('-----------------')); }
st.once('downloadspeed', speed => { setState('upload'); speed *= multiplier; const download = roundTo(speed, speed >= 10 && !cli.flags.json ? 0 : 1); stats.download = cli.flags.json ? download : chalk.cyan(download + ' ' + chalk.dim(unit)); });
st.on('uploadspeedprogress', speed => { if (state === 'upload' && cli.flags.json !== true) { speed *= multiplier; const upload = roundTo(speed, speed >= 10 ? 0 : 1); stats.upload = chalk.yellow(`${upload} ${chalk.dim(unit)}`); } });