UNPKG

peerpigeon

Version:

WebRTC-based peer-to-peer mesh networking library with intelligent routing and signaling server

29 lines (25 loc) 682 B
import DebugLogger from './DebugLogger.js'; export class EventEmitter { constructor() { this.eventListeners = {}; } addEventListener(event, callback) { if (!this.eventListeners[event]) { this.eventListeners[event] = []; } this.eventListeners[event].push(callback); } removeEventListener(event, callback) { if (this.eventListeners[event]) { const index = this.eventListeners[event].indexOf(callback); if (index > -1) { this.eventListeners[event].splice(index, 1); } } } emit(event, data) { if (this.eventListeners[event]) { this.eventListeners[event].forEach(callback => callback(data)); } } }