213 lines
10 KiB
TypeScript
213 lines
10 KiB
TypeScript
import { Module } from '@nestjs/common';
|
|
import { ConfigModule, ConfigService } from '@nestjs/config';
|
|
import { TypeOrmModule } from '@nestjs/typeorm';
|
|
import {
|
|
GoogleRecaptchaModule,
|
|
GoogleRecaptchaNetwork,
|
|
} from '@nestlab/google-recaptcha';
|
|
|
|
import { AuthModule } from './auth/auth.module';
|
|
import { BcryptModule } from './bcrypt/bcrypt.module';
|
|
import { CarreraProgramaModule } from './carrera-programa/carrera-programa.module';
|
|
import { CarritoModule } from './carrito/carrito.module';
|
|
import { CarritoMotivoModule } from './carrito-motivo/carrito-motivo.module';
|
|
import { CronModule } from './cron/cron.module';
|
|
import { EquipoModule } from './equipo/equipo.module';
|
|
import { EquipoMotivoModule } from './equipo-motivo/equipo-motivo.module';
|
|
import { EquipoProgramaModule } from './equipo-programa/equipo-programa.module';
|
|
import { EquipoTipoEntradaModule } from './equipo-tipo-entrada/equipo-tipo-entrada.module';
|
|
import { HoraExcepcionModule } from './hora-excepcion/hora-excepcion.module';
|
|
import { InstitucionModule } from './institucion/institucion.module';
|
|
import { InstitucionCarreraModule } from './institucion-carrera/institucion-carrera.module';
|
|
import { InstitucionDiaModule } from './institucion-dia/institucion-dia.module';
|
|
import { InstitucionInfraccionModule } from './institucion-infraccion/institucion-infraccion.module';
|
|
import { InstitucionProgramaModule } from './institucion-programa/institucion-programa.module';
|
|
import { InstitucionTipoCarritoModule } from './institucion-tipo-carrito/institucion-tipo-carrito.module';
|
|
import { InstitucionTipoEntradaModule } from './institucion-tipo-entrada/institucion-tipo-entrada.module';
|
|
import { InstitucionUsuarioModule } from './institucion-usuario/institucion-usuario.module';
|
|
import { MarcaModule } from './marca/marca.module';
|
|
import { ModeloModule } from './modelo/modelo.module';
|
|
import { ModuloModule } from './modulo/modulo.module';
|
|
import { MultaModule } from './multa/multa.module';
|
|
import { NodemailerModule } from './nodemailer/nodemailer.module';
|
|
import { OperadorModule } from './operador/operador.module';
|
|
import { PrestamoModule } from './prestamo/prestamo.module';
|
|
import { StatusModule } from './status/status.module';
|
|
import { TipoUsuarioModule } from './tipo-usuario/tipo-usuario.module';
|
|
import { UploadFileModule } from './upload-file/upload-file.module';
|
|
import { UsuarioModule } from './usuario/usuario.module';
|
|
import { ValidarUsuarioModule } from './validar-usuario/validar-usuario.module';
|
|
|
|
import { Carrera } from './institucion-carrera/entity/carrera.entity';
|
|
import { CarreraPrograma } from './carrera-programa/entity/carrera-programa.entity';
|
|
import { Carrito } from './carrito/entity/carrito.entity';
|
|
import { CarritoMotivo } from './carrito-motivo/entity/carrito-motivo.entity';
|
|
import { Dia } from './institucion-dia/entity/dia.entity';
|
|
import { Equipo } from './equipo/entity/equipo.entity';
|
|
import { EquipoMotivo } from './equipo-motivo/entity/equipo-motivo.entity';
|
|
import { EquipoPrograma } from './equipo-programa/entity/equipo-programa.entity';
|
|
import { EquipoTipoEntrada } from './equipo-tipo-entrada/entity/equipo-tipo-entrada.entity';
|
|
import { HoraExcepcion } from './hora-excepcion/entity/hora-excepcion.entity';
|
|
import { Infraccion } from './institucion-infraccion/entity/infraccion.entity';
|
|
import { Institucion } from './institucion/entity/institucion.entity';
|
|
import { InstitucionCarrera } from './institucion-carrera/entity/institucion-carrera.entity';
|
|
import { InstitucionDia } from './institucion-dia/entity/institucion-dia.entity';
|
|
import { InstitucionInfraccion } from './institucion-infraccion/entity/institucion-infraccion.entity';
|
|
import { InstitucionPrograma } from './institucion-programa/entity/institucion-programa.entity';
|
|
import { InstitucionTipoCarrito } from './institucion-tipo-carrito/entity/institucion-tipo-carrito.entity';
|
|
import { InstitucionTipoEntrada } from './institucion-tipo-entrada/entity/institucion-tipo-entrada.entity';
|
|
import { InstitucionUsuario } from './institucion-usuario/entity/institucion-usuario.entity';
|
|
import { Marca } from './marca/entity/marca.entity';
|
|
import { Modelo } from './modelo/entity/modelo.entity';
|
|
import { Modulo } from './modulo/entity/modulo.entity';
|
|
import { Multa } from './multa/entity/multa.entity';
|
|
import { Nivel } from './institucion-carrera/entity/nivel.entity';
|
|
import { Operador } from './operador/entity/operador.entity';
|
|
import { Prestamo } from './prestamo/entity/prestamo.entity';
|
|
import { Programa } from './institucion-programa/entity/programa.entity';
|
|
import { Status } from './status/entity/status.entity';
|
|
import { TipoCarrito } from './institucion-tipo-carrito/entity/tipo-carrito.entity';
|
|
import { TipoEntrada } from './institucion-tipo-entrada/entity/tipo-entrada.entity';
|
|
import { TipoUsuario } from './tipo-usuario/entity/tipo-usuario.entity';
|
|
import { Usuario } from './usuario/entity/usuario.entity';
|
|
|
|
import { FullInformacionCarritoView } from './carrito/entity/views/full-informacion-carrito.view';
|
|
import { InformacionCarritoView } from './carrito/entity/views/informacion-carrito.view';
|
|
import { FullInformacionEquipoView } from './equipo/entity/views/full-informacion-equipo.view';
|
|
import { InformacionEquipoPrestamoView } from './equipo/entity/views/informacion-equipo-prestamo.view';
|
|
import { InformacionEquipoView } from './equipo/entity/views/informacion-equipo.view';
|
|
import { FullInformacionEquipoProgramaView } from './equipo-programa/entity/views/full-informacion-equipo-programa.view';
|
|
import { InformacionEquipoProgramaView } from './equipo-programa/entity/views/informacion-equipo-programa.view';
|
|
import { FullInformacionEquipoTipoEntradaView } from './equipo-tipo-entrada/entity/views/full-informacion-equipo-tipo-entrada.view';
|
|
import { InformacionEquipoTipoEntradaView } from './equipo-tipo-entrada/entity/views/informacion-equipo-tipo-entrada.view';
|
|
import { InformacionInstitucionView } from './institucion/entity/views/informacion-institucion.view';
|
|
import { MinInformacionInstitucionView } from './institucion/entity/views/min-informacion-institucion.view';
|
|
import { InformacionModuloView } from './modulo/entity/views/informacion-modulo.view';
|
|
import { MinInformacionModuloView } from './modulo/entity/views/min-informacion-modulo.view';
|
|
import { FullInformacionMultaView } from './multa/entity/views/full-informacion-multa.view';
|
|
import { InformacionMultaView } from './multa/entity/views/informacion-multa.view';
|
|
import { InformacionOperadorView } from './operador/entity/views/informacion-operador.view';
|
|
import { FullInformacionPrestamoView } from './prestamo/entity/views/full-informacion-prestamo.view';
|
|
import { FullInformacionPrestamoEquipoView } from './prestamo/entity/views/full-informacion-prestamo-equipo.view';
|
|
import { FullInformacionPrestamoUsuarioView } from './prestamo/entity/views/full-informacion-prestamo-usuario.view';
|
|
import { InformacionPrestamoView } from './prestamo/entity/views/informacion-prestamo.view';
|
|
import { InformacionUsuarioView } from './usuario/entity/views/informacion-usuario.view';
|
|
|
|
@Module({
|
|
imports: [
|
|
ConfigModule.forRoot({ isGlobal: true }),
|
|
GoogleRecaptchaModule.forRootAsync({
|
|
inject: [ConfigService],
|
|
useFactory: (configService: ConfigService) => {
|
|
return {
|
|
secretKey: configService.get<string>('GOOGLE_RECAPTCHA_KEY'),
|
|
response: (req) => req.headers.recaptcha,
|
|
skipIf: configService.get<string>('STATE') !== 'produccion',
|
|
network: GoogleRecaptchaNetwork.Recaptcha,
|
|
};
|
|
},
|
|
}),
|
|
TypeOrmModule.forRootAsync({
|
|
inject: [ConfigService],
|
|
useFactory: (configService: ConfigService) => {
|
|
return {
|
|
type: 'mariadb',
|
|
host: configService.get<string>('DB_HOST'),
|
|
database: configService.get<string>('DB'),
|
|
username: configService.get<string>('DB_USER'),
|
|
password: configService.get<string>('DB_PASSWORD'),
|
|
port: parseInt(configService.get<string>('DB_PORT')),
|
|
synchronize: configService.get<string>('STATE') !== 'produccion',
|
|
entities: [
|
|
Carrera,
|
|
CarreraPrograma,
|
|
Carrito,
|
|
CarritoMotivo,
|
|
Dia,
|
|
Equipo,
|
|
EquipoMotivo,
|
|
EquipoPrograma,
|
|
EquipoTipoEntrada,
|
|
HoraExcepcion,
|
|
Infraccion,
|
|
Institucion,
|
|
InstitucionCarrera,
|
|
InstitucionDia,
|
|
InstitucionInfraccion,
|
|
InstitucionPrograma,
|
|
InstitucionTipoCarrito,
|
|
InstitucionTipoEntrada,
|
|
InstitucionUsuario,
|
|
Marca,
|
|
Modelo,
|
|
Modulo,
|
|
Multa,
|
|
Nivel,
|
|
Operador,
|
|
Prestamo,
|
|
Programa,
|
|
Status,
|
|
TipoCarrito,
|
|
TipoEntrada,
|
|
TipoUsuario,
|
|
Usuario,
|
|
InformacionCarritoView,
|
|
FullInformacionCarritoView,
|
|
FullInformacionEquipoView,
|
|
InformacionEquipoPrestamoView,
|
|
InformacionEquipoView,
|
|
FullInformacionEquipoProgramaView,
|
|
InformacionEquipoProgramaView,
|
|
FullInformacionEquipoTipoEntradaView,
|
|
InformacionEquipoTipoEntradaView,
|
|
InformacionInstitucionView,
|
|
MinInformacionInstitucionView,
|
|
InformacionModuloView,
|
|
MinInformacionModuloView,
|
|
FullInformacionMultaView,
|
|
InformacionMultaView,
|
|
InformacionOperadorView,
|
|
FullInformacionPrestamoView,
|
|
FullInformacionPrestamoEquipoView,
|
|
FullInformacionPrestamoUsuarioView,
|
|
InformacionPrestamoView,
|
|
InformacionUsuarioView,
|
|
],
|
|
};
|
|
},
|
|
}),
|
|
AuthModule,
|
|
BcryptModule,
|
|
CarreraProgramaModule,
|
|
CarritoModule,
|
|
CarritoMotivoModule,
|
|
CronModule,
|
|
EquipoProgramaModule,
|
|
EquipoTipoEntradaModule,
|
|
EquipoModule,
|
|
HoraExcepcionModule,
|
|
InstitucionModule,
|
|
InstitucionCarreraModule,
|
|
InstitucionDiaModule,
|
|
InstitucionInfraccionModule,
|
|
InstitucionProgramaModule,
|
|
InstitucionTipoCarritoModule,
|
|
InstitucionTipoEntradaModule,
|
|
InstitucionUsuarioModule,
|
|
MarcaModule,
|
|
ModeloModule,
|
|
ModuloModule,
|
|
EquipoMotivoModule,
|
|
MultaModule,
|
|
NodemailerModule,
|
|
OperadorModule,
|
|
PrestamoModule,
|
|
StatusModule,
|
|
TipoUsuarioModule,
|
|
UploadFileModule,
|
|
UsuarioModule,
|
|
ValidarUsuarioModule,
|
|
],
|
|
})
|
|
export class AppModule {}
|