diff --git a/brand/icons/binance/apple-touch-icon.png b/brand/icons/binance/apple-touch-icon.png new file mode 100644 index 0000000..702fc96 Binary files /dev/null and b/brand/icons/binance/apple-touch-icon.png differ diff --git a/brand/icons/binance/favicon.ico b/brand/icons/binance/favicon.ico new file mode 100644 index 0000000..26172c8 Binary files /dev/null and b/brand/icons/binance/favicon.ico differ diff --git a/brand/icons/binance/icon-16.png b/brand/icons/binance/icon-16.png new file mode 100644 index 0000000..c623509 Binary files /dev/null and b/brand/icons/binance/icon-16.png differ diff --git a/brand/icons/binance/icon-192.png b/brand/icons/binance/icon-192.png new file mode 100644 index 0000000..4cda818 Binary files /dev/null and b/brand/icons/binance/icon-192.png differ diff --git a/brand/icons/binance/icon-32.png b/brand/icons/binance/icon-32.png new file mode 100644 index 0000000..c706b7d Binary files /dev/null and b/brand/icons/binance/icon-32.png differ diff --git a/brand/icons/binance/icon-48.png b/brand/icons/binance/icon-48.png new file mode 100644 index 0000000..877ec15 Binary files /dev/null and b/brand/icons/binance/icon-48.png differ diff --git a/brand/icons/binance/icon-512.png b/brand/icons/binance/icon-512.png new file mode 100644 index 0000000..6f48a2b Binary files /dev/null and b/brand/icons/binance/icon-512.png differ diff --git a/brand/icons/binance/icon.svg b/brand/icons/binance/icon.svg new file mode 100644 index 0000000..70a7d51 --- /dev/null +++ b/brand/icons/binance/icon.svg @@ -0,0 +1,6 @@ + + + + + + diff --git a/brand/icons/gate/apple-touch-icon.png b/brand/icons/gate/apple-touch-icon.png new file mode 100644 index 0000000..129f899 Binary files /dev/null and b/brand/icons/gate/apple-touch-icon.png differ diff --git a/brand/icons/gate/favicon.ico b/brand/icons/gate/favicon.ico new file mode 100644 index 0000000..dcb291e Binary files /dev/null and b/brand/icons/gate/favicon.ico differ diff --git a/brand/icons/gate/icon-16.png b/brand/icons/gate/icon-16.png new file mode 100644 index 0000000..8ebd22a Binary files /dev/null and b/brand/icons/gate/icon-16.png differ diff --git a/brand/icons/gate/icon-192.png b/brand/icons/gate/icon-192.png new file mode 100644 index 0000000..9039264 Binary files /dev/null and b/brand/icons/gate/icon-192.png differ diff --git a/brand/icons/gate/icon-32.png b/brand/icons/gate/icon-32.png new file mode 100644 index 0000000..4add43f Binary files /dev/null and b/brand/icons/gate/icon-32.png differ diff --git a/brand/icons/gate/icon-48.png b/brand/icons/gate/icon-48.png new file mode 100644 index 0000000..1e10957 Binary files /dev/null and b/brand/icons/gate/icon-48.png differ diff --git a/brand/icons/gate/icon-512.png b/brand/icons/gate/icon-512.png new file mode 100644 index 0000000..7c41ef9 Binary files /dev/null and b/brand/icons/gate/icon-512.png differ diff --git a/brand/icons/gate/icon.svg b/brand/icons/gate/icon.svg new file mode 100644 index 0000000..e0249d5 --- /dev/null +++ b/brand/icons/gate/icon.svg @@ -0,0 +1,6 @@ + + + + + G + diff --git a/brand/icons/okx/apple-touch-icon.png b/brand/icons/okx/apple-touch-icon.png new file mode 100644 index 0000000..82d1e82 Binary files /dev/null and b/brand/icons/okx/apple-touch-icon.png differ diff --git a/brand/icons/okx/favicon.ico b/brand/icons/okx/favicon.ico new file mode 100644 index 0000000..2dbb0dd Binary files /dev/null and b/brand/icons/okx/favicon.ico differ diff --git a/brand/icons/okx/icon-16.png b/brand/icons/okx/icon-16.png new file mode 100644 index 0000000..5ea0f54 Binary files /dev/null and b/brand/icons/okx/icon-16.png differ diff --git a/brand/icons/okx/icon-192.png b/brand/icons/okx/icon-192.png new file mode 100644 index 0000000..55ed1de Binary files /dev/null and b/brand/icons/okx/icon-192.png differ diff --git a/brand/icons/okx/icon-32.png b/brand/icons/okx/icon-32.png new file mode 100644 index 0000000..ea8a9a2 Binary files /dev/null and b/brand/icons/okx/icon-32.png differ diff --git a/brand/icons/okx/icon-48.png b/brand/icons/okx/icon-48.png new file mode 100644 index 0000000..16a80dc Binary files /dev/null and b/brand/icons/okx/icon-48.png differ diff --git a/brand/icons/okx/icon-512.png b/brand/icons/okx/icon-512.png new file mode 100644 index 0000000..e526b77 Binary files /dev/null and b/brand/icons/okx/icon-512.png differ diff --git a/brand/icons/okx/icon.svg b/brand/icons/okx/icon.svg new file mode 100644 index 0000000..b7eaa46 --- /dev/null +++ b/brand/icons/okx/icon.svg @@ -0,0 +1,6 @@ + + + + + + diff --git a/brand/manifest.binance.webmanifest b/brand/manifest.binance.webmanifest new file mode 100644 index 0000000..eddc20d --- /dev/null +++ b/brand/manifest.binance.webmanifest @@ -0,0 +1,23 @@ +{ + "name": "Binance 交易系统", + "short_name": "Binance 交易系统", + "description": "Binance 永续交易监控与复盘", + "start_url": "/", + "display": "standalone", + "background_color": "#0b0d14", + "theme_color": "#F0B90B", + "icons": [ + { + "src": "__ICON_PREFIX__/icon-192.png", + "sizes": "192x192", + "type": "image/png", + "purpose": "any" + }, + { + "src": "__ICON_PREFIX__/icon-512.png", + "sizes": "512x512", + "type": "image/png", + "purpose": "any maskable" + } + ] +} diff --git a/brand/manifest.exchange.webmanifest b/brand/manifest.exchange.webmanifest index 80d2b68..7464c0f 100644 --- a/brand/manifest.exchange.webmanifest +++ b/brand/manifest.exchange.webmanifest @@ -1,7 +1,7 @@ { - "name": "交易监控复盘", - "short_name": "监控", - "description": "加密货币永续交易监控与复盘", + "name": "交易系统", + "short_name": "交易系统", + "description": "加密货币永续交易监控与复盘(请使用各所独立 manifest)", "start_url": "/", "display": "standalone", "background_color": "#0b0d14", diff --git a/brand/manifest.gate.webmanifest b/brand/manifest.gate.webmanifest new file mode 100644 index 0000000..6dbd346 --- /dev/null +++ b/brand/manifest.gate.webmanifest @@ -0,0 +1,23 @@ +{ + "name": "Gate 交易系统", + "short_name": "Gate 交易系统", + "description": "Gate 永续交易监控与复盘", + "start_url": "/", + "display": "standalone", + "background_color": "#0b0d14", + "theme_color": "#17E6A1", + "icons": [ + { + "src": "__ICON_PREFIX__/icon-192.png", + "sizes": "192x192", + "type": "image/png", + "purpose": "any" + }, + { + "src": "__ICON_PREFIX__/icon-512.png", + "sizes": "512x512", + "type": "image/png", + "purpose": "any maskable" + } + ] +} diff --git a/brand/manifest.okx.webmanifest b/brand/manifest.okx.webmanifest new file mode 100644 index 0000000..bad9fb4 --- /dev/null +++ b/brand/manifest.okx.webmanifest @@ -0,0 +1,23 @@ +{ + "name": "OKX 交易系统", + "short_name": "OKX 交易系统", + "description": "OKX 永续交易监控与复盘", + "start_url": "/", + "display": "standalone", + "background_color": "#0b0d14", + "theme_color": "#FFFFFF", + "icons": [ + { + "src": "__ICON_PREFIX__/icon-192.png", + "sizes": "192x192", + "type": "image/png", + "purpose": "any" + }, + { + "src": "__ICON_PREFIX__/icon-512.png", + "sizes": "512x512", + "type": "image/png", + "purpose": "any maskable" + } + ] +} diff --git a/crypto_monitor_binance/app.py b/crypto_monitor_binance/app.py index dda6c43..5d1b334 100644 --- a/crypto_monitor_binance/app.py +++ b/crypto_monitor_binance/app.py @@ -6984,7 +6984,11 @@ def login(): return redirect("/") else: flash("账号或密码错误") - return render_template("login.html", exchange_display=EXCHANGE_DISPLAY_NAME) + return render_template( + "login.html", + exchange_display=EXCHANGE_DISPLAY_NAME, + pwa_app_name="Binance 交易系统", + ) @app.route("/logout") def logout(): diff --git a/crypto_monitor_binance/static/icons/apple-touch-icon.png b/crypto_monitor_binance/static/icons/apple-touch-icon.png index bd835ad..702fc96 100644 Binary files a/crypto_monitor_binance/static/icons/apple-touch-icon.png and b/crypto_monitor_binance/static/icons/apple-touch-icon.png differ diff --git a/crypto_monitor_binance/static/icons/favicon.ico b/crypto_monitor_binance/static/icons/favicon.ico index 0af9b9c..26172c8 100644 Binary files a/crypto_monitor_binance/static/icons/favicon.ico and b/crypto_monitor_binance/static/icons/favicon.ico differ diff --git a/crypto_monitor_binance/static/icons/icon-16.png b/crypto_monitor_binance/static/icons/icon-16.png index b3a4ee1..c623509 100644 Binary files a/crypto_monitor_binance/static/icons/icon-16.png and b/crypto_monitor_binance/static/icons/icon-16.png differ diff --git a/crypto_monitor_binance/static/icons/icon-192.png b/crypto_monitor_binance/static/icons/icon-192.png index 92351e1..4cda818 100644 Binary files a/crypto_monitor_binance/static/icons/icon-192.png and b/crypto_monitor_binance/static/icons/icon-192.png differ diff --git a/crypto_monitor_binance/static/icons/icon-32.png b/crypto_monitor_binance/static/icons/icon-32.png index dc2186f..c706b7d 100644 Binary files a/crypto_monitor_binance/static/icons/icon-32.png and b/crypto_monitor_binance/static/icons/icon-32.png differ diff --git a/crypto_monitor_binance/static/icons/icon-512.png b/crypto_monitor_binance/static/icons/icon-512.png index a46fe93..6f48a2b 100644 Binary files a/crypto_monitor_binance/static/icons/icon-512.png and b/crypto_monitor_binance/static/icons/icon-512.png differ diff --git a/crypto_monitor_binance/static/icons/icon.svg b/crypto_monitor_binance/static/icons/icon.svg index 2277788..70a7d51 100644 --- a/crypto_monitor_binance/static/icons/icon.svg +++ b/crypto_monitor_binance/static/icons/icon.svg @@ -1,17 +1,6 @@ - - - - - - - - - - - - - + + diff --git a/crypto_monitor_binance/static/icons/manifest.webmanifest b/crypto_monitor_binance/static/icons/manifest.webmanifest index b2ffb73..1c3edbf 100644 --- a/crypto_monitor_binance/static/icons/manifest.webmanifest +++ b/crypto_monitor_binance/static/icons/manifest.webmanifest @@ -1,11 +1,11 @@ { - "name": "交易监控复盘", - "short_name": "监控", - "description": "加密货币永续交易监控与复盘", + "name": "Binance 交易系统", + "short_name": "Binance 交易系统", + "description": "Binance 永续交易监控与复盘", "start_url": "/", "display": "standalone", "background_color": "#0b0d14", - "theme_color": "#0b0d14", + "theme_color": "#F0B90B", "icons": [ { "src": "/static/icons/icon-192.png", diff --git a/crypto_monitor_gate/app.py b/crypto_monitor_gate/app.py index 97ab581..476e8b6 100644 --- a/crypto_monitor_gate/app.py +++ b/crypto_monitor_gate/app.py @@ -6637,7 +6637,11 @@ def login(): return redirect("/") else: flash("账号或密码错误") - return render_template("login.html", exchange_display=EXCHANGE_DISPLAY_NAME) + return render_template( + "login.html", + exchange_display=EXCHANGE_DISPLAY_NAME, + pwa_app_name="Gate 交易系统", + ) @app.route("/logout") def logout(): diff --git a/crypto_monitor_gate/static/icons/apple-touch-icon.png b/crypto_monitor_gate/static/icons/apple-touch-icon.png index bd835ad..129f899 100644 Binary files a/crypto_monitor_gate/static/icons/apple-touch-icon.png and b/crypto_monitor_gate/static/icons/apple-touch-icon.png differ diff --git a/crypto_monitor_gate/static/icons/favicon.ico b/crypto_monitor_gate/static/icons/favicon.ico index 0af9b9c..dcb291e 100644 Binary files a/crypto_monitor_gate/static/icons/favicon.ico and b/crypto_monitor_gate/static/icons/favicon.ico differ diff --git a/crypto_monitor_gate/static/icons/icon-16.png b/crypto_monitor_gate/static/icons/icon-16.png index b3a4ee1..8ebd22a 100644 Binary files a/crypto_monitor_gate/static/icons/icon-16.png and b/crypto_monitor_gate/static/icons/icon-16.png differ diff --git a/crypto_monitor_gate/static/icons/icon-192.png b/crypto_monitor_gate/static/icons/icon-192.png index 92351e1..9039264 100644 Binary files a/crypto_monitor_gate/static/icons/icon-192.png and b/crypto_monitor_gate/static/icons/icon-192.png differ diff --git a/crypto_monitor_gate/static/icons/icon-32.png b/crypto_monitor_gate/static/icons/icon-32.png index dc2186f..4add43f 100644 Binary files a/crypto_monitor_gate/static/icons/icon-32.png and b/crypto_monitor_gate/static/icons/icon-32.png differ diff --git a/crypto_monitor_gate/static/icons/icon-512.png b/crypto_monitor_gate/static/icons/icon-512.png index a46fe93..7c41ef9 100644 Binary files a/crypto_monitor_gate/static/icons/icon-512.png and b/crypto_monitor_gate/static/icons/icon-512.png differ diff --git a/crypto_monitor_gate/static/icons/icon.svg b/crypto_monitor_gate/static/icons/icon.svg index 2277788..e0249d5 100644 --- a/crypto_monitor_gate/static/icons/icon.svg +++ b/crypto_monitor_gate/static/icons/icon.svg @@ -1,17 +1,6 @@ - - - - - - - - - - - - - + + G diff --git a/crypto_monitor_gate/static/icons/manifest.webmanifest b/crypto_monitor_gate/static/icons/manifest.webmanifest index b2ffb73..8d8b774 100644 --- a/crypto_monitor_gate/static/icons/manifest.webmanifest +++ b/crypto_monitor_gate/static/icons/manifest.webmanifest @@ -1,11 +1,11 @@ { - "name": "交易监控复盘", - "short_name": "监控", - "description": "加密货币永续交易监控与复盘", + "name": "Gate 交易系统", + "short_name": "Gate 交易系统", + "description": "Gate 永续交易监控与复盘", "start_url": "/", "display": "standalone", "background_color": "#0b0d14", - "theme_color": "#0b0d14", + "theme_color": "#17E6A1", "icons": [ { "src": "/static/icons/icon-192.png", diff --git a/crypto_monitor_okx/app.py b/crypto_monitor_okx/app.py index fe63210..64708fe 100644 --- a/crypto_monitor_okx/app.py +++ b/crypto_monitor_okx/app.py @@ -6451,7 +6451,11 @@ def login(): return redirect("/") else: flash("账号或密码错误") - return render_template("login.html", exchange_display=EXCHANGE_DISPLAY_NAME) + return render_template( + "login.html", + exchange_display=EXCHANGE_DISPLAY_NAME, + pwa_app_name="OKX 交易系统", + ) @app.route("/logout") def logout(): diff --git a/crypto_monitor_okx/static/icons/apple-touch-icon.png b/crypto_monitor_okx/static/icons/apple-touch-icon.png index bd835ad..82d1e82 100644 Binary files a/crypto_monitor_okx/static/icons/apple-touch-icon.png and b/crypto_monitor_okx/static/icons/apple-touch-icon.png differ diff --git a/crypto_monitor_okx/static/icons/favicon.ico b/crypto_monitor_okx/static/icons/favicon.ico index 0af9b9c..2dbb0dd 100644 Binary files a/crypto_monitor_okx/static/icons/favicon.ico and b/crypto_monitor_okx/static/icons/favicon.ico differ diff --git a/crypto_monitor_okx/static/icons/icon-16.png b/crypto_monitor_okx/static/icons/icon-16.png index b3a4ee1..5ea0f54 100644 Binary files a/crypto_monitor_okx/static/icons/icon-16.png and b/crypto_monitor_okx/static/icons/icon-16.png differ diff --git a/crypto_monitor_okx/static/icons/icon-192.png b/crypto_monitor_okx/static/icons/icon-192.png index 92351e1..55ed1de 100644 Binary files a/crypto_monitor_okx/static/icons/icon-192.png and b/crypto_monitor_okx/static/icons/icon-192.png differ diff --git a/crypto_monitor_okx/static/icons/icon-32.png b/crypto_monitor_okx/static/icons/icon-32.png index dc2186f..ea8a9a2 100644 Binary files a/crypto_monitor_okx/static/icons/icon-32.png and b/crypto_monitor_okx/static/icons/icon-32.png differ diff --git a/crypto_monitor_okx/static/icons/icon-512.png b/crypto_monitor_okx/static/icons/icon-512.png index a46fe93..e526b77 100644 Binary files a/crypto_monitor_okx/static/icons/icon-512.png and b/crypto_monitor_okx/static/icons/icon-512.png differ diff --git a/crypto_monitor_okx/static/icons/icon.svg b/crypto_monitor_okx/static/icons/icon.svg index 2277788..b7eaa46 100644 --- a/crypto_monitor_okx/static/icons/icon.svg +++ b/crypto_monitor_okx/static/icons/icon.svg @@ -1,17 +1,6 @@ - - - - - - - - - - - - - + + diff --git a/crypto_monitor_okx/static/icons/manifest.webmanifest b/crypto_monitor_okx/static/icons/manifest.webmanifest index b2ffb73..7d82187 100644 --- a/crypto_monitor_okx/static/icons/manifest.webmanifest +++ b/crypto_monitor_okx/static/icons/manifest.webmanifest @@ -1,11 +1,11 @@ { - "name": "交易监控复盘", - "short_name": "监控", - "description": "加密货币永续交易监控与复盘", + "name": "OKX 交易系统", + "short_name": "OKX 交易系统", + "description": "OKX 永续交易监控与复盘", "start_url": "/", "display": "standalone", "background_color": "#0b0d14", - "theme_color": "#0b0d14", + "theme_color": "#FFFFFF", "icons": [ { "src": "/static/icons/icon-192.png", diff --git a/docs/shortcut-icon.md b/docs/shortcut-icon.md index 693f635..ca869cf 100644 --- a/docs/shortcut-icon.md +++ b/docs/shortcut-icon.md @@ -9,13 +9,17 @@ 3. `link rel="icon"` / `favicon.ico` 4. 若都没有 → 灰色地球或网页标题首字 -本仓库已在 **中控** 与 **三所监控页** 配置统一品牌图标(深色圆角底 + 青绿趋势线 + 简化的 K 线),与页面 UI 一致.PNG/ICO 由 **Pillow** 生成,避免损坏的 favicon 出现花屏. +本仓库已在 **中控** 与 **三所监控页** 配置品牌图标.PNG/ICO 由 **Pillow** 生成. + +- **中控**:深色圆角底 + 青绿趋势线 + K 线,安装名「复盘系统中控」 +- **三所**:各所用交易所标识色与字标(币安菱形 / OKX 方块 / Gate G),安装名分别为「Binance 交易系统」「OKX 交易系统」「Gate 交易系统」 ## 文件位置 | 位置 | 访问路径 | |------|----------| -| 源稿 | `brand/icon.svg`,`brand/icons/*.png` | +| 源稿 | `brand/icon.svg`,`brand/icons/*.png`,`brand/icons/{binance,okx,gate}/` | +| Manifest | `brand/manifest.webmanifest`(中控),`brand/manifest.{binance,okx,gate}.webmanifest` | | 中控 | `manual_trading_hub/static/icons/` → `/assets/icons/...` | | 三所 | `crypto_monitor_*/static/icons/` → `/static/icons/...` | diff --git a/lib/instance/instance_embed_lib.py b/lib/instance/instance_embed_lib.py index 2577194..4f85483 100644 --- a/lib/instance/instance_embed_lib.py +++ b/lib/instance/instance_embed_lib.py @@ -179,10 +179,21 @@ def register_embed_routes( return jsonify({"ok": True, "page": tab, "html": html}) +def pwa_app_name(exchange_key: str) -> str: + """安装 App / 主屏幕显示名(各所独立标识).""" + ex = (exchange_key or "").strip().lower() + return { + "binance": "Binance 交易系统", + "okx": "OKX 交易系统", + "gate": "Gate 交易系统", + }.get(ex, "交易系统") + + def embed_context_extras(exchange_key: str) -> dict: return { "order_rule_tips_tpl": order_rule_tips_template(exchange_key), "include_transfer_block": include_transfer_block(exchange_key), "ui_open_guard_enabled": ui_open_guard_enabled(exchange_key), "ui_orphan_recovery_enabled": ui_orphan_recovery_enabled(exchange_key), + "pwa_app_name": pwa_app_name(exchange_key), } diff --git a/lib/instance/templates/embed_shell.html b/lib/instance/templates/embed_shell.html index 9d355b9..121598d 100644 --- a/lib/instance/templates/embed_shell.html +++ b/lib/instance/templates/embed_shell.html @@ -10,7 +10,7 @@ - {{ exchange_display }} · 加密货币 | 交易监控复盘系统 + {{ pwa_app_name }} - + - {{ exchange_display }} · 加密货币 | 交易监控复盘系统 + {{ pwa_app_name }} diff --git a/lib/instance/templates/login.html b/lib/instance/templates/login.html index 6e85d41..efbe399 100644 --- a/lib/instance/templates/login.html +++ b/lib/instance/templates/login.html @@ -4,7 +4,13 @@ - 登录 · {{ exchange_display }} + + + + + + + 登录 · {{ pwa_app_name }}