Skip to content

Commit

Permalink
Option to only display SAGE
Browse files Browse the repository at this point in the history
  • Loading branch information
Jon-b-m committed Feb 18, 2025
1 parent 970aa0d commit edacd2c
Show file tree
Hide file tree
Showing 7 changed files with 22 additions and 5 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -95,5 +95,6 @@
"ketoProtectBasalAbsolut": 0,
"extendHomeView": true,
"extended_overrides": false,
"displayExpiration": false
"displayExpiration": false,
"anubis": false
}
5 changes: 5 additions & 0 deletions FreeAPS/Sources/Models/FreeAPSSettings.swift
Original file line number Diff line number Diff line change
Expand Up @@ -76,6 +76,7 @@ struct FreeAPSSettings: JSON, Equatable {
var extendHomeView = true
var displayExpiration = false
var sensorDays: Double = 10
var anubis: Bool = false
// Auto ISF
var autoisf: Bool = false
var smbDeliveryRatioBGrange: Decimal = 0
Expand Down Expand Up @@ -196,6 +197,10 @@ extension FreeAPSSettings: Decodable {
settings.useFPUconversion = useFPUconversion
}

if let anubis = try? container.decode(Bool.self, forKey: .anubis) {
settings.anubis = anubis
}

if let individualAdjustmentFactor = try? container.decode(Decimal.self, forKey: .individualAdjustmentFactor) {
settings.individualAdjustmentFactor = individualAdjustmentFactor
}
Expand Down
3 changes: 3 additions & 0 deletions FreeAPS/Sources/Modules/Home/HomeStateModel.swift
Original file line number Diff line number Diff line change
Expand Up @@ -78,6 +78,7 @@ extension Home {
@Published var displayExpiration = false
@Published var cgm: CGMType = .nightscout
@Published var sensorDays: Double = 10
@Published var anubis: Bool = false

// Chart data
var data = ChartModel(
Expand Down Expand Up @@ -166,6 +167,7 @@ extension Home {
displayExpiration = settingsManager.settings.displayExpiration
cgm = settingsManager.settings.cgm
sensorDays = settingsManager.settings.sensorDays
anubis = settingsManager.settings.anubis

broadcaster.register(GlucoseObserver.self, observer: self)
broadcaster.register(SuggestionObserver.self, observer: self)
Expand Down Expand Up @@ -653,6 +655,7 @@ extension Home.StateModel:
displayExpiration = settingsManager.settings.displayExpiration
cgm = settingsManager.settings.cgm
sensorDays = settingsManager.settings.sensorDays
anubis = settingsManager.settings.anubis
setupGlucose()
setupOverrideHistory()
setupData()
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,7 @@ struct CurrentGlucoseView: View {
@Binding var displayExpiration: Bool
@Binding var cgm: CGMType
@Binding var sensordays: Double
@Binding var anubis: Bool

@Environment(\.colorScheme) var colorScheme
@Environment(\.sizeCategory) private var fontSize
Expand Down Expand Up @@ -96,7 +97,7 @@ struct CurrentGlucoseView: View {
if let recent = recentGlucose {
if displayDelta, !scrolling, let deltaInt = delta,
!(units == .mmolL && abs(deltaInt) <= 1) { deltaView(deltaInt) }
if displayExpiration {
if displayExpiration || anubis {
sageView
}
VStack(spacing: 15) {
Expand Down Expand Up @@ -142,9 +143,10 @@ struct CurrentGlucoseView: View {
ZStack {
if let date = recentGlucose?.sessionStartDate {
let expiration = (cgm == .xdrip || cgm == .glucoseDirect) ? sensordays * 8.64E4 : cgm.expiration
let remainingTime: TimeInterval = expiration - (-1 * date.timeIntervalSinceNow)
let remainingTime: TimeInterval = anubis ? (-1 * date.timeIntervalSinceNow) : expiration -
(-1 * date.timeIntervalSinceNow)

Sage(amount: remainingTime, expiration: expiration)
Sage(amount: remainingTime, expiration: anubis ? remainingTime : expiration)
.frame(width: 59, height: 26)
.overlay {
HStack {
Expand Down
2 changes: 1 addition & 1 deletion FreeAPS/Sources/Modules/Home/View/HomeRootView.swift
Original file line number Diff line number Diff line change
Expand Up @@ -109,7 +109,7 @@ extension Home {
alwaysUseColors: $state.alwaysUseColors,
displayDelta: $state.displayDelta,
scrolling: $displayGlucose,
displayExpiration: $state.displayExpiration, cgm: $state.cgm, sensordays: $state.sensorDays
displayExpiration: $state.displayExpiration, cgm: $state.cgm, sensordays: $state.sensorDays, anubis: $state.anubis
)
.onTapGesture {
if state.alarm == nil {
Expand Down
2 changes: 2 additions & 0 deletions FreeAPS/Sources/Modules/StatConfig/StatConfigStateModel.swift
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,7 @@ extension StatConfig {
@Published var hideInsulinBadge: Bool = false
@Published var extendHomeView: Bool = true
@Published var displayExpiration: Bool = false
@Published var anubis: Bool = false

var units: GlucoseUnits = .mmolL

Expand All @@ -43,6 +44,7 @@ extension StatConfig {
subscribeSetting(\.hideInsulinBadge, on: $hideInsulinBadge) { hideInsulinBadge = $0 }
subscribeSetting(\.extendHomeView, on: $extendHomeView) { extendHomeView = $0 }
subscribeSetting(\.displayExpiration, on: $displayExpiration) { displayExpiration = $0 }
subscribeSetting(\.anubis, on: $anubis) { anubis = $0 }

subscribeSetting(\.low, on: $low, initial: {
let value = max(min($0, 90), 40)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -67,6 +67,10 @@ extension StatConfig {
Toggle("Hide Concentration Badge", isOn: $state.hideInsulinBadge)
} header: { Text("Header settings") }

Section {
Toggle("Display Sensor Age, but not Time Remaining", isOn: $state.anubis)
} header: { Text("Anubis") }

Section {
HStack {
Text("Low")
Expand Down

0 comments on commit edacd2c

Please sign in to comment.