diff --git a/src/webapp/features/cards/lib/mutations/useAddCard.tsx b/src/webapp/features/cards/lib/mutations/useAddCard.tsx index d527c655..3ce6b985 100644 --- a/src/webapp/features/cards/lib/mutations/useAddCard.tsx +++ b/src/webapp/features/cards/lib/mutations/useAddCard.tsx @@ -6,6 +6,7 @@ import { feedKeys } from '@/features/feeds/lib/feedKeys'; import { noteKeys } from '@/features/notes/lib/noteKeys'; import { sembleKeys } from '@/features/semble/lib/sembleKeys'; import { connectionKeys } from '@/features/connections/lib/connectionKeys'; +import { profileKeys } from '@/features/profile/lib/profileKeys'; import posthog from 'posthog-js'; import { CardSaveAnalyticsContext, @@ -62,6 +63,7 @@ export default function useAddCard( queryClient.invalidateQueries({ queryKey: collectionKeys.infinite() }); queryClient.invalidateQueries({ queryKey: collectionKeys.all() }); queryClient.invalidateQueries({ queryKey: connectionKeys.all() }); + queryClient.invalidateQueries({ queryKey: profileKeys.all() }); queryClient.invalidateQueries({ queryKey: collectionKeys.bySembleUrl(variables.url), }); diff --git a/src/webapp/features/cards/lib/mutations/useRemoveCardFromLibrary.tsx b/src/webapp/features/cards/lib/mutations/useRemoveCardFromLibrary.tsx index 4759339b..09de2593 100644 --- a/src/webapp/features/cards/lib/mutations/useRemoveCardFromLibrary.tsx +++ b/src/webapp/features/cards/lib/mutations/useRemoveCardFromLibrary.tsx @@ -6,6 +6,7 @@ import { noteKeys } from '@/features/notes/lib/noteKeys'; import { feedKeys } from '@/features/feeds/lib/feedKeys'; import { sembleKeys } from '@/features/semble/lib/sembleKeys'; import { connectionKeys } from '@/features/connections/lib/connectionKeys'; +import { profileKeys } from '@/features/profile/lib/profileKeys'; export default function useRemoveCardFromLibrary() { const queryClient = useQueryClient(); @@ -22,6 +23,7 @@ export default function useRemoveCardFromLibrary() { queryClient.invalidateQueries({ queryKey: collectionKeys.all() }); queryClient.invalidateQueries({ queryKey: sembleKeys.all() }); queryClient.invalidateQueries({ queryKey: connectionKeys.all() }); + queryClient.invalidateQueries({ queryKey: profileKeys.all() }); // Invalidate all URL metadata queries with stats to update tab counts queryClient.invalidateQueries({ predicate: (query): boolean => { diff --git a/src/webapp/features/collections/lib/mutations/useCreateCollection.tsx b/src/webapp/features/collections/lib/mutations/useCreateCollection.tsx index 5d004747..1435dd12 100644 --- a/src/webapp/features/collections/lib/mutations/useCreateCollection.tsx +++ b/src/webapp/features/collections/lib/mutations/useCreateCollection.tsx @@ -2,6 +2,7 @@ import { CollectionAccessType } from '@semble/types'; import { useMutation, useQueryClient } from '@tanstack/react-query'; import { createCollection } from '../dal'; import { collectionKeys } from '../collectionKeys'; +import { profileKeys } from '@/features/profile/lib/profileKeys'; export default function useCreateCollection() { const queryClient = useQueryClient(); @@ -20,6 +21,7 @@ export default function useCreateCollection() { // https://tkdodo.eu/blog/mastering-mutations-in-react-query#some-callbacks-might-not-fire onSuccess: () => { queryClient.invalidateQueries({ queryKey: collectionKeys.all() }); + queryClient.invalidateQueries({ queryKey: profileKeys.all() }); queryClient.refetchQueries({ queryKey: collectionKeys.mine() }); }, }); diff --git a/src/webapp/features/collections/lib/mutations/useDeleteCollection.tsx b/src/webapp/features/collections/lib/mutations/useDeleteCollection.tsx index 1fbfd899..b9bc3832 100644 --- a/src/webapp/features/collections/lib/mutations/useDeleteCollection.tsx +++ b/src/webapp/features/collections/lib/mutations/useDeleteCollection.tsx @@ -1,6 +1,7 @@ import { useMutation, useQueryClient } from '@tanstack/react-query'; import { deleteCollection } from '../dal'; import { collectionKeys } from '../collectionKeys'; +import { profileKeys } from '@/features/profile/lib/profileKeys'; export default function useDeleteCollection() { const queryClient = useQueryClient(); @@ -12,6 +13,7 @@ export default function useDeleteCollection() { onSuccess: () => { queryClient.invalidateQueries({ queryKey: collectionKeys.all() }); + queryClient.invalidateQueries({ queryKey: profileKeys.all() }); }, });