mirror of
https://github.com/Tria-plc/edr-platform.git
synced 2026-08-27 17:50:54 +00:00
42 lines
1.5 KiB
TypeScript
42 lines
1.5 KiB
TypeScript
import { Module } from "@nestjs/common";
|
|
import { ConfigModule, ConfigService } from "@nestjs/config";
|
|
import { EventEmitterModule } from "@nestjs/event-emitter";
|
|
import { TypeOrmModule, TypeOrmModuleOptions } from "@nestjs/typeorm";
|
|
|
|
import appConfig from "./config/app.config";
|
|
import databaseConfig from "./config/database.config";
|
|
import telebirrConfig from "./config/telebirr.config";
|
|
|
|
import { BookingsModule } from "./modules/bookings/bookings.module";
|
|
import { ConsignmentsModule } from "./modules/consignments/consignments.module";
|
|
import { TrainsModule } from "./modules/trains/trains.module";
|
|
import { CustomersModule } from "./modules/customers/customers.module";
|
|
import { TrackingModule } from "./modules/tracking/tracking.module";
|
|
import { BillingModule } from "./modules/billing/billing.module";
|
|
import { NotificationsModule } from "./modules/notifications/notifications.module";
|
|
import { PaymentsModule } from "./modules/payments/payments.module";
|
|
|
|
@Module({
|
|
imports: [
|
|
ConfigModule.forRoot({
|
|
isGlobal: true,
|
|
load: [appConfig, databaseConfig, telebirrConfig],
|
|
}),
|
|
EventEmitterModule.forRoot(),
|
|
TypeOrmModule.forRootAsync({
|
|
inject: [ConfigService],
|
|
useFactory: (config: ConfigService): TypeOrmModuleOptions =>
|
|
config.get<TypeOrmModuleOptions>("database")!,
|
|
}),
|
|
BookingsModule,
|
|
ConsignmentsModule,
|
|
TrainsModule,
|
|
CustomersModule,
|
|
TrackingModule,
|
|
BillingModule,
|
|
NotificationsModule,
|
|
PaymentsModule,
|
|
],
|
|
})
|
|
export class AppModule {}
|