From 4971be5083baaa0cdec07731f763f852a3691f8d Mon Sep 17 00:00:00 2001 From: Aly Raffauf Date: Thu, 23 Apr 2026 21:17:06 -0400 Subject: [PATCH] web/{Board,Thread}: handle cache invalidation --- web/src/pages/Board.tsx | 2 ++ web/src/pages/Thread.tsx | 8 +++++++- 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/web/src/pages/Board.tsx b/web/src/pages/Board.tsx index f936b74..f1ef838 100644 --- a/web/src/pages/Board.tsx +++ b/web/src/pages/Board.tsx @@ -19,6 +19,7 @@ import { bbsModerationQuery, bbsQuery, boardThreadsInfiniteQuery, + myThreadsQuery, } from "../lib/queries"; import { queryClient } from "../lib/queryClient"; import type { ThreadItem, ThreadPageResult } from "../lib/boardThreads"; @@ -143,6 +144,7 @@ export default function BoardPage() { }, ); refetchUntilIndexed(boardKey, resp.data.uri); + queryClient.invalidateQueries(myThreadsQuery(user.pdsUrl, user.did)); setTitle(""); setBody(""); setFiles([]); diff --git a/web/src/pages/Thread.tsx b/web/src/pages/Thread.tsx index 3e1b1da..d0c0b67 100644 --- a/web/src/pages/Thread.tsx +++ b/web/src/pages/Thread.tsx @@ -18,6 +18,7 @@ import { import { bbsModerationQuery, bbsQuery, + myThreadsQuery, threadPageQuery, threadRefsQuery, threadRootQuery, @@ -162,7 +163,12 @@ export default function ThreadPage() { if (!agent) throw new Error("Not signed in"); await deleteRecord(agent, POST, thread.rkey); }, - onSuccess: () => navigate(`/bbs/${handle}`), + onSuccess: () => { + if (user) { + queryClient.invalidateQueries(myThreadsQuery(user.pdsUrl, user.did)); + } + navigate(`/bbs/${handle}`); + }, onError: (err) => alert(`Could not delete: ${err instanceof Error ? err.message : err}`), }); -- 2.51.2