A social knowledge tool for researchers built on ATProto
1import { Err } from './Result'; 2import { UseCaseError } from './UseCaseError'; 3 4export namespace AppError { 5 export class UnexpectedError extends UseCaseError { 6 message: string; 7 public constructor(err: any) { 8 super(`An unexpected error occurred.`); 9 console.log(`[AppError]: An unexpected error occurred`); 10 console.error(err); 11 this.message = err.toString ? err.toString() : JSON.stringify(err); 12 } 13 14 public static create(err: any): UnexpectedError { 15 return new UnexpectedError(err); 16 } 17 } 18 19 export class NotFoundError extends Err<any, UseCaseError> { 20 public constructor(message: string) { 21 super(Error(message)); 22 console.log(`[AppError]: ${message}`); 23 } 24 25 public static create(message: string): NotFoundError { 26 return new NotFoundError(message); 27 } 28 } 29}