feat: add alert grace period controls

This commit is contained in:
2026-04-24 19:16:20 +02:00
parent b4163d8c8b
commit d3af580f07
6 changed files with 189 additions and 14 deletions
+25 -2
View File
@@ -172,13 +172,15 @@ struct SummaryView: View {
VStack(alignment: .leading, spacing: 10) {
HStack(alignment: .center, spacing: 10) {
Circle()
.fill(server.pingable ? Color.green : Color.red)
.fill(statusTint)
.frame(width: 10, height: 10)
.help(statusTooltip)
Text(server.hostname)
.font(.system(size: 22, weight: .semibold))
statusBadge(server.pingable ? "Online" : "Offline", tint: server.pingable ? .green : .red)
statusBadge(statusText, tint: statusTint)
.help(statusTooltip)
}
HStack(spacing: 8) {
@@ -417,6 +419,27 @@ struct SummaryView: View {
return .green
}
}
private var statusTint: Color {
if !server.pingable {
return .red
}
if server.info?.rebootRequired == true {
return .yellow
}
return .green
}
private var statusText: String {
server.pingable ? "Online" : "Offline"
}
private var statusTooltip: String {
if !server.pingable {
return "This host is offline."
}
return server.info?.statusTooltip ?? "This host is online."
}
}
#Preview {