{#if daily} {#each daily.dailyDates as time, index (index)} {@const selected = isSameDayInZone(time, selectedDay, daily.timezone)} {@const tempMax = daily.daily.temperature_2m_max[index]} {@const tempMin = daily.daily.temperature_2m_min[index]} {@const wCode = daily.daily.weather_code[index]} {@const sunDuration = daily.daily.sunshine_duration[index]} {@const daylightSec = getDaylightSeconds(index)} {@const sunColor = getSunshineColor(sunDuration, daylightSec)} {@const sunPct = getSunshinePercent(sunDuration, daylightSec)} {@const precipSum = daily.daily.precipitation_sum[index]} {@const windMax = daily.daily.windspeed_10m_max[index]} {@const gustMax = daily.daily.windgusts_10m_max[index]} {@const windDir = daily.daily.winddirection_10m_dominant[index]} {@const unit = String(units.temperature_unit)} {@const maxStyle = getTempStyle(tempMax, unit)} {@const minStyle = getTempStyle(tempMin, unit)} {#if tempMax != null && !isNaN(tempMax)}
onSelectDay(time, index)} >
{formatZoned(time, daily.timezone, 'EEE').toUpperCase()}
{getRelativeDayLabel(time, daily.timezone)}
{tempMax.toFixed(0)}°
{tempMin.toFixed(0)}°
{Number((sunDuration ?? 0) / 3600).toFixed(0)}h
{Number(precipSum ?? 0).toFixed( precipSum >= 10 ? 0 : 1 )}{units.precipitation_unit === 'mm' ? ' mm' : "'"}
{#if windDir != null && !isNaN(windDir)}
{:else}
{/if}
{windMax?.toFixed(0) ?? '-'}
-{gustMax?.toFixed(0) ?? '-'}
{/if} {/each} {/if}