Skip to main content
Module

x/feathers/_errors/mod.ts

The API and real-time application framework
Go to Latest
File
// DO NOT MODIFY - generated from packages/errors/src/index.ts
export interface FeathersErrorJSON { name: string; message: string; code: number; className: string; data?: any; errors?: any;}
export type DynamicError = Error & { [key: string]: any };export type ErrorMessage = string | DynamicError | { [key: string]: any } | any[];
interface ErrorProperties extends Omit<FeathersErrorJSON, 'message'> { type: string;}
export class FeathersError extends Error { readonly type: string; readonly code: number; readonly className: string; readonly data: any; readonly errors: any;
constructor (err: ErrorMessage, name: string, code: number, className: string, _data: any) { let msg = typeof err === 'string' ? err : 'Error'; const properties: ErrorProperties = { name, code, className, type: 'FeathersError' };
if (Array.isArray(_data)) { properties.data = _data; } else if (typeof err === 'object' || _data !== undefined) { const { message, errors, ...rest } = typeof err === 'object' ? err : _data;
msg = message || msg; properties.errors = errors; properties.data = rest; }
super(msg); Object.assign(this, properties); }
toJSON () { const result: FeathersErrorJSON = { name: this.name, message: this.message, code: this.code, className: this.className };
if (this.data !== undefined) { result.data = this.data; }
if (this.errors !== undefined) { result.errors = this.errors; }
return result; }}
export class BadRequest extends FeathersError { constructor (message?: ErrorMessage, data?: any) { super(message, 'BadRequest', 400, 'bad-request', data); }}
// 401 - Not Authenticatedexport class NotAuthenticated extends FeathersError{ constructor (message?: ErrorMessage, data?: any) { super(message, 'NotAuthenticated', 401, 'not-authenticated', data); }}
// 402 - Payment Errorexport class PaymentError extends FeathersError { constructor (message?: ErrorMessage, data?: any) { super(message, 'PaymentError', 402, 'payment-error', data); }}
// 403 - Forbiddenexport class Forbidden extends FeathersError { constructor (message?: ErrorMessage, data?: any) { super(message, 'Forbidden', 403, 'forbidden', data); }}
// 404 - Not Foundexport class NotFound extends FeathersError { constructor (message?: ErrorMessage, data?: any) { super(message, 'NotFound', 404, 'not-found', data); }}
// 405 - Method Not Allowedexport class MethodNotAllowed extends FeathersError { constructor (message?: ErrorMessage, data?: any) { super(message, 'MethodNotAllowed', 405, 'method-not-allowed', data); }}
// 406 - Not Acceptableexport class NotAcceptable extends FeathersError { constructor (message?: ErrorMessage, data?: any) { super(message, 'NotAcceptable', 406, 'not-acceptable', data); }}
// 408 - Timeoutexport class Timeout extends FeathersError { constructor (message?: ErrorMessage, data?: any) { super(message, 'Timeout', 408, 'timeout', data); }}
// 409 - Conflictexport class Conflict extends FeathersError { constructor (message?: ErrorMessage, data?: any) { super(message, 'Conflict', 409, 'conflict', data); }}
// 410 - Goneexport class Gone extends FeathersError { constructor (message?: ErrorMessage, data?: any) { super(message, 'Gone', 410, 'gone', data); }}
// 411 - Length Requiredexport class LengthRequired extends FeathersError { constructor (message?: ErrorMessage, data?: any) { super(message, 'LengthRequired', 411, 'length-required', data); }}
// 422 Unprocessableexport class Unprocessable extends FeathersError { constructor (message?: ErrorMessage, data?: any) { super(message, 'Unprocessable', 422, 'unprocessable', data); }}
// 429 Too Many Requestsexport class TooManyRequests extends FeathersError { constructor (message?: ErrorMessage, data?: any) { super(message, 'TooManyRequests', 429, 'too-many-requests', data); }}
// 500 - General Errorexport class GeneralError extends FeathersError { constructor (message?: ErrorMessage, data?: any) { super(message, 'GeneralError', 500, 'general-error', data); }}
// 501 - Not Implementedexport class NotImplemented extends FeathersError { constructor (message?: ErrorMessage, data?: any) { super(message, 'NotImplemented', 501, 'not-implemented', data); }}
// 502 - Bad Gatewayexport class BadGateway extends FeathersError { constructor (message?: ErrorMessage, data?: any) { super(message, 'BadGateway', 502, 'bad-gateway', data); }}
// 503 - Unavailableexport class Unavailable extends FeathersError { constructor (message?: ErrorMessage, data?: any) { super(message, 'Unavailable', 503, 'unavailable', data); }}
export interface Errors { FeathersError: FeathersError; BadRequest: BadRequest; NotAuthenticated: NotAuthenticated; PaymentError: PaymentError; Forbidden: Forbidden; NotFound: NotFound; MethodNotAllowed: MethodNotAllowed; NotAcceptable: NotAcceptable; Timeout: Timeout; Conflict: Conflict; LengthRequired: LengthRequired; Unprocessable: Unprocessable; TooManyRequests: TooManyRequests; GeneralError: GeneralError; NotImplemented: NotImplemented; BadGateway: BadGateway; Unavailable: Unavailable; 400: BadRequest; 401: NotAuthenticated; 402: PaymentError; 403: Forbidden; 404: NotFound; 405: MethodNotAllowed; 406: NotAcceptable; 408: Timeout; 409: Conflict; 411: LengthRequired; 422: Unprocessable; 429: TooManyRequests; 500: GeneralError; 501: NotImplemented; 502: BadGateway; 503: Unavailable;}
export const errors = { FeathersError, BadRequest, NotAuthenticated, PaymentError, Forbidden, NotFound, MethodNotAllowed, NotAcceptable, Timeout, Conflict, LengthRequired, Unprocessable, TooManyRequests, GeneralError, NotImplemented, BadGateway, Unavailable, 400: BadRequest, 401: NotAuthenticated, 402: PaymentError, 403: Forbidden, 404: NotFound, 405: MethodNotAllowed, 406: NotAcceptable, 408: Timeout, 409: Conflict, 410: Gone, 411: LengthRequired, 422: Unprocessable, 429: TooManyRequests, 500: GeneralError, 501: NotImplemented, 502: BadGateway, 503: Unavailable}
export function convert (error: any) { if (!error) { return error; }
const FeathersError = (errors as any)[error.name]; const result = FeathersError ? new FeathersError(error.message, error.data) : new Error(error.message || error);
if (typeof error === 'object') { Object.assign(result, error); }
return result;}