struct ContentView: View {
   @State private var appData = ApplicationData.shared
   @State private var sort = [KeyPathComparator(\ConsumableItem.name)]

   var body: some View {
      Table(appData.listOfItems, sortOrder: $sort) {
         TableColumn("Name", value: \.name)
         TableColumn("Category", value: \.category)
         TableColumn("Calories", value: \.calories) { item in
            Text("\(item.calories)")
         }.width(100)
      }
      .padding(20)
      .onChange(of: sort) {
         appData.listOfItems.sort(using: sort)
      }
   }
}