diff --git a/src/app/widgets/resolvers/data-source-resolver.service.ts b/src/app/widgets/resolvers/data-source-resolver.service.ts index 4722f5f..585e117 100644 --- a/src/app/widgets/resolvers/data-source-resolver.service.ts +++ b/src/app/widgets/resolvers/data-source-resolver.service.ts @@ -1,5 +1,5 @@ import { Injectable, inject } from '@angular/core'; -import { Observable, of, map, switchMap } from 'rxjs'; +import { Observable, of, map, switchMap, catchError } from 'rxjs'; import { CategoryFacade } from '../../facades/platform/category.facade'; import { ProductFacade } from '../../facades/platform/product.facade'; import { LanguageService } from '../../services/language.service'; @@ -19,7 +19,11 @@ export class DataSourceResolverService { resolve(widget: WidgetConfig, section: SectionConfig): Observable { return this.widgetManifest.getWidget(widget.type).pipe( - switchMap((definition) => this.resolveByDefinition(definition, widget, section)) + switchMap((definition) => this.resolveByDefinition(definition, widget, section)), + catchError((error) => { + console.error(`Failed to resolve widget data for ${widget.type}:${widget.id}`, error); + return of({ section, settings: {} }); + }) ); }