|
@@ -60,7 +60,7 @@ extension AlgorithmAdvancedSettings {
|
|
|
units: state.units,
|
|
units: state.units,
|
|
|
type: .decimal("maxDailySafetyMultiplier"),
|
|
type: .decimal("maxDailySafetyMultiplier"),
|
|
|
label: NSLocalizedString("Max Daily Safety Multiplier", comment: "Max Daily Safety Multiplier"),
|
|
label: NSLocalizedString("Max Daily Safety Multiplier", comment: "Max Daily Safety Multiplier"),
|
|
|
- miniHint: "Limits temp basals to this % of your largest basal rate \nDefault:300%",
|
|
|
|
|
|
|
+ miniHint: "Limits temporary basal rates to this percentage of your largest basal rate",
|
|
|
verboseHint: VStack(spacing: 10) {
|
|
verboseHint: VStack(spacing: 10) {
|
|
|
Text("Default: 300%").bold()
|
|
Text("Default: 300%").bold()
|
|
|
VStack(alignment: .leading, spacing: 10) {
|
|
VStack(alignment: .leading, spacing: 10) {
|
|
@@ -68,8 +68,7 @@ extension AlgorithmAdvancedSettings {
|
|
|
"This setting restricts the maximum temporary basal rate Trio can set. At the default of 300%, it caps it at 3 times your highest programmed basal rate."
|
|
"This setting restricts the maximum temporary basal rate Trio can set. At the default of 300%, it caps it at 3 times your highest programmed basal rate."
|
|
|
)
|
|
)
|
|
|
Text("It serves as a safety limit, ensuring no temporary basal rates exceed safe levels.")
|
|
Text("It serves as a safety limit, ensuring no temporary basal rates exceed safe levels.")
|
|
|
- Text("Note: If Autotune is enabled, Trio uses Autotune basals instead of scheduled basals.").italic()
|
|
|
|
|
- Text("Warning: Increasing this setting is not advised.").bold().italic()
|
|
|
|
|
|
|
+ Text("Warning: Increasing this setting is not advised.").bold()
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
)
|
|
)
|
|
@@ -91,7 +90,7 @@ extension AlgorithmAdvancedSettings {
|
|
|
units: state.units,
|
|
units: state.units,
|
|
|
type: .decimal("currentBasalSafetyMultiplier"),
|
|
type: .decimal("currentBasalSafetyMultiplier"),
|
|
|
label: NSLocalizedString("Current Basal Safety Multiplier", comment: "Current Basal Safety Multiplier"),
|
|
label: NSLocalizedString("Current Basal Safety Multiplier", comment: "Current Basal Safety Multiplier"),
|
|
|
- miniHint: "Limits temp basals to this % of the current basal rate \nDefault: 400%",
|
|
|
|
|
|
|
+ miniHint: "Limits temporary basal rates to this percentage of the current basal rate",
|
|
|
verboseHint: VStack(spacing: 10) {
|
|
verboseHint: VStack(spacing: 10) {
|
|
|
Text("Default: 400%").bold()
|
|
Text("Default: 400%").bold()
|
|
|
VStack(alignment: .leading, spacing: 10) {
|
|
VStack(alignment: .leading, spacing: 10) {
|
|
@@ -101,8 +100,7 @@ extension AlgorithmAdvancedSettings {
|
|
|
Text(
|
|
Text(
|
|
|
"This prevents excessive dosing, especially during times of variable insulin sensitivity, enhancing safety."
|
|
"This prevents excessive dosing, especially during times of variable insulin sensitivity, enhancing safety."
|
|
|
)
|
|
)
|
|
|
- Text("Note: If Autotune is enabled, Trio uses Autotune basals instead of scheduled basals.").italic()
|
|
|
|
|
- Text("Warning: Increasing this setting is not advised.").bold().italic()
|
|
|
|
|
|
|
+ Text("Warning: Increasing this setting is not advised.").bold()
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
)
|
|
)
|
|
@@ -121,12 +119,12 @@ extension AlgorithmAdvancedSettings {
|
|
|
units: state.units,
|
|
units: state.units,
|
|
|
type: .decimal("dia"),
|
|
type: .decimal("dia"),
|
|
|
label: "Duration of Insulin Action",
|
|
label: "Duration of Insulin Action",
|
|
|
- miniHint: "Number of hours insulin is active in your body \nDefault: 6 hours",
|
|
|
|
|
|
|
+ miniHint: "Number of hours insulin is active in your body",
|
|
|
verboseHint: VStack(spacing: 10) {
|
|
verboseHint: VStack(spacing: 10) {
|
|
|
Text("Default: 6 hours").bold()
|
|
Text("Default: 6 hours").bold()
|
|
|
VStack(alignment: .leading, spacing: 10) {
|
|
VStack(alignment: .leading, spacing: 10) {
|
|
|
Text(
|
|
Text(
|
|
|
- "The Duration of Insulin Action (DIA) defines how long your insulin continues to lower blood glucose after a dose."
|
|
|
|
|
|
|
+ "The Duration of Insulin Action (DIA) defines how long your insulin continues to lower glucose readings after a dose."
|
|
|
)
|
|
)
|
|
|
Text(
|
|
Text(
|
|
|
"This helps the system accurately track Insulin on Board (IOB), avoiding over- or under-corrections by considering the tail end of insulin's effect"
|
|
"This helps the system accurately track Insulin on Board (IOB), avoiding over- or under-corrections by considering the tail end of insulin's effect"
|
|
@@ -134,8 +132,7 @@ extension AlgorithmAdvancedSettings {
|
|
|
Text(
|
|
Text(
|
|
|
"Tip: It is better to use Custom Peak Time rather than adjust your Duration of Insulin Action (DIA)"
|
|
"Tip: It is better to use Custom Peak Time rather than adjust your Duration of Insulin Action (DIA)"
|
|
|
)
|
|
)
|
|
|
- .italic()
|
|
|
|
|
- Text("Warning: Decreasing this setting is not advised.").bold().italic()
|
|
|
|
|
|
|
+ Text("Warning: Decreasing this setting is not advised.").bold()
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
)
|
|
)
|
|
@@ -155,12 +152,12 @@ extension AlgorithmAdvancedSettings {
|
|
|
type: .conditionalDecimal("insulinPeakTime"),
|
|
type: .conditionalDecimal("insulinPeakTime"),
|
|
|
label: NSLocalizedString("Use Custom Peak Time", comment: "Use Custom Peak Time"),
|
|
label: NSLocalizedString("Use Custom Peak Time", comment: "Use Custom Peak Time"),
|
|
|
conditionalLabel: NSLocalizedString("Insulin Peak Time", comment: "Insulin Peak Time"),
|
|
conditionalLabel: NSLocalizedString("Insulin Peak Time", comment: "Insulin Peak Time"),
|
|
|
- miniHint: "Sets time of insulin’s peak effect \nDefault: (Set by Insulin Type)",
|
|
|
|
|
|
|
+ miniHint: "Sets time of insulin's peak effect",
|
|
|
verboseHint: VStack(spacing: 10) {
|
|
verboseHint: VStack(spacing: 10) {
|
|
|
Text("Default: Set by Insulin Type").bold()
|
|
Text("Default: Set by Insulin Type").bold()
|
|
|
VStack(alignment: .leading, spacing: 10) {
|
|
VStack(alignment: .leading, spacing: 10) {
|
|
|
Text(
|
|
Text(
|
|
|
- "Insulin Peak Time defines when insulin is most effective in lowering blood glucose, set in minutes after dosing."
|
|
|
|
|
|
|
+ "Insulin Peak Time defines when insulin is most effective in lowering glucose, set in minutes after dosing."
|
|
|
)
|
|
)
|
|
|
Text(
|
|
Text(
|
|
|
"This peak informs the system when to expect the most potent glucose-lowering effect, helping it predict glucose trends more accurately."
|
|
"This peak informs the system when to expect the most potent glucose-lowering effect, helping it predict glucose trends more accurately."
|
|
@@ -186,7 +183,7 @@ extension AlgorithmAdvancedSettings {
|
|
|
units: state.units,
|
|
units: state.units,
|
|
|
type: .boolean,
|
|
type: .boolean,
|
|
|
label: NSLocalizedString("Skip Neutral Temps", comment: "Skip Neutral Temps"),
|
|
label: NSLocalizedString("Skip Neutral Temps", comment: "Skip Neutral Temps"),
|
|
|
- miniHint: "Skip neutral temp basals to reduce pump alerts \nDefault: OFF",
|
|
|
|
|
|
|
+ miniHint: "Skip neutral temporary basal rates to reduce pump alerts",
|
|
|
verboseHint: VStack {
|
|
verboseHint: VStack {
|
|
|
Text("Default: OFF").bold()
|
|
Text("Default: OFF").bold()
|
|
|
VStack(alignment: .leading, spacing: 10) {
|
|
VStack(alignment: .leading, spacing: 10) {
|
|
@@ -212,14 +209,14 @@ extension AlgorithmAdvancedSettings {
|
|
|
units: state.units,
|
|
units: state.units,
|
|
|
type: .boolean,
|
|
type: .boolean,
|
|
|
label: NSLocalizedString("Unsuspend If No Temp", comment: "Unsuspend If No Temp"),
|
|
label: NSLocalizedString("Unsuspend If No Temp", comment: "Unsuspend If No Temp"),
|
|
|
- miniHint: "Automatically resumes pump after suspension \nDefault: OFF",
|
|
|
|
|
|
|
+ miniHint: "Automatically resumes pump after suspension",
|
|
|
verboseHint: VStack(spacing: 10) {
|
|
verboseHint: VStack(spacing: 10) {
|
|
|
Text("Default: OFF").bold()
|
|
Text("Default: OFF").bold()
|
|
|
VStack(alignment: .leading, spacing: 10) {
|
|
VStack(alignment: .leading, spacing: 10) {
|
|
|
Text(
|
|
Text(
|
|
|
"Enabling Unsuspend If No Temp allows Trio to resume your pump if you forget, as long as a zero temp basal was set first. This feature ensures insulin delivery restarts if you forget to manually unsuspend, adding a safeguard for pump reconnections."
|
|
"Enabling Unsuspend If No Temp allows Trio to resume your pump if you forget, as long as a zero temp basal was set first. This feature ensures insulin delivery restarts if you forget to manually unsuspend, adding a safeguard for pump reconnections."
|
|
|
)
|
|
)
|
|
|
- Text("Note: Applies only to pumps with on-pump suspend options").italic()
|
|
|
|
|
|
|
+ Text("Note: Applies only to pumps with on-pump suspend options")
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
)
|
|
)
|
|
@@ -238,46 +235,48 @@ extension AlgorithmAdvancedSettings {
|
|
|
units: state.units,
|
|
units: state.units,
|
|
|
type: .boolean,
|
|
type: .boolean,
|
|
|
label: NSLocalizedString("Suspend Zeros IOB", comment: "Suspend Zeros IOB"),
|
|
label: NSLocalizedString("Suspend Zeros IOB", comment: "Suspend Zeros IOB"),
|
|
|
- miniHint: "Clears temp basals and resets IOB when suspended \nDefault: OFF",
|
|
|
|
|
|
|
+ miniHint: "Clears temporary basal rates and resets IOB when suspended",
|
|
|
verboseHint: VStack(spacing: 10) {
|
|
verboseHint: VStack(spacing: 10) {
|
|
|
Text("Default: OFF").bold()
|
|
Text("Default: OFF").bold()
|
|
|
VStack(alignment: .leading, spacing: 10) {
|
|
VStack(alignment: .leading, spacing: 10) {
|
|
|
Text(
|
|
Text(
|
|
|
- "When Suspend Zeros IOB is enabled, any active temp basals during a pump suspension are reset, with new zero temp basals added to counteract the basal rates during suspension."
|
|
|
|
|
|
|
+ "When Suspend Zeros IOB is enabled, any active temporary basal rates during a pump suspension are reset, with new 0 U/hr temporary basal rates added to counteract those done during suspension."
|
|
|
)
|
|
)
|
|
|
Text(
|
|
Text(
|
|
|
"This prevents lingering insulin effects when your pump is suspended, ensuring safer management of insulin on board."
|
|
"This prevents lingering insulin effects when your pump is suspended, ensuring safer management of insulin on board."
|
|
|
)
|
|
)
|
|
|
- Text("Note: Applies to only to pumps with on-pump suspend options").italic()
|
|
|
|
|
|
|
+ Text("Note: Applies to only to pumps with on-pump suspend options")
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
)
|
|
)
|
|
|
|
|
|
|
|
- SettingInputSection(
|
|
|
|
|
- decimalValue: $state.autotuneISFAdjustmentFraction,
|
|
|
|
|
- booleanValue: $booleanPlaceholder,
|
|
|
|
|
- shouldDisplayHint: $shouldDisplayHint,
|
|
|
|
|
- selectedVerboseHint: Binding(
|
|
|
|
|
- get: { selectedVerboseHint },
|
|
|
|
|
- set: {
|
|
|
|
|
- selectedVerboseHint = $0.map { AnyView($0) }
|
|
|
|
|
- hintLabel = NSLocalizedString(
|
|
|
|
|
- "Autotune ISF Adjustment Percent",
|
|
|
|
|
- comment: "Autotune ISF Adjustment Percent"
|
|
|
|
|
- )
|
|
|
|
|
- }
|
|
|
|
|
- ),
|
|
|
|
|
- units: state.units,
|
|
|
|
|
- type: .decimal("autotuneISFAdjustmentFraction"),
|
|
|
|
|
- label: NSLocalizedString("Autotune ISF Adjustment Percent", comment: "Autotune ISF Adjustment Percent"),
|
|
|
|
|
- miniHint: "Using Autotune is not advised \nDefault: 50%",
|
|
|
|
|
- verboseHint: Text(
|
|
|
|
|
- NSLocalizedString(
|
|
|
|
|
- "The default of 50% for this value keeps autotune ISF closer to pump ISF via a weighted average of fullNewISF and pumpISF. 100% allows full adjustment, 0% is no adjustment from pump ISF.",
|
|
|
|
|
- comment: "Autotune ISF Adjustment Percent"
|
|
|
|
|
- )
|
|
|
|
|
- )
|
|
|
|
|
- )
|
|
|
|
|
|
|
+
|
|
|
|
|
+ //Commenting out Autotune from Settings Menu until full removal is complete
|
|
|
|
|
+ //SettingInputSection(
|
|
|
|
|
+ //decimalValue: $state.autotuneISFAdjustmentFraction,
|
|
|
|
|
+ //booleanValue: $booleanPlaceholder,
|
|
|
|
|
+ //shouldDisplayHint: $shouldDisplayHint,
|
|
|
|
|
+ //selectedVerboseHint: Binding(
|
|
|
|
|
+ //get: { selectedVerboseHint },
|
|
|
|
|
+ //set: {
|
|
|
|
|
+ //selectedVerboseHint = $0.map { AnyView($0) }
|
|
|
|
|
+ //hintLabel = NSLocalizedString(
|
|
|
|
|
+ //"Autotune ISF Adjustment Percent",
|
|
|
|
|
+ //comment: "Autotune ISF Adjustment Percent"
|
|
|
|
|
+ //)
|
|
|
|
|
+ //}
|
|
|
|
|
+ //),
|
|
|
|
|
+ //units: state.units,
|
|
|
|
|
+ //type: .decimal("autotuneISFAdjustmentFraction"),
|
|
|
|
|
+ //label: NSLocalizedString("Autotune ISF Adjustment Percent", comment: "Autotune ISF Adjustment Percent"),
|
|
|
|
|
+ //miniHint: "Using Autotune is not advised",
|
|
|
|
|
+ //verboseHint: Text(
|
|
|
|
|
+ //NSLocalizedString(
|
|
|
|
|
+ //"The default of 50% for this value keeps autotune ISF closer to pump ISF via a weighted average of fullNewISF and pumpISF. 100% allows full adjustment, 0% is no adjustment from pump ISF.",
|
|
|
|
|
+ //comment: "Autotune ISF Adjustment Percent"
|
|
|
|
|
+ //)
|
|
|
|
|
+ //)
|
|
|
|
|
+ //)
|
|
|
|
|
|
|
|
SettingInputSection(
|
|
SettingInputSection(
|
|
|
decimalValue: $state.min5mCarbimpact,
|
|
decimalValue: $state.min5mCarbimpact,
|
|
@@ -290,22 +289,22 @@ extension AlgorithmAdvancedSettings {
|
|
|
hintLabel = NSLocalizedString("Min 5m Carb Impact", comment: "Min 5m Carb Impact")
|
|
hintLabel = NSLocalizedString("Min 5m Carb Impact", comment: "Min 5m Carb Impact")
|
|
|
}
|
|
}
|
|
|
),
|
|
),
|
|
|
|
|
+ let myText = (state.units == .mg/dL ? 8 : 8.formmatedAsMmolL) + "Default:" + state.units.rawValue)
|
|
|
units: state.units,
|
|
units: state.units,
|
|
|
type: .decimal("min5mCarbimpact"),
|
|
type: .decimal("min5mCarbimpact"),
|
|
|
label: NSLocalizedString("Min 5m Carb Impact", comment: "Min 5m Carb Impact"),
|
|
label: NSLocalizedString("Min 5m Carb Impact", comment: "Min 5m Carb Impact"),
|
|
|
- miniHint: "Estimates carb absorption rate per 5 minutes \nDefault: 8 mg/dL/5min",
|
|
|
|
|
|
|
+ miniHint: "Estimates the impact of carb absorbtion after 5 minutes",
|
|
|
verboseHint: VStack(spacing: 10) {
|
|
verboseHint: VStack(spacing: 10) {
|
|
|
- Text("mg/dL Default: 8 mg/dL/5min").bold()
|
|
|
|
|
- Text("mmol/L Default: 0.4 mmol/L/5min").bold()
|
|
|
|
|
|
|
+ Text(myText).bold
|
|
|
VStack(alignment: .leading, spacing: 10) {
|
|
VStack(alignment: .leading, spacing: 10) {
|
|
|
Text(
|
|
Text(
|
|
|
- "Min 5m Carb Impact sets the expected glucose rise from carbs over 5 minutes when absorption isn’t obvious from glucose data."
|
|
|
|
|
|
|
+ "Min 5m Carb Impact sets the expected glucose rise from carbs over 5 minutes when absorption isn't obvious from glucose data."
|
|
|
)
|
|
)
|
|
|
Text(
|
|
Text(
|
|
|
"The default value of 8 mg/dL per 5 minutes corresponds to an absorption rate of 24g of carbs per hour."
|
|
"The default value of 8 mg/dL per 5 minutes corresponds to an absorption rate of 24g of carbs per hour."
|
|
|
)
|
|
)
|
|
|
Text(
|
|
Text(
|
|
|
- "This setting helps the system estimate how much glucose your body is absorbing, even when it’s not immediately visible in your glucose data, ensuring more accurate insulin dosing during carb absorption."
|
|
|
|
|
|
|
+ "This setting helps the system estimate how much glucose your body is absorbing, even when it's not immediately visible in your glucose data, ensuring more accurate insulin dosing during carb absorption."
|
|
|
)
|
|
)
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
@@ -325,12 +324,12 @@ extension AlgorithmAdvancedSettings {
|
|
|
units: state.units,
|
|
units: state.units,
|
|
|
type: .decimal("remainingCarbsFraction"),
|
|
type: .decimal("remainingCarbsFraction"),
|
|
|
label: NSLocalizedString("Remaining Carbs Percentage", comment: "Remaining Carbs Percentage"),
|
|
label: NSLocalizedString("Remaining Carbs Percentage", comment: "Remaining Carbs Percentage"),
|
|
|
- miniHint: "% of carbs still available if no absorption is detected \nDefault: 100%",
|
|
|
|
|
|
|
+ miniHint: "% of carbs still available if no absorption is detected",
|
|
|
verboseHint: VStack(spacing: 10) {
|
|
verboseHint: VStack(spacing: 10) {
|
|
|
Text("Default: 100%").bold()
|
|
Text("Default: 100%").bold()
|
|
|
VStack(alignment: .leading, spacing: 10) {
|
|
VStack(alignment: .leading, spacing: 10) {
|
|
|
Text(
|
|
Text(
|
|
|
- "Remaining Carbs Percentage estimates carbs still absorbing over 4 hours if glucose data doesn’t show clear absorption."
|
|
|
|
|
|
|
+ "Remaining Carbs Percentage estimates carbs still absorbing over 4 hours if glucose data doesn't show clear absorption."
|
|
|
)
|
|
)
|
|
|
Text(
|
|
Text(
|
|
|
"This fallback setting prevents under-dosing by spreading a portion of the entered carbs over time, balancing insulin needs with undetected carb impact."
|
|
"This fallback setting prevents under-dosing by spreading a portion of the entered carbs over time, balancing insulin needs with undetected carb impact."
|
|
@@ -353,15 +352,15 @@ extension AlgorithmAdvancedSettings {
|
|
|
units: state.units,
|
|
units: state.units,
|
|
|
type: .decimal("remainingCarbsCap"),
|
|
type: .decimal("remainingCarbsCap"),
|
|
|
label: NSLocalizedString("Remaining Carbs Cap", comment: "Remaining Carbs Cap"),
|
|
label: NSLocalizedString("Remaining Carbs Cap", comment: "Remaining Carbs Cap"),
|
|
|
- miniHint: "Maximum Carbs(g) still available if no absorption is detected \nDefault: 90g",
|
|
|
|
|
|
|
+ miniHint: "Maximum amount of carbs still available if no absorption is detected",
|
|
|
verboseHint: VStack(spacing: 10) {
|
|
verboseHint: VStack(spacing: 10) {
|
|
|
Text("Default: 90g").bold()
|
|
Text("Default: 90g").bold()
|
|
|
VStack(alignment: .leading, spacing: 10) {
|
|
VStack(alignment: .leading, spacing: 10) {
|
|
|
Text(
|
|
Text(
|
|
|
- "The Remaining Carbs Cap defines the upper limit for how many carbs the system will assume are absorbing over 4 hours, even when there’s no clear sign of absorption from your glucose readings."
|
|
|
|
|
|
|
+ "The Remaining Carbs Cap defines the upper limit for how many carbs the system will assume are absorbing over 4 hours, even when there's no clear sign of absorption from your glucose readings."
|
|
|
)
|
|
)
|
|
|
Text(
|
|
Text(
|
|
|
- "This cap prevents the system from overestimating how much insulin is needed when carb absorption isn’t visible, offering a safeguard for accurate dosing."
|
|
|
|
|
|
|
+ "This cap prevents the system from overestimating how much insulin is needed when carb absorption isn't visible, offering a safeguard for accurate dosing."
|
|
|
)
|
|
)
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
@@ -381,7 +380,7 @@ extension AlgorithmAdvancedSettings {
|
|
|
units: state.units,
|
|
units: state.units,
|
|
|
type: .decimal("noisyCGMTargetMultiplier"),
|
|
type: .decimal("noisyCGMTargetMultiplier"),
|
|
|
label: NSLocalizedString("Noisy CGM Target Increase", comment: "Noisy CGM Target Increase"),
|
|
label: NSLocalizedString("Noisy CGM Target Increase", comment: "Noisy CGM Target Increase"),
|
|
|
- miniHint: "Increase glucose target when noisy CGM data detected \nDefault: 130%",
|
|
|
|
|
|
|
+ miniHint: "Increase glucose target when noisy CGM data detected%",
|
|
|
verboseHint: VStack(spacing: 10) {
|
|
verboseHint: VStack(spacing: 10) {
|
|
|
Text("Default: 130%").bold()
|
|
Text("Default: 130%").bold()
|
|
|
VStack(alignment: .leading, spacing: 10) {
|
|
VStack(alignment: .leading, spacing: 10) {
|