Best Value: one price age instead of a source breakdown
Dated pricing had crowded More info and the station rows, and most of the extra copy described a distinction the data cannot make: every station carries a single station-wide timestamp, so "grade-specific vs station-wide" never varied in practice. - More info shows one row, "Price updated 28h ago" (or "Not provided"), replacing the separate station-report and fuel-update-time rows and the blanket "price freshness is not confirmed" label. - Rows and the detail sheet stay quiet when a saving is shown; only an ineligible comparison explains itself. Provisional savings already read as estimates from the capsule, so the fuel-named warning lines are gone. - Freshness/eligibility logic is unchanged: it still gates the baseline and still supports grade-specific timestamps for when the relay emits them. - Tests updated; localisation keys for the removed copy dropped.
This commit is contained in:
@@ -213,20 +213,10 @@ struct StationDetailView: View {
|
||||
LabeledContent("Distance", value: distance.labelWithReturn(unit: distanceUnit))
|
||||
.monospacedDigit()
|
||||
}
|
||||
if let reportAge = priceFreshness.stationReportAgeLabel {
|
||||
LabeledContent("Station price report", value: reportAge)
|
||||
.monospacedDigit()
|
||||
}
|
||||
LabeledContent("\(selectedFuel.displayName) update time", value: priceFreshness.selectedFuelUpdateLabel)
|
||||
LabeledContent("Price updated", value: priceFreshness.updateAgeLabel)
|
||||
.monospacedDigit()
|
||||
LabeledContent("\(selectedFuel.displayName) price", value: selectedFuelPriceText)
|
||||
.monospacedDigit()
|
||||
if priceFreshness.warning {
|
||||
Label("Price freshness is not confirmed for \(selectedFuel.displayName)",
|
||||
systemImage: "exclamationmark.triangle.fill")
|
||||
.font(.subheadline.weight(.semibold))
|
||||
.foregroundStyle(.orange)
|
||||
}
|
||||
ForEach(StationNotice.notices(for: station)) { notice in
|
||||
Label(notice.title, systemImage: notice.symbolName)
|
||||
.font(.subheadline.weight(.semibold))
|
||||
|
||||
@@ -223,21 +223,14 @@
|
||||
/* Best Value calculation and price confidence */
|
||||
"£ compares the litres your budget buys at each station; Litres compares one fixed quantity." = "£ compares the litres your budget buys at each station; Litres compares one fixed quantity.";
|
||||
"You pay the selected budget here. The saving compares the same litres at your closest eligible station; litres differ between stations, and this is not a refund." = "You pay the selected budget here. The saving compares the same litres at your closest eligible station; litres differ between stations, and this is not a refund.";
|
||||
"Price age" = "Price age";
|
||||
"Best Value unavailable · price confidence insufficient" = "Best Value unavailable · price confidence insufficient";
|
||||
"Best Value unavailable · location needed" = "Best Value unavailable · location needed";
|
||||
"price order · Best Value unavailable" = "price order · Best Value unavailable";
|
||||
"your order" = "your order";
|
||||
"Price not individually dated — saving is an estimate." = "Price not individually dated — saving is an estimate.";
|
||||
"Price updated" = "Price updated";
|
||||
"Price age unavailable or too old — not a Best Value recommendation." = "Price age unavailable or too old — not a Best Value recommendation.";
|
||||
"%@ ago" = "%@ ago";
|
||||
"Not provided" = "Not provided";
|
||||
"Station price report" = "Station price report";
|
||||
"%@ update time" = "%@ update time";
|
||||
"Estimated saving · %@ price not individually dated" = "Estimated saving · %@ price not individually dated";
|
||||
"Estimated saving · closest eligible station's %@ price not individually dated" = "Estimated saving · closest eligible station's %@ price not individually dated";
|
||||
"Estimated saving · %@ price over 7 days old" = "Estimated saving · %@ price over 7 days old";
|
||||
"Estimated saving · closest eligible station's %@ price over 7 days old" = "Estimated saving · closest eligible station's %@ price over 7 days old";
|
||||
"Fuel you'll receive" = "Fuel you'll receive";
|
||||
"Best Value unavailable: no eligible price comparison. Stations and prices remain visible below." = "Best Value unavailable: no eligible price comparison. Stations and prices remain visible below.";
|
||||
"Compared with your closest eligible station." = "Compared with your closest eligible station.";
|
||||
|
||||
Reference in New Issue
Block a user