UNPKG

@devx-commerce/plugin-product-reviews

Version:
102 lines 5.88 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.ErrorCode = exports.HttpStatus = void 0; exports.createSuccessResponse = createSuccessResponse; exports.createErrorResponse = createErrorResponse; exports.sendApiResponse = sendApiResponse; exports.createValidationErrorResponse = createValidationErrorResponse; exports.createAuthenticationErrorResponse = createAuthenticationErrorResponse; exports.createNotFoundErrorResponse = createNotFoundErrorResponse; exports.createInternalErrorResponse = createInternalErrorResponse; /** * Standard HTTP status codes */ var HttpStatus; (function (HttpStatus) { HttpStatus[HttpStatus["OK"] = 200] = "OK"; HttpStatus[HttpStatus["CREATED"] = 201] = "CREATED"; HttpStatus[HttpStatus["BAD_REQUEST"] = 400] = "BAD_REQUEST"; HttpStatus[HttpStatus["UNAUTHORIZED"] = 401] = "UNAUTHORIZED"; HttpStatus[HttpStatus["FORBIDDEN"] = 403] = "FORBIDDEN"; HttpStatus[HttpStatus["NOT_FOUND"] = 404] = "NOT_FOUND"; HttpStatus[HttpStatus["INTERNAL_SERVER_ERROR"] = 500] = "INTERNAL_SERVER_ERROR"; })(HttpStatus || (exports.HttpStatus = HttpStatus = {})); /** * Standard error codes */ var ErrorCode; (function (ErrorCode) { ErrorCode["VALIDATION_ERROR"] = "VALIDATION_ERROR"; ErrorCode["AUTHENTICATION_ERROR"] = "AUTHENTICATION_ERROR"; ErrorCode["AUTHORIZATION_ERROR"] = "AUTHORIZATION_ERROR"; ErrorCode["NOT_FOUND_ERROR"] = "NOT_FOUND_ERROR"; ErrorCode["INTERNAL_ERROR"] = "INTERNAL_ERROR"; })(ErrorCode || (exports.ErrorCode = ErrorCode = {})); /** * Creates a success response with standard format * @param data Response data * @param message Success message (defaults to "OK") * @param status HTTP status code (defaults to 200) * @returns Standardized success response */ function createSuccessResponse(data, message = "OK", status = HttpStatus.OK) { return { data, message, status, success: true, }; } /** * Creates an error response with standard format * @param message Error message * @param status HTTP status code * @param code Error code * @param details Additional error details * @returns Standardized error response */ function createErrorResponse(message, status, code, details) { return { data: null, message, status, success: false, error: { code, details, }, }; } /** * Utility function to send a standardized API response * @param res Response object * @param response Standardized API response */ function sendApiResponse(res, response) { res.status(response.status).json(response); } /** * Helper function to create validation error response */ function createValidationErrorResponse(message, details) { return createErrorResponse(message, HttpStatus.BAD_REQUEST, ErrorCode.VALIDATION_ERROR, details); } /** * Helper function to create authentication error response */ function createAuthenticationErrorResponse(message = "Unauthorized") { return createErrorResponse(message, HttpStatus.UNAUTHORIZED, ErrorCode.AUTHENTICATION_ERROR); } /** * Helper function to create not found error response */ function createNotFoundErrorResponse(message = "Resource not found") { return createErrorResponse(message, HttpStatus.NOT_FOUND, ErrorCode.NOT_FOUND_ERROR); } /** * Helper function to create internal server error response */ function createInternalErrorResponse(message = "Internal server error") { return createErrorResponse(message, HttpStatus.INTERNAL_SERVER_ERROR, ErrorCode.INTERNAL_ERROR); } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBpLXJlc3BvbnNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2xpYi9hcGktcmVzcG9uc2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBK0NBLHNEQVdDO0FBVUQsa0RBZ0JDO0FBT0QsMENBS0M7QUFLRCxzRUFVQztBQUtELDhFQVFDO0FBS0Qsa0VBUUM7QUFLRCxrRUFRQztBQXRJRDs7R0FFRztBQUNILElBQVksVUFRWDtBQVJELFdBQVksVUFBVTtJQUNwQix5Q0FBUSxDQUFBO0lBQ1IsbURBQWEsQ0FBQTtJQUNiLDJEQUFpQixDQUFBO0lBQ2pCLDZEQUFrQixDQUFBO0lBQ2xCLHVEQUFlLENBQUE7SUFDZix1REFBZSxDQUFBO0lBQ2YsK0VBQTJCLENBQUE7QUFDN0IsQ0FBQyxFQVJXLFVBQVUsMEJBQVYsVUFBVSxRQVFyQjtBQUVEOztHQUVHO0FBQ0gsSUFBWSxTQU1YO0FBTkQsV0FBWSxTQUFTO0lBQ25CLGtEQUFxQyxDQUFBO0lBQ3JDLDBEQUE2QyxDQUFBO0lBQzdDLHdEQUEyQyxDQUFBO0lBQzNDLGdEQUFtQyxDQUFBO0lBQ25DLDhDQUFpQyxDQUFBO0FBQ25DLENBQUMsRUFOVyxTQUFTLHlCQUFULFNBQVMsUUFNcEI7QUFFRDs7Ozs7O0dBTUc7QUFDSCxTQUFnQixxQkFBcUIsQ0FDbkMsSUFBTyxFQUNQLE9BQU8sR0FBRyxJQUFJLEVBQ2QsTUFBTSxHQUFHLFVBQVUsQ0FBQyxFQUFFO0lBRXRCLE9BQU87UUFDTCxJQUFJO1FBQ0osT0FBTztRQUNQLE1BQU07UUFDTixPQUFPLEVBQUUsSUFBSTtLQUNkLENBQUM7QUFDSixDQUFDO0FBRUQ7Ozs7Ozs7R0FPRztBQUNILFNBQWdCLG1CQUFtQixDQUNqQyxPQUFlLEVBQ2YsTUFBa0IsRUFDbEIsSUFBZSxFQUNmLE9BQWlDO0lBRWpDLE9BQU87UUFDTCxJQUFJLEVBQUUsSUFBSTtRQUNWLE9BQU87UUFDUCxNQUFNO1FBQ04sT0FBTyxFQUFFLEtBQUs7UUFDZCxLQUFLLEVBQUU7WUFDTCxJQUFJO1lBQ0osT0FBTztTQUNSO0tBQ0YsQ0FBQztBQUNKLENBQUM7QUFFRDs7OztHQUlHO0FBQ0gsU0FBZ0IsZUFBZSxDQUM3QixHQUFtQixFQUNuQixRQUF3QjtJQUV4QixHQUFHLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7QUFDN0MsQ0FBQztBQUVEOztHQUVHO0FBQ0gsU0FBZ0IsNkJBQTZCLENBQzNDLE9BQWUsRUFDZixPQUFpQztJQUVqQyxPQUFPLG1CQUFtQixDQUN4QixPQUFPLEVBQ1AsVUFBVSxDQUFDLFdBQVcsRUFDdEIsU0FBUyxDQUFDLGdCQUFnQixFQUMxQixPQUFPLENBQ1IsQ0FBQztBQUNKLENBQUM7QUFFRDs7R0FFRztBQUNILFNBQWdCLGlDQUFpQyxDQUMvQyxPQUFPLEdBQUcsY0FBYztJQUV4QixPQUFPLG1CQUFtQixDQUN4QixPQUFPLEVBQ1AsVUFBVSxDQUFDLFlBQVksRUFDdkIsU0FBUyxDQUFDLG9CQUFvQixDQUMvQixDQUFDO0FBQ0osQ0FBQztBQUVEOztHQUVHO0FBQ0gsU0FBZ0IsMkJBQTJCLENBQ3pDLE9BQU8sR0FBRyxvQkFBb0I7SUFFOUIsT0FBTyxtQkFBbUIsQ0FDeEIsT0FBTyxFQUNQLFVBQVUsQ0FBQyxTQUFTLEVBQ3BCLFNBQVMsQ0FBQyxlQUFlLENBQzFCLENBQUM7QUFDSixDQUFDO0FBRUQ7O0dBRUc7QUFDSCxTQUFnQiwyQkFBMkIsQ0FDekMsT0FBTyxHQUFHLHVCQUF1QjtJQUVqQyxPQUFPLG1CQUFtQixDQUN4QixPQUFPLEVBQ1AsVUFBVSxDQUFDLHFCQUFxQixFQUNoQyxTQUFTLENBQUMsY0FBYyxDQUN6QixDQUFDO0FBQ0osQ0FBQyJ9