@ingeze/api-error
Version:
A TypeScript library for handling HTTP errors in Express, NestJS, and Fastify APIs.
69 lines (68 loc) • 1.96 kB
JavaScript
import { ErrorHandler } from "./error-handler.js";
class ForbiddenError extends ErrorHandler {
constructor(messageOrDetails, type = "FORBIDDEN", details) {
if (typeof messageOrDetails === "string") {
super(messageOrDetails, 403, type, details);
} else {
super("Forbidden", 403, type, messageOrDetails);
}
}
}
class ForbiddenUserError extends ForbiddenError {
constructor(details) {
super("User access forbidden", "FORBIDDEN_USER", details);
}
}
class ForbiddenEmailError extends ForbiddenError {
constructor(details) {
super("Email access forbidden", "FORBIDDEN_EMAIL", details);
}
}
class ForbiddenProductError extends ForbiddenError {
constructor(details) {
super("Product access forbidden", "FORBIDDEN_PRODUCT", details);
}
}
class ForbiddenPostError extends ForbiddenError {
constructor(details) {
super("Post access forbidden", "FORBIDDEN_POST", details);
}
}
class ForbiddenCommentError extends ForbiddenError {
constructor(details) {
super("Comment access forbidden", "FORBIDDEN_COMMENT", details);
}
}
class ForbiddenCategoryError extends ForbiddenError {
constructor(details) {
super("Category access forbidden", "FORBIDDEN_CATEGORY", details);
}
}
class ForbiddenFileError extends ForbiddenError {
constructor(details) {
super("File access forbidden", "FORBIDDEN_FILE", details);
}
}
class ForbiddenImageError extends ForbiddenError {
constructor(details) {
super("Image access forbidden", "FORBIDDEN_IMAGE", details);
}
}
class ForbiddenAddressError extends ForbiddenError {
constructor(details) {
super("Address access forbidden", "FORBIDDEN_ADDRESS", details);
}
}
export {
ForbiddenAddressError,
ForbiddenCategoryError,
ForbiddenCommentError,
ForbiddenEmailError,
ForbiddenError,
ForbiddenFileError,
ForbiddenImageError,
ForbiddenPostError,
ForbiddenProductError,
ForbiddenUserError
};
//# sourceMappingURL=forbidden-error.js.map