TidePoolStartView.swift 1.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. import SwiftUI
  2. struct TidePoolStartView: View {
  3. @ObservedObject var state: Settings.StateModel
  4. var body: some View {
  5. Form {
  6. Section {
  7. Text("Tidepool")
  8. .onTapGesture {
  9. state.setupTidePool = true
  10. }
  11. } header: {
  12. Text("Connect to Tidepool")
  13. } footer: {
  14. Text(
  15. "When connected, uploading of carbs, bolus, basal and glucose from Trio to your Tidepool account is enabled. \n\nUse your Tidepool credentials to login. If you dont already have a Tidepool account, you can sign up for one on the login page."
  16. )
  17. }
  18. }
  19. .sheet(isPresented: $state.setupTidePool) {
  20. if let serviceUIType = state.serviceUIType,
  21. let pluginHost = state.provider.tidePoolManager.getTidePoolPluginHost()
  22. {
  23. if let serviceUI = state.provider.tidePoolManager.getTidePoolServiceUI() {
  24. TidePoolSettingsView(
  25. serviceUI: serviceUI,
  26. serviceOnBoardDelegate: self.state,
  27. serviceDelegate: self.state
  28. )
  29. } else {
  30. TidePoolSetupView(
  31. serviceUIType: serviceUIType,
  32. pluginHost: pluginHost,
  33. serviceOnBoardDelegate: self.state,
  34. serviceDelegate: self.state
  35. )
  36. }
  37. }
  38. }
  39. .navigationTitle("Tidepool")
  40. }
  41. }