Assist_Design/apps/bff/src/auth/auth.module.ts

36 lines
1.3 KiB
TypeScript
Raw Normal View History

2025-08-21 15:24:40 +09:00
import { Module } from "@nestjs/common";
import { JwtModule } from "@nestjs/jwt";
import { PassportModule } from "@nestjs/passport";
import { ConfigService } from "@nestjs/config";
import { AuthService } from "./auth.service";
import { AuthController } from "./auth.controller";
import { AuthAdminController } from "./auth-admin.controller";
import { UsersModule } from "../users/users.module";
import { MappingsModule } from "../mappings/mappings.module";
import { VendorsModule } from "../vendors/vendors.module";
import { JwtStrategy } from "./strategies/jwt.strategy";
import { LocalStrategy } from "./strategies/local.strategy";
import { TokenBlacklistService } from "./services/token-blacklist.service";
import { EmailModule } from "../common/email/email.module";
@Module({
imports: [
PassportModule,
JwtModule.registerAsync({
useFactory: (configService: ConfigService) => ({
2025-08-21 15:24:40 +09:00
secret: configService.get("JWT_SECRET"),
signOptions: { expiresIn: configService.get("JWT_EXPIRES_IN", "7d") },
}),
inject: [ConfigService],
}),
UsersModule,
MappingsModule,
VendorsModule,
EmailModule,
],
controllers: [AuthController, AuthAdminController],
providers: [AuthService, JwtStrategy, LocalStrategy, TokenBlacklistService],
exports: [AuthService],
})
export class AuthModule {}