@alegendstale/holly-components
Version:
Reusable UI components created using lit
25 lines (24 loc) • 525 B
JavaScript
class r {
constructor() {
this.eventListeners = {};
}
on(e, s) {
const t = this.eventListeners[e] ?? /* @__PURE__ */ new Set();
t.add(s), this.eventListeners[e] = t;
}
off(e, s) {
const t = this.eventListeners[e] ?? /* @__PURE__ */ new Set();
t.delete(s), this.eventListeners[e] = t;
}
emit(e, ...s) {
const t = this.eventListeners[e] ?? /* @__PURE__ */ new Set();
for (const n of t)
n(...s);
}
clear() {
this.eventListeners = {};
}
}
export {
r as EventEmitter
};