Spaces:
Sleeping
Sleeping
import { MiddlewareConsumer, Module, NestModule } from '@nestjs/common'; | |
import { AppController } from './app.controller.js'; | |
import { AppService } from './app.service.js'; | |
import { ConfigModule } from '@nestjs/config'; | |
import { TypeOrmModule } from '@nestjs/typeorm'; | |
import { configuration } from './config/config.js'; | |
import { DatabaseConfigService } from './config/database.js'; | |
import { AppLoggerMiddleware } from './common/middlewares/app-logger.middleware.js'; | |
import { DeviceInfoMiddleware } from './common/middlewares/device-info.middleware.js'; | |
import { UserModule } from './modules/user/user.module.js'; | |
import { BranchModule } from './modules/branch/branch.module.js'; | |
import { AuthenticationModule } from './modules/authentication/authentication.module.js'; | |
import { MenuItemModule } from './modules/menu-item/menu-item.module.js'; | |
({ | |
imports: [ | |
ConfigModule.forRoot({ | |
isGlobal: true, | |
load: [configuration], | |
}), | |
TypeOrmModule.forRootAsync({ | |
imports: [ConfigModule], | |
useClass: DatabaseConfigService, | |
}), | |
UserModule, | |
BranchModule, | |
AuthenticationModule, | |
MenuItemModule, | |
], | |
controllers: [AppController], | |
providers: [AppService], | |
}) | |
export class AppModule implements NestModule { | |
configure(consumer: MiddlewareConsumer): void { | |
consumer.apply(AppLoggerMiddleware).forRoutes('*'); | |
consumer.apply(DeviceInfoMiddleware).forRoutes('*'); | |
} | |
} | |