20 lines
401 B
TypeScript
20 lines
401 B
TypeScript
import chalk from 'chalk'
|
|
import pretty from 'pretty-time'
|
|
|
|
export class PerfTimer {
|
|
evts: { [key: string]: [number, number] }
|
|
|
|
constructor() {
|
|
this.evts = {}
|
|
this.addEvent('start')
|
|
}
|
|
|
|
addEvent(evtName: string) {
|
|
this.evts[evtName] = process.hrtime()
|
|
}
|
|
|
|
timeSince(evtName?: string): string {
|
|
return chalk.yellow(pretty(process.hrtime(this.evts[evtName ?? 'start'])))
|
|
}
|
|
}
|