rxjs-rails 2.3.10 → 2.3.11

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (43) hide show
  1. checksums.yaml +4 -4
  2. data/lib/rxjs/rails/version.rb +1 -1
  3. data/vendor/assets/javascripts/rx.aggregates.js +120 -70
  4. data/vendor/assets/javascripts/rx.aggregates.min.js +3 -1
  5. data/vendor/assets/javascripts/rx.all.compat.js +1810 -1849
  6. data/vendor/assets/javascripts/rx.all.compat.min.js +5 -3
  7. data/vendor/assets/javascripts/rx.all.js +1776 -1815
  8. data/vendor/assets/javascripts/rx.all.min.js +5 -3
  9. data/vendor/assets/javascripts/rx.async.compat.js +45 -45
  10. data/vendor/assets/javascripts/rx.async.compat.min.js +3 -1
  11. data/vendor/assets/javascripts/rx.async.js +39 -39
  12. data/vendor/assets/javascripts/rx.async.min.js +3 -1
  13. data/vendor/assets/javascripts/rx.backpressure.js +21 -19
  14. data/vendor/assets/javascripts/rx.backpressure.min.js +3 -1
  15. data/vendor/assets/javascripts/rx.binding.js +90 -90
  16. data/vendor/assets/javascripts/rx.binding.min.js +3 -1
  17. data/vendor/assets/javascripts/rx.coincidence.js +184 -179
  18. data/vendor/assets/javascripts/rx.coincidence.min.js +3 -1
  19. data/vendor/assets/javascripts/rx.compat.js +1019 -1001
  20. data/vendor/assets/javascripts/rx.compat.min.js +4 -2
  21. data/vendor/assets/javascripts/rx.experimental.js +65 -64
  22. data/vendor/assets/javascripts/rx.experimental.min.js +3 -1
  23. data/vendor/assets/javascripts/rx.joinpatterns.js +265 -363
  24. data/vendor/assets/javascripts/rx.joinpatterns.min.js +3 -1
  25. data/vendor/assets/javascripts/rx.js +969 -951
  26. data/vendor/assets/javascripts/rx.lite.compat.js +1014 -1182
  27. data/vendor/assets/javascripts/rx.lite.compat.min.js +4 -2
  28. data/vendor/assets/javascripts/rx.lite.extras.js +101 -109
  29. data/vendor/assets/javascripts/rx.lite.extras.min.js +3 -1
  30. data/vendor/assets/javascripts/rx.lite.js +1008 -1176
  31. data/vendor/assets/javascripts/rx.lite.min.js +4 -2
  32. data/vendor/assets/javascripts/rx.min.js +4 -2
  33. data/vendor/assets/javascripts/rx.testing.js +196 -196
  34. data/vendor/assets/javascripts/rx.testing.min.js +3 -1
  35. data/vendor/assets/javascripts/rx.time.js +162 -178
  36. data/vendor/assets/javascripts/rx.time.min.js +3 -1
  37. data/vendor/assets/javascripts/rx.virtualtime.js +30 -30
  38. data/vendor/assets/javascripts/rx.virtualtime.min.js +3 -1
  39. metadata +2 -6
  40. data/vendor/assets/javascripts/rx.core.compat.js +0 -2548
  41. data/vendor/assets/javascripts/rx.core.compat.min.js +0 -1
  42. data/vendor/assets/javascripts/rx.core.js +0 -2430
  43. data/vendor/assets/javascripts/rx.core.min.js +0 -1
@@ -1,4 +1,4 @@
1
- // Copyright (c) Microsoft Open Technologies, Inc. All rights reserved. See License.txt in the project root for license information.
1
+ // Copyright (c) Microsoft Open Technologies, Inc. All rights reserved. See License.txt in the project root for license information.
2
2
 
3
3
  ;(function (factory) {
4
4
  var objectTypes = {
@@ -15,7 +15,7 @@
15
15
  freeModule = objectTypes[typeof module] && module && !module.nodeType && module,
16
16
  moduleExports = freeModule && freeModule.exports === freeExports && freeExports,
17
17
  freeGlobal = objectTypes[typeof global] && global;
18
-
18
+
19
19
  if (freeGlobal && (freeGlobal.global === freeGlobal || freeGlobal.window === freeGlobal)) {
20
20
  root = freeGlobal;
21
21
  }
@@ -32,7 +32,7 @@
32
32
  root.Rx = factory(root, {}, root.Rx);
33
33
  }
34
34
  }.call(this, function (root, exp, Rx, undefined) {
35
-
35
+
36
36
  // Aliases
37
37
  var Observable = Rx.Observable,
38
38
  observableProto = Observable.prototype,
@@ -48,7 +48,7 @@
48
48
  slice = Array.prototype.slice;
49
49
 
50
50
  var fnString = 'function';
51
-
51
+
52
52
  function toThunk(obj, ctx) {
53
53
  if (Array.isArray(obj)) {
54
54
  return objectToThunk.call(ctx, obj);
@@ -149,7 +149,7 @@
149
149
  fn(null, res);
150
150
  }, fn);
151
151
  }
152
- }
152
+ }
153
153
 
154
154
  function isObservable(obj) {
155
155
  return obj && obj.prototype.subscribe === fnString;
@@ -167,7 +167,7 @@
167
167
  return val && val.constructor === Object;
168
168
  }
169
169
 
170
- /*
170
+ /*
171
171
  * Spawns a generator function which allows for Promises, Observable sequences, Arrays, Objects, Generators and functions.
172
172
  * @param {Function} The spawning function.
173
173
  * @returns {Function} a function which has a done continuation.
@@ -180,7 +180,7 @@
180
180
  gen = fan;
181
181
 
182
182
  if (isGenFun) {
183
- var args = slice.call(arguments),
183
+ var args = slice.call(arguments),
184
184
  len = args.length,
185
185
  hasCallback = len && typeof args[len - 1] === fnString;
186
186
 
@@ -228,7 +228,7 @@
228
228
  var called = false;
229
229
  try {
230
230
  ret.value.call(ctx, function(){
231
- if (called) {
231
+ if (called) {
232
232
  return;
233
233
  }
234
234
 
@@ -237,7 +237,7 @@
237
237
  });
238
238
  } catch (e) {
239
239
  timeoutScheduler.schedule(function () {
240
- if (called) {
240
+ if (called) {
241
241
  return;
242
242
  }
243
243
 
@@ -251,7 +251,7 @@
251
251
  // Not supported
252
252
  next(new TypeError('Rx.spawn only supports a function, Promise, Observable, Object or Array.'));
253
253
  }
254
- }
254
+ }
255
255
  };
256
256
 
257
257
  /**
@@ -286,24 +286,24 @@
286
286
  }
287
287
  }
288
288
  }
289
- };
289
+ };
290
290
 
291
291
  /**
292
292
  * Invokes the specified function asynchronously on the specified scheduler, surfacing the result through an observable sequence.
293
- *
293
+ *
294
294
  * @example
295
295
  * var res = Rx.Observable.start(function () { console.log('hello'); });
296
296
  * var res = Rx.Observable.start(function () { console.log('hello'); }, Rx.Scheduler.timeout);
297
297
  * var res = Rx.Observable.start(function () { this.log('hello'); }, Rx.Scheduler.timeout, console);
298
- *
298
+ *
299
299
  * @param {Function} func Function to run asynchronously.
300
300
  * @param {Scheduler} [scheduler] Scheduler to run the function on. If not specified, defaults to Scheduler.timeout.
301
301
  * @param [context] The context for the func parameter to be executed. If not specified, defaults to undefined.
302
302
  * @returns {Observable} An observable sequence exposing the function's result value, or an exception.
303
- *
303
+ *
304
304
  * Remarks
305
305
  * * The function is called immediately, not during the subscription of the resulting sequence.
306
- * * Multiple subscriptions to the resulting sequence can observe the function's result.
306
+ * * Multiple subscriptions to the resulting sequence can observe the function's result.
307
307
  */
