23 lines
549 B
Swift
23 lines
549 B
Swift
import Foundation
|
|
import SwiftData
|
|
|
|
@Model
|
|
class TodoList: Identifiable {
|
|
private(set) var id: UUID
|
|
var name: String
|
|
@Relationship(deleteRule: .cascade, inverse: \TodoItem.list)
|
|
var items: [TodoItem]
|
|
private(set) var isInbox: Bool
|
|
|
|
var sortedItems: [TodoItem] {
|
|
items.sorted { $0.createdAt < $1.createdAt }
|
|
}
|
|
|
|
init(id: UUID = UUID(), name: String, items: [TodoItem] = [], isInbox: Bool = false) {
|
|
self.id = id
|
|
self.name = name
|
|
self.items = items
|
|
self.isInbox = isInbox
|
|
}
|
|
}
|