UNPKG

@saboosanket/code-generator

Version:

This npm package is a versatile setup tool tailored for Node.js projects, enabling users to generate customized project structures and functionalities. It supports integration with Google Cloud Platform (GCP), RabbitMQ, Redis, a Prisma query generator, an

59 lines (49 loc) 1.54 kB
import { createModuleAndFile } from '../utils/write_files.js' const customErrors = ` // Base function for creating custom exceptions function createException(status_code = 500, message = '', data = {}) { const error = new Error(message) error.name = 'BaseException' error.status_code = status_code error.data = data || {} return error } function NotFoundError(message, status_code = 404, data = {}) { const error = createException(status_code, message, data) error.name = 'NotFoundError' return error } function UnexpectedError(message, status_code = 500, data = {}) { const error = createException(status_code, message, data) error.name = 'UnexpectedError' return error } function JoiValidationError(message, status_code = 400, data = {}) { const error = createException(status_code, message, data) error.name = 'JoiValidationError' return error } function HTTPError(message, status_code = 500, data = {}) { const error = createException(status_code, message, data) error.name = 'HTTPError' console.log(error) return error } const ERROR_TYPE_SET = new Set(['HTTPError', 'UnexpectedError','NotFoundError', 'JoiValidationError']) export { NotFoundError, UnexpectedError, HTTPError, JoiValidationError, ERROR_TYPE_SET } ` async function createHttpFile() { const folderName = 'services' const fileName = '/custom_error.js' await createModuleAndFile(folderName, fileName, customErrors) } export { createHttpFile, customErrors }