From fbb37567460b689f01eb8a8717b9ac8673652c28 Mon Sep 17 00:00:00 2001 From: Shav Kinderlehrer Date: Tue, 12 Dec 2023 17:09:15 -0500 Subject: Implement signIn flow --- Jel/Views/SignIn/SignInView.swift | 42 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 42 insertions(+) create mode 100644 Jel/Views/SignIn/SignInView.swift (limited to 'Jel/Views/SignIn/SignInView.swift') 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()) +} -- cgit v1.2.3