mirror of
https://github.com/sergeyyarkov/asu_tools_service.git
synced 2026-10-11 10:29:22 +03:00
38 lines
785 B
JavaScript
38 lines
785 B
JavaScript
export class HttpError extends Error {
|
|
/**
|
|
* @param {{ name?: string, message: string, statusCode: number }} msg
|
|
*/
|
|
constructor({ name, message, statusCode = 500 }) {
|
|
super(message);
|
|
this.name = name || this.constructor.name;
|
|
this.statusCode = statusCode;
|
|
Error.captureStackTrace(this);
|
|
}
|
|
}
|
|
|
|
export class BadRequestError extends HttpError {
|
|
/**
|
|
* @param {string} [message]
|
|
*/
|
|
constructor(message) {
|
|
super({
|
|
name: "E_BAD_REQUEST",
|
|
message: message || "Bad Request",
|
|
statusCode: 400
|
|
});
|
|
}
|
|
}
|
|
|
|
export class NotFoundError extends HttpError {
|
|
/**
|
|
* @param {string} [message]
|
|
*/
|
|
constructor(message) {
|
|
super({
|
|
name: "E_NOT_FOUND",
|
|
message: message || "Not found",
|
|
statusCode: 404
|
|
});
|
|
}
|
|
}
|