|
@@ -16,6 +16,8 @@ extension AddTempTarget {
|
|
|
sortDescriptors: [NSSortDescriptor(key: "date", ascending: false)]
|
|
sortDescriptors: [NSSortDescriptor(key: "date", ascending: false)]
|
|
|
) var isEnabledArray: FetchedResults<TempTargetsSlider>
|
|
) var isEnabledArray: FetchedResults<TempTargetsSlider>
|
|
|
|
|
|
|
|
|
|
+ @Environment(\.colorScheme) var colorScheme
|
|
|
|
|
+
|
|
|
private var formatter: NumberFormatter {
|
|
private var formatter: NumberFormatter {
|
|
|
let formatter = NumberFormatter()
|
|
let formatter = NumberFormatter()
|
|
|
formatter.numberStyle = .decimal
|
|
formatter.numberStyle = .decimal
|
|
@@ -120,28 +122,28 @@ extension AddTempTarget {
|
|
|
Button { state.cancel() }
|
|
Button { state.cancel() }
|
|
|
label: { Text("Cancel Temp Target") }
|
|
label: { Text("Cancel Temp Target") }
|
|
|
}
|
|
}
|
|
|
- }
|
|
|
|
|
- .popover(isPresented: $isPromptPresented) {
|
|
|
|
|
- Form {
|
|
|
|
|
- Section(header: Text("Enter preset name")) {
|
|
|
|
|
- TextField("Name", text: $state.newPresetName)
|
|
|
|
|
- Button {
|
|
|
|
|
- state.save()
|
|
|
|
|
- isPromptPresented = false
|
|
|
|
|
|
|
+ }.scrollContentBackground(.hidden).background(color)
|
|
|
|
|
+ .popover(isPresented: $isPromptPresented) {
|
|
|
|
|
+ Form {
|
|
|
|
|
+ Section(header: Text("Enter preset name")) {
|
|
|
|
|
+ TextField("Name", text: $state.newPresetName)
|
|
|
|
|
+ Button {
|
|
|
|
|
+ state.save()
|
|
|
|
|
+ isPromptPresented = false
|
|
|
|
|
+ }
|
|
|
|
|
+ label: { Text("Save") }
|
|
|
|
|
+ Button { isPromptPresented = false }
|
|
|
|
|
+ label: { Text("Cancel") }
|
|
|
}
|
|
}
|
|
|
- label: { Text("Save") }
|
|
|
|
|
- Button { isPromptPresented = false }
|
|
|
|
|
- label: { Text("Cancel") }
|
|
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
- }
|
|
|
|
|
- .onAppear {
|
|
|
|
|
- configureView()
|
|
|
|
|
- state.hbt = isEnabledArray.first?.hbt ?? 160
|
|
|
|
|
- }
|
|
|
|
|
- .navigationTitle("Enact Temp Target")
|
|
|
|
|
- .navigationBarTitleDisplayMode(.inline)
|
|
|
|
|
- .navigationBarItems(trailing: Button("Close", action: state.hideModal))
|
|
|
|
|
|
|
+ .onAppear {
|
|
|
|
|
+ configureView()
|
|
|
|
|
+ state.hbt = isEnabledArray.first?.hbt ?? 160
|
|
|
|
|
+ }
|
|
|
|
|
+ .navigationTitle("Enact Temp Target")
|
|
|
|
|
+ .navigationBarTitleDisplayMode(.inline)
|
|
|
|
|
+ .navigationBarItems(trailing: Button("Close", action: state.hideModal))
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
private func presetView(for preset: TempTarget) -> some View {
|
|
private func presetView(for preset: TempTarget) -> some View {
|
|
@@ -202,5 +204,18 @@ extension AddTempTarget {
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
|
|
+
|
|
|
|
|
+ private var color: LinearGradient {
|
|
|
|
|
+ colorScheme == .dark ? LinearGradient(
|
|
|
|
|
+ gradient: Gradient(colors: [
|
|
|
|
|
+ Color(red: 0.011, green: 0.058, blue: 0.109),
|
|
|
|
|
+ Color(red: 0.03921568627, green: 0.1333333333, blue: 0.2156862745)
|
|
|
|
|
+ ]),
|
|
|
|
|
+ startPoint: .bottom,
|
|
|
|
|
+ endPoint: .top
|
|
|
|
|
+ )
|
|
|
|
|
+ :
|
|
|
|
|
+ LinearGradient(gradient: Gradient(colors: [Color.gray.opacity(0.1)]), startPoint: .top, endPoint: .bottom)
|
|
|
|
|
+ }
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|