Sha256: 5e1c666a77b80e21d210553292cb20a71641df49295573a7f79ef5ef4f7149f1
Contents?: true
Size: 622 Bytes
Versions: 26
Compression:
Stored size: 622 Bytes
Contents
import { Emitter, EventMap } from 'strict-event-emitter' /** * Emits an event on the given emitter but executes * the listeners sequentially. This accounts for asynchronous * listeners (e.g. those having "sleep" and handling the request). */ export async function emitAsync< Events extends EventMap, EventName extends keyof Events >( emitter: Emitter<Events>, eventName: EventName, ...data: Events[EventName] ): Promise<void> { const listners = emitter.listeners(eventName) if (listners.length === 0) { return } for (const listener of listners) { await listener.apply(emitter, data) } }
Version data entries
26 entries across 26 versions & 1 rubygems