UNPKG

@assistant-ui/react

Version:

TypeScript/React library for AI Chat

35 lines 921 B
export class BaseSubscribable { _subscribers = new Set(); subscribe(callback) { this._subscribers.add(callback); return () => this._subscribers.delete(callback); } waitForUpdate() { return new Promise((resolve) => { const unsubscribe = this.subscribe(() => { unsubscribe(); resolve(); }); }); } _notifySubscribers() { const errors = []; for (const callback of this._subscribers) { try { callback(); } catch (error) { errors.push(error); } } if (errors.length > 0) { if (errors.length === 1) { throw errors[0]; } else { throw new AggregateError(errors); } } } } //# sourceMappingURL=BaseSubscribable.js.map