UNPKG

@sepveneto/mpd-core

Version:

## 安装 ```cmd pnpm i @sepveneto/mpd-core npm i @sepveneto/mpd-core yarn add @sepveneto/mpd-core ```

30 lines (28 loc) 561 B
// src/emitter.ts var Emitter = class { constructor() { this.listeners = /* @__PURE__ */ new Map(); } on(name, fn) { if (this.listeners.has(name)) { const list = this.listeners.get(name); list.push(fn); this.listeners.set(name, list); } else { this.listeners.set(name, [fn]); } } emit(name, ...args) { const list = this.listeners.get(name); if (!list) { return; } list.forEach((fn) => fn.apply(this, args)); } off(name) { this.listeners.delete(name); } }; export { Emitter };