diff options
author | Shav Kinderlehrer <[email protected]> | 2023-12-12 17:09:15 -0500 |
---|---|---|
committer | Shav Kinderlehrer <[email protected]> | 2023-12-12 17:09:15 -0500 |
commit | fbb37567460b689f01eb8a8717b9ac8673652c28 (patch) | |
tree | b6517179cb849732efb8660edfa9899456420d3b /Jel/Views/SignIn/SignInView.swift | |
parent | 02fc87fe2588cdca5188cf1a6d338ce83de65a43 (diff) | |
download | jel-fbb37567460b689f01eb8a8717b9ac8673652c28.tar.gz jel-fbb37567460b689f01eb8a8717b9ac8673652c28.zip |
Implement signIn flow
Diffstat (limited to 'Jel/Views/SignIn/SignInView.swift')
-rw-r--r-- | Jel/Views/SignIn/SignInView.swift | 42 |
1 files changed, 42 insertions, 0 deletions
diff --git a/Jel/Views/SignIn/SignInView.swift b/Jel/Views/SignIn/SignInView.swift new file mode 100644 index 0000000..c06788d --- /dev/null +++ b/Jel/Views/SignIn/SignInView.swift @@ -0,0 +1,42 @@ +// +// SignInView.swift +// Jel +// +// Created by zerocool on 12/12/23. +// + +import SwiftUI + +struct SignInView: View { + @EnvironmentObject var jellyfinClient: JellyfinClientController + @ObservedObject var authState: AuthStateController + @State var serverUrlIsValid: Bool = false + + var body: some View { + NavigationStack { + AddServerView(authState: authState, serverUrlIsValid: $serverUrlIsValid) + .navigationDestination(isPresented: $serverUrlIsValid) { + SignInToServerView(authState: authState) + } + } + .onAppear { + Task { + await checkLoadedServerUrl() + } + } + } + + func checkLoadedServerUrl() async { + if authState.serverUrl == nil { + return + } + + if await jellyfinClient.isJellyfinServer() { + serverUrlIsValid = true + } + } +} + +#Preview { + SignInView(authState: AuthStateController()) +} |