import SwiftUI

struct ContentView: View {
   @Environment(ApplicationData.self) private var appData

   var body: some View {
      NavigationStack {
         List(appData.userData) { book in
            CellBook(book: book)
         }
         .navigationTitle(Text("Books"))
      }
   }
}
struct CellBook: View {
   let book: Book

   var body: some View {
      HStack(alignment: .top) {
         Image(book.cover)
            .resizable()
            .scaledToFit()
            .frame(width: 80, height: 100)
         VStack(alignment: .leading, spacing: 2) {
            Text(book.title).bold()
            Text(book.author)
            Text(book.displayYear).font(.caption)
            Spacer()
         }.padding(.top, 5)
         Spacer()
      }
   }
}
#Preview {
   ContentView()
      .environment(ApplicationData.shared)
}