UNPKG

api-res-formatter

Version:

A standardized API response formatter built to ensure consistency and clarity in application responses. This formatter wraps success and error responses in a predictable structure, making it easier for clients and developers to handle API interactions eff

51 lines (47 loc) 1.68 kB
/** * Formats a success response. * @param {object} data - The data to be returned in the success response. * @param {string} [message='Request was successful'] - Optional success message. * @returns {object} - The formatted success response. */ function success(data = {}, message = 'Request was successful') { return { status: 'success', message, data }; } /** * Formats an error response. * @param {string} message - Error message to be returned. * @param {number} [statusCode=400] - HTTP status code for the error. * @param {object|null} [errors=null] - Optional field to return validation errors or additional info. * @returns {object} - The formatted error response. */ function error(message = 'An error occurred', statusCode = 400, errors = null) { return { status: 'error', message, code: statusCode, errors: errors || {} }; } /** * Formats a general API response. * @param {boolean} isSuccess - Whether the response is a success or an error. * @param {object} data - Data to return for success. * @param {string} message - Message to include in the response. * @param {number} [statusCode=200] - HTTP status code. * @param {object|null} [errors=null] - Optional field for error details. * @returns {object} - The formatted API response. */ function formatResponse(isSuccess, data, message, statusCode = 200, errors = null) { return isSuccess ? success(data, message) : error(message, statusCode, errors); } module.exports = { success, error, formatResponse };