@page "/tags/{TagName}" @using RackPeek.Domain.Resources @using RackPeek.Domain.Resources.SystemResources @inject IResourceRepository ResourceRepository @inject NavigationManager Nav Tag: @TagName

Tag: @TagName

@if (_resources is null) {
loading resources…
} else if (_resources.Count == 0) {
no resources found for this tag
} else {
@foreach (var resource in _resources.OrderBy(r => r.Name)) {
@resource.Name
@resource.Kind
}
}
@code { [Parameter] public string TagName { get; set; } = string.Empty; private IReadOnlyList? _resources; protected override async Task OnParametersSetAsync() { var decoded = Uri.UnescapeDataString(TagName); _resources = await ResourceRepository.GetByTagAsync(decoded); } private string GetResourceUrl(Resource resource) { if (resource.Kind == SystemResource.KindLabel) { return $"resources/systems/{resource.Name}"; }else if (resource.Kind == Service.KindLabel) { return $"resources/services/{resource.Name}"; } else { return $"resources/hardware/{resource.Name}"; } } }