import SwiftUI struct MainHub: View { @EnvironmentObject private var app: AppModel var body: some View { ZStack(alignment: .top) { TvColors.bg.ignoresSafeArea() Group { switch app.tab { case .home: NavigationStack { HomeView() } case .watchlist: NavigationStack { WatchlistView() } case .movies: NavigationStack { BrowseView(kind: "MOVIE", title: "Films") } case .series: NavigationStack { BrowseView(kind: "SERIES", title: "Series") } case .tv: NavigationStack { LiveTvView() } case .search: NavigationStack { SearchView() } case .settings: NavigationStack { SettingsView() } } } .frame(maxWidth: .infinity, maxHeight: .infinity) .padding(.top, app.isPlaybackActive ? 0 : 92) if !app.isPlaybackActive { TopNav() .zIndex(10) .transition(.move(edge: .top).combined(with: .opacity)) } } .animation(.easeOut(duration: 0.22), value: app.isPlaybackActive) .animation(.easeOut(duration: 0.2), value: app.tab) } }