normalizers: implemented openmeteo forecast normalizer.

This commit is contained in:
2026-01-17 10:16:50 -06:00
parent b47f1b2051
commit c12cf91115
6 changed files with 328 additions and 47 deletions

View File

@@ -102,6 +102,7 @@ type WeatherForecastPeriod struct {
WindGustKmh *float64 `json:"windGustKmh,omitempty"`
BarometricPressurePa *float64 `json:"barometricPressurePa,omitempty"`
VisibilityMeters *float64 `json:"visibilityMeters,omitempty"`
ApparentTemperatureC *float64 `json:"apparentTemperatureC,omitempty"`
WindChillC *float64 `json:"windChillC,omitempty"`
HeatIndexC *float64 `json:"heatIndexC,omitempty"`
CloudCoverPercent *float64 `json:"cloudCoverPercent,omitempty"`
@@ -112,7 +113,7 @@ type WeatherForecastPeriod struct {
// Quantitative precip is not universally available, but OpenWeather/Open-Meteo often supply it.
// Use liquid-equivalent mm for interoperability.
PrecipitationAmountMm *float64 `json:"precipitationAmountMm,omitempty"`
SnowAmountMm *float64 `json:"snowAmountMm,omitempty"`
SnowfallDepthMM *float64 `json:"SnowfallDepthMM,omitempty"`
// Optional extras that some providers supply and downstream might care about.
UVIndex *float64 `json:"uvIndex,omitempty"`