Sindbad~EG File Manager
let jwt,AppError;_42c.x([["jwtService",()=>jwtService]]);_42c.w("jsonwebtoken",[["default",["jwt"],function(v){jwt=v}]]);_42c.w("./apiError",[["default",["AppError"],function(v){AppError=v}]]);
class JWTService {
static signToken(payload) {
return new Promise((resolve, reject) => {
jwt.sign(
payload,
process.env.JWT_SECRET,
{ expiresIn: "1h" },
(err, token) => {
if (err) {
_42c.g.console.log({ err });
reject(err);
} else {
resolve(token);
}
}
);
});
}
static verifyToken(token, isThirdParty = false) {
return new Promise((resolve, reject) => {
const secret = process.env.JWT_SECRET;
jwt.verify(token, secret, (err, decodedToken) => {
if (err) {
reject(new AppError("Invalid token", 401));
} else {
if (!decodedToken) {
reject(new AppError("Failed to decode token"));
} else {
resolve(JWTService.getTokenResponse(decodedToken));
}
}
});
});
}
static getTokenResponse(decodedToken) {
return {
_id: decodedToken._id,
role: decodedToken.role,
};
}
}
const jwtService = JWTService;
Sindbad File Manager Version 1.0, Coded By Sindbad EG ~ The Terrorists