import { Strategy, ExtractJwt } from 'passport-jwt' import { PassportStrategy } from '@nestjs/passport' import { Injectable, Inject } from '@nestjs/common' import { TokenPayload } from '../dto/token.dto' import { securityConfig, SecurityConfig } from 'src/common/configs' @Injectable() export class JwtStrategy extends PassportStrategy(Strategy) { constructor( @Inject(securityConfig.KEY) readonly secureConfig: SecurityConfig, ) { super({ jwtFromRequest: ExtractJwt.fromAuthHeaderAsBearerToken(), secretOrKey: secureConfig.jwt_access_secret, }) } async validate(payload: TokenPayload) { return payload } }