diff --git a/src/angular/frontend/src/app/clients/gandalf/mithrandir/tenant/dtos/tenant-grid-view-dto.ts b/src/angular/frontend/src/app/clients/gandalf/mithrandir/tenant/dtos/tenant-grid-view-dto.ts index d420f1e..ace484b 100644 --- a/src/angular/frontend/src/app/clients/gandalf/mithrandir/tenant/dtos/tenant-grid-view-dto.ts +++ b/src/angular/frontend/src/app/clients/gandalf/mithrandir/tenant/dtos/tenant-grid-view-dto.ts @@ -2,6 +2,7 @@ export interface TenantGridViewDto { id: string; isMaster: boolean; name: string; + isOwner: boolean; ownerId: string; visibility: string; } diff --git a/src/angular/frontend/src/app/components/tenant/tenant-grid/tenant-grid.component.html b/src/angular/frontend/src/app/components/tenant/tenant-grid/tenant-grid.component.html index 359c557..a31d50b 100644 --- a/src/angular/frontend/src/app/components/tenant/tenant-grid/tenant-grid.component.html +++ b/src/angular/frontend/src/app/components/tenant/tenant-grid/tenant-grid.component.html @@ -3,7 +3,7 @@ } @else { @for (tenant of tenants(); track tenant.id) { - {{tenant.name}} + {{tenant.name}} diff --git a/src/angular/frontend/src/app/components/tenant/tenant-grid/tenant-grid.component.scss b/src/angular/frontend/src/app/components/tenant/tenant-grid/tenant-grid.component.scss index 0f3878f..1666669 100644 --- a/src/angular/frontend/src/app/components/tenant/tenant-grid/tenant-grid.component.scss +++ b/src/angular/frontend/src/app/components/tenant/tenant-grid/tenant-grid.component.scss @@ -8,6 +8,39 @@ align-items: center; } + .title { + + display: flex; + align-items: center; + + &.owner, &.master, &.related { + &::before { + background-color: var(--primary-30); + color: var(--neutral-90); + font-size: 0.7rem; + line-height: 0.7rem; + padding: 0.15rem 0.3rem; + font-weight: bold; + border-radius: 0.5rem; + margin-right: 1ch; + } + } + + &.owner:not(.master)::before { + content: 'Owner'; + } + &.master:not(.owner)::before { + content: 'Master'; + } + &.master.owner:before { + content: 'Master Owner'; + } + &:not(.owner, .master)::before { + content: 'Related'; + background-color: var(--secondary-30); + } + } + .actions { margin-left: auto; } diff --git a/src/angular/frontend/src/app/components/tenant/tenant-grid/tenant-grid.component.ts b/src/angular/frontend/src/app/components/tenant/tenant-grid/tenant-grid.component.ts index 0901d25..2455577 100644 --- a/src/angular/frontend/src/app/components/tenant/tenant-grid/tenant-grid.component.ts +++ b/src/angular/frontend/src/app/components/tenant/tenant-grid/tenant-grid.component.ts @@ -4,13 +4,14 @@ import {TenantGridViewDto} from '../../../clients/gandalf/mithrandir/tenant/dtos import {PanelComponent} from '../../panel/panel.component'; import {LinkComponent} from '../../link/link.component'; import {RouterLink} from '@angular/router'; +import {NgClass} from '@angular/common'; @Component({ selector: 'app-tenant-grid', imports: [ PanelComponent, - LinkComponent, - RouterLink + RouterLink, + NgClass ], templateUrl: './tenant-grid.component.html', styleUrl: './tenant-grid.component.scss' diff --git a/src/dotnet/Suspectus.Gandalf.Palantir.Data/Dto/Tenant/TenantGridViewDto.cs b/src/dotnet/Suspectus.Gandalf.Palantir.Data/Dto/Tenant/TenantGridViewDto.cs index 38adcb8..ca16188 100644 --- a/src/dotnet/Suspectus.Gandalf.Palantir.Data/Dto/Tenant/TenantGridViewDto.cs +++ b/src/dotnet/Suspectus.Gandalf.Palantir.Data/Dto/Tenant/TenantGridViewDto.cs @@ -7,6 +7,8 @@ public class TenantGridViewDto public required string Id { get; set; } public required string Name { get; set; } public required bool IsMaster { get; set; } + + public required bool IsOwner { get; set; } public required string OwnerId { get; set; } public required EntityVisibility Visibility { get; set; } } \ No newline at end of file