RootView.swift 577 B

12345678910111213141516171819202122
  1. import SwiftUI
  2. struct RootView: View {
  3. let session: AppSessionState
  4. @Bindable var splashViewModel: SplashViewModel
  5. var body: some View {
  6. ZStack {
  7. FrontPageView(session: session)
  8. if splashViewModel.isVisible {
  9. SplashScreenView(viewModel: splashViewModel)
  10. .transition(.opacity)
  11. .zIndex(1)
  12. }
  13. }
  14. .animation(.easeInOut(duration: 0.45), value: splashViewModel.isVisible)
  15. .task {
  16. await splashViewModel.runIfNeeded()
  17. }
  18. }
  19. }