UNPKG

@geniucode/common-utils

Version:

Common utils

30 lines 1.09 kB
const jwt = require('jsonwebtoken'); const JWT_KEY = process.env.JWT_KEY ?? ''; const JWT_EXPIRATION = process.env.JWT_EXPIRATION ?? 5 * 60; function generateToken(payload, secret = JWT_KEY, expiration = JWT_EXPIRATION) { checkEnvironmentKeys(); const token = jwt.sign(payload, secret, { expiresIn: expiration, }); return token; } function verifyMember(memberAuthToken) { checkEnvironmentKeys(); const memberPayload = jwt.verify(memberAuthToken, JWT_KEY); return memberPayload; } // [Reference] | https://www.npmjs.com/package/jsonwebtoken#jwtverifytoken-secretorpublickey-options-callback function verifyMemberWithNoExpire(memberAuthToken) { checkEnvironmentKeys(); const memberPayload = jwt.verify(memberAuthToken, JWT_KEY, { ignoreExpiration: true, }); return memberPayload; } const checkEnvironmentKeys = () => { if (!JWT_KEY || !JWT_EXPIRATION) { throw new Error('JWT_KEY & JWT_EXPIRATION must be defined'); } }; export { generateToken, verifyMember, verifyMemberWithNoExpire }; //# sourceMappingURL=jwt.js.map