onErrorResumeNext.js 1.2 KB

1234567891011121314151617181920212223242526272829303132333435
  1. import { Observable } from '../Observable';
  2. import { argsOrArgArray } from '../util/argsOrArgArray';
  3. import { OperatorSubscriber } from '../operators/OperatorSubscriber';
  4. import { noop } from '../util/noop';
  5. import { innerFrom } from './innerFrom';
  6. export function onErrorResumeNext() {
  7. var sources = [];
  8. for (var _i = 0; _i < arguments.length; _i++) {
  9. sources[_i] = arguments[_i];
  10. }
  11. var nextSources = argsOrArgArray(sources);
  12. return new Observable(function (subscriber) {
  13. var sourceIndex = 0;
  14. var subscribeNext = function () {
  15. if (sourceIndex < nextSources.length) {
  16. var nextSource = void 0;
  17. try {
  18. nextSource = innerFrom(nextSources[sourceIndex++]);
  19. }
  20. catch (err) {
  21. subscribeNext();
  22. return;
  23. }
  24. var innerSubscriber = new OperatorSubscriber(subscriber, undefined, noop, noop);
  25. nextSource.subscribe(innerSubscriber);
  26. innerSubscriber.add(subscribeNext);
  27. }
  28. else {
  29. subscriber.complete();
  30. }
  31. };
  32. subscribeNext();
  33. });
  34. }
  35. //# sourceMappingURL=onErrorResumeNext.js.map