From 4de25a8b94d7903314c879810eb5e622d434697c Mon Sep 17 00:00:00 2001 From: Philipinho <16838612+Philipinho@users.noreply.github.com> Date: Thu, 18 Sep 2025 15:52:53 +0100 Subject: [PATCH] invalidate queries on space deletion --- .../src/features/space/queries/space-query.ts | 27 +++++++++++++++++-- 1 file changed, 25 insertions(+), 2 deletions(-) diff --git a/apps/client/src/features/space/queries/space-query.ts b/apps/client/src/features/space/queries/space-query.ts index b51e195e..e15320d6 100644 --- a/apps/client/src/features/space/queries/space-query.ts +++ b/apps/client/src/features/space/queries/space-query.ts @@ -152,13 +152,36 @@ export function useDeleteSpaceMutation() { }); } - const spaces = queryClient.getQueryData(["spaces"]) as any; + // Remove space-specific queries + if (variables.id) { + queryClient.removeQueries({ + queryKey: ["space", variables.id], + exact: true, + }); + + // Invalidate recent changes + queryClient.invalidateQueries({ + queryKey: ["recent-changes"], + }); + + queryClient.invalidateQueries({ + queryKey: ["recent-changes", variables.id], + }); + } + + // Update spaces list cache + /* const spaces = queryClient.getQueryData(["spaces"]) as any; if (spaces) { spaces.items = spaces.items?.filter( (space: ISpace) => space.id !== variables.id, ); queryClient.setQueryData(["spaces"], spaces); - } + }*/ + + // Invalidate all spaces queries to refresh lists + queryClient.invalidateQueries({ + predicate: (item) => ["spaces"].includes(item.queryKey[0] as string), + }); }, onError: (error) => { const errorMessage = error["response"]?.data?.message;