25 lines
612 B
Swift
25 lines
612 B
Swift
import Foundation
|
|
import SwiftData
|
|
|
|
@MainActor
|
|
final class SwiftDataService {
|
|
static let shared = SwiftDataService()
|
|
|
|
let container: ModelContainer
|
|
|
|
private init() {
|
|
let schema = Schema([
|
|
Category.self,
|
|
TaskItem.self,
|
|
TaskLog.self,
|
|
Goal.self
|
|
])
|
|
let config = ModelConfiguration(schema: schema, isStoredInMemoryOnly: false)
|
|
do {
|
|
container = try ModelContainer(for: schema, configurations: config)
|
|
} catch {
|
|
fatalError("SwiftData container failed to initialize: \(error)")
|
|
}
|
|
}
|
|
}
|