@page "/subnets"
@using RackPeek.Domain.Persistence
@using RackPeek.Domain.Resources
@inject IResourceCollection ResourceCollection
Subnet Browser
@if (_grouped is null)
{
loading…
}
else if (!_grouped.Any())
{
no matching IPs found
}
else
{
@foreach (var subnetGroup in _grouped.OrderBy(x => x.Key))
{
@subnetGroup.Key
@foreach (var ipGroup in subnetGroup.Value.OrderBy(x => x.Key))
{
-
├─ @ipGroup.Key
@foreach (var (resource, _) in ipGroup.Value)
{
var url = GetResourceUrl(resource);
-
└─ @resource.Name (@resource.GetType().Name.Replace("Resource",""))
}
}
}
}
@code {
private string _filter = string.Empty;
private IReadOnlyList<(Resource resource, string ip)> _all = [];
private Dictionary