improvement: moved user data from localstorage to context

This commit is contained in:
canove
2021-01-13 08:08:25 -03:00
parent 2bec877e4f
commit 3aa287d394
23 changed files with 231 additions and 134 deletions

View File

@@ -1,4 +1,6 @@
import { verify } from "jsonwebtoken";
import User from "../../models/User";
import AppError from "../../errors/AppError";
import ShowUserService from "../UserServices/ShowUserService";
import authConfig from "../../config/auth";
@@ -13,6 +15,7 @@ interface RefreshTokenPayload {
}
interface Response {
user: User;
newToken: string;
refreshToken: string;
}
@@ -37,5 +40,5 @@ export const RefreshTokenService = async (token: string): Promise<Response> => {
const newToken = createAccessToken(user);
const refreshToken = createRefreshToken(user);
return { newToken, refreshToken };
return { user, newToken, refreshToken };
};

View File

@@ -4,6 +4,16 @@ import {
createAccessToken,
createRefreshToken
} from "../../helpers/CreateTokens";
import { SerializeUser } from "../../helpers/SerializeUser";
import Queue from "../../models/Queue";
interface SerializedUser {
id: number;
name: string;
email: string;
profile: string;
queues: Queue[];
}
interface Request {
email: string;
@@ -11,7 +21,7 @@ interface Request {
}
interface Response {
user: User;
serializedUser: SerializedUser;
token: string;
refreshToken: string;
}
@@ -21,7 +31,8 @@ const AuthUserService = async ({
password
}: Request): Promise<Response> => {
const user = await User.findOne({
where: { email }
where: { email },
include: ["queues"]
});
if (!user) {
@@ -35,8 +46,10 @@ const AuthUserService = async ({
const token = createAccessToken(user);
const refreshToken = createRefreshToken(user);
const serializedUser = SerializeUser(user);
return {
user,
serializedUser,
token,
refreshToken
};

View File

@@ -1,6 +1,7 @@
import * as Yup from "yup";
import AppError from "../../errors/AppError";
import { SerializeUser } from "../../helpers/SerializeUser";
import User from "../../models/User";
interface Request {
@@ -63,13 +64,7 @@ const CreateUserService = async ({
await user.reload();
const serializedUser = {
id: user.id,
name: user.name,
email: user.email,
profile: user.profile,
queues: user.queues
};
const serializedUser = SerializeUser(user);
return serializedUser;
};