@keybindy/core
Version:
A lightweight and framework-agnostic keyboard shortcut manager for web apps. Define, register, and handle keybindings with ease.
16 lines (14 loc) • 379 B
JavaScript
class EventEmitter {
listeners = [];
on(listener) {
this.listeners.push(listener);
return () => this.off(listener); // return unsubscribe fn
}
off(listener) {
this.listeners = this.listeners.filter(l => l !== listener);
}
emit(event) {
this.listeners.forEach(listener => listener(event));
}
}
export { EventEmitter };