import Foundation import SwiftData enum TaskType: String, Codable, CaseIterable { case timer case counter } @Model final class TaskItem { var id: UUID var name: String var icon: String var taskType: TaskType var createdAt: Date var isArchived: Bool var sortOrder: Int @Relationship(deleteRule: .nullify, inverse: \TagEntity.tasks) var tags: [TagEntity] = [] @Relationship(deleteRule: .cascade, inverse: \TrackingRecord.task) var trackingRecords: [TrackingRecord] = [] init( id: UUID = UUID(), name: String, icon: String = "star", taskType: TaskType = .timer, createdAt: Date = .now, isArchived: Bool = false, sortOrder: Int = 0 ) { self.id = id self.name = name self.icon = icon self.taskType = taskType self.createdAt = createdAt self.isArchived = isArchived self.sortOrder = sortOrder } }