@page "/hardware/tree"
@using RackPeek.Domain.Resources.Hardware
@inject IHardwareRepository HardwareRepository
Hardware
@if (_tree is null)
{
loading tree…
}
else if (_tree.Count == 0)
{
no resources found
}
else
{
@foreach (var group in _tree
.OrderByDescending(h => h.Systems.Count)
.ThenBy(h => h.Kind)
.ThenBy(h => h.HardwareName)
.GroupBy(h => h.Kind))
{
@group.Key
@foreach (var hardware in group)
{
-
@hardware.HardwareName
@if (hardware.Systems.Any())
{
@foreach (var system in hardware.Systems
.OrderByDescending(s => s.Services.Count)
.ThenBy(s => s.SystemName))
{
-
└─ @system.SystemName
@if (system.Services.Any())
{
@foreach (var service in system.Services.OrderBy(s => s))
{
-
> @service
}
}
}
}
}
}
}
@code {
private List