From 75b7afcba950dc89618b10ea2242b3ea6e2b6c64 Mon Sep 17 00:00:00 2001 From: Luke Else Date: Fri, 20 Jun 2025 11:56:31 +0100 Subject: [PATCH] FEAT: Added weather card which nicely displays the weather conditions from a METAR object --- src/lib/components/Cards/WeatherCard.svelte | 99 +++++++++++++++++++++ src/routes/+page.svelte | 12 +-- 2 files changed, 102 insertions(+), 9 deletions(-) create mode 100644 src/lib/components/Cards/WeatherCard.svelte diff --git a/src/lib/components/Cards/WeatherCard.svelte b/src/lib/components/Cards/WeatherCard.svelte new file mode 100644 index 0000000..f755b69 --- /dev/null +++ b/src/lib/components/Cards/WeatherCard.svelte @@ -0,0 +1,99 @@ + + + +
+
{icon}
+
{metar.icaoId}
+
{metar.name}
+
{metar.temp}°C
+
{metar.altim}hPa
+
{metar.rawOb}
+
+ {#if effect === 'rain-effect'} +
+ {/if} + {#if effect === 'snow-effect'} +
+ {/if} +
+ + \ No newline at end of file diff --git a/src/routes/+page.svelte b/src/routes/+page.svelte index f1da9ad..bb59af5 100644 --- a/src/routes/+page.svelte +++ b/src/routes/+page.svelte @@ -8,6 +8,7 @@ import { aviationWeatherApi } from '$lib/api/weatherservice'; import type { Metar } from '$lib/api/types/metar' import { onDestroy } from 'svelte'; + import WeatherCard from '$lib/components/Cards/WeatherCard.svelte'; let metar: Metar | null = null; let loading = false; @@ -54,15 +55,8 @@ {error} {:else if metar}
-
ICAO: {metar.icaoId}
-
Airport: {metar.name}
-
Observed: {metar.reportTime}
-
Temperature: {metar.temp}°C
-
Dew Point: {metar.dewp}°C
-
Wind: {metar.wdir}° at {metar.wspd}kt
-
Visibility: {metar.visib}
-
Pressure: {metar.altim} hPa
-
Raw METAR: {metar.rawOb}
+ + {console.log(metar)}
{:else}