Files
thebet365/apps/api/src/app.module.ts
2026-06-13 22:16:14 +08:00

45 lines
1.7 KiB
TypeScript

import { Module } from '@nestjs/common';
import { ConfigModule } from '@nestjs/config';
import { ScheduleModule } from '@nestjs/schedule';
import { APP_GUARD } from '@nestjs/core';
import { JwtAuthGuard } from './domains/identity/guards';
import { PrismaModule } from './shared/prisma/prisma.module';
import { RedisModule } from './shared/redis/redis.module';
import { SystemConfigModule } from './shared/config/system-config.module';
import { IdentityModule } from './domains/identity/identity.module';
import { AgentsModule } from './domains/agent/agents.module';
import { WalletModule } from './domains/ledger/wallet.module';
import { MatchesModule } from './domains/catalog/matches.module';
import { MarketsModule } from './domains/odds/markets.module';
import { BetsModule } from './domains/betting/bets.module';
import { SettlementModule } from './domains/settlement/settlement.module';
import { OperationsModule } from './domains/operations/operations.module';
import { AdminModule } from './applications/admin/admin.module';
import { PlayerModule } from './applications/player/player.module';
import { AgentPortalModule } from './applications/agent/agent-portal.module';
import { HealthModule } from './applications/health/health.module';
@Module({
imports: [
ConfigModule.forRoot({ isGlobal: true }),
ScheduleModule.forRoot(),
PrismaModule,
RedisModule,
SystemConfigModule,
IdentityModule,
AgentsModule,
WalletModule,
MatchesModule,
MarketsModule,
BetsModule,
SettlementModule,
OperationsModule,
AdminModule,
PlayerModule,
AgentPortalModule,
HealthModule,
],
providers: [{ provide: APP_GUARD, useClass: JwtAuthGuard }],
})
export class AppModule {}