onErrorResumeNext.js 1.5 KB

123456789101112131415161718192021222324252627282930313233343536373839
  1. "use strict";
  2. Object.defineProperty(exports, "__esModule", { value: true });
  3. exports.onErrorResumeNext = void 0;
  4. var Observable_1 = require("../Observable");
  5. var argsOrArgArray_1 = require("../util/argsOrArgArray");
  6. var OperatorSubscriber_1 = require("../operators/OperatorSubscriber");
  7. var noop_1 = require("../util/noop");
  8. var innerFrom_1 = require("./innerFrom");
  9. function onErrorResumeNext() {
  10. var sources = [];
  11. for (var _i = 0; _i < arguments.length; _i++) {
  12. sources[_i] = arguments[_i];
  13. }
  14. var nextSources = argsOrArgArray_1.argsOrArgArray(sources);
  15. return new Observable_1.Observable(function (subscriber) {
  16. var sourceIndex = 0;
  17. var subscribeNext = function () {
  18. if (sourceIndex < nextSources.length) {
  19. var nextSource = void 0;
  20. try {
  21. nextSource = innerFrom_1.innerFrom(nextSources[sourceIndex++]);
  22. }
  23. catch (err) {
  24. subscribeNext();
  25. return;
  26. }
  27. var innerSubscriber = new OperatorSubscriber_1.OperatorSubscriber(subscriber, undefined, noop_1.noop, noop_1.noop);
  28. nextSource.subscribe(innerSubscriber);
  29. innerSubscriber.add(subscribeNext);
  30. }
  31. else {
  32. subscriber.complete();
  33. }
  34. };
  35. subscribeNext();
  36. });
  37. }
  38. exports.onErrorResumeNext = onErrorResumeNext;
  39. //# sourceMappingURL=onErrorResumeNext.js.map