Press n or j to go to the next uncovered block, b, p or k for the previous block.
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 | import type { ConstructionEvent } from './useConstructionNotifier' type Listener = (event: ConstructionEvent) => void export class ConstructionEventBus { private listeners = new Set<Listener>() subscribe(listener: Listener): () => void { this.listeners.add(listener) return () => { this.listeners.delete(listener) } } emit(event: ConstructionEvent): void { for (const listener of this.listeners) { listener(event) } } } |