Add Email/Terms/ReCaptcha into the Authentication flow

Replace ReCaptcha navigation delegate with a WKUserContentController.
Move callback property closures onto the MainActor.
Show a loading indicator whilst waiting for the authentication service to start.
Move nextUncompletedStage into FlowResult.
Handle text field actions during authentication.
Remove scroll view tweaks in server selection screen following EMS banner removal.
This commit is contained in:
Doug
2022-05-12 17:40:36 +01:00
committed by Doug
parent 02e5f0bf2e
commit 1b74f87b35
42 changed files with 635 additions and 263 deletions
@@ -25,21 +25,19 @@ import Introspect
/// https://www.figma.com/file/X4XTH9iS2KGJ2wFKDqkyed/Compound?node-id=2039%3A26415
struct BorderedInputFieldStyle: TextFieldStyle {
@Environment(\.theme) var theme: ThemeSwiftUI
@Environment(\.isEnabled) var isEnabled: Bool
@Environment(\.theme) private var theme: ThemeSwiftUI
@Environment(\.isEnabled) private var isEnabled: Bool
var isEditing: Bool = false
var isError: Bool = false
private var borderColor: Color {
if !isEnabled {
return theme.colors.quinaryContent
} else if isError {
if isError {
return theme.colors.alert
} else if isEditing {
return theme.colors.accent
}
return theme.colors.quarterlyContent
return theme.colors.quinaryContent
}
private var accentColor: Color {