diff --git a/src/components/TeamMembers/MemberActionDropdown.tsx b/src/components/TeamMembers/MemberActionDropdown.tsx index bb7a5d4d0..029972ea7 100644 --- a/src/components/TeamMembers/MemberActionDropdown.tsx +++ b/src/components/TeamMembers/MemberActionDropdown.tsx @@ -9,10 +9,12 @@ export function MemberActionDropdown({ member, onUpdateMember, onDeleteMember, + onResendInvite, isDisabled = false, }: { onDeleteMember: () => void; onUpdateMember: () => void; + onResendInvite: () => void; isDisabled: boolean; member: TeamMemberDocument; }) { @@ -25,22 +27,6 @@ export function MemberActionDropdown({ setIsOpen(false); }); - async function resendInvite() { - const { response, error } = await httpPatch( - `${import.meta.env.PUBLIC_API_URL}/v1-resend-invite/${member.teamId}/${member._id - }`, - {} - ); - - if (error || !response) { - setIsLoading(false); - toast.error(error?.message || 'Something went wrong'); - return; - } - - window.location.reload(); - } - const actions = [ { name: 'Delete', @@ -58,11 +44,14 @@ export function MemberActionDropdown({ }, ...(['invited'].includes(member.status) ? [ - { - name: 'Resend Invite', - handleClick: resendInvite, - }, - ] + { + name: 'Resend Invite', + handleClick: () => { + onResendInvite(); + setIsOpen(false); + }, + }, + ] : []), ]; return ( diff --git a/src/components/TeamMembers/TeamMemberItem.tsx b/src/components/TeamMembers/TeamMemberItem.tsx index 8f29444c7..93e41a568 100644 --- a/src/components/TeamMembers/TeamMemberItem.tsx +++ b/src/components/TeamMembers/TeamMemberItem.tsx @@ -12,13 +12,14 @@ type TeamMemberProps = { handleDeleteMember: () => void; onUpdateMember: () => void; handleSendReminder: () => void; + onResendInvite: () => void; }; export function TeamMemberItem(props: TeamMemberProps) { const { member, index, - teamId, + onResendInvite, onUpdateMember, canManageCurrentTeam, userId, @@ -100,6 +101,7 @@ export function TeamMemberItem(props: TeamMemberProps) { {canManageCurrentTeam && ( { + resendInvite(teamId, member._id!).finally(() => { + pageProgressMessage.set(''); + }); + }} canManageCurrentTeam={canManageCurrentTeam} handleDeleteMember={() => { deleteMember(teamId, member._id!).finally(() => { @@ -219,6 +241,11 @@ export function TeamMembersPage() { index={index} teamId={teamId} userId={user?.id!} + onResendInvite={() => { + resendInvite(teamId, member._id!).finally(() => { + pageProgressMessage.set(''); + }); + }} canManageCurrentTeam={canManageCurrentTeam} handleDeleteMember={() => { deleteMember(teamId, member._id!).finally(() => { @@ -252,6 +279,11 @@ export function TeamMembersPage() { index={index} teamId={teamId} userId={user?.id!} + onResendInvite={() => { + resendInvite(teamId, member._id!).finally(() => { + pageProgressMessage.set(''); + }); + }} canManageCurrentTeam={canManageCurrentTeam} handleDeleteMember={() => { deleteMember(teamId, member._id!).finally(() => {