Meshtastic-Apple/Meshtastic/Router/NavigationState.swift
Garth Vander Houwen b9accce1f9 NFC Tag contact (#1600)
* NFC Tag contact

* Add Tools.swift to Xcode project file - fix missing file reference causing build failure

Agent-Logs-Url: https://github.com/meshtastic/Meshtastic-Apple/sessions/e3299e28-9ec0-4a23-98bc-5fc032750b4a

Co-authored-by: garthvh <1795163+garthvh@users.noreply.github.com>

* Apply reviewer feedback: Catalyst guard, NDEF entitlement, nil guard, localized string, capacity check, preview fix

Agent-Logs-Url: https://github.com/meshtastic/Meshtastic-Apple/sessions/b86f9b74-5ee1-4144-87e5-3e4b6479ac44

Co-authored-by: garthvh <1795163+garthvh@users.noreply.github.com>

* Log tag NDEF capacity on query for debugging

Agent-Logs-Url: https://github.com/meshtastic/Meshtastic-Apple/sessions/b86f9b74-5ee1-4144-87e5-3e4b6479ac44

Co-authored-by: garthvh <1795163+garthvh@users.noreply.github.com>

* Fix formatting error

* Linting fixes

---------

Co-authored-by: Benjamin Faershtein <119711889+RCGV1@users.noreply.github.com>
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: garthvh <1795163+garthvh@users.noreply.github.com>
2026-04-16 06:06:55 +00:00

73 lines
1.2 KiB
Swift

import Foundation
// MARK: Messages
enum MessagesNavigationState: Hashable {
case channels(
channelId: Int32? = nil,
messageId: Int64? = nil
)
case directMessages(
userNum: Int64? = nil,
messageId: Int64? = nil
)
}
// MARK: Map
enum MapNavigationState: Hashable {
case selectedNode(Int64)
case waypoint(Int64)
}
// MARK: Settings
enum SettingsNavigationState: String {
case about
case appSettings
case routes
case routeRecorder
case lora
case channels
case shareQRCode
case user
case bluetooth
case device
case display
case network
case position
case power
case ambientLighting
case cannedMessages
case detectionSensor
case externalNotification
case mqtt
case rangeTest
case paxCounter
case ringtone
case serial
case security
case storeAndForward
case telemetry
case debugLogs
case appFiles
case firmwareUpdates
case tak
case tools
}
struct NavigationState: Hashable {
enum Tab: String, Hashable {
case messages
case connect
case nodes
case map
case settings
}
var selectedTab: Tab = .connect
var messages: MessagesNavigationState?
var nodeListSelectedNodeNum: Int64?
var map: MapNavigationState?
var settings: SettingsNavigationState?
}