Press n or j to go to the next uncovered block, b, p or k for the previous block.
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 | import { Elysia } from 'elysia'; import { swagger } from '@elysiajs/swagger'; import { logger } from '@rasla/logify'; import { registerUserRoutes } from './routes/userRoutes'; const app = new Elysia({ prefix: '/api/user' }); app .use( swagger({ documentation: { info: { title: 'proyectoNIST user-service API', version: '1.0.0', }, }, }) ) .use(logger({ includeIp: true })) // Registrar rutas después de la verificación del gateway .use(registerUserRoutes) // Gestión de errores y lanzamiento del servidor .onError(({ code, set }) => { if (code === 'VALIDATION') { set.status = 400; // Definimos objetos vacíos con tipos específicos const errorMessages: Record<string, string> = {}; // Objeto que tendrá claves de tipo string y valores de tipo string const invalidValues: Record<string, any> = {}; // Objeto que tendrá claves de tipo string y valores de cualquier tipo /* FRIENDLY REMINDER de los errores que manejamos * * El tipo Record<K, V> es un alias en TypeScript para un objeto donde: * * - K es el tipo de las claves (en este caso, string) * - V es el tipo de los valores (string para errorMessages, any para invalidValues) * * Después se llenarán con los mensajes de error y valores inválidos respectivamente **/ return { success: false, message: 'Error de validación', details: errorMessages, invalidValues, }; } return { success: false, message: 'Error interno del servidor', }; }) .listen(Bun.env.SERVICE_PORT ?? 4001); console.log( `[USER_SVC] ejecutándose en http://${app.server?.hostname}:${app.server?.port}` ); |