UNPKG

valia

Version:

A runtime data validator in TypeScript with advanced type inference, built-in validation functions, and seamless integration for server and client environments.

32 lines (31 loc) 942 B
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.eventsManager = eventsManager; function eventsManager() { return ({ listeners: new Map(), on(event, callback) { if (!this.listeners.has(event)) { this.listeners.set(event, []); } this.listeners.get(event).push(callback); }, emit(event, ...args) { const callbacks = this.listeners.get(event); if (!callbacks) return; for (const callback of callbacks) { callback(...args); } }, off(event, callback) { const listeners = this.listeners.get(event); if (!listeners) return; const index = listeners.indexOf(callback); if (index !== -1) { listeners.splice(index, 1); } } }); }