axiodb
Version:
A blazing-fast, lightweight, and scalable nodejs package based DBMS for modern application. Supports schemas, encryption, and advanced query capabilities.
88 lines • 3.42 kB
JavaScript
;
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
return new (P || (P = Promise))(function (resolve, reject) {
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
step((generator = generator.apply(thisArg, _arguments || [])).next());
});
};
Object.defineProperty(exports, "__esModule", { value: true });
// Purpose: Helper class for response.
const outers_1 = require("outers");
/* eslint-disable @typescript-eslint/no-explicit-any */
/**
* @class ResponseHelper
* @description A helper class to standardize API responses.
*
* @property {number} SucessCode - The HTTP status code for a successful response.
* @property {number} ErrorCode - The HTTP status code for an error response.
*
* @constructor
* Initializes the ResponseHelper with default status codes.
*
* @method Success
* @async
* @param {any} [data] - Optional data to include in the success response.
* @returns {Promise<SuccessInterface>} A promise that resolves to a success response object.
*
* @method Error
* @async
* @param {string} [message] - Optional error message to include in the error response.
* @returns {Promise<ErrorInterface>} A promise that resolves to an error response object.
*/
/**
* A helper class for generating standardized success and error response objects.
*
* @remarks
* This class provides methods to generate success and error responses with predefined status codes.
* It uses the `StatusCodes` enumeration to set the HTTP status codes for success and error responses.
*
* @example
* ```typescript
* const responseHelper = new ResponseHelper();
* const successResponse = await responseHelper.Success({ key: 'value' });
* const errorResponse = await responseHelper.Error('An error occurred');
* ```
*
* @public
*/
class ResponseHelper {
constructor() {
this.SucessCode = outers_1.StatusCodes.OK;
this.ErrorCode = outers_1.StatusCodes.INTERNAL_SERVER_ERROR;
}
/**
* Generates a success response object.
*
* @param data - Optional data to include in the success response.
* @returns A promise that resolves to a success response object implementing the SuccessInterface.
*/
Success(data) {
return __awaiter(this, void 0, void 0, function* () {
return {
statusCode: this.SucessCode,
status: true,
data: data,
};
});
}
/**
* Generates an error response object.
*
* @param {string} [message] - Optional error message to include in the response.
* @returns {Promise<ErrorInterface>} A promise that resolves to an error response object.
*/
Error(message) {
return __awaiter(this, void 0, void 0, function* () {
return {
statusCode: this.ErrorCode,
status: false,
message: message,
};
});
}
}
exports.default = ResponseHelper;
//# sourceMappingURL=response.helper.js.map