import { Injectable } from '@angular/core'; import { throwError } from 'rxjs'; import { Observable } from 'rxjs/internal/Observable'; @Injectable({ providedIn: 'root', }) export class ErrorLoggerService { public static log(serviceName = 'error-logger', message: string) { // eslint-disable-next-line no-console console.log(`${serviceName}Service: ${message}`); } /** * Handle Http operation that failed. * Let the app continue. * @param operation - name of the operation that failed * @param result - optional value to return as the observable result */ // eslint-disable-next-line @typescript-eslint/no-unused-vars, class-methods-use-this public handleError(serviceName = 'error-logger', operation = 'operation', result?: T) { return (error: any): Observable => { ErrorLoggerService.log(serviceName, `${operation} failed: ${error}`); return throwError(error); }; } }