diff --git a/web-admin/src/features/organizations/user-management/table/users/OrgUsersTable.svelte b/web-admin/src/features/organizations/user-management/table/users/OrgUsersTable.svelte index ea516777d2f..3e75f88d46e 100644 --- a/web-admin/src/features/organizations/user-management/table/users/OrgUsersTable.svelte +++ b/web-admin/src/features/organizations/user-management/table/users/OrgUsersTable.svelte @@ -122,6 +122,7 @@ organizationPermissions, isBillingContact: row.original.userEmail === billingContact, onAttemptRemoveBillingContactUser, + pendingAcceptance: Boolean(row.original.invitedBy), onConvertToMember: () => onConvertToMember(row.original), }), meta: { diff --git a/web-admin/src/features/organizations/user-management/table/users/UserActionsCell.svelte b/web-admin/src/features/organizations/user-management/table/users/UserActionsCell.svelte index 42d1979893b..c0aa9b9bdfd 100644 --- a/web-admin/src/features/organizations/user-management/table/users/UserActionsCell.svelte +++ b/web-admin/src/features/organizations/user-management/table/users/UserActionsCell.svelte @@ -7,7 +7,6 @@ import * as DropdownMenu from "@rilldata/web-common/components/dropdown-menu"; import ThreeDot from "@rilldata/web-common/components/icons/ThreeDot.svelte"; import { OrgUserRoles } from "@rilldata/web-common/features/users/roles.ts"; - import { Trash2Icon } from "lucide-svelte"; import RemoveUserFromOrgConfirmDialog from "@rilldata/web-admin/features/organizations/user-management/dialogs/RemoveUserFromOrgConfirmDialog.svelte"; import { createAdminServiceRemoveOrganizationMemberUser, @@ -26,12 +25,14 @@ // This also avoids rendering the modal per row. export let onAttemptRemoveBillingContactUser: () => void; export let onConvertToMember: () => void; + export let pendingAcceptance = false; let isDropdownOpen = false; let isRemoveConfirmOpen = false; $: organization = $page.params.organization; $: isGuest = role === OrgUserRoles.Guest; + $: canConvertToMember = isGuest && !pendingAcceptance; $: canManageUser = // TODO: backend doesnt restrict removing oneself, revisit this UI check. !isCurrentUser && canManageOrgUser(organizationPermissions, role); @@ -82,7 +83,7 @@ - {#if role === OrgUserRoles.Guest} + {#if canConvertToMember} - - Remove + Remove