308
308
  Observable.start = function (func, context, scheduler) {
309
309
  return observableToAsync(func, context, scheduler)();
@@ -311,12 +311,12 @@
311
311
 
312
312
  /**
313
313
  * Converts the function into an asynchronous function. Each invocation of the resulting asynchronous function causes an invocation of the original synchronous function on the specified scheduler.
314
- *
314
+ *
315
315
  * @example
316
316
  * var res = Rx.Observable.toAsync(function (x, y) { return x + y; })(4, 3);
317
317
  * var res = Rx.Observable.toAsync(function (x, y) { return x + y; }, Rx.Scheduler.timeout)(4, 3);
318
318
  * var res = Rx.Observable.toAsync(function (x) { this.log(x); }, Rx.Scheduler.timeout, console)('hello');
319
- *
319
+ *
320
320
  * @param {Function} function Function to convert to an asynchronous function.
321
321
  * @param {Scheduler} [scheduler] Scheduler to run the function on. If not specified, defaults to Scheduler.timeout.
322
322
  * @param {Mixed} [context] The context for the func parameter to be executed. If not specified, defaults to undefined.
@@ -325,7 +325,7 @@
325
325
  var observableToAsync = Observable.toAsync = function (func, context, scheduler) {
326
326
  isScheduler(scheduler) || (scheduler = timeoutScheduler);
327
327
  return function () {
328
- var args = arguments,
328
+ var args = arguments,
329
329
  subject = new AsyncSubject();
330
330
 
331
331
  scheduler.schedule(function () {
@@ -344,8 +344,8 @@
344
344
  };
345
345
 
346
346
  /**
347
- * Converts a callback function to an observable sequence.
348
- *
347
+ * Converts a callback function to an observable sequence.
348
+ *
349
349
  * @param {Function} function Function with a callback as the last parameter to convert to an Observable sequence.
350
350
  * @param {Mixed} [context] The context for the func parameter to be executed. If not specified, defaults to undefined.
351
351
  * @param {Function} [selector] A selector which takes the arguments from the callback to produce a single item to yield on next.
@@ -358,7 +358,7 @@
358
358
  return new AnonymousObservable(function (observer) {
359
359
  function handler(e) {
360
360
  var results = e;
361
-
361
+
362
362
  if (selector) {
363
363
  try {
364
364
  results = selector(arguments);
@@ -369,13 +369,13 @@
369
369
 
370
370
  observer.onNext(results);
371
371
  } else {
372
- if (results.length <= 1) {
372
+ if (results.length <= 1) {
373
373
  observer.onNext.apply(observer, results);
374
374
  } else {
375
375
  observer.onNext(results);
376
376
  }
377
377
  }
378
-
378
+
379
379
  observer.onCompleted();
380
380
  }
381
381
 
@@ -389,7 +389,7 @@
389
389
  * Converts a Node.js callback style function to an observable sequence. This must be in function (err, ...) format.
390
390
  * @param {Function} func The function to call
391
391
  * @param {Mixed} [context] The context for the func parameter to be executed. If not specified, defaults to undefined.
392
- * @param {Function} [selector] A selector which takes the arguments from the callback minus the error to produce a single item to yield on next.
392
+ * @param {Function} [selector] A selector which takes the arguments from the callback minus the error to produce a single item to yield on next.
393
393
  * @returns {Function} An async function which when applied, returns an observable sequence with the callback arguments as an array.
394
394
  */
395
395
  Observable.fromNodeCallback = function (func, context, selector) {
@@ -404,7 +404,7 @@
404
404
  }
405
405
 
406
406
  var results = slice.call(arguments, 1);
407
-
407
+
408
408
  if (selector) {
409
409
  try {
410
410
  results = selector(results);
@@ -414,7 +414,7 @@
414
414
  }
415
415
  observer.onNext(results);
416
416
  } else {
417
- if (results.length <= 1) {
417
+ if (results.length <= 1) {
418
418
  observer.onNext.apply(observer, results);
419
419
  } else {
420
420
  observer.onNext(results);
@@ -449,7 +449,7 @@
449
449
 
450
450
  event || (event = root.event);
451
451
  if (!event.target) {
452
- event.target = event.target || event.srcElement;
452
+ event.target = event.target || event.srcElement;
453
453
 
454
454
  if (event.type == 'mouseover') {
455
455
  event.relatedTarget = event.fromElement;
@@ -470,14 +470,14 @@
470
470
  c = 0;
471
471
  event.keyCode = 13;
472
472
  } else if (c == 13 || c == 27) {
473
- c = 0;
473
+ c = 0;
474
474
  } else if (c == 3) {
475
- c = 99;
475
+ c = 99;
476
476
  }
477
477
  event.charCode = c;
478
478
  event.keyChar = event.charCode ? String.fromCharCode(event.charCode) : '';
479
479
  break;
480
- }
480
+ }
481
481
  }
482
482
 
483
483
  return event;
@@ -490,7 +490,7 @@
490
490
  return disposableCreate(function () {
491
491
  element.removeEventListener(name, handler, false);
492
492
  });
493
- }
493
+ }
494
494
  if (element.attachEvent) {
495
495
  // IE Specific
496
496
  var innerHandler = function (event) {
@@ -499,9 +499,9 @@
499
499
  element.attachEvent('on' + name, innerHandler);
500
500
  return disposableCreate(function () {
501
501
  element.detachEvent('on' + name, innerHandler);
502
- });
502
+ });
503
503
  }
504
- // Level 1 DOM Events
504
+ // Level 1 DOM Events
505
505
  element['on' + name] = handler;
