mirror of
https://github.com/sourcegraph/sourcegraph.git
synced 2026-02-06 15:51:43 +00:00
Improve InviteUsers interface (#63383)
Based on @taras-yemets's [feedback](https://github.com/sourcegraph/sourcegraph/pull/63375#discussion_r1647346730) on https://github.com/sourcegraph/sourcegraph/pull/63375 ## Test plan Just a refactor
This commit is contained in:
parent
03179a757e
commit
2a02d7c88b
@ -8,17 +8,21 @@ import { CodyAlert } from '../components/CodyAlert'
|
||||
import { CodyContainer } from '../components/CodyContainer'
|
||||
import { CodyProBadgeDeck } from '../components/CodyProBadgeDeck'
|
||||
import { useSendInvite, useTeamInvites } from '../management/api/react-query/invites'
|
||||
import { useCurrentSubscription, useSubscriptionSummary } from '../management/api/react-query/subscriptions'
|
||||
import { useCurrentSubscription } from '../management/api/react-query/subscriptions'
|
||||
import { useTeamMembers } from '../management/api/react-query/teams'
|
||||
import type { SubscriptionSummary } from '../management/api/teamSubscriptions'
|
||||
import { isValidEmailAddress } from '../util'
|
||||
|
||||
import styles from './InviteUsers.module.scss'
|
||||
|
||||
export const InviteUsers: React.FunctionComponent<TelemetryV2Props> = ({ telemetryRecorder }) => {
|
||||
interface InviteUsersProps extends TelemetryV2Props {
|
||||
subscriptionSummary: SubscriptionSummary
|
||||
}
|
||||
|
||||
export const InviteUsers: React.FunctionComponent<InviteUsersProps> = ({ telemetryRecorder, subscriptionSummary }) => {
|
||||
const subscriptionQueryResult = useCurrentSubscription()
|
||||
const subscriptionSummaryQueryResult = useSubscriptionSummary()
|
||||
const isAdmin = subscriptionSummaryQueryResult?.data?.userRole === 'admin'
|
||||
const teamId = subscriptionSummaryQueryResult?.data?.teamId
|
||||
const isAdmin = subscriptionSummary.userRole === 'admin'
|
||||
const teamId = subscriptionSummary.teamId
|
||||
const teamMembersQueryResult = useTeamMembers()
|
||||
const teamMembers = teamMembersQueryResult.data?.members
|
||||
const teamInvitesQueryResult = useTeamInvites()
|
||||
@ -100,7 +104,7 @@ export const InviteUsers: React.FunctionComponent<TelemetryV2Props> = ({ telemet
|
||||
})
|
||||
}, [emailAddresses, sendInviteMutation.mutateAsync, teamId, telemetryRecorder, verifyEmailList])
|
||||
|
||||
if (!isAdmin || !remainingInviteCount || !subscriptionSummaryQueryResult?.data) {
|
||||
if (!isAdmin || !remainingInviteCount) {
|
||||
return null
|
||||
}
|
||||
|
||||
|
||||
@ -151,7 +151,12 @@ export const CodyManagementPage: React.FunctionComponent<CodyManagementPageProps
|
||||
</PageHeader.Heading>
|
||||
</PageHeader>
|
||||
|
||||
{isAdmin && <InviteUsers telemetryRecorder={telemetryRecorder} />}
|
||||
{isAdmin && !!subscriptionSummaryQueryResult.data && (
|
||||
<InviteUsers
|
||||
telemetryRecorder={telemetryRecorder}
|
||||
subscriptionSummary={subscriptionSummaryQueryResult.data}
|
||||
/>
|
||||
)}
|
||||
|
||||
{!isUserOnProTier && <UpgradeToProBanner onClick={onClickUpgradeToProCTA} />}
|
||||
|
||||
|
||||
@ -120,7 +120,12 @@ const AuthenticatedCodyManageTeamPage: React.FunctionComponent<CodyManageTeamPag
|
||||
</CodyAlert>
|
||||
)}
|
||||
|
||||
{isAdmin && <InviteUsers telemetryRecorder={telemetryRecorder} />}
|
||||
{isAdmin && !!subscriptionSummaryQueryResult.data && (
|
||||
<InviteUsers
|
||||
telemetryRecorder={telemetryRecorder}
|
||||
subscriptionSummary={subscriptionSummaryQueryResult.data}
|
||||
/>
|
||||
)}
|
||||
{!!subscriptionSummaryQueryResult.data && (
|
||||
<TeamMemberList
|
||||
teamId={subscriptionSummaryQueryResult.data.teamId}
|
||||
|
||||
Loading…
Reference in New Issue
Block a user