| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485 | 
							- "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 Observable_1 = require('../Observable');
 
- function dispatch(state) {
 
-     var obj = state.obj, keys = state.keys, length = state.length, index = state.index, subscriber = state.subscriber;
 
-     if (index === length) {
 
-         subscriber.complete();
 
-         return;
 
-     }
 
-     var key = keys[index];
 
-     subscriber.next([key, obj[key]]);
 
-     state.index = index + 1;
 
-     this.schedule(state);
 
- }
 
- /**
 
-  * We need this JSDoc comment for affecting ESDoc.
 
-  * @extends {Ignored}
 
-  * @hide true
 
-  */
 
- var PairsObservable = (function (_super) {
 
-     __extends(PairsObservable, _super);
 
-     function PairsObservable(obj, scheduler) {
 
-         _super.call(this);
 
-         this.obj = obj;
 
-         this.scheduler = scheduler;
 
-         this.keys = Object.keys(obj);
 
-     }
 
-     /**
 
-      * Convert an object into an observable sequence of [key, value] pairs
 
-      * using an optional IScheduler to enumerate the object.
 
-      *
 
-      * @example <caption>Converts a javascript object to an Observable</caption>
 
-      * var obj = {
 
-      *   foo: 42,
 
-      *   bar: 56,
 
-      *   baz: 78
 
-      * };
 
-      *
 
-      * var source = Rx.Observable.pairs(obj);
 
-      *
 
-      * var subscription = source.subscribe(
 
-      *   function (x) {
 
-      *     console.log('Next: %s', x);
 
-      *   },
 
-      *   function (err) {
 
-      *     console.log('Error: %s', err);
 
-      *   },
 
-      *   function () {
 
-      *     console.log('Completed');
 
-      *   });
 
-      *
 
-      * @param {Object} obj The object to inspect and turn into an
 
-      * Observable sequence.
 
-      * @param {Scheduler} [scheduler] An optional IScheduler to run the
 
-      * enumeration of the input sequence on.
 
-      * @returns {(Observable<Array<string | T>>)} An observable sequence of
 
-      * [key, value] pairs from the object.
 
-      */
 
-     PairsObservable.create = function (obj, scheduler) {
 
-         return new PairsObservable(obj, scheduler);
 
-     };
 
-     /** @deprecated internal use only */ PairsObservable.prototype._subscribe = function (subscriber) {
 
-         var _a = this, keys = _a.keys, scheduler = _a.scheduler;
 
-         var length = keys.length;
 
-         if (scheduler) {
 
-             return scheduler.schedule(dispatch, 0, {
 
-                 obj: this.obj, keys: keys, length: length, index: 0, subscriber: subscriber
 
-             });
 
-         }
 
-         else {
 
-             for (var idx = 0; idx < length; idx++) {
 
-                 var key = keys[idx];
 
-                 subscriber.next([key, this.obj[key]]);
 
-             }
 
-             subscriber.complete();
 
-         }
 
-     };
 
-     return PairsObservable;
 
- }(Observable_1.Observable));
 
- exports.PairsObservable = PairsObservable;
 
- //# sourceMappingURL=PairsObservable.js.map
 
 
  |