Alarm pipeline wiring + full code-review backlog resolution #119
@@ -19,12 +19,12 @@ else
|
||||
</div>
|
||||
|
||||
<section class="metric-grid">
|
||||
<MetricCard Label="Last Deploy" Value="@DashboardDisplay.DateTime(Snapshot.Galaxy.LastDeployTime)" Detail="@DeployAge()" />
|
||||
<MetricCard Label="Last Deploy" Value="@DashboardDisplay.DateTime(Snapshot.Galaxy.LastDeployTime)" Detail="@DeployAge()" Wide="true" />
|
||||
<MetricCard Label="Objects" Value="@DashboardDisplay.Count(Snapshot.Galaxy.ObjectCount)" Detail="@($"{Snapshot.Galaxy.AreaCount:N0} areas")" />
|
||||
<MetricCard Label="Attributes" Value="@DashboardDisplay.Count(Snapshot.Galaxy.AttributeCount)" Detail="dynamic, deployed" />
|
||||
<MetricCard Label="Historized" Value="@DashboardDisplay.Count(Snapshot.Galaxy.HistorizedAttributeCount)" />
|
||||
<MetricCard Label="Alarms" Value="@DashboardDisplay.Count(Snapshot.Galaxy.AlarmAttributeCount)" />
|
||||
<MetricCard Label="Last Refresh" Value="@DashboardDisplay.DateTime(Snapshot.Galaxy.LastSuccessAt)" Detail="@LastAttemptDetail()" />
|
||||
<MetricCard Label="Last Refresh" Value="@DashboardDisplay.DateTime(Snapshot.Galaxy.LastSuccessAt)" Detail="@LastAttemptDetail()" Wide="true" />
|
||||
</section>
|
||||
|
||||
@if (Snapshot.Galaxy.Status == DashboardGalaxyStatus.Unknown)
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
<div class="card metric-card h-100">
|
||||
<div class="card metric-card h-100@(Wide ? " metric-card-wide" : string.Empty)">
|
||||
<div class="card-body">
|
||||
<div class="metric-label">@Label</div>
|
||||
<div class="metric-value">@Value</div>
|
||||
@@ -18,4 +18,8 @@
|
||||
|
||||
[Parameter]
|
||||
public string? Detail { get; set; }
|
||||
|
||||
/// <summary>Spans the card across two grid columns for long values such as timestamps.</summary>
|
||||
[Parameter]
|
||||
public bool Wide { get; set; }
|
||||
}
|
||||
|
||||
@@ -88,6 +88,8 @@ body.dashboard-body { min-height: 100vh; }
|
||||
letter-spacing: 0.07em;
|
||||
color: var(--ink-faint);
|
||||
}
|
||||
.metric-card-wide { grid-column: span 2; }
|
||||
|
||||
.metric-value {
|
||||
margin-top: 0.25rem;
|
||||
font-family: var(--mono);
|
||||
@@ -96,7 +98,8 @@ body.dashboard-body { min-height: 100vh; }
|
||||
font-weight: 600;
|
||||
line-height: 1.1;
|
||||
color: var(--ink);
|
||||
overflow-wrap: anywhere;
|
||||
/* break-word, not anywhere: keep date/number tokens whole, wrap at spaces. */
|
||||
overflow-wrap: break-word;
|
||||
}
|
||||
.metric-detail {
|
||||
margin-top: 0.15rem;
|
||||
|
||||
Reference in New Issue
Block a user