Files
pdi_api/src/app.module.ts
T
2024-09-30 18:14:57 -06:00

79 lines
3.0 KiB
TypeScript

import { Module } from '@nestjs/common';
import { AppController } from './app.controller';
import { AppService } from './app.service';
import { AuthModule } from './auth/auth.module';
import { UsersModule } from './users/users.module';
import { TypeOrmModule } from '@nestjs/typeorm';
import { config } from 'dotenv';
import { ConfigModule } from '@nestjs/config';
import { Carrera } from './entities/carreras.entity';
import { EjeEstrategico } from './entities/ejesEstrategicos.entity';
import { LineaProgramatica } from './entities/LineaProgramatica.entity';
import { TipoUsuarioEntity } from './entities/tipoUsuario.entity';
import { UsuarioEntity } from './entities/usuario.entity';
import { UsuarioController } from './usuario/usuario.controller';
import { JwtModule } from '@nestjs/jwt';
import { EjesEstrategicosService } from './ejesEstrategicos/ejesEstrategicos.service';
import { EjesEstrategicosController } from './ejesEstrategicos/ejesEstrategicos.controller';
import * as process from 'node:process';
import { EjesEstrategicosModule } from './ejesEstrategicos/ejesEstrategicos.module';
import { LineasProgramaticasController } from './lineasProgramaticas/lineasProgramaticas.controller';
import { LineasProgramaticasService } from './lineasProgramaticas/lineasProgramaticas.service';
import { LineasProgramaticasModule } from './lineasProgramaticas/lineasProgramaticas.module';
import { CarreraModule } from './carrera/carreras.module';
import { ComentariosModule } from './comentarios/comentarios.module';
import { ComentarioLineasProgramaticas } from './entities/comentarioLineasProgramaticas.entity';
import { ReportesController } from './reportes/reportes.controller';
import { ReportesModule } from './reportes/reportes.module';
import { Direccion } from './entities/direccion.entity';
import { DireccionModule } from './direccion/direccion.module';
config({ path: '.env' });
@Module({
imports: [
AuthModule,
UsersModule,
EjesEstrategicosModule,
ComentariosModule,
LineasProgramaticasModule,
CarreraModule,
ReportesModule,
DireccionModule,
ConfigModule.forRoot({
isGlobal: true,
}),
TypeOrmModule.forRoot({
type: 'mysql',
host: process.env.DB_HOST,
port: parseInt(process.env.DB_PORT),
username: process.env.DB_USERNAME,
password: process.env.DB_PASSWORD,
database: process.env.DB_NAME,
charset: 'utf8mb4',
synchronize: true,
entities: [
Carrera,
ComentarioLineasProgramaticas,
EjeEstrategico,
LineaProgramatica,
TipoUsuarioEntity,
UsuarioEntity,
Direccion,
],
}),
JwtModule.register({
global: true,
secret: process.env.JWT_SECRET,
signOptions: { expiresIn: process.env.JWT_EXPIRES },
}),
],
controllers: [
AppController,
UsuarioController,
EjesEstrategicosController,
LineasProgramaticasController,
ReportesController,
],
providers: [AppService, EjesEstrategicosService, LineasProgramaticasService],
})
export class AppModule {}