|
@@ -7,6 +7,7 @@ import Swinject
|
|
|
extension Notification.Name {
|
|
extension Notification.Name {
|
|
|
static let initializationCompleted = Notification.Name("initializationCompleted")
|
|
static let initializationCompleted = Notification.Name("initializationCompleted")
|
|
|
static let initializationError = Notification.Name("initializationError")
|
|
static let initializationError = Notification.Name("initializationError")
|
|
|
|
|
+ static let onboardingCompleted = Notification.Name("onboardingCompleted")
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
@main struct TrioApp: App {
|
|
@main struct TrioApp: App {
|
|
@@ -34,6 +35,7 @@ extension Notification.Name {
|
|
|
@State private var appState = AppState()
|
|
@State private var appState = AppState()
|
|
|
@State private var showLoadingView = true
|
|
@State private var showLoadingView = true
|
|
|
@State private var showLoadingError = false
|
|
@State private var showLoadingError = false
|
|
|
|
|
+ @State private var showOnboarding = false
|
|
|
|
|
|
|
|
// Dependencies Assembler
|
|
// Dependencies Assembler
|
|
|
// contain all dependencies Assemblies
|
|
// contain all dependencies Assemblies
|
|
@@ -97,6 +99,14 @@ extension Notification.Name {
|
|
|
showLoadingError = true
|
|
showLoadingError = true
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
+ notificationCenter.addObserver(
|
|
|
|
|
+ forName: .onboardingCompleted,
|
|
|
|
|
+ object: nil,
|
|
|
|
|
+ queue: .main
|
|
|
|
|
+ ) { [self] _ in
|
|
|
|
|
+ showOnboarding = false
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
let submodulesInfo = BuildDetails.shared.submodules.map { key, value in
|
|
let submodulesInfo = BuildDetails.shared.submodules.map { key, value in
|
|
|
"\(key): \(value.branch) \(value.commitSHA)"
|
|
"\(key): \(value.branch) \(value.commitSHA)"
|
|
|
}.joined(separator: ", ")
|
|
}.joined(separator: ", ")
|
|
@@ -185,7 +195,7 @@ extension Notification.Name {
|
|
|
.onReceive(Foundation.NotificationCenter.default.publisher(for: .initializationError)) { _ in
|
|
.onReceive(Foundation.NotificationCenter.default.publisher(for: .initializationError)) { _ in
|
|
|
self.showLoadingError = true
|
|
self.showLoadingError = true
|
|
|
}
|
|
}
|
|
|
- } else if onboardingManager.shouldShowOnboarding {
|
|
|
|
|
|
|
+ } else if showOnboarding {
|
|
|
// Show onboarding if needed
|
|
// Show onboarding if needed
|
|
|
Onboarding.RootView(resolver: resolver, onboardingManager: onboardingManager)
|
|
Onboarding.RootView(resolver: resolver, onboardingManager: onboardingManager)
|
|
|
.preferredColorScheme(colorScheme(for: .dark) ?? nil)
|
|
.preferredColorScheme(colorScheme(for: .dark) ?? nil)
|