import SwiftUI
#if os(iOS)
import AVFAudio
#endif

@main
struct Audiobookshelf_swiftApp: App {
    @State private var appState = AppState()

    init() {
        #if os(iOS)
        configureAudioSession()
        #endif
    }

    var body: some Scene {
        #if os(macOS)
        WindowGroup {
            ContentView()
                .environment(appState)
        }
        .windowResizability(.contentSize)

        Settings {
            SettingsView()
                .environment(appState)
        }
        #else
        WindowGroup {
            ContentView()
                .environment(appState)
        }
        #endif
    }

    #if os(iOS)
    private func configureAudioSession() {
        do {
            let session = AVAudioSession.sharedInstance()
            try session.setCategory(.playback, mode: .default, options: [])
            try session.setActive(true)
        } catch {
            // non-fatal
        }
    }
    #endif
}
