import { MiddlewareConsumer, Module, RequestMethod } from '@nestjs/common'; import { AppController } from './app.controller'; import { AppService } from './app.service'; import { MulterModule } from '@nestjs/platform-express' import { SequelizeModule } from '@nestjs/sequelize'; import { AuthModule } from './auth/auth.module'; import { UsersService } from './users/users.service'; import { UsersModule } from './users/users.module'; import { LoggerMiddleware } from './auth/logger.middleware'; import { SeasonsController } from './seasons/seasons.controller'; import { UploadController } from './upload/upload.controller'; import { SeasonsModule } from './seasons/seasons.module'; import { RacersService } from './racers/racers.service'; import { RacesService } from './races/races.service'; import { SeasonStandingsService } from './season-standings/season-standings.service'; import { RaceResultsService } from './race-results/race-results.service'; import { RaceResultsModule } from './race-results/race-results.module'; import { RacesModule } from './races/races.module'; import { RacersModule } from './racers/racers.module'; import { SeasonStandingsModule } from './season-standings/season-standings.module'; import { UploadModule } from './upload/upload.module'; @Module({ imports: [ SequelizeModule.forRoot({ dialect: 'sqlite', storage: 'data/data.db', autoLoadModels: true, synchronize: true, }), AuthModule, UsersModule, MulterModule.register({ dest: './upload', }), SeasonsModule, RaceResultsModule, RacesModule, RacersModule, SeasonStandingsModule, UploadModule, ], controllers: [AppController, SeasonsController, UploadController], providers: [AppService, UsersService, RacersService, RacesService, SeasonStandingsService, RaceResultsService], }) export class AppModule { configure(consumer: MiddlewareConsumer) { consumer .apply(LoggerMiddleware) .forRoutes({ path: '*', method: RequestMethod.ALL }); } }