@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 @attribute [Authorize(Policy = AuthorizationPolicies.RequireDeployment)] @inject ITemplateEngineRepository TemplateEngineRepository @inject ISiteRepository SiteRepository @inject IDeploymentManagerRepository DeploymentManagerRepository @inject DeploymentService DeploymentService

Instances

@if (_loading) { } else if (_errorMessage != null) {
@_errorMessage
} else { @* Filters *@
@if (_filteredInstances.Count == 0) { } @foreach (var inst in _pagedInstances) { }
Instance Name Template Site Area Status Staleness Actions
No instances match the current filters.
@inst.UniqueName @GetTemplateName(inst.TemplateId) @GetSiteName(inst.SiteId) @(inst.AreaId.HasValue ? GetAreaName(inst.AreaId.Value) : "—") @inst.State @{ var isStale = _stalenessMap.GetValueOrDefault(inst.Id); } @if (inst.State == InstanceState.NotDeployed) { } else if (isStale) { Stale } else { Current } @if (inst.State == InstanceState.Enabled) { } else if (inst.State == InstanceState.Disabled) { }
@* Pagination *@ @if (_totalPages > 1) { }
@_filteredInstances.Count instance(s) total
}
@code { private List _allInstances = new(); private List _filteredInstances = new(); private List _pagedInstances = new(); private List _sites = new(); private List