Files
WerkoutIOS/Werkout_ios/AccountView/AccountView.swift
Trey t 24ee992f93 WIP
2023-06-25 10:59:20 -05:00

68 lines
1.8 KiB
Swift

//
// AccountView.swift
// Werkout_ios
//
// Created by Trey Tartt on 6/15/23.
//
import Foundation
import SwiftUI
struct AccountView: View {
@State var completedWorkouts: [CompletedWorkout]?
@ObservedObject var userStore = UserStore.shared
var body: some View {
VStack {
if let registeredUser = userStore.registeredUser {
VStack(spacing: 10) {
if let nickName = registeredUser.nickName {
Text(nickName)
.font(.title)
}
HStack {
Text(registeredUser.firstName ?? "-")
Text(registeredUser.lastName ?? "-")
}
if let email = registeredUser.email {
Text(email)
}
}
}
if let completedWorkouts = completedWorkouts {
Text("\(completedWorkouts.count)")
}
Spacer()
}
.onAppear{
// fetchCompletedWorkouts()
}
}
func fetchCompletedWorkouts() {
CompletedWorkoutFetchable().fetch(completion: { result in
switch result {
case .success(let model):
completedWorkouts = model
case .failure(let failure):
fatalError(failure.localizedDescription)
}
})
}
}
struct AccountView_Previews: PreviewProvider {
static let userStore = UserStore.shared
static let completedWorkouts = PreviewWorkout.parseCompletedWorkouts()
static var previews: some View {
AccountView(completedWorkouts: completedWorkouts)
.onAppear{
userStore.setFakeUser()
}
}
}