UNPKG

tsinsim

Version:

An InSim library for Node.js (JavaScript runtime environment) with TypeScript support.

19 lines (18 loc) 518 B
export class Events { all = []; on(name, callback) { this.all.push({ name, callback }); } onGlobal(callback) { this.all.push({ name: 'global', callback }); } fire(name, data) { const events = this.all.filter((event) => event.name === name || event.name === 'global'); for (const event of events) { if (event.name === 'global') event.callback(name, data); else event.callback(data, name); } } }