Emile Bangma
2024-03-31 5ec61468d5e787b3c8ae32a2b4ef1595cf0bc3ee
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
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"])))
  }
}