@ingeze/api-error
Version:
A TypeScript library for handling HTTP errors in Express, NestJS, and Fastify APIs.
114 lines (113 loc) • 3.46 kB
JavaScript
import { ErrorHandler } from "./error-handler.js";
class BadRequestError extends ErrorHandler {
constructor(messageOrDetails, type = "BAD_REQUEST", details) {
if (typeof messageOrDetails === "string") {
super(messageOrDetails, 400, type, details);
} else {
super("Bad request", 400, type, messageOrDetails);
}
}
}
class InvalidUserDataError extends BadRequestError {
/**
* Creates a new InvalidUserDataError instance.
*
* @param {Record<string, unknown>=} details - Optional additional error details.
*/
constructor(details) {
super("Missing required user information in the request", "INVALID_USER_DATA", details);
}
}
class InvalidEmailError extends BadRequestError {
/**
* Creates a new InvalidEmailError instance.
*
* @param {Record<string, unknown>=} details - Optional additional error details.
*/
constructor(details) {
super("Invalid email format or missing email field", "INVALID_EMAIL", details);
}
}
class InvalidProductDataError extends BadRequestError {
/**
* Creates a new InvalidProductDataError instance.
*
* @param {Record<string, unknown>=} details - Optional additional error details.
*/
constructor(details) {
super("Invalid or missing product details", "INVALID_PRODUCT_DATA", details);
}
}
class InvalidPostData extends BadRequestError {
/**
* Creates a new InvalidPostData instance.
*
* @param {Record<string, unknown>=} details - Optional additional error details.
*/
constructor(details) {
super("Invalid or missing post data", "INVALID_POST_DATA", details);
}
}
class InvalidCommentDataError extends BadRequestError {
/**
* Creates a new InvalidCommentDataError instance.
*
* @param {Record<string, unknown>=} details - Optional additional error details.
*/
constructor(details) {
super("Invalid or missing comment data", "INVALID_COMMENT_DATA", details);
}
}
class InvalidCategoryDataError extends BadRequestError {
/**
* Creates a new InvalidCategoryDataError instance.
*
* @param {Record<string, unknown>=} details - Optional additional error details.
*/
constructor(details) {
super("Invalid or missing category information", "INVALID_CATEGORY_DATA", details);
}
}
class InvalidFileError extends BadRequestError {
/**
* Creates a new InvalidFileError instance.
*
* @param {Record<string, unknown>=} details - Optional additional error details.
*/
constructor(details) {
super("Invalid or missing file in the request", "INVALID_FILE", details);
}
}
class InvalidImageError extends BadRequestError {
/**
* Creates a new InvalidImageError instance.
*
* @param {Record<string, unknown>=} details - Optional additional error details.
*/
constructor(details) {
super("Invalid or missing image data", "INVALID_IMAGE", details);
}
}
class InvalidAddressError extends BadRequestError {
/**
* Creates a new InvalidAddressError instance.
*
* @param {Record<string, unknown>=} details - Optional additional error details.
*/
constructor(details) {
super("Invalid or missing address information", "INVALID_ADDRESS", details);
}
}
export {
BadRequestError,
InvalidAddressError,
InvalidCategoryDataError,
InvalidCommentDataError,
InvalidEmailError,
InvalidFileError,
InvalidImageError,
InvalidPostData,
InvalidProductDataError,
InvalidUserDataError
};
//# sourceMappingURL=bad-request-error.js.map