Code owners
Assign users and groups as approvers for specific file changes. Learn more.
app.module.ts 1.65 KiB
import { Module } from '@nestjs/common';
import { APP_FILTER, APP_INTERCEPTOR, APP_GUARD } from '@nestjs/core';
import { TypeOrmModule } from '@nestjs/typeorm';
import { Connection } from 'typeorm';
import { AppController } from './app.controller';
import { AppService } from './app.service';
import { RolesGuard } from './shared/roles.guard';
import { LoggingInterceptor } from './shared/logging.interceptor';
import { StatesGuard } from './shared/states.guard';
import { HttpErrorFilter } from './shared/http-error.filter';
import { NotificationModule } from './notifications/notifications.module';
import { TaskModule } from './task/task.module';
import { TrackingModule } from './tracking/tracking.module';
import { UserModule } from './user/user.module';
import { DrawModule } from './draw/draw.module';
import { FactionModule } from './faction/faction.module';
import { GameModule } from './game/game.module';
import { ScoreModule } from './score/score.module';
import { ReplayModule } from './replay/replay.module';
@Module({
imports: [
TypeOrmModule.forRoot(),
UserModule,
GameModule,
NotificationModule,
TaskModule,
DrawModule,
FactionModule,
TrackingModule,
ScoreModule,
ReplayModule,
],
controllers: [AppController],
providers: [
AppService,
{
provide: APP_FILTER,
useClass: HttpErrorFilter,
},
{
provide: APP_INTERCEPTOR,
useClass: LoggingInterceptor,
},
{
provide: APP_GUARD,
useClass: RolesGuard,
},
{
provide: APP_GUARD,
useClass: StatesGuard,
},
],
})
export class AppModule {
constructor(private readonly connection: Connection) {}
}