18 lines
462 B
TypeScript
18 lines
462 B
TypeScript
import type { DocumentUpsertEvent } from '@morten-olsen/fluxcurrent-core/services/documents/documents.schemas.ts';
|
|
|
|
import type { Notifier } from './notifier.types.ts';
|
|
|
|
class Notifiers {
|
|
#notifiers: Notifier[];
|
|
|
|
constructor(notifiers: Notifier[]) {
|
|
this.#notifiers = notifiers;
|
|
}
|
|
|
|
public upsert = async (event: DocumentUpsertEvent) => {
|
|
await Promise.all(this.#notifiers.map((notifier) => notifier.upsert(event)));
|
|
};
|
|
}
|
|
|
|
export { Notifiers };
|