|
|
|
@ -70,20 +70,12 @@ const MemoDetail = () => {
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
(async () => {
|
|
|
|
|
await fetchMemoComments();
|
|
|
|
|
const commentRelations = memo.relationList.filter((relation) => relation.relatedMemoId === memo.id && relation.type === "COMMENT");
|
|
|
|
|
const requests = commentRelations.map((relation) => memoStore.fetchMemoById(relation.memoId));
|
|
|
|
|
await Promise.all(requests);
|
|
|
|
|
})();
|
|
|
|
|
}, [memo?.relationList]);
|
|
|
|
|
|
|
|
|
|
const fetchMemoComments = async () => {
|
|
|
|
|
if (!memo) {
|
|
|
|
|
return;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
const commentRelations = memo.relationList.filter((relation) => relation.relatedMemoId === memo.id && relation.type === "COMMENT");
|
|
|
|
|
const requests = commentRelations.map((relation) => memoStore.fetchMemoById(relation.memoId));
|
|
|
|
|
await Promise.all(requests);
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
if (!memo) {
|
|
|
|
|
return null;
|
|
|
|
|
}
|
|
|
|
@ -107,6 +99,10 @@ const MemoDetail = () => {
|
|
|
|
|
toast.success(t("message.succeed-copy-link"));
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
const handleCommentCreated = async () => {
|
|
|
|
|
await memoStore.fetchMemoById(memoId);
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
return (
|
|
|
|
|
<>
|
|
|
|
|
<section className="relative top-0 w-full min-h-full overflow-x-hidden bg-zinc-100 dark:bg-zinc-900">
|
|
|
|
@ -210,7 +206,7 @@ const MemoDetail = () => {
|
|
|
|
|
key={memo.id}
|
|
|
|
|
className="!border"
|
|
|
|
|
relationList={[{ memoId: UNKNOWN_ID, relatedMemoId: memo.id, type: "COMMENT" }]}
|
|
|
|
|
onConfirm={() => fetchMemoComments()}
|
|
|
|
|
onConfirm={handleCommentCreated}
|
|
|
|
|
/>
|
|
|
|
|
)}
|
|
|
|
|
</div>
|
|
|
|
|