@page "/deployment/topology" @page "/deployment/instances" @using ScadaLink.Security @using ScadaLink.Commons.Entities.Instances @using ScadaLink.Commons.Entities.Sites @using ScadaLink.Commons.Entities.Templates @using ScadaLink.Commons.Entities.Deployment @using ScadaLink.Commons.Interfaces.Repositories @using ScadaLink.Commons.Types.Enums @using ScadaLink.DeploymentManager @using ScadaLink.TemplateEngine.Services @attribute [Authorize(Policy = AuthorizationPolicies.RequireDeployment)] @inject ITemplateEngineRepository TemplateEngineRepository @inject ISiteRepository SiteRepository @inject IDeploymentManagerRepository DeploymentManagerRepository @inject DeploymentService DeploymentService @inject AreaService AreaService @inject InstanceService InstanceService @inject AuthenticationStateProvider AuthStateProvider @inject NavigationManager NavigationManager @inject IJSRuntime JSRuntime
@if (_loading) { } else if (_errorMessage != null) {
@_errorMessage
} else {
Topology
@RenderNodeLabel(node) @RenderNodeContextMenu(node) No sites configured. Add sites under Admin → Sites.
@_allInstances.Count instance(s) across @_sites.Count site(s).
@* Diff Modal — ported from Instances.razor *@ @if (_showDiffModal) { } }
@code { // ---- Data ---- private List _allInstances = new(); private List _sites = new(); private List