BolusProvider.swift 1.7 KB

1234567891011121314151617181920212223242526272829303132333435363738
  1. extension Bolus {
  2. final class Provider: BaseProvider, BolusProvider {
  3. func getPumpSettings() async -> PumpSettings {
  4. await storage.retrieveAsync(OpenAPS.Settings.settings, as: PumpSettings.self)
  5. ?? PumpSettings(from: OpenAPS.defaults(for: OpenAPS.Settings.settings))
  6. ?? PumpSettings(insulinActionCurve: 6, maxBolus: 10, maxBasal: 2)
  7. }
  8. func getBasalProfile() async -> [BasalProfileEntry] {
  9. await storage.retrieveAsync(OpenAPS.Settings.basalProfile, as: [BasalProfileEntry].self)
  10. ?? [BasalProfileEntry](from: OpenAPS.defaults(for: OpenAPS.Settings.basalProfile))
  11. ?? []
  12. }
  13. func getCarbRatios() async -> CarbRatios {
  14. await storage.retrieveAsync(OpenAPS.Settings.carbRatios, as: CarbRatios.self)
  15. ?? CarbRatios(from: OpenAPS.defaults(for: OpenAPS.Settings.carbRatios))
  16. ?? CarbRatios(units: .grams, schedule: [])
  17. }
  18. func getBGTarget() async -> BGTargets {
  19. await storage.retrieveAsync(OpenAPS.Settings.bgTargets, as: BGTargets.self)
  20. ?? BGTargets(from: OpenAPS.defaults(for: OpenAPS.Settings.bgTargets))
  21. ?? BGTargets(units: .mgdL, userPreferredUnits: .mgdL, targets: [])
  22. }
  23. func getISFValues() async -> InsulinSensitivities {
  24. await storage.retrieveAsync(OpenAPS.Settings.insulinSensitivities, as: InsulinSensitivities.self)
  25. ?? InsulinSensitivities(from: OpenAPS.defaults(for: OpenAPS.Settings.insulinSensitivities))
  26. ?? InsulinSensitivities(
  27. units: .mgdL,
  28. userPreferredUnits: .mgdL,
  29. sensitivities: []
  30. )
  31. }
  32. }
  33. }