Sync up isonline with the firmware add local stats extension

This commit is contained in:
Garth Vander Houwen 2024-08-25 10:08:32 -07:00
parent 4361a082c5
commit 25f8e424ed
4 changed files with 13 additions and 1 deletions

View file

@ -22,6 +22,10 @@ extension NodeInfoEntity {
return self.telemetries?.filtered(using: NSPredicate(format: "metricsType == 1")).lastObject as? TelemetryEntity
}
var latestLocalStats: TelemetryEntity? {
return self.telemetries?.filtered(using: NSPredicate(format: "metricsType == 6")).lastObject as? TelemetryEntity
}
var hasPositions: Bool {
return positions?.count ?? 0 > 0
}

View file

@ -227,6 +227,9 @@ struct UserList: View {
.onChange(of: maxDistance) { _ in
searchUserList()
}
.onReceive(users.publisher) { _ in
searchUserList()
}
.onAppear {
searchUserList()
}

View file

@ -126,7 +126,7 @@ struct MeshMap: View {
guard case .map(let selectedNodeNum) = router.navigationState else { return }
// TODO: handle deep link for waypoints
}
.onChange(of: (selectedMapLayer)) { newMapLayer in
.onChange(of: selectedMapLayer) { newMapLayer in
switch selectedMapLayer {
case .standard:
UserDefaults.mapLayer = newMapLayer

View file

@ -344,6 +344,11 @@ struct NodeList: View {
self.selectedNode = nil
}
}
.onReceive(nodes.publisher) { _ in
Task {
await searchNodeList()
}
}
.onAppear {
Task {
await searchNodeList()