import { ExtractJwt, Strategy } from 'passport-jwt'; import { PassportStrategy } from '@nestjs/passport'; import { Injectable } from '@nestjs/common'; import { AuthModule } from 'kkk-lib/auth/auth.module'; @Injectable() export class JwtStrategy extends PassportStrategy(Strategy) { constructor() { super({ jwtFromRequest: ExtractJwt.fromAuthHeaderAsBearerToken(), ignoreExpiration: false, secretOrKey: AuthModule.secretOrKey, }); } async validate(payload: any) { return { userId: payload.sub, username: payload.username, level: payload.level, profile: payload.profile, }; } }