@sethdouglasford/claude-flow
Version:
Claude Code Flow - Advanced AI-powered development workflows with SPARC methodology
37 lines • 1.01 kB
JavaScript
/**
* Simple EventEmitter implementation for process management
*/
export class EventEmitter {
events = new Map();
on(event, handler) {
let handlers = this.events.get(event);
if (!handlers) {
handlers = [];
this.events.set(event, handlers);
}
handlers.push(handler);
}
emit(event, ...args) {
const handlers = this.events.get(event);
if (handlers) {
handlers.forEach(handler => handler(...args));
}
}
off(event, handler) {
const handlers = this.events.get(event);
if (handlers) {
const index = handlers.indexOf(handler);
if (index > -1) {
handlers.splice(index, 1);
}
}
}
once(event, handler) {
const onceHandler = (...args) => {
handler(...args);
this.off(event, onceHandler);
};
this.on(event, onceHandler);
}
}
//# sourceMappingURL=event-emitter.js.map