From af83f42d26da30dd10953824257921d4aee587eb Mon Sep 17 00:00:00 2001 From: CN-JS-HuiBai Date: Sun, 5 Apr 2026 01:17:45 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E6=B5=81=E9=87=8F=E5=9C=B0?= =?UTF-8?q?=E5=9B=BE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- public/css/style.css | 26 +++++++++- public/index.html | 15 ++++++ public/js/app.js | 82 ++++++++++++++++++++++++++++++- server/db-integrity-check.js | 18 ++++++- server/geo-service.js | 94 ++++++++++++++++++++++++++++++++++++ server/index.js | 33 ++++++++++++- server/init-db.js | 16 ++++++ server/prometheus-service.js | 3 +- 8 files changed, 281 insertions(+), 6 deletions(-) create mode 100644 server/geo-service.js diff --git a/public/css/style.css b/public/css/style.css index 8533a95..3b5b103 100644 --- a/public/css/style.css +++ b/public/css/style.css @@ -586,11 +586,17 @@ input:checked+.slider:before { /* ---- Charts Section ---- */ .charts-section { display: grid; - grid-template-columns: 1fr; + grid-template-columns: 3fr 2fr; gap: 16px; margin-bottom: 24px; } +@media (max-width: 1200px) { + .charts-section { + grid-template-columns: 1fr; + } +} + .chart-card { background: var(--bg-card); border: 1px solid var(--border-color); @@ -748,6 +754,24 @@ input:checked+.slider:before { color: var(--accent-cyan); } +/* ---- Globe Card ---- */ +.globe-card { + display: flex; + flex-direction: column; +} + +.globe-body { + flex: 1; + min-height: 280px; + position: relative; + overflow: hidden; + cursor: grab; +} + +.globe-body:active { + cursor: grabbing; +} + /* ---- Gauges ---- */ .gauges-container { display: flex; diff --git a/public/index.html b/public/index.html index 85d31f8..ee9f3fb 100644 --- a/public/index.html +++ b/public/index.html @@ -12,6 +12,7 @@ href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800;900&family=JetBrains+Mono:wght@400;500;600&display=swap" rel="stylesheet"> +