38 lines
928 B
Swift
38 lines
928 B
Swift
//
|
|
// HomeScreenViewModel.swift
|
|
// secant
|
|
//
|
|
// Created by Francisco Gindre on 8/9/21.
|
|
//
|
|
|
|
import Foundation
|
|
import Combine
|
|
|
|
class HomeScreenViewModel: BaseViewModel<Services>, ObservableObject {
|
|
enum Status {
|
|
case syncing(progress: Float)
|
|
case offline
|
|
case error(error: Error)
|
|
}
|
|
|
|
@Published var balance: WalletBalance = Balance.nullBalance
|
|
|
|
@Published var fiatConversion: Decimal = 0
|
|
|
|
@Published var status = Status.offline
|
|
|
|
}
|
|
|
|
extension HomeScreenViewModel {
|
|
static func mockWithValues(services: Services,
|
|
status: Status,
|
|
balance: WalletBalance,
|
|
fiatConversion: Decimal) -> HomeScreenViewModel {
|
|
let vm = HomeScreenViewModel(services: services)
|
|
vm.status = status
|
|
vm.balance = balance
|
|
vm.fiatConversion = fiatConversion
|
|
return vm
|
|
}
|
|
}
|