506
506
  return disposableCreate(function () {
507
507
  element['on' + name] = null;
@@ -524,7 +524,7 @@
524
524
  }
525
525
 
526
526
  /**
527
- * Configuration option to determine whether to use native events only
527
+ * Configuration option to determine whether to use native events only
528
528
  */
529
529
  Rx.config.useNativeEvents = false;
530
530
 
@@ -536,7 +536,7 @@
536
536
 
537
537
  // Check for ember
538
538
  var ember = !!root.Ember && typeof root.Ember.addListener === 'function';
539
-
539
+
540
540
  // Check for Backbone.Marionette. Note if using AMD add Marionette as a dependency of rxjs
541
541
  // for proper loading order!
542
542
  var marionette = !!root.Backbone && !!root.Backbone.Marionette;
@@ -546,10 +546,10 @@
546
546
  *
547
547
  * @example
548
548
  * var source = Rx.Observable.fromEvent(element, 'mouseup');
549
- *
549
+ *
550
550
  * @param {Object} element The DOMElement or NodeList to attach a listener.
551
551
  * @param {String} eventName The event name to attach the observable sequence.
552
- * @param {Function} [selector] A selector which takes the arguments from the event handler to produce a single item to yield on next.
552
+ * @param {Function} [selector] A selector which takes the arguments from the event handler to produce a single item to yield on next.
553
553
  * @returns {Observable} An observable sequence of events from the specified element and the specified event.
554
554
  */
555
555
  Observable.fromEvent = function (element, eventName, selector) {
@@ -559,7 +559,7 @@
559
559
  function (h) { element.addListener(eventName, h); },
560
560
  function (h) { element.removeListener(eventName, h); },
561
561
  selector);
562
- }
562
+ }
563
563
 
564
564
  // Use only if non-native events are allowed
565
565
  if (!Rx.config.useNativeEvents) {
@@ -574,7 +574,7 @@
574
574
  function (h) { Ember.addListener(element, eventName, h); },
575
575
  function (h) { Ember.removeListener(element, eventName, h); },
576
576
  selector);
577
- }
577
+ }
578
578
  if (jq) {
579
579
  var $elem = jq(element);
580
580
  return fromEventPattern(
@@ -585,9 +585,9 @@
585
585
  }
586
586
  return new AnonymousObservable(function (observer) {
587
587
  return createEventListener(
588
- element,
589
- eventName,
590
- function handler (e) {
588
+ element,
589
+ eventName,
590
+ function handler (e) {
591
591
  var results = e;
592
592
 
593
593
  if (selector) {
@@ -599,7 +599,7 @@
599
599
  }
600
600
  }
601
601
 
602
- observer.onNext(results);
602
+ observer.onNext(results);
603
603
  });
604
604
  }).publish().refCount();
605
605
  };
@@ -650,5 +650,5 @@
650
650
  return observableFromPromise(promise);
651
651
  }
652
652
 
