mirror of
https://github.com/formbricks/formbricks.git
synced 2026-02-21 10:08:34 -06:00
25 lines
589 B
TypeScript
25 lines
589 B
TypeScript
import jwt from "jsonwebtoken";
|
|
import { prisma } from "@formbricks/database";
|
|
|
|
export function createToken(userId, userEmail, options = {}) {
|
|
return jwt.sign({ id: userId }, process.env.NEXTAUTH_SECRET + userEmail, options);
|
|
}
|
|
|
|
export async function verifyToken(token, userEmail = "") {
|
|
if (!userEmail) {
|
|
const { id } = jwt.decode(token);
|
|
|
|
const foundUser = await prisma.user.findUnique({
|
|
where: { id },
|
|
});
|
|
|
|
if (!foundUser) {
|
|
return null;
|
|
}
|
|
|
|
userEmail = foundUser.email;
|
|
}
|
|
|
|
return jwt.verify(token, process.env.NEXTAUTH_SECRET + userEmail);
|
|
}
|