0.1.1 • Published 4 years ago
progress-of v0.1.1
progress-of
Get progress and ETA of an iterator.
- Pretty, human-readable percentages and time estimates
- Gives you the data to print, doesn't log itself – cross-platform
Install
npm install progress-ofExample
import progressOf from 'progress-of'
for await(const [item, p] of progressOf([1, 2, 3])) {
console.log(p.message) // 10% [1/10] ETA: 1m Elapsed: 10s
console.log(`${p.percentPretty} [${p.counter}/${p.total}] ETA: ${p.etaPretty} Elapsed: ${p.elapsedPretty}`)
}API
for(const [, progress] of progressOf(iterable, opts)) {}iterable[Iterable]Iterable to iterate overopts.size[number=iterable.length|Infinity]Iterable's sizeprogress.eta[string]Human readable current ETA (between 0 & ∞)progress.elapsed[string]Human readable time elapsed since startprogress.percent[string]Human readable current percentage doneprogress.message[string]Human readable message, like:10% [1/10] ETA: 1m Elapsed: 10sprogress.etaValue[number]ETA (in ms)progress.elapsedValue[number]Elapsed time (in ms)progress.percentValue[number]Percent value (between 0 & 100)progress.ratio[number]Fraction of items done (between 0 & 1)progress.current[number]Current counter of the iterableprogress.total[number]Total size of the iterable