diff --git a/manual_trading_hub/hub.py b/manual_trading_hub/hub.py index 5389992..454b345 100644 --- a/manual_trading_hub/hub.py +++ b/manual_trading_hub/hub.py @@ -62,7 +62,7 @@ _allow_pub_raw = (os.getenv("HUB_ALLOW_PUBLIC") or "").strip().lower() # 云服务器 + 域名反代时设为 true:不做 IP 限制,仅靠 HUB_PASSWORD / 登录页保护 HUB_ALLOW_PUBLIC = _allow_pub_raw in ("1", "true", "yes", "on") DIR = Path(__file__).resolve().parent -HUB_BUILD = "20260526-hub-qty" +HUB_BUILD = "20260526-hub-key3col" HUB_AGENT_TIMEOUT = float(os.getenv("HUB_AGENT_TIMEOUT", "8")) HUB_FLASK_TIMEOUT = float(os.getenv("HUB_FLASK_TIMEOUT", "10")) _board_key_prices_raw = (os.getenv("HUB_BOARD_KEY_PRICES", "true") or "").strip().lower() diff --git a/manual_trading_hub/static/app.css b/manual_trading_hub/static/app.css index da4c12d..12575af 100644 --- a/manual_trading_hub/static/app.css +++ b/manual_trading_hub/static/app.css @@ -904,6 +904,37 @@ body.hub-fullscreen-open { gap: 8px; } +.hub-key-list { + display: flex; + flex-direction: column; + gap: 8px; +} + +/* 全屏放大:关键位 3 列网格 */ +.exchange-fullscreen .hub-key-list { + display: grid; + grid-template-columns: repeat(3, minmax(0, 1fr)); + gap: 12px; + align-items: stretch; +} + +.exchange-fullscreen .hub-key-list .hub-mini-card { + min-width: 0; + height: 100%; +} + +@media (max-width: 1100px) { + .exchange-fullscreen .hub-key-list { + grid-template-columns: repeat(2, minmax(0, 1fr)); + } +} + +@media (max-width: 640px) { + .exchange-fullscreen .hub-key-list { + grid-template-columns: minmax(0, 1fr); + } +} + .hub-mini-card { padding: 10px 12px; background: rgba(0, 0, 0, 0.3); diff --git a/manual_trading_hub/static/app.js b/manual_trading_hub/static/app.js index 7aaac7e..e4ec219 100644 --- a/manual_trading_hub/static/app.js +++ b/manual_trading_hub/static/app.js @@ -627,7 +627,7 @@ function renderKeySection(keys, kmap) { if (!keys.length) return ""; - return keys + const cards = keys .map((k) => { const kp = kmap[k.id] || kmap[String(k.id)] || {}; const mt = k.monitor_type || k.type || ""; @@ -649,6 +649,7 @@ `; }) .join(""); + return `
${cards}
`; } function renderOrderMonitorSection(orders) { diff --git a/manual_trading_hub/static/index.html b/manual_trading_hub/static/index.html index 7983ab0..8bd395b 100644 --- a/manual_trading_hub/static/index.html +++ b/manual_trading_hub/static/index.html @@ -8,7 +8,7 @@ - + @@ -109,6 +109,6 @@
- + diff --git a/manual_trading_hub/static/login.html b/manual_trading_hub/static/login.html index 247705f..a9feb63 100644 --- a/manual_trading_hub/static/login.html +++ b/manual_trading_hub/static/login.html @@ -8,7 +8,7 @@ - +