mirror of
https://github.com/plankanban/planka.git
synced 2025-07-18 20:59:44 +02:00
33 lines
581 B
JavaScript
33 lines
581 B
JavaScript
const { v4: uuid } = require('uuid');
|
|
const jwt = require('jsonwebtoken');
|
|
|
|
module.exports = {
|
|
sync: true,
|
|
|
|
inputs: {
|
|
subject: {
|
|
type: 'json',
|
|
required: true,
|
|
},
|
|
issuedAt: {
|
|
type: 'ref',
|
|
},
|
|
},
|
|
|
|
fn(inputs) {
|
|
const { issuedAt = new Date() } = inputs;
|
|
const iat = Math.floor(issuedAt / 1000);
|
|
|
|
return jwt.sign(
|
|
{
|
|
iat,
|
|
sub: inputs.subject,
|
|
exp: iat + sails.config.custom.tokenExpiresIn * 24 * 60 * 60,
|
|
},
|
|
sails.config.session.secret,
|
|
{
|
|
keyid: uuid(),
|
|
},
|
|
);
|
|
},
|
|
};
|