653
- return Rx;
654
- }));
653
+ return Rx;
654
+ }));
@@ -1 +1,3 @@
1
- (function(a){var b={"boolean":!1,"function":!0,object:!0,number:!1,string:!1,undefined:!1},c=b[typeof window]&&window||this,d=b[typeof exports]&&exports&&!exports.nodeType&&exports,e=b[typeof module]&&module&&!module.nodeType&&module,f=(e&&e.exports===d&&d,b[typeof global]&&global);!f||f.global!==f&&f.window!==f||(c=f),"function"==typeof define&&define.amd?define(["rx.binding","exports"],function(b,d){return c.Rx=a(c,d,b),c.Rx}):"object"==typeof module&&module&&module.exports===d?module.exports=a(c,module.exports,require("./rx")):c.Rx=a(c,{},c.Rx)}).call(this,function(a,b,c){function d(a,b){return Array.isArray(a)?e.call(b,a):h(a)?y(a.call(b)):i(a)?y(a):g(a)?observableToThunk(a):isPromise(a)?f(a):typeof a===x?a:j(a)||Array.isArray(a)?e.call(b,a):a}function e(a){var b=this;return function(c){function e(a,e){if(!f)try{if(a=d(a,b),typeof a!==x)return i[e]=a,--h||c(null,i);a.call(b,function(a,b){if(!f){if(a)return f=!0,c(a);i[e]=b,--h||c(null,i)}})}catch(g){f=!0,c(g)}}var f,g=Object.keys(a),h=g.length,i=new a.constructor;if(!h)return void u.schedule(function(){c(null,i)});for(var j=0,k=g.length;k>j;j++)e(a[g[j]],g[j])}}function f(a){return function(b){a.then(function(a){b(null,a)},b)}}function g(a){return a&&a.prototype.subscribe===x}function h(a){return a&&a.constructor&&"GeneratorFunction"===a.constructor.name}function i(a){return a&&typeof a.next===x&&typeof a.throw===x}function j(a){return a&&a.constructor===Object}function k(b){var c=function(){this.cancelBubble=!0},d=function(){if(this.bubbledKeyCode=this.keyCode,this.ctrlKey)try{this.keyCode=0}catch(a){}this.defaultPrevented=!0,this.returnValue=!1,this.modified=!0};if(b||(b=a.event),!b.target)switch(b.target=b.target||b.srcElement,"mouseover"==b.type&&(b.relatedTarget=b.fromElement),"mouseout"==b.type&&(b.relatedTarget=b.toElement),b.stopPropagation||(b.stopPropagation=c,b.preventDefault=d),b.type){case"keypress":var e="charCode"in b?b.charCode:b.keyCode;10==e?(e=0,b.keyCode=13):13==e||27==e?e=0:3==e&&(e=99),b.charCode=e,b.keyChar=b.charCode?String.fromCharCode(b.charCode):""}return b}function l(a,b,c){if(a.addEventListener)return a.addEventListener(b,c,!1),s(function(){a.removeEventListener(b,c,!1)});if(a.attachEvent){var d=function(a){c(k(a))};return a.attachEvent("on"+b,d),s(function(){a.detachEvent("on"+b,d)})}return a["on"+b]=c,s(function(){a["on"+b]=null})}function m(a,b,c){var d=new t;if("[object NodeList]"===Object.prototype.toString.call(a))for(var e=0,f=a.length;f>e;e++)d.add(m(a.item(e),b,c));else a&&d.add(l(a,b,c));return d}var n=c.Observable,o=(n.prototype,n.fromPromise),p=n.throwException,q=c.AnonymousObservable,r=c.AsyncSubject,s=c.Disposable.create,t=c.CompositeDisposable,u=(c.Scheduler.immediate,c.Scheduler.timeout),v=c.helpers.isScheduler,w=Array.prototype.slice,x="function",y=c.spawn=function(a){var b=h(a);return function(c){function e(a,b){u.schedule(c.bind(g,a,b))}function f(a,b){var c;if(arguments.length>2&&(b=w.call(arguments,1)),a)try{c=h.throw(a)}catch(i){return e(i)}if(!a)try{c=h.next(b)}catch(i){return e(i)}if(c.done)return e(null,c.value);if(c.value=d(c.value,g),typeof c.value!==x)f(new TypeError("Rx.spawn only supports a function, Promise, Observable, Object or Array."));else{var j=!1;try{c.value.call(g,function(){j||(j=!0,f.apply(g,arguments))})}catch(i){u.schedule(function(){j||(j=!0,f.call(g,i))})}}}var g=this,h=fan;if(b){var i=w.call(arguments),j=i.length,k=j&&typeof i[j-1]===x;c=k?i.pop():error,h=a.apply(this,i)}else c=c||error;f()}};c.denodify=function(a){return function(){var b,c,d,e=w.call(arguments);return e.push(function(){b=arguments,d&&!c&&(c=!0,cb.apply(this,b))}),a.apply(this,e),function(a){d=a,b&&!c&&(c=!0,a.apply(this,b))}}},n.start=function(a,b,c){return z(a,b,c)()};var z=n.toAsync=function(a,b,c){return v(c)||(c=u),function(){var d=arguments,e=new r;return c.schedule(function(){var c;try{c=a.apply(b,d)}catch(f){return void e.onError(f)}e.onNext(c),e.onCompleted()}),e.asObservable()}};n.fromCallback=function(a,b,c){return function(){var d=w.call(arguments,0);return new q(function(e){function f(a){var b=a;if(c){try{b=c(arguments)}catch(d){return void e.onError(d)}e.onNext(b)}else b.length<=1?e.onNext.apply(e,b):e.onNext(b);e.onCompleted()}d.push(f),a.apply(b,d)}).publishLast().refCount()}},n.fromNodeCallback=function(a,b,c){return function(){var d=w.call(arguments,0);return new q(function(e){function f(a){if(a)return void e.onError(a);var b=w.call(arguments,1);if(c){try{b=c(b)}catch(d){return void e.onError(d)}e.onNext(b)}else b.length<=1?e.onNext.apply(e,b):e.onNext(b);e.onCompleted()}d.push(f),a.apply(b,d)}).publishLast().refCount()}},c.config.useNativeEvents=!1;var A=a.angular&&angular.element?angular.element:a.jQuery?a.jQuery:a.Zepto?a.Zepto:null,B=!!a.Ember&&"function"==typeof a.Ember.addListener,C=!!a.Backbone&&!!a.Backbone.Marionette;n.fromEvent=function(a,b,d){if(a.addListener)return D(function(c){a.addListener(b,c)},function(c){a.removeListener(b,c)},d);if(!c.config.useNativeEvents){if(C)return D(function(c){a.on(b,c)},function(c){a.off(b,c)},d);if(B)return D(function(c){Ember.addListener(a,b,c)},function(c){Ember.removeListener(a,b,c)},d);if(A){var e=A(a);return D(function(a){e.on(b,a)},function(a){e.off(b,a)},d)}}return new q(function(c){return m(a,b,function(a){var b=a;if(d)try{b=d(arguments)}catch(e){return void c.onError(e)}c.onNext(b)})}).publish().refCount()};var D=n.fromEventPattern=function(a,b,c){return new q(function(d){function e(a){var b=a;if(c)try{b=c(arguments)}catch(e){return void d.onError(e)}d.onNext(b)}var f=a(e);return s(function(){b&&b(e,f)})}).publish().refCount()};return n.startAsync=function(a){var b;try{b=a()}catch(c){return p(c)}return o(b)},c});
1
+ /* Copyright (c) Microsoft Open Technologies, Inc. All rights reserved. See License.txt in the project root for license information.*/
2
+ (function(a){var b={"boolean":!1,"function":!0,object:!0,number:!1,string:!1,undefined:!1},c=b[typeof window]&&window||this,d=b[typeof exports]&&exports&&!exports.nodeType&&exports,e=b[typeof module]&&module&&!module.nodeType&&module,f=(e&&e.exports===d&&d,b[typeof global]&&global);!f||f.global!==f&&f.window!==f||(c=f),"function"==typeof define&&define.amd?define(["rx.binding","exports"],function(b,d){return c.Rx=a(c,d,b),c.Rx}):"object"==typeof module&&module&&module.exports===d?module.exports=a(c,module.exports,require("./rx")):c.Rx=a(c,{},c.Rx)}).call(this,function(a,b,c){function d(a,b){return Array.isArray(a)?e.call(b,a):h(a)?y(a.call(b)):i(a)?y(a):g(a)?observableToThunk(a):isPromise(a)?f(a):typeof a===x?a:j(a)||Array.isArray(a)?e.call(b,a):a}function e(a){var b=this;return function(c){function e(a,e){if(!f)try{if(a=d(a,b),typeof a!==x)return i[e]=a,--h||c(null,i);a.call(b,function(a,b){if(!f){if(a)return f=!0,c(a);i[e]=b,--h||c(null,i)}})}catch(g){f=!0,c(g)}}var f,g=Object.keys(a),h=g.length,i=new a.constructor;if(!h)return void u.schedule(function(){c(null,i)});for(var j=0,k=g.length;k>j;j++)e(a[g[j]],g[j])}}function f(a){return function(b){a.then(function(a){b(null,a)},b)}}function g(a){return a&&a.prototype.subscribe===x}function h(a){return a&&a.constructor&&"GeneratorFunction"===a.constructor.name}function i(a){return a&&typeof a.next===x&&typeof a.throw===x}function j(a){return a&&a.constructor===Object}function k(b){var c=function(){this.cancelBubble=!0},d=function(){if(this.bubbledKeyCode=this.keyCode,this.ctrlKey)try{this.keyCode=0}catch(a){}this.defaultPrevented=!0,this.returnValue=!1,this.modified=!0};if(b||(b=a.event),!b.target)switch(b.target=b.target||b.srcElement,"mouseover"==b.type&&(b.relatedTarget=b.fromElement),"mouseout"==b.type&&(b.relatedTarget=b.toElement),b.stopPropagation||(b.stopPropagation=c,b.preventDefault=d),b.type){case"keypress":var e="charCode"in b?b.charCode:b.keyCode;10==e?(e=0,b.keyCode=13):13==e||27==e?e=0:3==e&&(e=99),b.charCode=e,b.keyChar=b.charCode?String.fromCharCode(b.charCode):""}return b}function l(a,b,c){if(a.addEventListener)return a.addEventListener(b,c,!1),s(function(){a.removeEventListener(b,c,!1)});if(a.attachEvent){var d=function(a){c(k(a))};return a.attachEvent("on"+b,d),s(function(){a.detachEvent("on"+b,d)})}return a["on"+b]=c,s(function(){a["on"+b]=null})}function m(a,b,c){var d=new t;if("[object NodeList]"===Object.prototype.toString.call(a))for(var e=0,f=a.length;f>e;e++)d.add(m(a.item(e),b,c));else a&&d.add(l(a,b,c));return d}var n=c.Observable,o=(n.prototype,n.fromPromise),p=n.throwException,q=c.AnonymousObservable,r=c.AsyncSubject,s=c.Disposable.create,t=c.CompositeDisposable,u=(c.Scheduler.immediate,c.Scheduler.timeout),v=c.helpers.isScheduler,w=Array.prototype.slice,x="function",y=c.spawn=function(a){var b=h(a);return function(c){function e(a,b){u.schedule(c.bind(g,a,b))}function f(a,b){var c;if(arguments.length>2&&(b=w.call(arguments,1)),a)try{c=h.throw(a)}catch(i){return e(i)}if(!a)try{c=h.next(b)}catch(i){return e(i)}if(c.done)return e(null,c.value);if(c.value=d(c.value,g),typeof c.value!==x)f(new TypeError("Rx.spawn only supports a function, Promise, Observable, Object or Array."));else{var j=!1;try{c.value.call(g,function(){j||(j=!0,f.apply(g,arguments))})}catch(i){u.schedule(function(){j||(j=!0,f.call(g,i))})}}}var g=this,h=fan;if(b){var i=w.call(arguments),j=i.length,k=j&&typeof i[j-1]===x;c=k?i.pop():error,h=a.apply(this,i)}else c=c||error;f()}};c.denodify=function(a){return function(){var b,c,d,e=w.call(arguments);return e.push(function(){b=arguments,d&&!c&&(c=!0,cb.apply(this,b))}),a.apply(this,e),function(a){d=a,b&&!c&&(c=!0,a.apply(this,b))}}},n.start=function(a,b,c){return z(a,b,c)()};var z=n.toAsync=function(a,b,c){return v(c)||(c=u),function(){var d=arguments,e=new r;return c.schedule(function(){var c;try{c=a.apply(b,d)}catch(f){return void e.onError(f)}e.onNext(c),e.onCompleted()}),e.asObservable()}};n.fromCallback=function(a,b,c){return function(){var d=w.call(arguments,0);return new q(function(e){function f(a){var b=a;if(c){try{b=c(arguments)}catch(d){return void e.onError(d)}e.onNext(b)}else b.length<=1?e.onNext.apply(e,b):e.onNext(b);e.onCompleted()}d.push(f),a.apply(b,d)}).publishLast().refCount()}},n.fromNodeCallback=function(a,b,c){return function(){var d=w.call(arguments,0);return new q(function(e){function f(a){if(a)return void e.onError(a);var b=w.call(arguments,1);if(c){try{b=c(b)}catch(d){return void e.onError(d)}e.onNext(b)}else b.length<=1?e.onNext.apply(e,b):e.onNext(b);e.onCompleted()}d.push(f),a.apply(b,d)}).publishLast().refCount()}},c.config.useNativeEvents=!1;var A=a.angular&&angular.element?angular.element:a.jQuery?a.jQuery:a.Zepto?a.Zepto:null,B=!!a.Ember&&"function"==typeof a.Ember.addListener,C=!!a.Backbone&&!!a.Backbone.Marionette;n.fromEvent=function(a,b,d){if(a.addListener)return D(function(c){a.addListener(b,c)},function(c){a.removeListener(b,c)},d);if(!c.config.useNativeEvents){if(C)return D(function(c){a.on(b,c)},function(c){a.off(b,c)},d);if(B)return D(function(c){Ember.addListener(a,b,c)},function(c){Ember.removeListener(a,b,c)},d);if(A){var e=A(a);return D(function(a){e.on(b,a)},function(a){e.off(b,a)},d)}}return new q(function(c){return m(a,b,function(a){var b=a;if(d)try{b=d(arguments)}catch(e){return void c.onError(e)}c.onNext(b)})}).publish().refCount()};var D=n.fromEventPattern=function(a,b,c){return new q(function(d){function e(a){var b=a;if(c)try{b=c(arguments)}catch(e){return void d.onError(e)}d.onNext(b)}var f=a(e);return s(function(){b&&b(e,f)})}).publish().refCount()};return n.startAsync=function(a){var b;try{b=a()}catch(c){return p(c)}return o(b)},c});
3
+ //# sourceMappingURL=rx.async.compat.map
@@ -1,4 +1,4 @@
1
- // Copyright (c) Microsoft Open Technologies, Inc. All rights reserved. See License.txt in the project root for license information.
1
+ // Copyright (c) Microsoft Open Technologies, Inc. All rights reserved. See License.txt in the project root for license information.
2
2
 
