Includes SwiftData dual-store architecture (local reference + CloudKit user data), JSON-based data seeding, 20 tense guides, 20 grammar notes, SRS review system, course vocabulary, and widget support. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
25 lines
709 B
Swift
25 lines
709 B
Swift
import SwiftData
|
|
import Foundation
|
|
|
|
@Model
|
|
public final class CourseDeck {
|
|
public var id: String = ""
|
|
public var weekNumber: Int = 0
|
|
public var title: String = ""
|
|
public var cardCount: Int = 0
|
|
public var courseName: String = ""
|
|
public var isReversed: Bool = false
|
|
|
|
@Relationship(deleteRule: .cascade, inverse: \VocabCard.deck)
|
|
public var cards: [VocabCard]?
|
|
|
|
public init(id: String, weekNumber: Int, title: String, cardCount: Int, courseName: String, isReversed: Bool) {
|
|
self.id = id
|
|
self.weekNumber = weekNumber
|
|
self.title = title
|
|
self.cardCount = cardCount
|
|
self.courseName = courseName
|
|
self.isReversed = isReversed
|
|
}
|
|
}
|