import ManaCore import SwiftData import SwiftUI import WidgetKit @main struct ZitareNativeApp: App { @State private var auth: AuthClient private let snapshotContainer: ModelContainer? init() { let auth = AuthClient(config: AppConfig.manaAppConfig) auth.bootstrap() _auth = State(initialValue: auth) do { snapshotContainer = try SnapshotContainer.make() } catch { Log.snapshot.error( "SnapshotContainer init fehlgeschlagen: \(String(describing: error), privacy: .public)" ) snapshotContainer = nil } Log.app.info( "Zitare starting — auth status: \(String(describing: auth.status), privacy: .public)" ) } var body: some Scene { WindowGroup { RootView() .environment(auth) .tint(ZitareTheme.primary) .task { await refreshSnapshot() } } } private func refreshSnapshot() async { guard let container = snapshotContainer else { return } let sync = SnapshotSync(container: container) await sync.tryRefresh() // Widget-Timeline neu erstellen lassen, sodass der nächste // Render-Pass den frischen Snapshot sieht. WidgetCenter.shared.reloadAllTimelines() } }