diff --git a/.changeset/thirty-doors-peel.md b/.changeset/thirty-doors-peel.md new file mode 100644 index 00000000000..3b99449a18d --- /dev/null +++ b/.changeset/thirty-doors-peel.md @@ -0,0 +1,5 @@ +--- +'@clerk/clerk-js': patch +--- + +Refresh invited members upon revocation diff --git a/packages/clerk-js/src/ui/components/OrganizationProfile/ActiveMembersList.tsx b/packages/clerk-js/src/ui/components/OrganizationProfile/ActiveMembersList.tsx index ec45520e67b..f9bec08cb2b 100644 --- a/packages/clerk-js/src/ui/components/OrganizationProfile/ActiveMembersList.tsx +++ b/packages/clerk-js/src/ui/components/OrganizationProfile/ActiveMembersList.tsx @@ -28,7 +28,7 @@ export const ActiveMembersList = () => { .catch(err => handleError(err, [], card.setError)); }; - const handleRemove = (membership: OrganizationMembershipResource) => () => { + const handleRemove = (membership: OrganizationMembershipResource) => async () => { return card .runAsync(async () => { const destroyedMembership = await membership.destroy(); diff --git a/packages/clerk-js/src/ui/components/OrganizationProfile/InvitedMembersList.tsx b/packages/clerk-js/src/ui/components/OrganizationProfile/InvitedMembersList.tsx index f6a96ec4d7b..2084f9ca18b 100644 --- a/packages/clerk-js/src/ui/components/OrganizationProfile/InvitedMembersList.tsx +++ b/packages/clerk-js/src/ui/components/OrganizationProfile/InvitedMembersList.tsx @@ -17,11 +17,12 @@ export const InvitedMembersList = () => { return null; } - const revoke = (invitation: OrganizationInvitationResource) => () => { + const revoke = (invitation: OrganizationInvitationResource) => async () => { return card .runAsync(async () => { await invitation.revoke(); - await (invitations as any).unstable__mutate?.(); + await invitations?.revalidate?.(); + return invitation; }) .catch(err => handleError(err, [], card.setError)); }; diff --git a/packages/shared/src/react/hooks/useOrganization.tsx b/packages/shared/src/react/hooks/useOrganization.tsx index a104d240d6b..15a6f776bde 100644 --- a/packages/shared/src/react/hooks/useOrganization.tsx +++ b/packages/shared/src/react/hooks/useOrganization.tsx @@ -1,9 +1,11 @@ import type { + ClerkPaginatedResponse, ClerkPaginationParams, GetDomainsParams, GetInvitationsParams, GetMembershipRequestParams, GetMembershipsParams, + GetMembersParams, GetPendingInvitationsParams, OrganizationDomainResource, OrganizationInvitationResource, @@ -11,8 +13,6 @@ import type { OrganizationMembershipResource, OrganizationResource, } from '@clerk/types'; -import type { ClerkPaginatedResponse } from '@clerk/types'; -import type { GetMembersParams } from '@clerk/types'; import { deprecated } from '../../deprecated'; import { useSWR } from '../clerk-swr';