| "use strict"; |
| var __extends = (this && this.__extends) || (function () { |
| var extendStatics = function (d, b) { |
| extendStatics = Object.setPrototypeOf || |
| ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || |
| function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; }; |
| return extendStatics(d, b); |
| } |
| return function (d, b) { |
| extendStatics(d, b); |
| function __() { this.constructor = d; } |
| d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); |
| }; |
| })(); |
| Object.defineProperty(exports, "__esModule", { value: true }); |
| var Observable_1 = require("../Observable"); |
| var asap_1 = require("../scheduler/asap"); |
| var isNumeric_1 = require("../util/isNumeric"); |
| var SubscribeOnObservable = (function (_super) { |
| __extends(SubscribeOnObservable, _super); |
| function SubscribeOnObservable(source, delayTime, scheduler) { |
| if (delayTime === void 0) { delayTime = 0; } |
| if (scheduler === void 0) { scheduler = asap_1.asap; } |
| var _this = _super.call(this) || this; |
| _this.source = source; |
| _this.delayTime = delayTime; |
| _this.scheduler = scheduler; |
| if (!isNumeric_1.isNumeric(delayTime) || delayTime < 0) { |
| _this.delayTime = 0; |
| } |
| if (!scheduler || typeof scheduler.schedule !== 'function') { |
| _this.scheduler = asap_1.asap; |
| } |
| return _this; |
| } |
| SubscribeOnObservable.create = function (source, delay, scheduler) { |
| if (delay === void 0) { delay = 0; } |
| if (scheduler === void 0) { scheduler = asap_1.asap; } |
| return new SubscribeOnObservable(source, delay, scheduler); |
| }; |
| SubscribeOnObservable.dispatch = function (arg) { |
| var source = arg.source, subscriber = arg.subscriber; |
| return this.add(source.subscribe(subscriber)); |
| }; |
| SubscribeOnObservable.prototype._subscribe = function (subscriber) { |
| var delay = this.delayTime; |
| var source = this.source; |
| var scheduler = this.scheduler; |
| return scheduler.schedule(SubscribeOnObservable.dispatch, delay, { |
| source: source, subscriber: subscriber |
| }); |
| }; |
| return SubscribeOnObservable; |
| }(Observable_1.Observable)); |
| exports.SubscribeOnObservable = SubscribeOnObservable; |
| //# sourceMappingURL=SubscribeOnObservable.js.map |