Greyson
10/16/2018, 2:38 PMprisma.login
calls?
const jwtFragment = `
fragment JWTFragment on User {
id
company {
accessLevel
account {
accountType
}
}
}
`;
async function login(_: unknown, { email, password }: ArgsLogin) {
const userLogin = await prisma.login({ email });
if (!userLogin || !(await compare(password, userLogin.password))) {
throw new AuthenticationError();
}
const user = await prisma.login({ email }).user();
const payload: any = await prisma.login({ email }).user().$fragment(jwtFragment);
return {
token: sign({
id: payload.id,
accessLevel: payload.company.accessLevel,
accountType: payload.company.account.accountType
}, process.env.APP_SECRET),
user
}
}