Some checks failed
Build & Deploy / 🔍 Prepare (push) Successful in 20s
Build & Deploy / 🧪 QA (push) Failing after 34s
Build & Deploy / 🏗️ Build (push) Has started running
Build & Deploy / 🚀 Deploy (push) Has been cancelled
Build & Deploy / 🧪 Smoke Test (push) Has been cancelled
Build & Deploy / ⚡ Lighthouse (push) Has been cancelled
Build & Deploy / 🔔 Notify (push) Has been cancelled
16 lines
523 B
Plaintext
16 lines
523 B
Plaintext
import { SignJWT } from 'jose';
|
|
export const jwtSign = async ({ fieldsToSign, secret, tokenExpiration })=>{
|
|
const secretKey = new TextEncoder().encode(secret);
|
|
const issuedAt = Math.floor(Date.now() / 1000);
|
|
const exp = issuedAt + tokenExpiration;
|
|
const token = await new SignJWT(fieldsToSign).setProtectedHeader({
|
|
alg: 'HS256',
|
|
typ: 'JWT'
|
|
}).setIssuedAt(issuedAt).setExpirationTime(exp).sign(secretKey);
|
|
return {
|
|
exp,
|
|
token
|
|
};
|
|
};
|
|
|
|
//# sourceMappingURL=jwt.js.map |