{{ 'XP.UserGroup.Title' | translate: { Default: 'User Groups' } }}

@if (organization(); as organization) {
{{ organization.name }}
}
{{ groups().length }} {{ 'XP.UserGroup.Title' | translate: { Default: 'groups' } }} @if (groupQuery()) { {{ filteredGroups().length }} / {{ groups().length }} }
@if (filteredGroups().length) {
@for (group of filteredGroups(); track group.id) { }
} @else if (groups().length) {
{{ 'XP.UserGroup.NoMatchingGroups' | translate: { Default: 'No matching groups.' } }}
} @else {
{{ 'XP.UserGroup.CreateFirst' | translate: { Default: 'Create your first group' } }}
{{ 'XP.UserGroup.FormHint' | translate: { Default: 'Bind organization users into a reusable access group.' } }}
}

{{ name.getRawValue().trim() || ('XP.UserGroup.Create' | translate: { Default: 'Create Group' }) }}

{{ selectedMemberCount() }} {{ 'XP.UserGroup.Members' | translate: { Default: 'members' } }} {{ selectedXpertCount() }} {{ 'XP.UserGroup.XpertAccess' | translate: { Default: 'XPERT access' } }}
@if (!isNewGroup()) { }
@switch (activePanel()) { @case ('details') {

{{ 'XP.UserGroup.BasicInfo' | translate: { Default: 'Basic information' } }}

{{ 'XP.UserGroup.FormHint' | translate: { Default: 'Bind organization users into a reusable access group.' } }}

{{ 'XP.UserGroup.Members' | translate: { Default: 'Members' } }}
{{ selectedMemberCount() }}
{{ 'XP.UserGroup.XpertAccess' | translate: { Default: 'XPERT access' } }}
{{ selectedXpertCount() }}
} @case ('members') {

{{ 'XP.UserGroup.Members' | translate: { Default: 'Members' } }}

{{ 'XP.UserGroup.MembersHint' | translate: { Default: 'Only active users in the current organization can be selected.' } }}

@if (hasInactiveSelectedUsers()) {
{{ 'XP.UserGroup.RemoveInactiveMembersHint' | translate: { Default: 'Remove inactive members from this group before saving.' } }}
}
@if (!hasOrganizationUsers()) {
{{ 'XP.UserGroup.NoActiveMembers' | translate: { Default: 'No active organization members' } }}
{{ 'XP.UserGroup.NoActiveMembersHint' | translate : { Default: 'Invite or activate users in the current organization, then assign them here.' } }}
} @else if (!visibleUsers().length) {
{{ 'XP.UserGroup.NoMatchingMembers' | translate: { Default: 'No matching members' } }}
{{ 'XP.UserGroup.NoMatchingMembersHint' | translate: { Default: 'Try another search keyword.' } }}
} @else {
@for (user of visibleUsers(); track user.id) {
{{ userLabel(user) }} {{ userSecondaryText(user) }} @if (!isActiveOrganizationUser(user.id)) { {{ 'XP.UserGroup.InactiveMember' | translate: { Default: 'Inactive' } }} }
}
}
} @case ('xperts') {

{{ 'XP.UserGroup.XpertAccess' | translate: { Default: 'XPERT access' } }}

{{ 'XP.UserGroup.XpertAuthorizationHint' | translate: { Default: 'Choose which published xperts this group can access.' } }}

@if (xpertsLoading()) {
} @else if (!availableXperts().length) {
{{ 'XP.UserGroup.NoPublishedXperts' | translate: { Default: 'No published xperts are available in the current organization yet.' } }}
} @else if (!filteredXperts().length) {
{{ 'XP.UserGroup.NoMatchingXperts' | translate: { Default: 'No matching XPERTs' } }}
} @else {
@for (xpert of filteredXperts(); track xpert.id) {
{{ xpertInitials(xpert) }} {{ xpertLabel(xpert) }} {{ xpert.description || ('XP.KEY_WORDS.NotSet' | translate: { Default: 'Not set' }) }}
}
}
} }
@if (isBusy()) {
}