|
|
@@ -1,4 +1,6 @@
|
|
|
+import LoopKit
|
|
|
import LoopKitUI
|
|
|
+import SwiftDate
|
|
|
import SwiftUI
|
|
|
|
|
|
extension PumpConfig {
|
|
|
@@ -6,12 +8,27 @@ extension PumpConfig {
|
|
|
@Published var setupPump = false
|
|
|
private(set) var setupPumpType: PumpType = .minimed
|
|
|
@Published var pumpState: PumpDisplayState?
|
|
|
+ private(set) var initialSettings: PumpInitialSettings = .default
|
|
|
|
|
|
override func subscribe() {
|
|
|
provider.pumpDisplayState
|
|
|
.receive(on: DispatchQueue.main)
|
|
|
.assign(to: \.pumpState, on: self)
|
|
|
.store(in: &lifetime)
|
|
|
+
|
|
|
+ let basalSchedule = BasalRateSchedule(
|
|
|
+ dailyItems: provider.basalProfile().map {
|
|
|
+ RepeatingScheduleValue(startTime: $0.minutes.minutes.timeInterval, value: Double($0.rate))
|
|
|
+ }
|
|
|
+ )
|
|
|
+
|
|
|
+ let pumpSettings = provider.pumpSettings()
|
|
|
+
|
|
|
+ initialSettings = PumpInitialSettings(
|
|
|
+ maxBolusUnits: Double(pumpSettings.maxBolus),
|
|
|
+ maxBasalRateUnitsPerHour: Double(pumpSettings.maxBasal),
|
|
|
+ basalSchedule: basalSchedule!
|
|
|
+ )
|
|
|
}
|
|
|
|
|
|
func addPump(_ type: PumpType) {
|