|
@@ -2,6 +2,7 @@ import CGMBLEKitUI
|
|
|
import Combine
|
|
import Combine
|
|
|
import CoreData
|
|
import CoreData
|
|
|
import Foundation
|
|
import Foundation
|
|
|
|
|
+import LoopKit
|
|
|
import LoopKitUI
|
|
import LoopKitUI
|
|
|
import Observation
|
|
import Observation
|
|
|
import SwiftDate
|
|
import SwiftDate
|
|
@@ -106,6 +107,7 @@ extension Home {
|
|
|
var cgmAvailable: Bool = false
|
|
var cgmAvailable: Bool = false
|
|
|
var listOfCGM: [CGMModel] = []
|
|
var listOfCGM: [CGMModel] = []
|
|
|
var cgmCurrent = cgmDefaultModel
|
|
var cgmCurrent = cgmDefaultModel
|
|
|
|
|
+ var pumpInitialSettings = PumpConfig.PumpInitialSettings.default
|
|
|
var shouldRunDeleteOnSettingsChange = true
|
|
var shouldRunDeleteOnSettingsChange = true
|
|
|
|
|
|
|
|
var showCarbsRequiredBadge: Bool = true
|
|
var showCarbsRequiredBadge: Bool = true
|
|
@@ -549,9 +551,11 @@ extension Home {
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
private func setupPumpSettings() async {
|
|
private func setupPumpSettings() async {
|
|
|
- let maxBasal = await provider.pumpSettings().maxBasal
|
|
|
|
|
|
|
+ let settings = await provider.pumpSettings()
|
|
|
await MainActor.run {
|
|
await MainActor.run {
|
|
|
- self.maxBasal = maxBasal
|
|
|
|
|
|
|
+ self.maxBasal = settings.maxBasal
|
|
|
|
|
+ self.pumpInitialSettings.maxBasalRateUnitsPerHour = Double(settings.maxBasal)
|
|
|
|
|
+ self.pumpInitialSettings.maxBolusUnits = Double(settings.maxBolus)
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
|
|
|
|
@@ -559,6 +563,13 @@ extension Home {
|
|
|
let basalProfile = await provider.getBasalProfile()
|
|
let basalProfile = await provider.getBasalProfile()
|
|
|
await MainActor.run {
|
|
await MainActor.run {
|
|
|
self.basalProfile = basalProfile
|
|
self.basalProfile = basalProfile
|
|
|
|
|
+
|
|
|
|
|
+ if let schedule = BasalRateSchedule(
|
|
|
|
|
+ dailyItems: basalProfile
|
|
|
|
|
+ .map { RepeatingScheduleValue(startTime: TimeInterval($0.minutes * 60), value: Double($0.rate)) }
|
|
|
|
|
+ ) {
|
|
|
|
|
+ self.pumpInitialSettings.basalSchedule = schedule
|
|
|
|
|
+ }
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
|
|
|