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

30 lines
713 B
Swift

import Foundation
import SwiftData
@Model
final class Workout {
var start: Date = Date()
var end: Date?
var status: WorkoutStatus? = WorkoutStatus.notStarted
@Relationship(deleteRule: .nullify)
var split: Split?
@Relationship(deleteRule: .cascade, inverse: \WorkoutLog.workout)
var logs: [WorkoutLog]? = []
init(start: Date, end: Date, split: Split?) {
self.start = start
self.end = end
self.split = split
}
var label: String {
if status == .completed, let endDate = end {
return "\(start.formattedDate())\(endDate.formattedDate())"
} else {
return start.formattedDate()
}
}
}