aboutsummaryrefslogtreecommitdiff
path: root/sandbox/testAppNevena/Front/node_modules/rxjs/_esm2015/internal/Subscriber.js
diff options
context:
space:
mode:
authorNevena Bojovic <nenabojov@gmail.com>2022-03-01 20:05:50 +0100
committerNevena Bojovic <nenabojov@gmail.com>2022-03-01 20:05:50 +0100
commit291803c31f829fe0d32bb3207bc11def95a7408c (patch)
treec7d43107d79291b19d8c9eceefbe91c9f9a52acf /sandbox/testAppNevena/Front/node_modules/rxjs/_esm2015/internal/Subscriber.js
parent1fa69862057db4db53cfda5be9c24b4228ef63f7 (diff)
Urađena test aplikacija. Povezan front i back.
Diffstat (limited to 'sandbox/testAppNevena/Front/node_modules/rxjs/_esm2015/internal/Subscriber.js')
-rw-r--r--sandbox/testAppNevena/Front/node_modules/rxjs/_esm2015/internal/Subscriber.js222
1 files changed, 222 insertions, 0 deletions
diff --git a/sandbox/testAppNevena/Front/node_modules/rxjs/_esm2015/internal/Subscriber.js b/sandbox/testAppNevena/Front/node_modules/rxjs/_esm2015/internal/Subscriber.js
new file mode 100644
index 00000000..7dfed3c8
--- /dev/null
+++ b/sandbox/testAppNevena/Front/node_modules/rxjs/_esm2015/internal/Subscriber.js
@@ -0,0 +1,222 @@
+import { isFunction } from './util/isFunction';
+import { empty as emptyObserver } from './Observer';
+import { Subscription } from './Subscription';
+import { rxSubscriber as rxSubscriberSymbol } from '../internal/symbol/rxSubscriber';
+import { config } from './config';
+import { hostReportError } from './util/hostReportError';
+export class Subscriber extends Subscription {
+ constructor(destinationOrNext, error, complete) {
+ super();
+ this.syncErrorValue = null;
+ this.syncErrorThrown = false;
+ this.syncErrorThrowable = false;
+ this.isStopped = false;
+ switch (arguments.length) {
+ case 0:
+ this.destination = emptyObserver;
+ break;
+ case 1:
+ if (!destinationOrNext) {
+ this.destination = emptyObserver;
+ break;
+ }
+ if (typeof destinationOrNext === 'object') {
+ if (destinationOrNext instanceof Subscriber) {
+ this.syncErrorThrowable = destinationOrNext.syncErrorThrowable;
+ this.destination = destinationOrNext;
+ destinationOrNext.add(this);
+ }
+ else {
+ this.syncErrorThrowable = true;
+ this.destination = new SafeSubscriber(this, destinationOrNext);
+ }
+ break;
+ }
+ default:
+ this.syncErrorThrowable = true;
+ this.destination = new SafeSubscriber(this, destinationOrNext, error, complete);
+ break;
+ }
+ }
+ [rxSubscriberSymbol]() { return this; }
+ static create(next, error, complete) {
+ const subscriber = new Subscriber(next, error, complete);
+ subscriber.syncErrorThrowable = false;
+ return subscriber;
+ }
+ next(value) {
+ if (!this.isStopped) {
+ this._next(value);
+ }
+ }
+ error(err) {
+ if (!this.isStopped) {
+ this.isStopped = true;
+ this._error(err);
+ }
+ }
+ complete() {
+ if (!this.isStopped) {
+ this.isStopped = true;
+ this._complete();
+ }
+ }
+ unsubscribe() {
+ if (this.closed) {
+ return;
+ }
+ this.isStopped = true;
+ super.unsubscribe();
+ }
+ _next(value) {
+ this.destination.next(value);
+ }
+ _error(err) {
+ this.destination.error(err);
+ this.unsubscribe();
+ }
+ _complete() {
+ this.destination.complete();
+ this.unsubscribe();
+ }
+ _unsubscribeAndRecycle() {
+ const { _parentOrParents } = this;
+ this._parentOrParents = null;
+ this.unsubscribe();
+ this.closed = false;
+ this.isStopped = false;
+ this._parentOrParents = _parentOrParents;
+ return this;
+ }
+}
+export class SafeSubscriber extends Subscriber {
+ constructor(_parentSubscriber, observerOrNext, error, complete) {
+ super();
+ this._parentSubscriber = _parentSubscriber;
+ let next;
+ let context = this;
+ if (isFunction(observerOrNext)) {
+ next = observerOrNext;
+ }
+ else if (observerOrNext) {
+ next = observerOrNext.next;
+ error = observerOrNext.error;
+ complete = observerOrNext.complete;
+ if (observerOrNext !== emptyObserver) {
+ context = Object.create(observerOrNext);
+ if (isFunction(context.unsubscribe)) {
+ this.add(context.unsubscribe.bind(context));
+ }
+ context.unsubscribe = this.unsubscribe.bind(this);
+ }
+ }
+ this._context = context;
+ this._next = next;
+ this._error = error;
+ this._complete = complete;
+ }
+ next(value) {
+ if (!this.isStopped && this._next) {
+ const { _parentSubscriber } = this;
+ if (!config.useDeprecatedSynchronousErrorHandling || !_parentSubscriber.syncErrorThrowable) {
+ this.__tryOrUnsub(this._next, value);
+ }
+ else if (this.__tryOrSetError(_parentSubscriber, this._next, value)) {
+ this.unsubscribe();
+ }
+ }
+ }
+ error(err) {
+ if (!this.isStopped) {
+ const { _parentSubscriber } = this;
+ const { useDeprecatedSynchronousErrorHandling } = config;
+ if (this._error) {
+ if (!useDeprecatedSynchronousErrorHandling || !_parentSubscriber.syncErrorThrowable) {
+ this.__tryOrUnsub(this._error, err);
+ this.unsubscribe();
+ }
+ else {
+ this.__tryOrSetError(_parentSubscriber, this._error, err);
+ this.unsubscribe();
+ }
+ }
+ else if (!_parentSubscriber.syncErrorThrowable) {
+ this.unsubscribe();
+ if (useDeprecatedSynchronousErrorHandling) {
+ throw err;
+ }
+ hostReportError(err);
+ }
+ else {
+ if (useDeprecatedSynchronousErrorHandling) {
+ _parentSubscriber.syncErrorValue = err;
+ _parentSubscriber.syncErrorThrown = true;
+ }
+ else {
+ hostReportError(err);
+ }
+ this.unsubscribe();
+ }
+ }
+ }
+ complete() {
+ if (!this.isStopped) {
+ const { _parentSubscriber } = this;
+ if (this._complete) {
+ const wrappedComplete = () => this._complete.call(this._context);
+ if (!config.useDeprecatedSynchronousErrorHandling || !_parentSubscriber.syncErrorThrowable) {
+ this.__tryOrUnsub(wrappedComplete);
+ this.unsubscribe();
+ }
+ else {
+ this.__tryOrSetError(_parentSubscriber, wrappedComplete);
+ this.unsubscribe();
+ }
+ }
+ else {
+ this.unsubscribe();
+ }
+ }
+ }
+ __tryOrUnsub(fn, value) {
+ try {
+ fn.call(this._context, value);
+ }
+ catch (err) {
+ this.unsubscribe();
+ if (config.useDeprecatedSynchronousErrorHandling) {
+ throw err;
+ }
+ else {
+ hostReportError(err);
+ }
+ }
+ }
+ __tryOrSetError(parent, fn, value) {
+ if (!config.useDeprecatedSynchronousErrorHandling) {
+ throw new Error('bad call');
+ }
+ try {
+ fn.call(this._context, value);
+ }
+ catch (err) {
+ if (config.useDeprecatedSynchronousErrorHandling) {
+ parent.syncErrorValue = err;
+ parent.syncErrorThrown = true;
+ return true;
+ }
+ else {
+ hostReportError(err);
+ return true;
+ }
+ }
+ return false;
+ }
+ _unsubscribe() {
+ const { _parentSubscriber } = this;
+ this._context = null;
+ this._parentSubscriber = null;
+ _parentSubscriber.unsubscribe();
+ }
+}
+//# sourceMappingURL=Subscriber.js.map \ No newline at end of file