UNPKG

ipsos-components

Version:

Material Design components for Angular

18 lines (16 loc) 641 B
import * as jwt from 'jsonwebtoken'; export function verifyJWT(token: string, prNumber: string, secret: string, repoSlug: string) { return new Promise((resolve, reject) => { jwt.verify(token, secret, {issuer: 'Travis CI, GmbH'}, (err: any, payload: any) => { if (err) { reject(err.message || err); } else if (payload.slug !== repoSlug) { reject(`jwt slug invalid. expected: ${repoSlug}`); } else if (payload['pull-request'].toString() !== prNumber) { reject(`jwt pull-request invalid. expected: ${prNumber}`); } else { resolve(payload); } }); }); }