import { Module } from '@nestjs/common'; import { JwtModule } from '@nestjs/jwt'; import { PassportModule } from '@nestjs/passport'; import { ConfigModule } from '@nestjs/config'; import { UserAuthController } from './auth.controller'; import { UserAuthService } from './auth.service'; import { UserJwtStrategy } from './strategies/user-jwt.strategy'; import { UserCoreModule } from 'src/core/user-core/user-core.module'; import { UserCredentialCoreModule } from 'src/core/user-credential-core/user-credential-core.module'; import { UserSessionCoreModule } from 'src/core/user-session-core/user-session-core.module'; import { UserOtpCoreModule } from 'src/core/user-otp-core/user-otp-core.module'; import { UserInterestCoreModule } from 'src/core/user-interest-core/user-interest-core.module'; import { CommonModule } from 'src/shared/modules/common/common.module'; import { EmailModule } from 'src/shared/modules/email/email.module'; import { SmsModule } from 'src/shared/modules/sms/sms.module'; import { jwtAuthConstants } from 'src/shared/keys/auth.keys'; @Module({ imports: [ PassportModule, ConfigModule, JwtModule.register({ secret: jwtAuthConstants.accessTokenSecret, signOptions: { expiresIn: jwtAuthConstants.accessTokenExpiresIn }, }), UserCoreModule, UserCredentialCoreModule, UserSessionCoreModule, UserOtpCoreModule, UserInterestCoreModule, CommonModule, EmailModule, SmsModule, ], controllers: [UserAuthController], providers: [UserAuthService, UserJwtStrategy], exports: [UserAuthService], }) export class UserAuthModule {}