fix(weather): show correct wind speed and unit for imperial units
When OPENWEATHER_UNITS=imperial, OpenWeatherMap returns wind speed in
mph directly — the server was incorrectly multiplying by 3.6 (m/s→km/h)
on top of that. All locale strings also hardcoded the unit label instead
of using a {{windUnit}} placeholder, so the label always read km/h.
Resolves #79
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -105,7 +105,10 @@ router.get('/', async (req, res) => {
|
||||
humidity: currentJson.main.humidity,
|
||||
icon: currentJson.weather[0]?.icon,
|
||||
desc: currentJson.weather[0]?.description,
|
||||
wind_speed: Math.round((currentJson.wind?.speed ?? 0) * 3.6), // m/s → km/h
|
||||
// metric/standard: m/s → km/h; imperial: already mph
|
||||
wind_speed: units === 'imperial'
|
||||
? Math.round(currentJson.wind?.speed ?? 0)
|
||||
: Math.round((currentJson.wind?.speed ?? 0) * 3.6),
|
||||
},
|
||||
forecast: forecastDays,
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user