All files / auth/strategies pw-reset-token.strategy.ts

100% Statements 9/9
100% Branches 0/0
100% Functions 2/2
100% Lines 8/8

Press n or j to go to the next uncovered block, b, p or k for the previous block.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 262x 2x 2x 2x             2x       2x 2x             2x      
import { Injectable } from '@nestjs/common'
import { ConfigService } from '@nestjs/config'
import { PassportStrategy } from '@nestjs/passport'
import { ExtractJwt, Strategy } from 'passport-jwt'
import { PasswordResetJWTPayload } from '../interfaces/pw-reset-jwt-payload.interface'
 
/**
 * @description Strategy for validating long living refresh tokens
 */
@Injectable()
export class PasswordResetTokenStrategy extends PassportStrategy(
  Strategy,
  'password-reset-jwt',
) {
  constructor(private readonly configService: ConfigService) {
    super({
      jwtFromRequest: ExtractJwt.fromUrlQueryParameter('token'),
      secretOrKey: configService.get<string>('JWT_PASSWORD_RESET_SECRET'),
    })
  }
 
  async validate(payload: PasswordResetJWTPayload) {
    return payload
  }
}