UNPKG

@acutmore/rxjs

Version:

Reactive Extensions for modern JavaScript

53 lines 1.64 kB
import { Observable } from '../Observable'; /** * We need this JSDoc comment for affecting ESDoc. * @extends {Ignored} * @hide true */ var ScalarObservable = /** @class */ (function (_super) { __extends(ScalarObservable, _super); function ScalarObservable(value, scheduler) { var _this = _super.call(this) || this; _this.value = value; _this.scheduler = scheduler; _this._isScalar = true; if (scheduler) { _this._isScalar = false; } return _this; } ScalarObservable.create = function (value, scheduler) { return new ScalarObservable(value, scheduler); }; ScalarObservable.dispatch = function (state) { var done = state.done, value = state.value, subscriber = state.subscriber; if (done) { subscriber.complete(); return; } subscriber.next(value); if (subscriber.closed) { return; } state.done = true; this.schedule(state); }; ScalarObservable.prototype._subscribe = function (subscriber) { var value = this.value; var scheduler = this.scheduler; if (scheduler) { return scheduler.schedule(ScalarObservable.dispatch, 0, { done: false, value: value, subscriber: subscriber }); } else { subscriber.next(value); if (!subscriber.closed) { subscriber.complete(); } } }; return ScalarObservable; }(Observable)); export { ScalarObservable }; //# sourceMappingURL=ScalarObservable.js.map