This commit is contained in:
Trey t
2023-06-22 20:27:21 -05:00
parent cf22aeee19
commit a43acc9c27
12 changed files with 205 additions and 36 deletions

View File

@@ -0,0 +1,32 @@
//
// MainViewViewModel.swift
// Werkout_ios
//
// Created by Trey Tartt on 6/14/23.
//
import Combine
import Foundation
class WorkoutDetailViewModel: ObservableObject {
enum WorkoutDetailViewModelStatus {
case loading
case showWorkout(Workout)
}
@Published var status: WorkoutDetailViewModelStatus
init(workout: Workout) {
self.status = .loading
WorkoutDetailFetchable(workoutID: workout.id).fetch(completion: { result in
switch result {
case .success(let model):
DispatchQueue.main.async {
self.status = .showWorkout(model)
}
case .failure(let failure):
fatalError("failed \(failure.localizedDescription)")
}
})
}
}