From 103d74f32f8aad0139e4cf423054ffe69942a00c Mon Sep 17 00:00:00 2001 From: Arman Ozak Date: Thu, 18 Jun 2020 16:31:38 +0300 Subject: [PATCH] fix: catch errors in list service query hook --- .../packages/core/src/lib/services/list.service.ts | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/npm/ng-packs/packages/core/src/lib/services/list.service.ts b/npm/ng-packs/packages/core/src/lib/services/list.service.ts index 3aff601f7a..d3da082eeb 100644 --- a/npm/ng-packs/packages/core/src/lib/services/list.service.ts +++ b/npm/ng-packs/packages/core/src/lib/services/list.service.ts @@ -1,6 +1,6 @@ import { Inject, Injectable, OnDestroy, Optional } from '@angular/core'; -import { BehaviorSubject, Observable, ReplaySubject } from 'rxjs'; -import { debounceTime, shareReplay, switchMap, tap } from 'rxjs/operators'; +import { BehaviorSubject, Observable, of, ReplaySubject } from 'rxjs'; +import { catchError, debounceTime, filter, shareReplay, switchMap, tap } from 'rxjs/operators'; import { ABP } from '../models/common'; import { PagedResultDto } from '../models/dtos'; import { LIST_QUERY_DEBOUNCE_TIME } from '../tokens/list.token'; @@ -88,7 +88,8 @@ export class ListService implements OnDes this._isLoading$.next(true); return this.query$.pipe( - switchMap(streamCreatorCallback), + switchMap(query => streamCreatorCallback(query).pipe(catchError(() => of(null)))), + filter(Boolean), tap(() => this._isLoading$.next(false)), shareReplay({ bufferSize: 1, refCount: true }), takeUntilDestroy(this),