import SwiftUI

struct BooksView: View {
   @Environment(ApplicationData.self) private var appData
   @Binding var selectedBook: Book?

   var body: some View {
      List(appData.userData, selection: $selectedBook) { book in
         NavigationLink(value: book, label: {
            Text(book.title)
         })
      }
      .listStyle(.sidebar)
      .navigationTitle("Books")
   }
}
#Preview {
   @Previewable @State var selected: Book? = nil

   BooksView(selectedBook: $selected)
      .environment(ApplicationData.shared)
}