From 8b1cd1afdb1de8410d381c9b33245bb6038e780a Mon Sep 17 00:00:00 2001 From: PE39806 <185931318+PE39806@users.noreply.github.com> Date: Wed, 30 Oct 2024 11:53:09 +0000 Subject: [PATCH] BAI-1464 hook front-end UI to auto update request count on deletion --- .../accessRequests/EditableAccessRequestForm.tsx | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/frontend/src/entry/model/accessRequests/EditableAccessRequestForm.tsx b/frontend/src/entry/model/accessRequests/EditableAccessRequestForm.tsx index 9b4061405..ab60adbc7 100644 --- a/frontend/src/entry/model/accessRequests/EditableAccessRequestForm.tsx +++ b/frontend/src/entry/model/accessRequests/EditableAccessRequestForm.tsx @@ -7,6 +7,7 @@ import { useGetAccessRequestsForModelId, } from 'actions/accessRequest' import { useGetModel } from 'actions/model' +import { useGetReviewRequestsForUser } from 'actions/review' import { useGetSchema } from 'actions/schema' import { useGetCurrentUser } from 'actions/user' import { useRouter } from 'next/router' @@ -44,6 +45,7 @@ export default function EditableAccessRequestForm({ const { schema, isSchemaLoading, isSchemaError } = useGetSchema(accessRequest.schemaId) const { isAccessRequestError, mutateAccessRequest } = useGetAccessRequest(accessRequest.modelId, accessRequest.id) const { mutateAccessRequests } = useGetAccessRequestsForModelId(accessRequest.modelId) + const { mutateReviews } = useGetReviewRequestsForUser() const { model, isModelLoading, isModelError } = useGetModel(accessRequest.modelId, EntryKind.MODEL) const { currentUser, isCurrentUserLoading, isCurrentUserError } = useGetCurrentUser() @@ -66,16 +68,17 @@ export default function EditableAccessRequestForm({ }, [accessRequest.metadata.overview.entities, currentUser, currentUserRoles]) const handleDeleteConfirm = useCallback(async () => { - setErrorMessage('') + setDeleteErrorMessage('') const res = await deleteAccessRequest(accessRequest.modelId, accessRequest.id) if (!res.ok) { setDeleteErrorMessage(await getErrorMessage(res)) } else { mutateAccessRequests() + mutateReviews() setOpen(false) router.push(`/model/${accessRequest.modelId}?tab=access`) } - }, [mutateAccessRequests, accessRequest, router]) + }, [accessRequest.modelId, accessRequest.id, mutateAccessRequests, mutateReviews, router]) async function handleSubmit() { if (schema) { @@ -122,6 +125,10 @@ export default function EditableAccessRequestForm({ resetForm() } + function handleDelete() { + setOpen(true) + } + useEffect(() => { resetForm() }, [resetForm]) @@ -173,7 +180,7 @@ export default function EditableAccessRequestForm({ onEdit={handleEdit} onCancel={handleCancel} onSubmit={handleSubmit} - onDelete={() => setOpen(true)} + onDelete={handleDelete} errorMessage={errorMessage} showDeleteButton />