diff options
Diffstat (limited to 'node_modules/rxjs/src/internal/operators/throwIfEmpty.ts')
| -rw-r--r-- | node_modules/rxjs/src/internal/operators/throwIfEmpty.ts | 60 |
1 files changed, 0 insertions, 60 deletions
diff --git a/node_modules/rxjs/src/internal/operators/throwIfEmpty.ts b/node_modules/rxjs/src/internal/operators/throwIfEmpty.ts deleted file mode 100644 index 76497a2..0000000 --- a/node_modules/rxjs/src/internal/operators/throwIfEmpty.ts +++ /dev/null @@ -1,60 +0,0 @@ -import { EmptyError } from '../util/EmptyError'; -import { MonoTypeOperatorFunction } from '../types'; -import { operate } from '../util/lift'; -import { createOperatorSubscriber } from './OperatorSubscriber'; - -/** - * If the source observable completes without emitting a value, it will emit - * an error. The error will be created at that time by the optional - * `errorFactory` argument, otherwise, the error will be {@link EmptyError}. - * - *  - * - * ## Example - * - * Throw an error if the document wasn't clicked within 1 second - * - * ```ts - * import { fromEvent, takeUntil, timer, throwIfEmpty } from 'rxjs'; - * - * const click$ = fromEvent(document, 'click'); - * - * click$.pipe( - * takeUntil(timer(1000)), - * throwIfEmpty(() => new Error('The document was not clicked within 1 second')) - * ) - * .subscribe({ - * next() { - * console.log('The document was clicked'); - * }, - * error(err) { - * console.error(err.message); - * } - * }); - * ``` - * - * @param errorFactory A factory function called to produce the - * error to be thrown when the source observable completes without emitting a - * value. - * @return A function that returns an Observable that throws an error if the - * source Observable completed without emitting. - */ -export function throwIfEmpty<T>(errorFactory: () => any = defaultErrorFactory): MonoTypeOperatorFunction<T> { - return operate((source, subscriber) => { - let hasValue = false; - source.subscribe( - createOperatorSubscriber( - subscriber, - (value) => { - hasValue = true; - subscriber.next(value); - }, - () => (hasValue ? subscriber.complete() : subscriber.error(errorFactory())) - ) - ); - }); -} - -function defaultErrorFactory() { - return new EmptyError(); -} |
