feat(frontend): add weather icons and redesign calendar header

Backend changes:
- Add LOCATION configuration option to Settings
- Add /api/system/config endpoint to expose public config
- Implement location priority: config > geolocation > default

Frontend changes:
- Install and integrate weather-icons npm package (Erik Flowers)
- Redesign calendar header with date/time on left, weather/location on right
- Display weather icon using CSS classes instead of SVG components
- Fetch location from backend API on component mount
- Use configured location name (from .env) instead of geocoded result

Layout:
- Left: month/year + current time
- Right: city name + weather description + weather icon
This commit is contained in:
2026-04-06 22:18:44 +08:00
parent ff042cd932
commit 712d9e1652
9 changed files with 133 additions and 22 deletions

View File

@@ -10,8 +10,8 @@
"test": "vitest run"
},
"dependencies": {
"3d-force-graph": "^1.79.0",
"@vueuse/core": "^14.2.1",
"3d-force-graph": "^1.79.0",
"axios": "^1.13.6",
"echarts": "^6.0.0",
"element-plus": "^2.13.6",
@@ -20,7 +20,8 @@
"pinia": "^3.0.4",
"three": "^0.180.0",
"vue": "^3.5.30",
"vue-router": "^4.6.4"
"vue-router": "^4.6.4",
"weather-icons": "^1.3.2"
},
"devDependencies": {
"@types/node": "^25.5.0",