From 362310055aa873e2e21c576d1bf89bffb2e028bf Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Cosmin=20P=C3=A2rvulescu?= Date: Wed, 27 Sep 2023 15:42:37 +0300 Subject: [PATCH] Removed free seat assignment limitation --- .../console/app/routes/__layout/groups/$groupID/index.tsx | 8 +++++--- .../methods/identity-groups/inviteIdentityGroupMember.ts | 4 +++- 2 files changed, 8 insertions(+), 4 deletions(-) diff --git a/apps/console/app/routes/__layout/groups/$groupID/index.tsx b/apps/console/app/routes/__layout/groups/$groupID/index.tsx index 27ed0546ff..73db86c707 100644 --- a/apps/console/app/routes/__layout/groups/$groupID/index.tsx +++ b/apps/console/app/routes/__layout/groups/$groupID/index.tsx @@ -601,8 +601,9 @@ export default () => { title="Add Group Member" subtitle="Invite Members to the Group" onClick={ - group.members.length + invitations.length < - IDENTITY_GROUP_OPTIONS.maxFreeMembers + group.members.length + invitations.length <= + IDENTITY_GROUP_OPTIONS.maxFreeMembers + + (groupSeats.total - groupSeats.used) ? () => setInviteModalOpen(true) : undefined } @@ -780,7 +781,8 @@ export default () => { - {group.members.length}/{IDENTITY_GROUP_OPTIONS.maxFreeMembers} + {group.members.length}/ + {IDENTITY_GROUP_OPTIONS.maxFreeMembers + groupSeats.total} diff --git a/platform/identity/src/jsonrpc/methods/identity-groups/inviteIdentityGroupMember.ts b/platform/identity/src/jsonrpc/methods/identity-groups/inviteIdentityGroupMember.ts index af5339ddb2..58364dbb11 100644 --- a/platform/identity/src/jsonrpc/methods/identity-groups/inviteIdentityGroupMember.ts +++ b/platform/identity/src/jsonrpc/methods/identity-groups/inviteIdentityGroupMember.ts @@ -77,6 +77,8 @@ export const inviteIdentityGroupMember = async ({ const invitations = await node.class.getInvitations() const invitationCount = invitations.length + const seats = await node.class.getSeats() + const { edges: groupMembershipEdges } = await caller.edges.getEdges({ query: { tag: EDGE_MEMBER_OF_IDENTITY_GROUP, @@ -88,7 +90,7 @@ export const inviteIdentityGroupMember = async ({ if ( invitationCount + groupMembershipEdges.length > - IDENTITY_GROUP_OPTIONS.maxFreeMembers + IDENTITY_GROUP_OPTIONS.maxFreeMembers + (seats?.quantity ?? 0) ) { throw new BadRequestError({ message: 'Max members reached',