@microsoft/signalr
Version:
ASP.NET Core SignalR Client
38 lines • 1.37 kB
JavaScript
// Copyright (c) .NET Foundation. All rights reserved.
// Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information.
import { SubjectSubscription } from "./Utils";
/** Stream implementation to stream items to the server. */
var Subject = /** @class */ (function () {
function Subject() {
this.observers = [];
}
Subject.prototype.next = function (item) {
for (var _i = 0, _a = this.observers; _i < _a.length; _i++) {
var observer = _a[_i];
observer.next(item);
}
};
Subject.prototype.error = function (err) {
for (var _i = 0, _a = this.observers; _i < _a.length; _i++) {
var observer = _a[_i];
if (observer.error) {
observer.error(err);
}
}
};
Subject.prototype.complete = function () {
for (var _i = 0, _a = this.observers; _i < _a.length; _i++) {
var observer = _a[_i];
if (observer.complete) {
observer.complete();
}
}
};
Subject.prototype.subscribe = function (observer) {
this.observers.push(observer);
return new SubjectSubscription(this, observer);
};
return Subject;
}());
export { Subject };
//# sourceMappingURL=Subject.js.map