Bones/node_modules/rxjs/operator/materialize.js
SOUTHERNCO\x2mjbyrn 7efe7605b8 Template Upload
2017-05-17 13:45:25 -04:00

52 lines
2.0 KiB
JavaScript

"use strict";
var __extends = (this && this.__extends) || function (d, b) {
for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p];
function __() { this.constructor = d; }
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
};
var Subscriber_1 = require('../Subscriber');
var Notification_1 = require('../Notification');
/**
* Returns an Observable that represents all of the emissions and notifications
* from the source Observable into emissions marked with their original types
* within a `Notification` objects.
*
* <img src="./img/materialize.png" width="100%">
*
* @scheduler materialize does not operate by default on a particular Scheduler.
* @returns {Observable} an Observable that emits items that are the result of
* materializing the items and notifications of the source Observable.
*/
function materialize() {
return this.lift(new MaterializeOperator());
}
exports.materialize = materialize;
var MaterializeOperator = (function () {
function MaterializeOperator() {
}
MaterializeOperator.prototype.call = function (subscriber) {
return new MaterializeSubscriber(subscriber);
};
return MaterializeOperator;
}());
var MaterializeSubscriber = (function (_super) {
__extends(MaterializeSubscriber, _super);
function MaterializeSubscriber(destination) {
_super.call(this, destination);
}
MaterializeSubscriber.prototype._next = function (value) {
this.destination.next(Notification_1.Notification.createNext(value));
};
MaterializeSubscriber.prototype._error = function (err) {
var destination = this.destination;
destination.next(Notification_1.Notification.createError(err));
destination.complete();
};
MaterializeSubscriber.prototype._complete = function () {
var destination = this.destination;
destination.next(Notification_1.Notification.createComplete());
destination.complete();
};
return MaterializeSubscriber;
}(Subscriber_1.Subscriber));
//# sourceMappingURL=materialize.js.map