// // SectionEventBannerView.swift // SodaLive // // Created by klaus on 2023/08/09. // import SwiftUI import Kingfisher struct SectionEventBannerView: View { @State private var currentIndex = 0 @State private var timer = Timer.publish(every: 4, on: .main, in: .common).autoconnect() @AppStorage("token") private var token: String = UserDefaults.string(forKey: UserDefaultsKey.token) let items: [EventItem] var body: some View { VStack(spacing: 16) { TabView(selection: $currentIndex) { ForEach(0.. 0, let url = URL(string: link), UIApplication.shared.canOpenURL(url) { UIApplication.shared.open(url) } } else { AppState.shared.setAppStep(step: .login) } } .onAppear { let urlString = item.thumbnailImageUrl.addingPercentEncoding( withAllowedCharacters: .urlQueryAllowed ) ?? item.thumbnailImageUrl boundURL = URL(string: urlString) } .onDisappear { boundURL = nil } } }