1 import { SimpleOuterSubscriber, SimpleInnerSubscriber, innerSubscribe } from '../innerSubscribe';
2 export function skipUntil(notifier) {
3 return (source) => source.lift(new SkipUntilOperator(notifier));
5 class SkipUntilOperator {
6 constructor(notifier) {
7 this.notifier = notifier;
9 call(destination, source) {
10 return source.subscribe(new SkipUntilSubscriber(destination, this.notifier));
13 class SkipUntilSubscriber extends SimpleOuterSubscriber {
14 constructor(destination, notifier) {
16 this.hasValue = false;
17 const innerSubscriber = new SimpleInnerSubscriber(this);
18 this.add(innerSubscriber);
19 this.innerSubscription = innerSubscriber;
20 const innerSubscription = innerSubscribe(notifier, innerSubscriber);
21 if (innerSubscription !== innerSubscriber) {
22 this.add(innerSubscription);
23 this.innerSubscription = innerSubscription;
33 if (this.innerSubscription) {
34 this.innerSubscription.unsubscribe();
40 //# sourceMappingURL=skipUntil.js.map