3
3
  ;(function (factory) {
4
4
  var objectTypes = {
@@ -15,7 +15,7 @@
15
15
  freeModule = objectTypes[typeof module] && module && !module.nodeType && module,
16
16
  moduleExports = freeModule && freeModule.exports === freeExports && freeExports,
17
17
  freeGlobal = objectTypes[typeof global] && global;
18
-
18
+
19
19
  if (freeGlobal && (freeGlobal.global === freeGlobal || freeGlobal.window === freeGlobal)) {
20
20
  root = freeGlobal;
21
21
  }
@@ -32,7 +32,7 @@
32
32
  root.Rx = factory(root, {}, root.Rx);
33
33
  }
34
34
  }.call(this, function (root, exp, Rx, undefined) {
35
-
35
+
36
36
  // Aliases
37
37
  var Observable = Rx.Observable,
38
38
  observableProto = Observable.prototype,
@@ -48,7 +48,7 @@
48
48
  slice = Array.prototype.slice;
49
49
 
50
50
  var fnString = 'function';
51
-
51
+
52
52
  function toThunk(obj, ctx) {
53
53
  if (Array.isArray(obj)) {
54
54
  return objectToThunk.call(ctx, obj);
@@ -149,7 +149,7 @@
149
149
  fn(null, res);
150
150
  }, fn);
151
151
  }
152
- }
152
+ }
153
153
 
154
154
  function isObservable(obj) {
155
155
  return obj && obj.prototype.subscribe === fnString;
@@ -167,7 +167,7 @@
167
167
  return val && val.constructor === Object;
168
168
  }
169
169
 
170
- /*
170
+ /*
171
171
  * Spawns a generator function which allows for Promises, Observable sequences, Arrays, Objects, Generators and functions.
172
172
  * @param {Function} The spawning function.
173
173
  * @returns {Function} a function which has a done continuation.
@@ -180,7 +180,7 @@
180
180
  gen = fan;
181
181
 
182
182
  if (isGenFun) {
183
- var args = slice.call(arguments),
183
+ var args = slice.call(arguments),
184
184
  len = args.length,
185
185
  hasCallback = len && typeof args[len - 1] === fnString;
186
186
 
@@ -228,7 +228,7 @@
228
228
  var called = false;
229
229
  try {
230
230
  ret.value.call(ctx, function(){
231
- if (called) {
231
+ if (called) {
232
232
  return;
233
233
  }
234
234
 
@@ -237,7 +237,7 @@
237
237
  });
238
238
  } catch (e) {
239
239
  timeoutScheduler.schedule(function () {
240
- if (called) {
240
+ if (called) {
241
241
  return;
242
242
  }
243
243
 
@@ -251,7 +251,7 @@
251
251
  // Not supported
252
252
  next(new TypeError('Rx.spawn only supports a function, Promise, Observable, Object or Array.'));
253
253
  }
254
- }
254
+ }
255
255
  };
256
256
 
257
257
  /**
@@ -286,24 +286,24 @@
286
286
  }
287
287
  }
288
288
  }
289
- };
289
+ };
290
290
 
291
291
  /**
292
292
  * Invokes the specified function asynchronously on the specified scheduler, surfacing the result through an observable sequence.
293
- *
293
+ *
294
294
  * @example
295
295
  * var res = Rx.Observable.start(function () { console.log('hello'); });
296
296
  * var res = Rx.Observable.start(function () { console.log('hello'); }, Rx.Scheduler.timeout);
297
297
  * var res = Rx.Observable.start(function () { this.log('hello'); }, Rx.Scheduler.timeout, console);
298
- *
298
+ *
299
299
  * @param {Function} func Function to run asynchronously.
300
300
  * @param {Scheduler} [scheduler] Scheduler to run the function on. If not specified, defaults to Scheduler.timeout.
301
301
  * @param [context] The context for the func parameter to be executed. If not specified, defaults to undefined.
302
302
  * @returns {Observable} An observable sequence exposing the function's result value, or an exception.
303
- *
303
+ *
304
304
  * Remarks
305
305
  * * The function is called immediately, not during the subscription of the resulting sequence.
306
- * * Multiple subscriptions to the resulting sequence can observe the function's result.
306
+ * * Multiple subscriptions to the resulting sequence can observe the function's result.
307
307
  */
