39 lines
1.3 KiB
TypeScript
39 lines
1.3 KiB
TypeScript
import { getGraphQLConfig } from '@/src/core/config/graphql.config'
|
|
import { AccountModule } from '@/src/module/auth/account/account.module'
|
|
import { PasswordRecoveryModule } from '@/src/module/auth/password-recovery/password-recovery.module'
|
|
import { SessionModule } from '@/src/module/auth/session/session.module'
|
|
import { TotpModule } from '@/src/module/auth/totp/totp.module'
|
|
import { VerificationModule } from '@/src/module/auth/verification/verification.module'
|
|
import { MailModule } from '@/src/module/libs/mail/mail.module'
|
|
import { IS_DEV } from '@/src/shared/util/is-dev.util'
|
|
import { ApolloDriver } from '@nestjs/apollo'
|
|
import { Module } from '@nestjs/common'
|
|
import { ConfigModule, ConfigService } from '@nestjs/config'
|
|
import { GraphQLModule } from '@nestjs/graphql'
|
|
import { PrismaModule } from './prisma/prisma.module'
|
|
import { RedisModule } from './redis/redis.module'
|
|
|
|
@Module({
|
|
imports: [
|
|
ConfigModule.forRoot({
|
|
ignoreEnvFile: !IS_DEV,
|
|
isGlobal: true,
|
|
}),
|
|
GraphQLModule.forRootAsync({
|
|
driver: ApolloDriver,
|
|
imports: [ConfigModule],
|
|
useFactory: getGraphQLConfig,
|
|
inject: [ConfigService],
|
|
}),
|
|
PrismaModule,
|
|
RedisModule,
|
|
MailModule,
|
|
AccountModule,
|
|
SessionModule,
|
|
VerificationModule,
|
|
PasswordRecoveryModule,
|
|
TotpModule,
|
|
],
|
|
})
|
|
export class CoreModule {}
|