From 2e42f3a0e2b965ef3a8f292928a5b769361e95ed Mon Sep 17 00:00:00 2001 From: Michael Housh Date: Mon, 10 Jun 2024 17:05:04 -0400 Subject: [PATCH] feat: Temporary fix for not displaying estimations when minimal values are set using air-handler measurements. --- .../EquipmentMeasurementForm.swift | 5 ++++- .../EstimationsForm.swift | 1 + .../FlaggedMeasurementsList.swift | 16 ++++++++++------ 3 files changed, 15 insertions(+), 7 deletions(-) diff --git a/Sources/PressureEstimationsFeature/EquipmentMeasurementForm.swift b/Sources/PressureEstimationsFeature/EquipmentMeasurementForm.swift index adfe3d5..b990881 100644 --- a/Sources/PressureEstimationsFeature/EquipmentMeasurementForm.swift +++ b/Sources/PressureEstimationsFeature/EquipmentMeasurementForm.swift @@ -271,8 +271,9 @@ extension Store where State == EquipmentMeasurementForm.State { @ViewAction(for: EquipmentMeasurementForm.self) public struct EquipmentMeasurementFormView: View { + @FocusState private var focusedField: EquipmentMeasurementForm.State.Field? @Bindable public var store: StoreOf - + public init(store: StoreOf) { self.store = store } @@ -322,6 +323,7 @@ public struct EquipmentMeasurementFormView: View { } } } + .bind($focusedField, to: $store.focusedField) .onAppear { send(.onAppear) } .textLabelStyle(.boldSecondary) .textFieldStyle(.roundedBorder) @@ -373,6 +375,7 @@ public struct EquipmentMeasurementFormView: View { fractionLength: fractionLength, numberPad: field == .airflow ) + .focused($focusedField, equals: field) } @ViewBuilder diff --git a/Sources/PressureEstimationsFeature/EstimationsForm.swift b/Sources/PressureEstimationsFeature/EstimationsForm.swift index 53441cf..2466bff 100644 --- a/Sources/PressureEstimationsFeature/EstimationsForm.swift +++ b/Sources/PressureEstimationsFeature/EstimationsForm.swift @@ -3,6 +3,7 @@ import SharedModels import Styleguide import SwiftUI +#warning("Use shared settings, don't display filter pressure drop if current flagged measurement pressure drop is not set.") @Reducer public struct EstimationForm { public init() { } diff --git a/Sources/PressureEstimationsFeature/FlaggedMeasurementsList.swift b/Sources/PressureEstimationsFeature/FlaggedMeasurementsList.swift index f0dca5b..7a3a3e2 100644 --- a/Sources/PressureEstimationsFeature/FlaggedMeasurementsList.swift +++ b/Sources/PressureEstimationsFeature/FlaggedMeasurementsList.swift @@ -189,12 +189,16 @@ public struct FlaggedMeasurementsList { ) } - return .receive(action: \.receive) { [ratedStaticPressures = state.sharedSettings.equipmentMetadata.ratedStaticPressures] in + return .receive(action: \.receive) { [sharedSettings = state.sharedSettings] in + + var filterPressureDrop: Positive? = nil + + if sharedSettings.flaggedEquipmentMeasurement?.filterPressureDrop.wrappedValue != 0 { + filterPressureDrop = form.filterPressureDrop != nil + ? Positive(wrappedValue: form.filterPressureDrop!) + : nil + } - let filterPressureDrop = form.filterPressureDrop != nil - ? Positive(wrappedValue: form.filterPressureDrop!) - : nil - let measurement = try await estimatedPressuresClient.estimatedPressure( equipmentMeasurement: equipmentMeasurement, airflow: form.airflow, @@ -204,7 +208,7 @@ public struct FlaggedMeasurementsList { let flaggedMeasurement = EquipmentMeasurement.FlaggedMeasurement( budgets: budgets, measurement: measurement, - ratedPressures: ratedStaticPressures, + ratedPressures: sharedSettings.ratedStaticPressures, tons: form.coolingCapacity )