|
@@ -169,6 +169,7 @@ extension TargetsEditor {
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
+ var now = Date()
|
|
|
var chart: some View {
|
|
var chart: some View {
|
|
|
Chart {
|
|
Chart {
|
|
|
ForEach(state.items.indexed(), id: \.1.id) { index, item in
|
|
ForEach(state.items.indexed(), id: \.1.id) { index, item in
|
|
@@ -180,15 +181,15 @@ extension TargetsEditor {
|
|
|
let displayValueFloat = Double(displayValue.replacingOccurrences(of: ",", with: "."))
|
|
let displayValueFloat = Double(displayValue.replacingOccurrences(of: ",", with: "."))
|
|
|
|
|
|
|
|
let startDate = Calendar.current
|
|
let startDate = Calendar.current
|
|
|
- .startOfDay(for: Date())
|
|
|
|
|
|
|
+ .startOfDay(for: now)
|
|
|
.addingTimeInterval(state.timeValues[item.timeIndex])
|
|
.addingTimeInterval(state.timeValues[item.timeIndex])
|
|
|
|
|
|
|
|
let endDate = state.items
|
|
let endDate = state.items
|
|
|
.count > index + 1 ?
|
|
.count > index + 1 ?
|
|
|
- Calendar.current.startOfDay(for: Date())
|
|
|
|
|
|
|
+ Calendar.current.startOfDay(for: now)
|
|
|
.addingTimeInterval(state.timeValues[state.items[index + 1].timeIndex])
|
|
.addingTimeInterval(state.timeValues[state.items[index + 1].timeIndex])
|
|
|
:
|
|
:
|
|
|
- Calendar.current.startOfDay(for: Date())
|
|
|
|
|
|
|
+ Calendar.current.startOfDay(for: now)
|
|
|
.addingTimeInterval(state.timeValues.last! + 30 * 60)
|
|
.addingTimeInterval(state.timeValues.last! + 30 * 60)
|
|
|
|
|
|
|
|
LineMark(x: .value("End Date", startDate), y: .value("Target", displayValueFloat ?? 0.0))
|
|
LineMark(x: .value("End Date", startDate), y: .value("Target", displayValueFloat ?? 0.0))
|
|
@@ -205,8 +206,8 @@ extension TargetsEditor {
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
.chartXScale(
|
|
.chartXScale(
|
|
|
- domain: Calendar.current.startOfDay(for: Date()) ... Calendar
|
|
|
|
|
- .current.startOfDay(for: Date())
|
|
|
|
|
|
|
+ domain: Calendar.current.startOfDay(for: now) ... Calendar
|
|
|
|
|
+ .current.startOfDay(for: now)
|
|
|
.addingTimeInterval(60 * 60 * 24)
|
|
.addingTimeInterval(60 * 60 * 24)
|
|
|
)
|
|
)
|
|
|
.chartYAxis {
|
|
.chartYAxis {
|