308
308
  Observable.start = function (func, context, scheduler) {
309
309
  return observableToAsync(func, context, scheduler)();
@@ -311,12 +311,12 @@
311
311
 
312
312
  /**
313
313
  * Converts the function into an asynchronous function. Each invocation of the resulting asynchronous function causes an invocation of the original synchronous function on the specified scheduler.
314
- *
314
+ *
315
315
  * @example
316
316
  * var res = Rx.Observable.toAsync(function (x, y) { return x + y; })(4, 3);
317
317
  * var res = Rx.Observable.toAsync(function (x, y) { return x + y; }, Rx.Scheduler.timeout)(4, 3);
318
318
  * var res = Rx.Observable.toAsync(function (x) { this.log(x); }, Rx.Scheduler.timeout, console)('hello');
319
- *
319
+ *
320
320
  * @param {Function} function Function to convert to an asynchronous function.
321
321
  * @param {Scheduler} [scheduler] Scheduler to run the function on. If not specified, defaults to Scheduler.timeout.
322
322
  * @param {Mixed} [context] The context for the func parameter to be executed. If not specified, defaults to undefined.
@@ -325,7 +325,7 @@
325
325
  var observableToAsync = Observable.toAsync = function (func, context, scheduler) {
326
326
  isScheduler(scheduler) || (scheduler = timeoutScheduler);
327
327
  return function () {
328
- var args = arguments,
328
+ var args = arguments,
329
329
  subject = new AsyncSubject();
330
330
 
331
331
  scheduler.schedule(function () {
@@ -344,8 +344,8 @@
344
344
  };
345
345
 
346
346
  /**
347
- * Converts a callback function to an observable sequence.
348
- *
347
+ * Converts a callback function to an observable sequence.
348
+ *
349
349
  * @param {Function} function Function with a callback as the last parameter to convert to an Observable sequence.
350
350
  * @param {Mixed} [context] The context for the func parameter to be executed. If not specified, defaults to undefined.
351
351
  * @param {Function} [selector] A selector which takes the arguments from the callback to produce a single item to yield on next.
@@ -358,7 +358,7 @@
358
358
  return new AnonymousObservable(function (observer) {
359
359
  function handler(e) {
360
360
  var results = e;
361
-
361
+
362
362
  if (selector) {
363
363
  try {
364
364
  results = selector(arguments);
@@ -369,13 +369,13 @@
369
369
 
370
370
  observer.onNext(results);
371
371
  } else {
372
- if (results.length <= 1) {
372
+ if (results.length <= 1) {
373
373
  observer.onNext.apply(observer, results);
374
374
  } else {
375
375
  observer.onNext(results);
376
376
  }
377
377
  }
378
-
378
+
379
379
  observer.onCompleted();
380
380
  }
381
381
 
@@ -389,7 +389,7 @@
389
389
  * Converts a Node.js callback style function to an observable sequence. This must be in function (err, ...) format.
390
390
  * @param {Function} func The function to call
391
391
  * @param {Mixed} [context] The context for the func parameter to be executed. If not specified, defaults to undefined.
392
- * @param {Function} [selector] A selector which takes the arguments from the callback minus the error to produce a single item to yield on next.
392
+ * @param {Function} [selector] A selector which takes the arguments from the callback minus the error to produce a single item to yield on next.
393
393
  * @returns {Function} An async function which when applied, returns an observable sequence with the callback arguments as an array.
394
394
  */
395
395
  Observable.fromNodeCallback = function (func, context, selector) {
@@ -404,7 +404,7 @@
404
404
  }
405
405
 
406
406
  var results = slice.call(arguments, 1);
407
-
407
+
408
408
  if (selector) {
409
409
  try {
410
410
  results = selector(results);
@@ -414,7 +414,7 @@
414
414
  }
415
415
  observer.onNext(results);
416
416
  } else {
417
- if (results.length <= 1) {
417
+ if (results.length <= 1) {
418
418
  observer.onNext.apply(observer, results);
419
419
  } else {
420
420
  observer.onNext(results);
@@ -456,7 +456,7 @@
456
456
  }
457
457
 
458
458
  /**
459
- * Configuration option to determine whether to use native events only
459
+ * Configuration option to determine whether to use native events only
460
460
  */
461
461
  Rx.config.useNativeEvents = false;
462
462
 
@@ -468,7 +468,7 @@
468
468
 
469
469
  // Check for ember
470
470
  var ember = !!root.Ember && typeof root.Ember.addListener === 'function';
471
-
471
+
472
472
  // Check for Backbone.Marionette. Note if using AMD add Marionette as a dependency of rxjs
473
473
  // for proper loading order!
474
474
  var marionette = !!root.Backbone && !!root.Backbone.Marionette;
@@ -478,10 +478,10 @@
478
478
  *
479
479
  * @example
480
480
  * var source = Rx.Observable.fromEvent(element, 'mouseup');
481
- *
481
+ *
482
482
  * @param {Object} element The DOMElement or NodeList to attach a listener.
483
483
  * @param {String} eventName The event name to attach the observable sequence.
484
- * @param {Function} [selector] A selector which takes the arguments from the event handler to produce a single item to yield on next.
484
+ * @param {Function} [selector] A selector which takes the arguments from the event handler to produce a single item to yield on next.
485
485
  * @returns {Observable} An observable sequence of events from the specified element and the specified event.
486
486
  */
487
487
  Observable.fromEvent = function (element, eventName, selector) {
@@ -491,8 +491,8 @@
491
491
  function (h) { element.addListener(eventName, h); },
492
492
  function (h) { element.removeListener(eventName, h); },
493
493
  selector);
494
- }
495
-
494
+ }
495
+
496
496
  // Use only if non-native events are allowed
497
497
  if (!Rx.config.useNativeEvents) {
498
498
  if (marionette) {
@@ -506,7 +506,7 @@
506
506
  function (h) { Ember.addListener(element, eventName, h); },
507
507
  function (h) { Ember.removeListener(element, eventName, h); },
508
508
  selector);
509
- }
509
+ }
510
510
  if (jq) {
511
511
  var $elem = jq(element);
512
512
  return fromEventPattern(
@@ -517,9 +517,9 @@
517
517
  }
518
518
  return new AnonymousObservable(function (observer) {
519
519
  return createEventListener(
520
- element,
521
- eventName,
522
- function handler (e) {
520
+ element,
521
+ eventName,
522
+ function handler (e) {
523
523
  var results = e;
524
524
 
525
525
  if (selector) {
@@ -531,7 +531,7 @@
531
531
  }
532
532
  }
533
533
 
534
- observer.onNext(results);
534
+ observer.onNext(results);
535
535
  });
536
536
  }).publish().refCount();
537
537
  };
