From bf278355c4c03edde4d8862f0714be8f69fd1d19 Mon Sep 17 00:00:00 2001 From: Daniel Hougaard <62331820+DanielHougaard@users.noreply.github.com> Date: Tue, 13 Feb 2024 18:20:54 +0100 Subject: [PATCH] Delete membership by email --- frontend/src/hooks/api/workspace/queries.tsx | 12 ++++-------- .../components/MemberListTab/MemberListTab.tsx | 8 ++++---- 2 files changed, 8 insertions(+), 12 deletions(-) diff --git a/frontend/src/hooks/api/workspace/queries.tsx b/frontend/src/hooks/api/workspace/queries.tsx index 443cf45e9..68231d594 100644 --- a/frontend/src/hooks/api/workspace/queries.tsx +++ b/frontend/src/hooks/api/workspace/queries.tsx @@ -337,16 +337,12 @@ export const useDeleteUserFromWorkspace = () => { const queryClient = useQueryClient(); return useMutation({ - mutationFn: async ({ - membershipId, - workspaceId - }: { - workspaceId: string; - membershipId: string; - }) => { + mutationFn: async ({ emails, workspaceId }: { workspaceId: string; emails: string[] }) => { const { data: { deletedMembership } - } = await apiRequest.delete(`/api/v1/workspace/${workspaceId}/memberships/${membershipId}`); + } = await apiRequest.delete(`/api/v2/workspace/${workspaceId}/memberships`, { + data: { emails } + }); return deletedMembership; }, onSuccess: (_, { workspaceId }) => { diff --git a/frontend/src/views/Project/MembersPage/components/MemberListTab/MemberListTab.tsx b/frontend/src/views/Project/MembersPage/components/MemberListTab/MemberListTab.tsx index 222504a91..9fb95e7d8 100644 --- a/frontend/src/views/Project/MembersPage/components/MemberListTab/MemberListTab.tsx +++ b/frontend/src/views/Project/MembersPage/components/MemberListTab/MemberListTab.tsx @@ -151,11 +151,11 @@ export const MemberListTab = () => { }; const handleRemoveUser = async () => { - const membershipId = (popUp?.removeMember?.data as { id: string })?.id; + const email = (popUp?.removeMember?.data as { email: string })?.email; if (!currentOrg?.id) return; try { - await removeUserFromWorkspace({ workspaceId, membershipId }); + await removeUserFromWorkspace({ workspaceId, emails: [email] }); createNotification({ text: "Successfully removed user from project", type: "success" @@ -372,7 +372,7 @@ export const MemberListTab = () => { className="ml-4" isDisabled={userId === u?.id || !isAllowed} onClick={() => - handlePopUpOpen("removeMember", { id: membershipId }) + handlePopUpOpen("removeMember", { email: u.email }) } > @@ -456,7 +456,7 @@ export const MemberListTab = () => { handlePopUpToggle("removeMember", isOpen)} onDeleteApproved={handleRemoveUser} />