UNPKG

@tomisakae/syosetu-api

Version:

Enterprise-grade Fastify TypeScript API for Syosetu.com data extraction using official API and web scraping. Run instantly with 'npx @tomisakae/syosetu-api'

36 lines 1.38 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.sendInternalError = exports.sendNotFound = exports.sendValidationError = exports.sendError = exports.sendSuccess = void 0; const sendSuccess = (reply, data, message, statusCode = 200) => { const response = { success: true, data, ...(message && { message }), timestamp: new Date().toISOString(), }; void reply.status(statusCode).send(response); }; exports.sendSuccess = sendSuccess; const sendError = (reply, error, statusCode = 500, details) => { const response = { success: false, error, timestamp: new Date().toISOString(), ...(details && { details }), }; void reply.status(statusCode).send(response); }; exports.sendError = sendError; const sendValidationError = (reply, errors) => { (0, exports.sendError)(reply, 'Validation failed', 400, { validationErrors: errors }); }; exports.sendValidationError = sendValidationError; const sendNotFound = (reply, resource = 'Resource') => { (0, exports.sendError)(reply, `${resource} not found`, 404); }; exports.sendNotFound = sendNotFound; const sendInternalError = (reply, message = 'Internal server error') => { (0, exports.sendError)(reply, message, 500); }; exports.sendInternalError = sendInternalError; //# sourceMappingURL=response.js.map