PumpConfigViewModel.swift 859 B

123456789101112131415161718192021222324252627282930
  1. import LoopKitUI
  2. import SwiftUI
  3. extension PumpConfig {
  4. class ViewModel<Provider>: BaseViewModel<Provider>, ObservableObject where Provider: PumpConfigProvider {
  5. @Published var setupPump = false
  6. private(set) var setupPumpType: PumpType = .minimed
  7. override func subscribe() {}
  8. func addPump(_ type: PumpType) {
  9. setupPump = true
  10. setupPumpType = type
  11. }
  12. }
  13. }
  14. extension PumpConfig.ViewModel: CompletionDelegate {
  15. func completionNotifyingDidComplete(_: CompletionNotifying) {
  16. setupPump = false
  17. }
  18. }
  19. extension PumpConfig.ViewModel: PumpManagerSetupViewControllerDelegate {
  20. func pumpManagerSetupViewController(_: PumpManagerSetupViewController, didSetUpPumpManager pumpManager: PumpManagerUI) {
  21. provider.setPumpManager(pumpManager)
  22. setupPump = false
  23. }
  24. }