From 353c25d382a4d2377ca30ad65e02adfe00540024 Mon Sep 17 00:00:00 2001 From: Jad Date: Mon, 3 Feb 2025 14:56:26 -0800 Subject: [PATCH] Fix adding internal staff document infinite pending row --- .../SubmissionItem/InternalDocuments/Rows.tsx | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/submit-web/src/components/SubmissionItem/InternalDocuments/Rows.tsx b/submit-web/src/components/SubmissionItem/InternalDocuments/Rows.tsx index 7d7966ce..9c24e9a4 100644 --- a/submit-web/src/components/SubmissionItem/InternalDocuments/Rows.tsx +++ b/submit-web/src/components/SubmissionItem/InternalDocuments/Rows.tsx @@ -8,7 +8,7 @@ import { SubmitPrimaryRowTableCell, SubmitTablePrimaryRow, } from "@/components/Shared/Table/common"; -import { useState } from "react"; +import { useEffect, useMemo, useState } from "react"; type InternalDocumentsProps = Readonly<{ internalStaffDocuments: Array; @@ -25,10 +25,17 @@ export default function Rows({ ); const { uploadObjects: pendingDocuments } = useObjectUploadStore(); - const internalStaffDocumentsIds = new Set(documents.map((doc) => doc.id)); + const internalStaffDocumentsIds = useMemo(() => { + return new Set(documents.map((doc) => doc.id)); + }, [documents]); + + useEffect(() => { + setDocuments(internalStaffDocuments); + }, [internalStaffDocuments]); const filteredPendingDocuments = pendingDocuments.filter( - (doc) => !internalStaffDocumentsIds.has(doc.submissionId ?? 0), + (doc) => + !doc.submissionId || !internalStaffDocumentsIds.has(doc.submissionId), ); return (