All files verify.ts

100% Statements 11/11
100% Branches 4/4
100% Functions 2/2
100% Lines 10/10
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24  3x       3x 10x 5x   5x 6x       5x 5x   2x     3x      
import { StringAnyMap, VerifyOptions } from './interfaces';
import Payload from './payload';
/**
 * Returns a function that can verify an accessToken
 */
export default function Verify({
  payload = new Payload(),
  verify
}: VerifyOptions) {
  return (accessToken: string) => {
    if (!accessToken) return null;
 
    let tokenPayload: StringAnyMap;
 
    try {
      tokenPayload = verify(accessToken);
    } catch (error) {
      return null;
    }
 
    return payload.parse(tokenPayload);
  };
}