diff --git a/packages/client/modules/userDashboard/components/OrgUserRow/OrgMemberRow.tsx b/packages/client/modules/userDashboard/components/OrgUserRow/OrgMemberRow.tsx index cf11ae02c8a..513894b476a 100644 --- a/packages/client/modules/userDashboard/components/OrgUserRow/OrgMemberRow.tsx +++ b/packages/client/modules/userDashboard/components/OrgUserRow/OrgMemberRow.tsx @@ -25,6 +25,7 @@ import lazyPreload from '../../../../utils/lazyPreload' import withMutationProps, {WithMutationProps} from '../../../../utils/relay/withMutationProps' import {OrgMemberRow_organization$key} from '../../../../__generated__/OrgMemberRow_organization.graphql' import {OrgMemberRow_organizationUser$key} from '../../../../__generated__/OrgMemberRow_organizationUser.graphql' +import BaseTag from '../../../../components/Tag/BaseTag' const AvatarBlock = styled('div')({ display: 'none', @@ -132,6 +133,7 @@ const OrgMemberRow = (props: Props) => { const {orgId, isViewerBillingLeader} = organization const {newUserUntil, user, role} = organizationUser const isBillingLeader = role === 'BILLING_LEADER' + const isOrgAdmin = role === 'ORG_ADMIN' const {email, inactive, picture, preferredName, userId} = user const isViewerLastBillingLeader = isViewerBillingLeader && isBillingLeader && billingLeaderCount === 1 @@ -159,7 +161,8 @@ const OrgMemberRow = (props: Props) => { {preferredName} {isBillingLeader && {'Billing Leader'}} - {inactive && !isBillingLeader && {'Inactive'}} + {isOrgAdmin && {'Org Admin'}} + {inactive && !isBillingLeader && !isOrgAdmin && {'Inactive'}} {new Date(newUserUntil) > new Date() && {'New'}} @@ -168,7 +171,7 @@ const OrgMemberRow = (props: Props) => { - {!isBillingLeader && viewerId === userId && ( + {!isBillingLeader && !isOrgAdmin && viewerId === userId && ( Leave Organization diff --git a/packages/server/database/types/OrganizationUser.ts b/packages/server/database/types/OrganizationUser.ts index 22812cca693..406a36528c3 100644 --- a/packages/server/database/types/OrganizationUser.ts +++ b/packages/server/database/types/OrganizationUser.ts @@ -1,7 +1,7 @@ import generateUID from '../../generateUID' import {TierEnum} from './Invoice' -export type OrgUserRole = 'BILLING_LEADER' +export type OrgUserRole = 'BILLING_LEADER' | 'ORG_ADMIN' interface Input { orgId: string userId: string diff --git a/packages/server/graphql/types/OrgUserRole.ts b/packages/server/graphql/types/OrgUserRole.ts index d2c05ec1114..2648c8d90d6 100644 --- a/packages/server/graphql/types/OrgUserRole.ts +++ b/packages/server/graphql/types/OrgUserRole.ts @@ -5,7 +5,8 @@ const OrgUserRole = new GraphQLEnumType({ description: 'The role of the org user', values: { // graphql only supports enum values at runtime, the value here is the text value - BILLING_LEADER: {} + BILLING_LEADER: {}, + ORG_ADMIN: {} } })