UNPKG

saga-flow

Version:

A JavaScript library for implementing the Saga pattern in distributed transactions

21 lines (19 loc) 485 B
const eventHandlers = new Map(); export function onEvent(event, handler) { if (!eventHandlers.has(event)) { eventHandlers.set(event, new Set()); } eventHandlers.get(event).add(handler); return () => { const handlers = eventHandlers.get(event); if (handlers) { handlers.delete(handler); } }; } export function emitEvent(event, data) { const handlers = eventHandlers.get(event); if (handlers) { handlers.forEach(handler => handler(data)); } }