From b0680fa94f89509d77b2671226ff302f2540c6f8 Mon Sep 17 00:00:00 2001 From: nyne Date: Sun, 8 Jun 2025 14:07:28 +0800 Subject: [PATCH] Add context clearing on resource deletion and tag editing --- frontend/src/pages/resource_details_page.tsx | 4 ++++ frontend/src/pages/tagged_resources_page.tsx | 8 +++++++- 2 files changed, 11 insertions(+), 1 deletion(-) diff --git a/frontend/src/pages/resource_details_page.tsx b/frontend/src/pages/resource_details_page.tsx index a8a949a..584ac1d 100644 --- a/frontend/src/pages/resource_details_page.tsx +++ b/frontend/src/pages/resource_details_page.tsx @@ -43,6 +43,7 @@ import { Turnstile } from "@marsidev/react-turnstile"; import Button from "../components/button.tsx"; import Badge, { BadgeAccent } from "../components/badge.tsx"; import Input from "../components/input.tsx"; +import { useAppContext } from "../components/AppContext.tsx"; export default function ResourcePage() { const params = useParams(); @@ -257,6 +258,8 @@ function DeleteResourceDialog({ const { t } = useTranslation(); + const context = useAppContext(); + const handleDelete = async () => { if (isLoading) { return; @@ -272,6 +275,7 @@ function DeleteResourceDialog({ message: t("Resource deleted successfully"), type: "success", }); + context.clear(); navigate("/", { replace: true }); } else { showToast({ message: res.message, type: "error" }); diff --git a/frontend/src/pages/tagged_resources_page.tsx b/frontend/src/pages/tagged_resources_page.tsx index ed3bc38..0b4a0d9 100644 --- a/frontend/src/pages/tagged_resources_page.tsx +++ b/frontend/src/pages/tagged_resources_page.tsx @@ -11,6 +11,7 @@ import { app } from "../app.ts"; import Input, { TextArea } from "../components/input.tsx"; import TagInput from "../components/tag_input.tsx"; import Badge from "../components/badge.tsx"; +import { useAppContext } from "../components/AppContext.tsx"; export default function TaggedResourcesPage() { const { tag: tagName } = useParams(); @@ -73,7 +74,8 @@ export default function TaggedResourcesPage() { )} { return network.getResourcesByTag(tagName, page); }} @@ -96,6 +98,7 @@ function EditTagButton({ const [isLoading, setIsLoading] = useState(false); const [error, setError] = useState(null); const { t } = useTranslation(); + const context = useAppContext(); useEffect(() => { setDescription(tag.description); @@ -120,6 +123,9 @@ function EditTagButton({ "edit_tag_dialog", ) as HTMLDialogElement; dialog.close(); + if (aliasOf) { + context.clear(); + } onEdited(res.data!); } else { setError(res.message || t("Unknown error"));