import 'reflect-metadata'; import { Logger } from '@nestjs/common'; import { NestFactory } from '@nestjs/core'; import { AppModule } from './app.module'; import { loadEnv } from './infra/config/load-env'; async function bootstrap() { loadEnv(); const app = await NestFactory.create(AppModule); const frontendUrl = process.env.FRONTEND_URL || 'http://localhost:3000'; const allowedOrigins = new Set( frontendUrl .split(',') .map((origin) => origin.trim()) .filter(Boolean), ); allowedOrigins.add('http://localhost:3000'); allowedOrigins.add('http://localhost:5173'); const port = Number(process.env.PORT || process.env.BACKEND_PORT || 3001); app.enableCors({ origin(origin, callback) { if (!origin || allowedOrigins.has(origin)) { callback(null, true); return; } callback(new Error(`Origem CORS nao permitida: ${origin}`)); }, credentials: true, }); await app.listen(port); Logger.log(`Backend ouvindo na porta ${port}`, 'Bootstrap'); } bootstrap();