dependencies dependencies cluster_AppModule cluster_AppModule_imports AuthorizationModule AuthorizationModule AppModule AppModule AuthorizationModule->AppModule ContactModule ContactModule ContactModule->AppModule FileModule FileModule FileModule->AppModule MessageModule MessageModule MessageModule->AppModule NotificationModule NotificationModule NotificationModule->AppModule QueueModule QueueModule QueueModule->AppModule SchedulerModule SchedulerModule SchedulerModule->AppModule TriggerTimeSlotModule TriggerTimeSlotModule TriggerTimeSlotModule->AppModule UserModule UserModule UserModule->AppModule
import { Module } from '@nestjs/common';
import { TypeOrmModule, TypeOrmModuleOptions } from '@nestjs/typeorm';
import { AuthorizationModule } from './authentication/authenticaiton.module';
import { UserModule } from './user/user.module';
import { ContactModule } from './contact/contact.module';
import { ThrottlerModule } from '@nestjs/throttler';
import configuration from './config/default';
import { NotificationModule } from './notification/notification.module';
import { MessageModule } from './message/message.module';
import { BullModule } from '@nestjs/bull';
import { QueueModule } from './queue/queue.module';
import { RedisProvider } from './common/provider/redis.provider';
import { TriggerTimeSlotModule } from './trigger-time-slot/trigger-time-slot.module';
import { FileModule } from './file/file.module';
import { SchedulerModule } from './scheduler/scheduler.module';
import { ConfigModule } from '@nestjs/config';

const config = configuration();

@Module({
  imports: [
    TypeOrmModule.forRoot({
      ...config.database,
      entities: [`${__dirname}/**/*.entity{.ts,.js}`],
      migrationsRun: process.env.NODE_ENV === 'test',
      migrations: [`${__dirname}/migrations/*{.ts,.js}`],
      subscribers: [`${__dirname}/**/*.entity-subscriber{.ts,.js}`],
      timezone: 'Z',
    } as TypeOrmModuleOptions),
    ThrottlerModule.forRoot({
      ttl: 10,
      limit: 10,
    }),
    BullModule.forRoot({
      redis: {
        host: config.redis.host,
        port: +config.redis.port,
        password: config.redis.password,
      },
    }),
    SchedulerModule,
    AuthorizationModule,
    UserModule,
    ContactModule,
    NotificationModule,
    QueueModule,
    MessageModule,
    TriggerTimeSlotModule,
    FileModule,
    ConfigModule.forRoot({
      load: [configuration],
    }),
  ],
  providers: [RedisProvider],
})
export class AppModule { }

results matching ""

    No results matching ""