Migrate from Core Data to SwiftData
- Replace Core Data with SwiftData for iOS 18+ - Create MoodEntryModel as @Model class replacing MoodEntry entity - Create SharedModelContainer for App Group container sharing - Create DataController with CRUD extensions replacing PersistenceController - Update all views and view models to use MoodEntryModel - Update widget extension to use SwiftData - Remove old Core Data files (Persistence*.swift, .xcdatamodeld) - Add EntryType enum with all entry type cases - Fix widget label truncation with proper spacing and text scaling 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
24
Shared/Persisence/DataControllerUPDATE.swift
Normal file
24
Shared/Persisence/DataControllerUPDATE.swift
Normal file
@@ -0,0 +1,24 @@
|
||||
//
|
||||
// DataControllerUPDATE.swift
|
||||
// Feels
|
||||
//
|
||||
// SwiftData UPDATE operations.
|
||||
//
|
||||
|
||||
import SwiftData
|
||||
import Foundation
|
||||
|
||||
extension DataController {
|
||||
@discardableResult
|
||||
func update(entryDate: Date, withMood mood: Mood) -> Bool {
|
||||
guard let entry = getEntry(byDate: entryDate) else {
|
||||
return false
|
||||
}
|
||||
|
||||
entry.moodValue = mood.rawValue
|
||||
saveAndRunDataListeners()
|
||||
|
||||
EventLogger.log(event: "update_entry")
|
||||
return true
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user