import Foundation import SwiftData final class WorkoutsContainer { static let logger = AppLogger( subsystem: Bundle.main.bundleIdentifier ?? "dev.rzen.indie.Workouts", category: "WorkoutsContainer" ) static func create() -> ModelContainer { let schema = Schema(versionedSchema: SchemaV1.self) let configuration = ModelConfiguration(cloudKitDatabase: .automatic) let container = try! ModelContainer(for: schema, migrationPlan: WorkoutsMigrationPlan.self, configurations: [configuration]) return container } @MainActor static var preview: ModelContainer { let configuration = ModelConfiguration(isStoredInMemoryOnly: true) do { let schema = Schema(SchemaV1.models) let container = try ModelContainer(for: schema, configurations: configuration) let context = ModelContext(container) // Create default data for previews DataLoader.create(modelContext: context) return container } catch { fatalError("Failed to create preview ModelContainer: \(error.localizedDescription)") } } }