@microsoft/signalr
Version:
ASP.NET Core SignalR Client
33 lines • 970 B
JavaScript
// Licensed to the .NET Foundation under one or more agreements.
// The .NET Foundation licenses this file to you under the MIT license.
import { SubjectSubscription } from "./Utils";
/** Stream implementation to stream items to the server. */
export class Subject {
constructor() {
this.observers = [];
}
next(item) {
for (const observer of this.observers) {
observer.next(item);
}
}
error(err) {
for (const observer of this.observers) {
if (observer.error) {
observer.error(err);
}
}
}
complete() {
for (const observer of this.observers) {
if (observer.complete) {
observer.complete();
}
}
}
subscribe(observer) {
this.observers.push(observer);
return new SubjectSubscription(this, observer);
}
}
//# sourceMappingURL=Subject.js.map