404

[ Avaa Bypassed ]




Upload:

Command:

botdev@3.133.122.83: ~ $
/** @prettier */
import { Subscription } from './Subscription';
import { Subscriber } from './Subscriber';
import { Observable } from './Observable';
import { subscribeTo } from './util/subscribeTo';

interface SimpleOuterSubscriberLike<T> {
  /**
   * A handler for inner next notifications from the inner subscription
   * @param innerValue the value nexted by the inner producer
   */
  notifyNext(innerValue: T): void;
  /**
   * A handler for inner error notifications from the inner subscription
   * @param err the error from the inner producer
   */
  notifyError(err: any): void;
  /**
   * A handler for inner complete notifications from the inner subscription.
   */
  notifyComplete(): void;
}

export class SimpleInnerSubscriber<T> extends Subscriber<T> {
  constructor(private parent: SimpleOuterSubscriberLike<any>) {
    super();
  }

  protected _next(value: T): void {
    this.parent.notifyNext(value);
  }

  protected _error(error: any): void {
    this.parent.notifyError(error);
    this.unsubscribe();
  }

  protected _complete(): void {
    this.parent.notifyComplete();
    this.unsubscribe();
  }
}

export class ComplexInnerSubscriber<T, R> extends Subscriber<R> {
  constructor(private parent: ComplexOuterSubscriber<T, R>, public outerValue: T, public outerIndex: number) {
    super();
  }

  protected _next(value: R): void {
    this.parent.notifyNext(this.outerValue, value, this.outerIndex, this);
  }

  protected _error(error: any): void {
    this.parent.notifyError(error);
    this.unsubscribe();
  }

  protected _complete(): void {
    this.parent.notifyComplete(this);
    this.unsubscribe();
  }
}

export class SimpleOuterSubscriber<T, R> extends Subscriber<T> implements SimpleOuterSubscriberLike<R> {
  notifyNext(innerValue: R): void {
    this.destination.next(innerValue);
  }

  notifyError(err: any): void {
    this.destination.error(err);
  }

  notifyComplete(): void {
    this.destination.complete();
  }
}

/**
 * DO NOT USE (formerly "OuterSubscriber")
 * TODO: We want to refactor this and remove it. It is retaining values it shouldn't for long
 * periods of time.
 */
export class ComplexOuterSubscriber<T, R> extends Subscriber<T> {
  /**
   * @param _outerValue Used by: bufferToggle, delayWhen, windowToggle
   * @param innerValue Used by: subclass default, combineLatest, race, bufferToggle, windowToggle, withLatestFrom
   * @param _outerIndex Used by: combineLatest, race, withLatestFrom
   * @param _innerSub Used by: delayWhen
   */
  notifyNext(_outerValue: T, innerValue: R, _outerIndex: number, _innerSub: ComplexInnerSubscriber<T, R>): void {
    this.destination.next(innerValue);
  }

  notifyError(error: any): void {
    this.destination.error(error);
  }

  /**
   * @param _innerSub Used by: race, bufferToggle, delayWhen, windowToggle, windowWhen
   */
  notifyComplete(_innerSub: ComplexInnerSubscriber<T, R>): void {
    this.destination.complete();
  }
}

export function innerSubscribe(result: any, innerSubscriber: Subscriber<any>): Subscription | undefined {
  if (innerSubscriber.closed) {
    return undefined;
  }
  if (result instanceof Observable) {
    return result.subscribe(innerSubscriber);
  }
  return subscribeTo(result)(innerSubscriber) as Subscription;
}

Filemanager

Name Type Size Permission Actions
observable Folder 0755
operators Folder 0755
scheduled Folder 0755
scheduler Folder 0755
symbol Folder 0755
testing Folder 0755
util Folder 0755
AsyncSubject.ts File 1.21 KB 0644
BehaviorSubject.ts File 1.13 KB 0644
InnerSubscriber.ts File 732 B 0644
Notification.ts File 4.81 KB 0644
Observable.ts File 15.79 KB 0644
Observer.ts File 410 B 0644
Operator.ts File 184 B 0644
OuterSubscriber.ts File 646 B 0644
ReplaySubject.ts File 4.18 KB 0644
Rx.ts File 9.46 KB 0644
Scheduler.ts File 2.48 KB 0644
Subject.ts File 4.81 KB 0644
SubjectSubscription.ts File 846 B 0644
Subscriber.ts File 9.23 KB 0644
Subscription.ts File 7.88 KB 0644
config.ts File 1.4 KB 0644
innerSubscribe.ts File 3.18 KB 0644
types.ts File 3.05 KB 0644
umd.ts File 598 B 0644