Meshtastic-Apple/Meshtastic/Extensions/CoreData/NodeInfoEntityToNodeInfo.swift
Ben Meadors 05397db3a4 Add shared contact functionality (WIP)
Feel free to hijack and make it not terrible
2025-05-13 19:43:43 -05:00

26 lines
901 B
Swift

// NodeInfoEntityToNodeInfo.swift
// Meshtastic
//
// Utility to convert NodeInfoEntity (Core Data) to NodeInfo (protobuf)
import Foundation
import MeshtasticProtobufs
extension NodeInfoEntity {
func toProto() -> NodeInfo {
var userProto = User()
if let user = self.user {
userProto.id = user.userId ?? ""
userProto.longName = user.longName ?? ""
userProto.shortName = user.shortName ?? ""
userProto.hwModel = HardwareModel(rawValue: Int(user.hwModelId))!; userProto.isLicensed = user.isLicensed
userProto.role = Config.DeviceConfig.Role(rawValue: Int(user.role))!
userProto.publicKey = user.publicKey?.subdata(in: 0..<user.publicKey!.count) ?? Data()
}
var node = NodeInfo()
node.num = UInt32(self.num)
node.user = userProto
// Add more fields as needed
return node
}
}