Replace lazy AppStorage calls with AccountManager

This commit is contained in:
2025-04-25 14:26:05 +02:00
parent d3143915ea
commit 351f08e43e
16 changed files with 392 additions and 270 deletions
+3 -3
View File
@@ -9,11 +9,11 @@ import SwiftUI
@main
struct meteriosWatchApp: App {
private var wcMgr = WCManager()
@StateObject var wcMgr = WCManager()
var body: some Scene {
WindowGroup {
ContentView(wcMgr)
ContentView().environmentObject(wcMgr)
}
}
}
+3 -7
View File
@@ -8,7 +8,7 @@
import SwiftUI
struct ContentView: View {
private var wcMgr: WCManager
@EnvironmentObject var wcMgr: WCManager
@State private var favouriteDrinks: Array<Drink> = []
@State private var availableDrinks: Array<Drink> = []
@@ -17,10 +17,6 @@ struct ContentView: View {
@State private var updateError: String = ""
@State private var updateErrorCount: Int = 0
init(_ wcMgr: WCManager) {
self.wcMgr = wcMgr
}
// update performs a full update from the paired device, covering connection info (user ID and backend address) and list of drinks
func update() {
if updateErrorCount >= 3 {
@@ -55,14 +51,14 @@ struct ContentView: View {
Section(String(localized: "FAVOURITES")) {
ForEach(favouriteDrinks) { drink in
NavigationLink(drink.name) {
DrinkDetailView(wcMgr: wcMgr, drink: drink)
DrinkDetailView(drink: drink)
}
}
}
Section(String(localized: "DRINKS")) {
ForEach(availableDrinks) { drink in
NavigationLink(drink.name) {
DrinkDetailView(wcMgr: wcMgr, drink: drink)
DrinkDetailView(drink: drink)
}
}
}
+4 -4
View File
@@ -8,15 +8,15 @@
import SwiftUI
struct DrinkDetailView: View {
private var wcMgr: WCManager
@EnvironmentObject var wcMgr: WCManager
private var drink: Drink
@State var shouldShowTransactionSheet = false
@Environment(\.dismiss) private var dismiss
init(wcMgr: WCManager, drink: Drink) {
self.wcMgr = wcMgr
init(drink: Drink) {
self.drink = drink
}
@@ -52,7 +52,7 @@ struct DrinkDetailView: View {
// Sheet dismissed - dismiss detail perspective as well.
dismiss()
} content: {
TransactionView(wcMgr: wcMgr, drinkID: drink.id).interactiveDismissDisabled()
TransactionView(drinkID: drink.id).interactiveDismissDisabled()
}
}
}
+3 -3
View File
@@ -8,7 +8,8 @@
import SwiftUI
struct TransactionView: View {
private var wcMgr: WCManager
@EnvironmentObject var wcMgr: WCManager
private var drinkID: Int
@State var statusLine = String(localized: "BOOKING")
@@ -22,8 +23,7 @@ struct TransactionView: View {
@State var backendBookTimer: Timer?
@State var backendTimerReady: Bool = false
init(wcMgr: WCManager, drinkID: Int) {
self.wcMgr = wcMgr
init(drinkID: Int) {
self.drinkID = drinkID
}