diff --git a/Localizable.xcstrings b/Localizable.xcstrings index 1ea85731..e4a2d35b 100644 --- a/Localizable.xcstrings +++ b/Localizable.xcstrings @@ -32899,6 +32899,9 @@ } } } + }, + "Unmonitored or Infrastructure" : { + }, "Unset" : { "localizations" : { diff --git a/Meshtastic/Views/Nodes/Helpers/NodeDetail.swift b/Meshtastic/Views/Nodes/Helpers/NodeDetail.swift index c5670e06..853387e5 100644 --- a/Meshtastic/Views/Nodes/Helpers/NodeDetail.swift +++ b/Meshtastic/Views/Nodes/Helpers/NodeDetail.swift @@ -151,6 +151,19 @@ struct NodeDetail: View { } .accessibilityElement(children: .combine) } + if node.user?.unmessagable ?? false { + HStack { + Label { + Text("") + } icon: { + Image(systemName: "iphone.slash") + .symbolRenderingMode(.multicolor) + } + Spacer() + Text("Unmonitored or Infrastructure") + } + .accessibilityElement(children: .combine) + } if let dm = node.telemetries?.filtered(using: NSPredicate(format: "metricsType == 0")).lastObject as? TelemetryEntity, let uptimeSeconds = dm.uptimeSeconds { HStack { diff --git a/Meshtastic/Views/Nodes/Helpers/NodeListItem.swift b/Meshtastic/Views/Nodes/Helpers/NodeListItem.swift index e7d00a6a..1ceb7583 100644 --- a/Meshtastic/Views/Nodes/Helpers/NodeListItem.swift +++ b/Meshtastic/Views/Nodes/Helpers/NodeListItem.swift @@ -172,6 +172,11 @@ struct NodeListItem: View { let role = DeviceRoles(rawValue: Int(node.user?.role ?? 0)) IconAndText(systemName: role?.systemName ?? "figure", text: "Role: \(role?.name ?? "Unknown".localized)") + if node.user?.unmessagable ?? false { + IconAndText(systemName: "iphone.slash", + renderingMode: .multicolor, + text: "Unmonitored") + } if node.isStoreForwardRouter { IconAndText(systemName: "envelope.arrow.triangle.branch", renderingMode: .multicolor,