"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); var canReportError_1 = require("./util/canReportError"); var toSubscriber_1 = require("./util/toSubscriber"); var observable_1 = require("./symbol/observable"); var pipe_1 = require("./util/pipe"); var config_1 = require("./config"); var Observable = (function () { function Observable(subscribe) { this._isScalar = false; if (subscribe) { this._subscribe = subscribe; } } Observable.prototype.lift = function (operator) { var observable = new Observable(); observable.source = this; observable.operator = operator; return observable; }; Observable.prototype.subscribe = function (observerOrNext, error, complete) { var operator = this.operator; var sink = toSubscriber_1.toSubscriber(observerOrNext, error, complete); if (operator) { sink.add(operator.call(sink, this.source)); } else { sink.add(this.source || (config_1.config.useDeprecatedSynchronousErrorHandling && !sink.syncErrorThrowable) ? this._subscribe(sink) : this._trySubscribe(sink)); } if (config_1.config.useDeprecatedSynchronousErrorHandling) { if (sink.syncErrorThrowable) { sink.syncErrorThrowable = false; if (sink.syncErrorThrown) { throw sink.syncErrorValue; } } } return sink; }; Observable.prototype._trySubscribe = function (sink) { try { return this._subscribe(sink); } catch (err) { if (config_1.config.useDeprecatedSynchronousErrorHandling) { sink.syncErrorThrown = true; sink.syncErrorValue = err; } if (canReportError_1.canReportError(sink)) { sink.error(err); } else { console.warn(err); } } }; Observable.prototype.forEach = function (next, promiseCtor) { var _this = this; promiseCtor = getPromiseCtor(promiseCtor); return new promiseCtor(function (resolve, reject) { var subscription; subscription = _this.subscribe(function (value) { try { next(value); } catch (err) { reject(err); if (subscription) { subscription.unsubscribe(); } } }, reject, resolve); }); }; Observable.prototype._subscribe = function (subscriber) { var source = this.source; return source && source.subscribe(subscriber); }; Observable.prototype[observable_1.observable] = function () { return this; }; Observable.prototype.pipe = function () { var operations = []; for (var _i = 0; _i < arguments.length; _i++) { operations[_i] = arguments[_i]; } if (operations.length === 0) { return this; } return pipe_1.pipeFromArray(operations)(this); }; Observable.prototype.toPromise = function (promiseCtor) { var _this = this; promiseCtor = getPromiseCtor(promiseCtor); return new promiseCtor(function (resolve, reject) { var value; _this.subscribe(function (x) { return value = x; }, function (err) { return reject(err); }, function () { return resolve(value); }); }); }; Observable.create = function (subscribe) { return new Observable(subscribe); }; return Observable; }()); exports.Observable = Observable; function getPromiseCtor(promiseCtor) { if (!promiseCtor) { promiseCtor = config_1.config.Promise || Promise; } if (!promiseCtor) { throw new Error('no Promise impl found'); } return promiseCtor; } //# sourceMappingURL=Observable.js.map
Name | Type | Size | Permission | Actions |
---|---|---|---|---|
observable | Folder | 0755 |
|
|
operators | Folder | 0755 |
|
|
scheduled | Folder | 0755 |
|
|
scheduler | Folder | 0755 |
|
|
symbol | Folder | 0755 |
|
|
testing | Folder | 0755 |
|
|
util | Folder | 0755 |
|
|
AsyncSubject.d.ts | File | 640 B | 0644 |
|
AsyncSubject.js | File | 2.17 KB | 0644 |
|
AsyncSubject.js.map | File | 1.11 KB | 0644 |
|
BehaviorSubject.d.ts | File | 597 B | 0644 |
|
BehaviorSubject.js | File | 2.01 KB | 0644 |
|
BehaviorSubject.js.map | File | 894 B | 0644 |
|
InnerSubscriber.d.ts | File | 532 B | 0644 |
|
InnerSubscriber.js | File | 1.59 KB | 0644 |
|
InnerSubscriber.js.map | File | 801 B | 0644 |
|
Notification.d.ts | File | 3.37 KB | 0644 |
|
Notification.js | File | 2.72 KB | 0644 |
|
Notification.js.map | File | 2.09 KB | 0644 |
|
Observable.d.ts | File | 5.93 KB | 0644 |
|
Observable.js | File | 3.96 KB | 0644 |
|
Observable.js.map | File | 2.98 KB | 0644 |
|
Observer.d.ts | File | 79 B | 0644 |
|
Observer.js | File | 523 B | 0644 |
|
Observer.js.map | File | 380 B | 0644 |
|
Operator.d.ts | File | 185 B | 0644 |
|
Operator.js | File | 113 B | 0644 |
|
Operator.js.map | File | 102 B | 0644 |
|
OuterSubscriber.d.ts | File | 509 B | 0644 |
|
OuterSubscriber.js | File | 1.41 KB | 0644 |
|
OuterSubscriber.js.map | File | 543 B | 0644 |
|
ReplaySubject.d.ts | File | 982 B | 0644 |
|
ReplaySubject.js | File | 4.84 KB | 0644 |
|
ReplaySubject.js.map | File | 3.4 KB | 0644 |
|
Rx.d.ts | File | 8.91 KB | 0644 |
|
Rx.js | File | 9.22 KB | 0644 |
|
Rx.js.map | File | 2.86 KB | 0644 |
|
Scheduler.d.ts | File | 2.4 KB | 0644 |
|
Scheduler.js | File | 633 B | 0644 |
|
Scheduler.js.map | File | 537 B | 0644 |
|
Subject.d.ts | File | 2.19 KB | 0644 |
|
Subject.js | File | 5.9 KB | 0644 |
|
Subject.js.map | File | 3.82 KB | 0644 |
|
SubjectSubscription.d.ts | File | 444 B | 0644 |
|
SubjectSubscription.js | File | 1.7 KB | 0644 |
|
SubjectSubscription.js.map | File | 863 B | 0644 |
|
Subscriber.d.ts | File | 3.67 KB | 0644 |
|
Subscriber.js | File | 9.04 KB | 0644 |
|
Subscriber.js.map | File | 5.86 KB | 0644 |
|
Subscription.d.ts | File | 2.72 KB | 0644 |
|
Subscription.js | File | 5.18 KB | 0644 |
|
Subscription.js.map | File | 3.75 KB | 0644 |
|
config.d.ts | File | 860 B | 0644 |
|
config.js | File | 846 B | 0644 |
|
config.js.map | File | 502 B | 0644 |
|
innerSubscribe.d.ts | File | 2.4 KB | 0644 |
|
innerSubscribe.js | File | 4.14 KB | 0644 |
|
innerSubscribe.js.map | File | 2.15 KB | 0644 |
|
types.d.ts | File | 3.17 KB | 0644 |
|
types.js | File | 110 B | 0644 |
|
types.js.map | File | 96 B | 0644 |
|