Files
workouts/Workouts/Models/MuscleGroup.swift
2025-07-25 17:42:25 -04:00

50 lines
1.1 KiB
Swift

import Foundation
import SwiftData
import SwiftUI
@Model
final class MuscleGroup {
var name: String = ""
var descr: String = ""
@Relationship(deleteRule: .nullify)
var muscles: [Muscle]? = []
init(name: String, descr: String) {
self.name = name
self.descr = descr
}
}
// MARK: - EditableEntity Conformance
extension MuscleGroup: EditableEntity {
static func createNew() -> MuscleGroup {
return MuscleGroup(name: "", descr: "")
}
static var navigationTitle: String {
return "Muscle Groups"
}
@ViewBuilder
static func formView(for model: MuscleGroup) -> some View {
EntityAddEditView(model: model) { $model in
Section(header: Text("Name")) {
TextField("Name", text: $model.name)
.bold()
}
Section(header: Text("Description")) {
TextEditor(text: $model.descr)
.frame(minHeight: 100)
}
}
}
var count: Int? {
return muscles?.count
}
}