UNPKG

@raddiamond/nexauth-core

Version:

Core authentication plugin supporting Local, AD authentication

23 lines (22 loc) 748 B
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); exports.IssueToken = IssueToken; const jsonwebtoken_1 = __importDefault(require("jsonwebtoken")); function IssueToken(user, expiresIn = '1h') { const secret = process.env.JWT_SECRET; if (!secret) { throw new Error('Missing JWT_SECRET environment variable'); } const payload = { sub: user.userId, email: user.email, roles: user.roles ?? [], }; const options = { expiresIn: parseInt(expiresIn), }; return jsonwebtoken_1.default.sign(payload, secret, options); }