diff --git a/apps/studio/data/organization-members/organization-invitation-accept-mutation.ts b/apps/studio/data/organization-members/organization-invitation-accept-mutation.ts index c15e19deea5..ccd70b2cd29 100644 --- a/apps/studio/data/organization-members/organization-invitation-accept-mutation.ts +++ b/apps/studio/data/organization-members/organization-invitation-accept-mutation.ts @@ -3,6 +3,7 @@ import { toast } from 'sonner' import { handleError, post } from '@/data/fetchers' import { invalidateOrganizationsQuery } from '@/data/organizations/organizations-query' +import { invalidatePermissionsQuery } from '@/data/permissions/permissions-query' import { useInvalidateProjectsInfiniteQuery } from '@/data/projects/org-projects-infinite-query' import type { ResponseError, UseCustomMutationOptions } from '@/types' @@ -47,8 +48,11 @@ export const useOrganizationAcceptInvitationMutation = ({ >({ mutationFn: (vars) => acceptOrganizationInvitation(vars), async onSuccess(data, variables, context) { - await invalidateOrganizationsQuery(queryClient) - await invalidateProjectsQuery() + await Promise.all([ + invalidateOrganizationsQuery(queryClient), + invalidateProjectsQuery(), + invalidatePermissionsQuery(queryClient), + ]) await onSuccess?.(data, variables, context) }, async onError(data, variables, context) { diff --git a/apps/studio/data/permissions/permissions-query.ts b/apps/studio/data/permissions/permissions-query.ts index 8102973331f..29805386523 100644 --- a/apps/studio/data/permissions/permissions-query.ts +++ b/apps/studio/data/permissions/permissions-query.ts @@ -1,4 +1,4 @@ -import { useQuery } from '@tanstack/react-query' +import { useQuery, type QueryClient } from '@tanstack/react-query' import { useIsLoggedIn } from 'common' import { permissionKeys } from './keys' @@ -44,3 +44,7 @@ export const usePermissionsQuery = ({ staleTime: 5 * 60 * 1000, }) } + +export function invalidatePermissionsQuery(client: QueryClient) { + return client.invalidateQueries({ queryKey: permissionKeys.list() }) +}