added injectedAuth lib

This commit is contained in:
SrGooglo 2025-03-21 18:20:08 +00:00
parent 0f0156df84
commit 31e27f83aa

View File

@ -0,0 +1,29 @@
import AuthToken from "../../classes/AuthToken"
import { User } from "../../db_models"
export default async (obj, token) => {
const validation = await AuthToken.validate(token)
if (!validation.valid) {
if (validation.error) {
throw new Error(`Server error`)
}
throw new Error(`Invalid token`)
}
let userData = await User.findById(validation.data.user_id).lean()
if (!userData) {
throw new Error(`User not found`)
}
userData._id = userData._id.toString()
obj.user = userData
obj.token = token
obj.session = validation.data
obj.user = userData
return obj
}