From 5194a903b3c905b469769b4e0c3b65cc7ca8efbf Mon Sep 17 00:00:00 2001 From: Chris Kaczor Date: Fri, 8 Mar 2024 01:54:11 +0000 Subject: [PATCH] More new UI work --- WebDisplay/.vscode/settings.json | 10 ++++ WebDisplay/src/App.vue | 39 ++++++++++--- WebDisplay/src/components/CurrentWeather.vue | 55 ++++++++++++------- WebDisplay/src/components/DashboardItem.vue | 5 ++ WebDisplay/src/components/ValueChart.vue | 48 +++++++++------- WebDisplay/src/components/WeatherSummary.vue | 6 +- .../src/models/weather/weather-recent.ts | 4 +- .../src/models/weather/weather-update.ts | 4 +- .../src/models/weather/wind-direction.ts | 21 +++++++ WebDisplay/src/pages/index.vue | 4 +- WebDisplay/src/pages/power.vue | 6 +- WebDisplay/src/windFormatter.ts | 41 ++++++++++++++ 12 files changed, 184 insertions(+), 59 deletions(-) create mode 100644 WebDisplay/.vscode/settings.json create mode 100644 WebDisplay/src/models/weather/wind-direction.ts create mode 100644 WebDisplay/src/windFormatter.ts diff --git a/WebDisplay/.vscode/settings.json b/WebDisplay/.vscode/settings.json new file mode 100644 index 0000000..6be1236 --- /dev/null +++ b/WebDisplay/.vscode/settings.json @@ -0,0 +1,10 @@ +{ + "cSpell.words": [ + "apexchart", + "pinia", + "stepline", + "Vuetify", + "xaxis", + "yaxis" + ] +} \ No newline at end of file diff --git a/WebDisplay/src/App.vue b/WebDisplay/src/App.vue index 54d9778..c8cc393 100644 --- a/WebDisplay/src/App.vue +++ b/WebDisplay/src/App.vue @@ -1,28 +1,46 @@ diff --git a/WebDisplay/src/components/CurrentWeather.vue b/WebDisplay/src/components/CurrentWeather.vue index 73cb9b6..58d832f 100644 --- a/WebDisplay/src/components/CurrentWeather.vue +++ b/WebDisplay/src/components/CurrentWeather.vue @@ -1,6 +1,7 @@ diff --git a/WebDisplay/src/components/WeatherSummary.vue b/WebDisplay/src/components/WeatherSummary.vue index 32486c0..86bc6df 100644 --- a/WebDisplay/src/components/WeatherSummary.vue +++ b/WebDisplay/src/components/WeatherSummary.vue @@ -2,7 +2,7 @@ import { ref } from 'vue'; import { useWeatherStore } from '@/stores/weatherStore'; import { subHours } from 'date-fns'; - import { WeatherAggregates } from '@/models/weather/weather-aggregates'; + import WeatherAggregates from '@/models/weather/weather-aggregates'; import { ConvertPascalToInchesOfMercury } from '@/pressureConverter'; const weatherAggregates = ref(); @@ -63,7 +63,7 @@ - Wind Speed + Wind speed {{ weatherAggregates!.windSpeed.min.toFixed(2) }} mph @@ -78,7 +78,7 @@ - Wind Direction + Wind direction {{ weatherAggregates!.windDirectionAverage }} diff --git a/WebDisplay/src/models/weather/weather-recent.ts b/WebDisplay/src/models/weather/weather-recent.ts index c453c57..a143d9b 100644 --- a/WebDisplay/src/models/weather/weather-recent.ts +++ b/WebDisplay/src/models/weather/weather-recent.ts @@ -1,8 +1,10 @@ +import WindDirection from './wind-direction'; + export default class WeatherRecent { type: string | undefined; message: null | undefined; timestamp: Date | undefined; - windDirection: string | undefined; + windDirection: WindDirection | undefined; windSpeed: number | undefined; humidity: number | undefined; rain: number | undefined; diff --git a/WebDisplay/src/models/weather/weather-update.ts b/WebDisplay/src/models/weather/weather-update.ts index 6e4a3cb..7ecf3c8 100644 --- a/WebDisplay/src/models/weather/weather-update.ts +++ b/WebDisplay/src/models/weather/weather-update.ts @@ -1,8 +1,10 @@ +import WindDirection from './wind-direction'; + export default class WeatherUpdate { Type: string | undefined; Message: null | undefined; Timestamp: Date | undefined; - WindDirection: string | undefined; + WindDirection: WindDirection | undefined; WindSpeed: number | undefined; Humidity: number | undefined; Rain: number | undefined; diff --git a/WebDisplay/src/models/weather/wind-direction.ts b/WebDisplay/src/models/weather/wind-direction.ts new file mode 100644 index 0000000..34e8ee2 --- /dev/null +++ b/WebDisplay/src/models/weather/wind-direction.ts @@ -0,0 +1,21 @@ +export enum WindDirection { + None = 'None', + North = 'North', + East = 'East', + South = 'South', + West = 'West', + NorthEast = 'NorthEast', + SouthEast = 'SouthEast', + SouthWest = 'SouthWest', + NorthWest = 'NorthWest', + NorthNorthEast = 'NorthNorthEast', + EastNorthEast = 'EastNorthEast', + EastSouthEast = 'EastSouthEast', + SouthSouthEast = 'SouthSouthEast', + SouthSouthWest = 'SouthSouthWest', + WestSouthWest = 'WestSouthWest', + WestNorthWest = 'WestNorthWest', + NorthNorthWest = 'NorthNorthWest' +} + +export default WindDirection; diff --git a/WebDisplay/src/pages/index.vue b/WebDisplay/src/pages/index.vue index 8c8aaf7..40e8a7b 100644 --- a/WebDisplay/src/pages/index.vue +++ b/WebDisplay/src/pages/index.vue @@ -5,7 +5,7 @@