UNPKG

softkave-js-utils

Version:

JavaScript & Typescript utility functions, types, and classes

26 lines 559 B
export class ListenableResource { constructor(data) { this.listeners = new Map(); this.data = data; } listen(fn) { this.listeners.set(fn, fn); } removeListener(fn) { this.listeners.delete(fn); } clearListeners() { this.listeners = new Map(); } get() { return this.data; } set(data) { this.data = data; this.broadcast(); } broadcast() { this.listeners.forEach(fn => fn(this.data)); } } //# sourceMappingURL=ListenableResource.js.map