UNPKG

xo-cli

Version:
29 lines (25 loc) 744 B
import humanFormat from 'human-format' import prettyMs from 'pretty-ms' import progressStream from 'progress-stream' const humanFormatOpts = { unit: 'B', scale: 'binary', } function printProgress(progress) { if (progress.length) { console.warn( '%s% of %s @ %s/s - ETA %s', Math.round(progress.percentage), humanFormat(progress.length, humanFormatOpts), humanFormat(progress.speed, humanFormatOpts), prettyMs(progress.eta * 1e3) ) } else { console.warn( '%s @ %s/s', humanFormat(progress.transferred, humanFormatOpts), humanFormat(progress.speed, humanFormatOpts) ) } } export const streamStatsPrinter = length => progressStream({ length, time: 1e3 }, printProgress)