// // SplitPickerView.swift // Workouts // // Created by rzen on 7/13/25 at 7:17 PM. // // Copyright 2025 Rouslan Zenetl. All Rights Reserved. // import SwiftUI import SwiftData struct ExercisePickerView: View { @Environment(\.modelContext) private var modelContext @Environment(\.dismiss) private var dismiss @Query(sort: [SortDescriptor(\ExerciseType.name)]) private var exerciseTypes: [ExerciseType] // @Query(sort: [SortDescriptor(\Exercise.name)]) private var exercises: [Exercise] var onExerciseSelected: (Exercise) -> Void var body: some View { NavigationStack { VStack { Form { ForEach (exerciseTypes) { exerciseType in if let exercises = exerciseType.exercises, !exercises.isEmpty { let sortedExercises = exercises.sorted(by: { $0.name < $1.name }) Section (header: Text("\(exerciseType.name)")) { List { ForEach(sortedExercises) { exercise in Button(action: { onExerciseSelected(exercise) dismiss() }) { ListItem(text: exercise.name) } .buttonStyle(.plain) } } } } } } } .toolbar { ToolbarItem(placement: .navigationBarLeading) { Button("Cancel") { dismiss() } } } } } }