diff --git a/packages/console/src/pages/TenantSettings/TenantMembers/Invitations/index.tsx b/packages/console/src/pages/TenantSettings/TenantMembers/Invitations/index.tsx index d51f1c40031..9a11bbbc081 100644 --- a/packages/console/src/pages/TenantSettings/TenantMembers/Invitations/index.tsx +++ b/packages/console/src/pages/TenantSettings/TenantMembers/Invitations/index.tsx @@ -55,7 +55,7 @@ function Invitations() { const { canInviteMember, canRemoveMember } = useCurrentTenantScopes(); const { data, error, isLoading, mutate } = useSWR( - `api/tenant/${currentTenantId}/invitations`, + 'api/tenants/:tenantId/invitations', async () => cloudApi.get('/api/tenants/:tenantId/invitations', { params: { tenantId: currentTenantId } }) ); diff --git a/packages/console/src/pages/TenantSettings/TenantMembers/Members/index.tsx b/packages/console/src/pages/TenantSettings/TenantMembers/Members/index.tsx index 4e2d04bd811..f24cc28bc1e 100644 --- a/packages/console/src/pages/TenantSettings/TenantMembers/Members/index.tsx +++ b/packages/console/src/pages/TenantSettings/TenantMembers/Members/index.tsx @@ -21,10 +21,10 @@ function Members() { const { t } = useTranslation(undefined, { keyPrefix: 'admin_console.tenant_members' }); const cloudApi = useAuthedCloudApi(); const { currentTenantId } = useContext(TenantsContext); - const { canInviteMember, canRemoveMember, canUpdateMemberRole } = useCurrentTenantScopes(); + const { canRemoveMember, canUpdateMemberRole } = useCurrentTenantScopes(); const { data, error, isLoading, mutate } = useSWR( - `api/tenant/${currentTenantId}/members`, + `api/tenants/:tenantId/members`, async () => cloudApi.get('/api/tenants/:tenantId/members', { params: { tenantId: currentTenantId } }) ); diff --git a/packages/console/src/pages/TenantSettings/TenantMembers/index.tsx b/packages/console/src/pages/TenantSettings/TenantMembers/index.tsx index c85506a4141..f2dd909602b 100644 --- a/packages/console/src/pages/TenantSettings/TenantMembers/index.tsx +++ b/packages/console/src/pages/TenantSettings/TenantMembers/index.tsx @@ -1,11 +1,14 @@ import classNames from 'classnames'; -import { useState } from 'react'; +import { useContext, useState } from 'react'; import { Route, Routes } from 'react-router-dom'; +import useSWRMutation from 'swr/mutation'; import InvitationIcon from '@/assets/icons/invitation.svg'; import MembersIcon from '@/assets/icons/members.svg'; import PlusIcon from '@/assets/icons/plus.svg'; +import { useAuthedCloudApi } from '@/cloud/hooks/use-cloud-api'; import { TenantSettingsTabs } from '@/consts'; +import { TenantsContext } from '@/contexts/TenantsProvider'; import Button from '@/ds-components/Button'; import Spacer from '@/ds-components/Spacer'; import useCurrentTenantScopes from '@/hooks/use-current-tenant-scopes'; @@ -28,6 +31,14 @@ function TenantMembers() { `/tenant-settings/${TenantSettingsTabs.Members}/${invitationsRoute}` ); + const { currentTenantId } = useContext(TenantsContext); + const cloudApi = useAuthedCloudApi(); + const { trigger: mutateInvitations } = useSWRMutation( + 'api/tenants/:tenantId/invitations', + async () => + cloudApi.get('/api/tenants/:tenantId/invitations', { params: { tenantId: currentTenantId } }) + ); + return (
@@ -73,7 +84,11 @@ function TenantMembers() { onClose={(isSuccessful) => { setShowInviteModal(false); if (isSuccessful) { - navigate('invitations'); + if (isInvitationTab) { + void mutateInvitations(); + } else { + navigate('invitations'); + } } }} />