@@ -582,5 +582,5 @@
582
582
  return observableFromPromise(promise);
583
583
  }
584
584
 
585
- return Rx;
586
- }));
585
+ return Rx;
586
+ }));
@@ -1 +1,3 @@
1
- (function(a){var b={"boolean":!1,"function":!0,object:!0,number:!1,string:!1,undefined:!1},c=b[typeof window]&&window||this,d=b[typeof exports]&&exports&&!exports.nodeType&&exports,e=b[typeof module]&&module&&!module.nodeType&&module,f=(e&&e.exports===d&&d,b[typeof global]&&global);!f||f.global!==f&&f.window!==f||(c=f),"function"==typeof define&&define.amd?define(["rx.binding","exports"],function(b,d){return c.Rx=a(c,d,b),c.Rx}):"object"==typeof module&&module&&module.exports===d?module.exports=a(c,module.exports,require("./rx")):c.Rx=a(c,{},c.Rx)}).call(this,function(a,b,c){function d(a,b){return Array.isArray(a)?e.call(b,a):h(a)?x(a.call(b)):i(a)?x(a):g(a)?observableToThunk(a):isPromise(a)?f(a):typeof a===w?a:j(a)||Array.isArray(a)?e.call(b,a):a}function e(a){var b=this;return function(c){function e(a,e){if(!f)try{if(a=d(a,b),typeof a!==w)return i[e]=a,--h||c(null,i);a.call(b,function(a,b){if(!f){if(a)return f=!0,c(a);i[e]=b,--h||c(null,i)}})}catch(g){f=!0,c(g)}}var f,g=Object.keys(a),h=g.length,i=new a.constructor;if(!h)return void t.schedule(function(){c(null,i)});for(var j=0,k=g.length;k>j;j++)e(a[g[j]],g[j])}}function f(a){return function(b){a.then(function(a){b(null,a)},b)}}function g(a){return a&&a.prototype.subscribe===w}function h(a){return a&&a.constructor&&"GeneratorFunction"===a.constructor.name}function i(a){return a&&typeof a.next===w&&typeof a.throw===w}function j(a){return a&&a.constructor===Object}function k(a,b,c){if(a.addEventListener)return a.addEventListener(b,c,!1),r(function(){a.removeEventListener(b,c,!1)});throw new Error("No listener found")}function l(a,b,c){var d=new s;if("[object NodeList]"===Object.prototype.toString.call(a))for(var e=0,f=a.length;f>e;e++)d.add(l(a.item(e),b,c));else a&&d.add(k(a,b,c));return d}var m=c.Observable,n=(m.prototype,m.fromPromise),o=m.throwException,p=c.AnonymousObservable,q=c.AsyncSubject,r=c.Disposable.create,s=c.CompositeDisposable,t=(c.Scheduler.immediate,c.Scheduler.timeout),u=c.helpers.isScheduler,v=Array.prototype.slice,w="function",x=c.spawn=function(a){var b=h(a);return function(c){function e(a,b){t.schedule(c.bind(g,a,b))}function f(a,b){var c;if(arguments.length>2&&(b=v.call(arguments,1)),a)try{c=h.throw(a)}catch(i){return e(i)}if(!a)try{c=h.next(b)}catch(i){return e(i)}if(c.done)return e(null,c.value);if(c.value=d(c.value,g),typeof c.value!==w)f(new TypeError("Rx.spawn only supports a function, Promise, Observable, Object or Array."));else{var j=!1;try{c.value.call(g,function(){j||(j=!0,f.apply(g,arguments))})}catch(i){t.schedule(function(){j||(j=!0,f.call(g,i))})}}}var g=this,h=fan;if(b){var i=v.call(arguments),j=i.length,k=j&&typeof i[j-1]===w;c=k?i.pop():error,h=a.apply(this,i)}else c=c||error;f()}};c.denodify=function(a){return function(){var b,c,d,e=v.call(arguments);return e.push(function(){b=arguments,d&&!c&&(c=!0,cb.apply(this,b))}),a.apply(this,e),function(a){d=a,b&&!c&&(c=!0,a.apply(this,b))}}},m.start=function(a,b,c){return y(a,b,c)()};var y=m.toAsync=function(a,b,c){return u(c)||(c=t),function(){var d=arguments,e=new q;return c.schedule(function(){var c;try{c=a.apply(b,d)}catch(f){return void e.onError(f)}e.onNext(c),e.onCompleted()}),e.asObservable()}};m.fromCallback=function(a,b,c){return function(){var d=v.call(arguments,0);return new p(function(e){function f(a){var b=a;if(c){try{b=c(arguments)}catch(d){return void e.onError(d)}e.onNext(b)}else b.length<=1?e.onNext.apply(e,b):e.onNext(b);e.onCompleted()}d.push(f),a.apply(b,d)}).publishLast().refCount()}},m.fromNodeCallback=function(a,b,c){return function(){var d=v.call(arguments,0);return new p(function(e){function f(a){if(a)return void e.onError(a);var b=v.call(arguments,1);if(c){try{b=c(b)}catch(d){return void e.onError(d)}e.onNext(b)}else b.length<=1?e.onNext.apply(e,b):e.onNext(b);e.onCompleted()}d.push(f),a.apply(b,d)}).publishLast().refCount()}},c.config.useNativeEvents=!1;var z=a.angular&&angular.element?angular.element:a.jQuery?a.jQuery:a.Zepto?a.Zepto:null,A=!!a.Ember&&"function"==typeof a.Ember.addListener,B=!!a.Backbone&&!!a.Backbone.Marionette;m.fromEvent=function(a,b,d){if(a.addListener)return C(function(c){a.addListener(b,c)},function(c){a.removeListener(b,c)},d);if(!c.config.useNativeEvents){if(B)return C(function(c){a.on(b,c)},function(c){a.off(b,c)},d);if(A)return C(function(c){Ember.addListener(a,b,c)},function(c){Ember.removeListener(a,b,c)},d);if(z){var e=z(a);return C(function(a){e.on(b,a)},function(a){e.off(b,a)},d)}}return new p(function(c){return l(a,b,function(a){var b=a;if(d)try{b=d(arguments)}catch(e){return void c.onError(e)}c.onNext(b)})}).publish().refCount()};var C=m.fromEventPattern=function(a,b,c){return new p(function(d){function e(a){var b=a;if(c)try{b=c(arguments)}catch(e){return void d.onError(e)}d.onNext(b)}var f=a(e);return r(function(){b&&b(e,f)})}).publish().refCount()};return m.startAsync=function(a){var b;try{b=a()}catch(c){return o(c)}return n(b)},c});
1
+ /* Copyright (c) Microsoft Open Technologies, Inc. All rights reserved. See License.txt in the project root for license information.*/
2
+ (function(a){var b={"boolean":!1,"function":!0,object:!0,number:!1,string:!1,undefined:!1},c=b[typeof window]&&window||this,d=b[typeof exports]&&exports&&!exports.nodeType&&exports,e=b[typeof module]&&module&&!module.nodeType&&module,f=(e&&e.exports===d&&d,b[typeof global]&&global);!f||f.global!==f&&f.window!==f||(c=f),"function"==typeof define&&define.amd?define(["rx.binding","exports"],function(b,d){return c.Rx=a(c,d,b),c.Rx}):"object"==typeof module&&module&&module.exports===d?module.exports=a(c,module.exports,require("./rx")):c.Rx=a(c,{},c.Rx)}).call(this,function(a,b,c){function d(a,b){return Array.isArray(a)?e.call(b,a):h(a)?x(a.call(b)):i(a)?x(a):g(a)?observableToThunk(a):isPromise(a)?f(a):typeof a===w?a:j(a)||Array.isArray(a)?e.call(b,a):a}function e(a){var b=this;return function(c){function e(a,e){if(!f)try{if(a=d(a,b),typeof a!==w)return i[e]=a,--h||c(null,i);a.call(b,function(a,b){if(!f){if(a)return f=!0,c(a);i[e]=b,--h||c(null,i)}})}catch(g){f=!0,c(g)}}var f,g=Object.keys(a),h=g.length,i=new a.constructor;if(!h)return void t.schedule(function(){c(null,i)});for(var j=0,k=g.length;k>j;j++)e(a[g[j]],g[j])}}function f(a){return function(b){a.then(function(a){b(null,a)},b)}}function g(a){return a&&a.prototype.subscribe===w}function h(a){return a&&a.constructor&&"GeneratorFunction"===a.constructor.name}function i(a){return a&&typeof a.next===w&&typeof a.throw===w}function j(a){return a&&a.constructor===Object}function k(a,b,c){if(a.addEventListener)return a.addEventListener(b,c,!1),r(function(){a.removeEventListener(b,c,!1)});throw new Error("No listener found")}function l(a,b,c){var d=new s;if("[object NodeList]"===Object.prototype.toString.call(a))for(var e=0,f=a.length;f>e;e++)d.add(l(a.item(e),b,c));else a&&d.add(k(a,b,c));return d}var m=c.Observable,n=(m.prototype,m.fromPromise),o=m.throwException,p=c.AnonymousObservable,q=c.AsyncSubject,r=c.Disposable.create,s=c.CompositeDisposable,t=(c.Scheduler.immediate,c.Scheduler.timeout),u=c.helpers.isScheduler,v=Array.prototype.slice,w="function",x=c.spawn=function(a){var b=h(a);return function(c){function e(a,b){t.schedule(c.bind(g,a,b))}function f(a,b){var c;if(arguments.length>2&&(b=v.call(arguments,1)),a)try{c=h.throw(a)}catch(i){return e(i)}if(!a)try{c=h.next(b)}catch(i){return e(i)}if(c.done)return e(null,c.value);if(c.value=d(c.value,g),typeof c.value!==w)f(new TypeError("Rx.spawn only supports a function, Promise, Observable, Object or Array."));else{var j=!1;try{c.value.call(g,function(){j||(j=!0,f.apply(g,arguments))})}catch(i){t.schedule(function(){j||(j=!0,f.call(g,i))})}}}var g=this,h=fan;if(b){var i=v.call(arguments),j=i.length,k=j&&typeof i[j-1]===w;c=k?i.pop():error,h=a.apply(this,i)}else c=c||error;f()}};c.denodify=function(a){return function(){var b,c,d,e=v.call(arguments);return e.push(function(){b=arguments,d&&!c&&(c=!0,cb.apply(this,b))}),a.apply(this,e),function(a){d=a,b&&!c&&(c=!0,a.apply(this,b))}}},m.start=function(a,b,c){return y(a,b,c)()};var y=m.toAsync=function(a,b,c){return u(c)||(c=t),function(){var d=arguments,e=new q;return c.schedule(function(){var c;try{c=a.apply(b,d)}catch(f){return void e.onError(f)}e.onNext(c),e.onCompleted()}),e.asObservable()}};m.fromCallback=function(a,b,c){return function(){var d=v.call(arguments,0);return new p(function(e){function f(a){var b=a;if(c){try{b=c(arguments)}catch(d){return void e.onError(d)}e.onNext(b)}else b.length<=1?e.onNext.apply(e,b):e.onNext(b);e.onCompleted()}d.push(f),a.apply(b,d)}).publishLast().refCount()}},m.fromNodeCallback=function(a,b,c){return function(){var d=v.call(arguments,0);return new p(function(e){function f(a){if(a)return void e.onError(a);var b=v.call(arguments,1);if(c){try{b=c(b)}catch(d){return void e.onError(d)}e.onNext(b)}else b.length<=1?e.onNext.apply(e,b):e.onNext(b);e.onCompleted()}d.push(f),a.apply(b,d)}).publishLast().refCount()}},c.config.useNativeEvents=!1;var z=a.angular&&angular.element?angular.element:a.jQuery?a.jQuery:a.Zepto?a.Zepto:null,A=!!a.Ember&&"function"==typeof a.Ember.addListener,B=!!a.Backbone&&!!a.Backbone.Marionette;m.fromEvent=function(a,b,d){if(a.addListener)return C(function(c){a.addListener(b,c)},function(c){a.removeListener(b,c)},d);if(!c.config.useNativeEvents){if(B)return C(function(c){a.on(b,c)},function(c){a.off(b,c)},d);if(A)return C(function(c){Ember.addListener(a,b,c)},function(c){Ember.removeListener(a,b,c)},d);if(z){var e=z(a);return C(function(a){e.on(b,a)},function(a){e.off(b,a)},d)}}return new p(function(c){return l(a,b,function(a){var b=a;if(d)try{b=d(arguments)}catch(e){return void c.onError(e)}c.onNext(b)})}).publish().refCount()};var C=m.fromEventPattern=function(a,b,c){return new p(function(d){function e(a){var b=a;if(c)try{b=c(arguments)}catch(e){return void d.onError(e)}d.onNext(b)}var f=a(e);return r(function(){b&&b(e,f)})}).publish().refCount()};return m.startAsync=function(a){var b;try{b=a()}catch(c){return o(c)}return n(b)},c});
3
+ //# sourceMappingURL=rx.async.map