UNPKG

@dev-abhi/errorify

Version:

A utility package for simplified error handling and management in Node.js applications.

54 lines (53 loc) 2.61 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.ServiceTimeoutError = exports.ExternalServiceError = exports.InvalidInputError = exports.OperationFailedError = exports.InvalidStateError = exports.FeatureNotEnabledError = exports.RateLimitExceededError = exports.UnknownError = void 0; const errorCodes_1 = require("../../utils/errorCodes"); const CustomError_1 = require("../CustomError"); class UnknownError extends CustomError_1.CustomError { constructor(message = "Unknown Error", details = {}) { super(message, 500, errorCodes_1.ErrorCodes.UNKNOWN_ERROR, details); } } exports.UnknownError = UnknownError; class RateLimitExceededError extends CustomError_1.CustomError { constructor(message = "You're being rate-limited. Please try again later.", details = {}) { super(message, 429, errorCodes_1.ErrorCodes.RATE_LIMIT_EXCEEDED_ERROR, details); } } exports.RateLimitExceededError = RateLimitExceededError; class FeatureNotEnabledError extends CustomError_1.CustomError { constructor(message = "Feature Not Enabled", details = {}) { super(message, 403, errorCodes_1.ErrorCodes.FEATURE_NOT_ENABLED_ERROR, details); } } exports.FeatureNotEnabledError = FeatureNotEnabledError; class InvalidStateError extends CustomError_1.CustomError { constructor(message = "Invalid Application State", details = {}) { super(message, 400, errorCodes_1.ErrorCodes.INVALID_STATE_ERROR, details); } } exports.InvalidStateError = InvalidStateError; class OperationFailedError extends CustomError_1.CustomError { constructor(message = "Operation Failed", details = {}) { super(message, 500, errorCodes_1.ErrorCodes.OPERATION_FAILED_ERROR, details); } } exports.OperationFailedError = OperationFailedError; class InvalidInputError extends CustomError_1.CustomError { constructor(message = "Invalid Input", details = {}) { super(message, 400, errorCodes_1.ErrorCodes.INVALID_INPUT_ERROR, details); } } exports.InvalidInputError = InvalidInputError; class ExternalServiceError extends CustomError_1.CustomError { constructor(message = "External Service Error", details = {}) { super(message, 502, errorCodes_1.ErrorCodes.EXTERNAL_SERVICE_ERROR, details); } } exports.ExternalServiceError = ExternalServiceError; class ServiceTimeoutError extends CustomError_1.CustomError { constructor(message = "Service Timeout Error", details = {}) { super(message, 504, errorCodes_1.ErrorCodes.SERVICE_TIMEOUT_ERROR, details); } } exports.ServiceTimeoutError = ServiceTimeoutError;