From 530bda664db30c1e105001c06ceb915966c2dfa7 Mon Sep 17 00:00:00 2001 From: Sandeep Kumar Sharma Date: Fri, 5 Aug 2022 21:01:56 +0530 Subject: [PATCH] fix: file upload error message --- .../src/file-upload/file-upload.service.ts | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/projects/components/src/file-upload/file-upload.service.ts b/projects/components/src/file-upload/file-upload.service.ts index d98664622..65b055e1c 100644 --- a/projects/components/src/file-upload/file-upload.service.ts +++ b/projects/components/src/file-upload/file-upload.service.ts @@ -1,4 +1,4 @@ -import { HttpClient, HttpEventType } from '@angular/common/http'; +import { HttpClient, HttpErrorResponse, HttpEventType } from '@angular/common/http'; import { Injectable } from '@angular/core'; import { uniqueId } from 'lodash-es'; import { fromEvent, Observable, of, Subscription } from 'rxjs'; @@ -76,7 +76,7 @@ export class FileUploadService { catchError(error => of({ type: FileUploadEventType.Failure, - error: error + error: this.getFileUploadErrorMessage(error) }) ), filter((uploadData): uploadData is FileUploadEvent => uploadData !== undefined) @@ -101,6 +101,14 @@ export class FileUploadService { this.beforeUnloadSubscription = undefined; } } + + private getFileUploadErrorMessage(errorResponse: unknown): string { + return errorResponse instanceof HttpErrorResponse + ? errorResponse.error.error + : errorResponse instanceof Error + ? errorResponse.message + : 'File upload failed due to unknown error'; + } } export declare type FileUploadEvent = FileUploadProgressEvent | FileUploadSuccessEvent | FileUploadFailureEvent;