From 829fa283a33e9f5a726a60060d48051f54b33974 Mon Sep 17 00:00:00 2001 From: Keane Chan Date: Thu, 27 Oct 2022 16:05:16 +0800 Subject: [PATCH] [resumes][feat] fetch isResolved field --- apps/portal/src/pages/resumes/[resumeId].tsx | 27 ++++++++----------- .../resumes/resumes-resume-user-router.ts | 2 ++ 2 files changed, 13 insertions(+), 16 deletions(-) diff --git a/apps/portal/src/pages/resumes/[resumeId].tsx b/apps/portal/src/pages/resumes/[resumeId].tsx index a98ea68a..bd1d4066 100644 --- a/apps/portal/src/pages/resumes/[resumeId].tsx +++ b/apps/portal/src/pages/resumes/[resumeId].tsx @@ -58,29 +58,27 @@ export default function ResumeReviewPage() { ); const starMutation = trpc.useMutation('resumes.resume.star', { onSuccess() { - utils.invalidateQueries(['resumes.resume.findOne']); - utils.invalidateQueries(['resumes.resume.findAll']); - utils.invalidateQueries(['resumes.resume.user.findUserStarred']); - utils.invalidateQueries(['resumes.resume.user.findUserCreated']); + invalidateResumeQueries(); }, }); const unstarMutation = trpc.useMutation('resumes.resume.unstar', { onSuccess() { - utils.invalidateQueries(['resumes.resume.findOne']); - utils.invalidateQueries(['resumes.resume.findAll']); - utils.invalidateQueries(['resumes.resume.user.findUserStarred']); - utils.invalidateQueries(['resumes.resume.user.findUserCreated']); + invalidateResumeQueries(); }, }); const resolveMutation = trpc.useMutation('resumes.resume.user.resolve', { onSuccess() { - utils.invalidateQueries(['resumes.resume.findOne']); - utils.invalidateQueries(['resumes.resume.findAll']); - utils.invalidateQueries(['resumes.resume.user.findUserStarred']); - utils.invalidateQueries(['resumes.resume.user.findUserCreated']); + invalidateResumeQueries(); }, }); + const invalidateResumeQueries = () => { + utils.invalidateQueries(['resumes.resume.findOne']); + utils.invalidateQueries(['resumes.resume.findAll']); + utils.invalidateQueries(['resumes.resume.user.findUserStarred']); + utils.invalidateQueries(['resumes.resume.user.findUserCreated']); + }; + const userIsOwner = session?.user?.id !== undefined && session.user.id === detailsQuery.data?.userId; @@ -194,10 +192,7 @@ export default function ResumeReviewPage() { url: detailsQuery.data.url, }} onClose={() => { - utils.invalidateQueries(['resumes.resume.findOne']); - utils.invalidateQueries(['resumes.resume.findAll']); - utils.invalidateQueries(['resumes.resume.user.findUserStarred']); - utils.invalidateQueries(['resumes.resume.user.findUserCreated']); + invalidateResumeQueries(); setIsEditMode(false); }} /> diff --git a/apps/portal/src/server/router/resumes/resumes-resume-user-router.ts b/apps/portal/src/server/router/resumes/resumes-resume-user-router.ts index 2c658e5d..7858afb3 100644 --- a/apps/portal/src/server/router/resumes/resumes-resume-user-router.ts +++ b/apps/portal/src/server/router/resumes/resumes-resume-user-router.ts @@ -164,6 +164,7 @@ export const resumesResumeUserRouter = createProtectedRouter() createdAt: rs.resume.createdAt, experience: rs.resume.experience, id: rs.resume.id, + isResolved: rs.resume.isResolved, isStarredByUser: true, location: rs.resume.location, numComments: rs.resume._count.comments, @@ -267,6 +268,7 @@ export const resumesResumeUserRouter = createProtectedRouter() createdAt: r.createdAt, experience: r.experience, id: r.id, + isResolved: r.isResolved, isStarredByUser: r.stars.length > 0, location: r.location, numComments: r._count.comments,