From e68734135bf97fc288aae4b99493e2cae60772bb Mon Sep 17 00:00:00 2001 From: Garth Vander Houwen Date: Tue, 2 Apr 2024 07:00:07 -0700 Subject: [PATCH] Add node num to text search --- Meshtastic/Helpers/MeshPackets.swift | 2 ++ .../MeshtasticDataModelV32.xcdatamodel/contents | 1 + Meshtastic/Views/Nodes/NodeList.swift | 2 +- 3 files changed, 4 insertions(+), 1 deletion(-) diff --git a/Meshtastic/Helpers/MeshPackets.swift b/Meshtastic/Helpers/MeshPackets.swift index a408af14..bbc57937 100644 --- a/Meshtastic/Helpers/MeshPackets.swift +++ b/Meshtastic/Helpers/MeshPackets.swift @@ -293,6 +293,7 @@ func nodeInfoPacket (nodeInfo: NodeInfo, channel: UInt32, context: NSManagedObje } else { let newUser = UserEntity(context: context) newUser.num = Int64(nodeInfo.num) + newUser.numString = String(nodeInfo.num) let userId = String(format:"%2X", nodeInfo.num) newUser.userId = "!\(userId)" let last4 = String(userId.suffix(4)) @@ -357,6 +358,7 @@ func nodeInfoPacket (nodeInfo: NodeInfo, channel: UInt32, context: NSManagedObje } fetchedNode[0].user!.userId = nodeInfo.user.id fetchedNode[0].user!.num = Int64(nodeInfo.num) + fetchedNode[0].user!.numString = String(nodeInfo.num) fetchedNode[0].user!.longName = nodeInfo.user.longName fetchedNode[0].user!.shortName = nodeInfo.user.shortName fetchedNode[0].user!.isLicensed = nodeInfo.user.isLicensed diff --git a/Meshtastic/Meshtastic.xcdatamodeld/MeshtasticDataModelV32.xcdatamodel/contents b/Meshtastic/Meshtastic.xcdatamodeld/MeshtasticDataModelV32.xcdatamodel/contents index 21860be1..5d065d55 100644 --- a/Meshtastic/Meshtastic.xcdatamodeld/MeshtasticDataModelV32.xcdatamodel/contents +++ b/Meshtastic/Meshtastic.xcdatamodeld/MeshtasticDataModelV32.xcdatamodel/contents @@ -424,6 +424,7 @@ + diff --git a/Meshtastic/Views/Nodes/NodeList.swift b/Meshtastic/Views/Nodes/NodeList.swift index 5e51314f..866d4f78 100644 --- a/Meshtastic/Views/Nodes/NodeList.swift +++ b/Meshtastic/Views/Nodes/NodeList.swift @@ -304,7 +304,7 @@ struct NodeList: View { private func searchNodeList() { /// Case Insensitive Search Text Predicates - let searchPredicates = ["user.userId", "user.hwModel", "user.longName", "user.shortName"].map { property in + let searchPredicates = ["user.userId", "user.numString", "user.hwModel", "user.longName", "user.shortName"].map { property in return NSPredicate(format: "%K CONTAINS[c] %@", property, searchText) } /// Create a compound predicate using each text search preicate as an OR