/* * Copyright 2021 Google LLC * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ import SwiftUI import GoogleSignIn @main struct DaysUntilBirthday: App { @StateObject var authViewModel = AuthenticationViewModel() var body: some Scene { WindowGroup { ContentView() .environmentObject(authViewModel) .onAppear { GIDSignIn.sharedInstance.restorePreviousSignIn { user, error in if let user = user { self.authViewModel.state = .signedIn(user) } else if let error = error { self.authViewModel.state = .signedOut print("There was an error restoring the previous sign-in: \(error)") } else { self.authViewModel.state = .signedOut } } } .onOpenURL { url in GIDSignIn.sharedInstance.handle(url) } } } }