feat(account): update login response and modify CORS origin

- Changed the CORS origin from `http://localhost:3000` to `http://localhost:5173`.
- Updated the login response to return a comprehensive object containing the `accessToken` and user profile data.
- Modified cookie setup to directly use `result.accessToken` instead of `result`.
- Refactored account service to include additional user fields in the login data returned.
- Added `dist` to `.gitignore`.
This commit is contained in:
abumahid
2026-04-26 18:56:50 +06:00
parent 0f7af70b90
commit e227c42f7d
4 changed files with 30 additions and 8 deletions
+1
View File
@@ -5,3 +5,4 @@ node_modules
.env.prod
package-lock.json
prisma/generated/
dist
+1 -1
View File
@@ -15,7 +15,7 @@ app.use("/docs", swaggerUi.serve, swaggerUi.setup(swaggerSpec));
// middleware
app.use(cors({
origin: ["http://localhost:3000"],
origin: ["http://localhost:5173"],
methods: ["GET", "POST", "PATCH", "DELETE", "PUT"],
credentials: true
}))
@@ -37,7 +37,7 @@ const login_user = catchAsync(async (req, res) => {
const result = await account_services.login_user_into_db(req);
// set access token into cookie
res.cookie("access_token", result, {
res.cookie("access_token", result.accessToken, {
secure: configs.env === "production",
httpOnly: true,
});
@@ -46,9 +46,7 @@ const login_user = catchAsync(async (req, res) => {
statusCode: 200,
success: true,
message: "User logged in successfully",
data: {
accessToken: result,
},
data: result,
});
});
const get_user_account = catchAsync(async (req, res) => {
+25 -2
View File
@@ -22,7 +22,7 @@ const create_account_into_db = async (req: Request) => {
const hashPassword = bcrypt.hashSync(payload.password, 10);
// create account and profile
const result = await prisma.$transaction(async (tx:any) => {
const result = await prisma.$transaction(async (tx: any) => {
const account = await tx.account.create({
data: {
email: payload.email,
@@ -160,6 +160,15 @@ const login_user_into_db = async (req: Request) => {
where: {
email: payload.email,
},
select: {
id: true,
email: true,
role: true,
isAccountVerified: true,
isDeleted: true,
password: true,
profile: true,
},
});
// check if account exists
@@ -196,7 +205,21 @@ const login_user_into_db = async (req: Request) => {
configs.jwt.access_token as string,
configs.jwt.access_expires as string,
);
return accessToken;
const finalOutputData = {
id: account.id,
email: account.email,
role: account.role,
shopName: account?.profile?.shopName,
shopLogo: account?.profile?.shopLogo,
}
return {
accessToken,
profile: finalOutputData
};
};
const get_user_account_from_db = async (req: Request) => {