mirror of
https://github.com/XcodesOrg/XcodesApp.git
synced 2026-03-25 08:55:46 +00:00
Replace .alert with .emittingError
This commit is contained in:
parent
f1cdf65be7
commit
a3e9101397
7 changed files with 15 additions and 31 deletions
|
|
@ -38,7 +38,7 @@ extension AppState {
|
|||
receiveCompletion: { [unowned self] completion in
|
||||
switch completion {
|
||||
case let .failure(error):
|
||||
self.error = AlertContent(title: "Update Error", message: error.legibleLocalizedDescription)
|
||||
self.error = error
|
||||
case .finished:
|
||||
Current.defaults.setDate(Current.date(), forKey: "lastUpdated")
|
||||
}
|
||||
|
|
|
|||
|
|
@ -27,13 +27,16 @@ class AppState: ObservableObject {
|
|||
}
|
||||
@Published var updatePublisher: AnyCancellable?
|
||||
var isUpdating: Bool { updatePublisher != nil }
|
||||
@Published var error: AlertContent?
|
||||
@Published var authError: AlertContent?
|
||||
@Published var presentingSignInAlert = false
|
||||
@Published var isProcessingAuthRequest = false
|
||||
@Published var secondFactorData: SecondFactorData?
|
||||
@Published var xcodeBeingConfirmedForUninstallation: Xcode?
|
||||
@Published var helperInstallState: HelperInstallState = .notInstalled
|
||||
|
||||
// MARK: - Errors
|
||||
|
||||
@Published var error: Error?
|
||||
@Published var authError: Error?
|
||||
|
||||
init() {
|
||||
try? loadCachedAvailableXcodes()
|
||||
|
|
@ -158,7 +161,7 @@ class AppState: ObservableObject {
|
|||
}
|
||||
|
||||
// This error message is not user friendly... need to extract some meaningful data in the different cases
|
||||
self.authError = AlertContent(title: "Error signing in", message: error.legibleLocalizedDescription)
|
||||
self.authError = error
|
||||
case .finished:
|
||||
switch self.authenticationState {
|
||||
case .authenticated, .unauthenticated:
|
||||
|
|
@ -220,7 +223,7 @@ class AppState: ObservableObject {
|
|||
.sink(
|
||||
receiveCompletion: { [unowned self] completion in
|
||||
if case let .failure(error) = completion {
|
||||
self.error = AlertContent(title: "Error uninstalling Xcode", message: error.legibleLocalizedDescription)
|
||||
self.error = error
|
||||
}
|
||||
self.uninstallPublisher = nil
|
||||
},
|
||||
|
|
@ -251,7 +254,7 @@ class AppState: ObservableObject {
|
|||
.sink(
|
||||
receiveCompletion: { [unowned self] completion in
|
||||
if case let .failure(error) = completion {
|
||||
self.error = AlertContent(title: "Error selecting Xcode", message: error.legibleLocalizedDescription)
|
||||
self.error = error
|
||||
}
|
||||
self.selectPublisher = nil
|
||||
},
|
||||
|
|
|
|||
|
|
@ -1,3 +1,4 @@
|
|||
import ErrorHandling
|
||||
import SwiftUI
|
||||
|
||||
struct MainWindow: View {
|
||||
|
|
@ -31,11 +32,7 @@ struct MainWindow: View {
|
|||
)
|
||||
.navigationSubtitle(subtitleText)
|
||||
.frame(minWidth: 600, maxWidth: .infinity, minHeight: 300, maxHeight: .infinity)
|
||||
.alert(item: $appState.error) { error in
|
||||
Alert(title: Text(error.title),
|
||||
message: Text(verbatim: error.message),
|
||||
dismissButton: .default(Text("OK")))
|
||||
}
|
||||
.emittingError($appState.error, recoveryHandler: { _ in })
|
||||
.sheet(isPresented: $appState.secondFactorData.isNotNil) {
|
||||
secondFactorView(appState.secondFactorData!)
|
||||
.environmentObject(appState)
|
||||
|
|
|
|||
|
|
@ -34,11 +34,7 @@ struct SignIn2FAView: View {
|
|||
.frame(height: 25)
|
||||
}
|
||||
.padding()
|
||||
.alert(item: $appState.authError) { error in
|
||||
Alert(title: Text(error.title),
|
||||
message: Text(verbatim: error.message),
|
||||
dismissButton: .default(Text("OK")))
|
||||
}
|
||||
.emittingError($appState.authError, recoveryHandler: { _ in })
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -38,11 +38,7 @@ struct SignInCredentialsView: View {
|
|||
.frame(height: 25)
|
||||
}
|
||||
.padding()
|
||||
.alert(item: $appState.authError) { error in
|
||||
Alert(title: Text(error.title),
|
||||
message: Text(verbatim: error.message),
|
||||
dismissButton: .default(Text("OK")))
|
||||
}
|
||||
.emittingError($appState.authError, recoveryHandler: { _ in })
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -39,11 +39,7 @@ struct SignInPhoneListView: View {
|
|||
}
|
||||
.padding()
|
||||
.frame(width: 400, height: 200)
|
||||
.alert(item: $appState.authError) { error in
|
||||
Alert(title: Text(error.title),
|
||||
message: Text(verbatim: error.message),
|
||||
dismissButton: .default(Text("OK")))
|
||||
}
|
||||
.emittingError($appState.authError, recoveryHandler: { _ in })
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -34,11 +34,7 @@ struct SignInSMSView: View {
|
|||
.frame(height: 25)
|
||||
}
|
||||
.padding()
|
||||
.alert(item: $appState.authError) { error in
|
||||
Alert(title: Text(error.title),
|
||||
message: Text(verbatim: error.message),
|
||||
dismissButton: .default(Text("OK")))
|
||||
}
|
||||
.emittingError($appState.authError, recoveryHandler: { _ in })
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Reference in a new issue