Open instance in new tab; add in-hub trade, monitor, and review shortcuts.

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
dekun
2026-06-25 22:37:54 +08:00
parent 448e88ec55
commit 5cf88818c1
+11 -6
View File
@@ -2392,7 +2392,7 @@
const msg = (btn.dataset.confirm || "").trim(); const msg = (btn.dataset.confirm || "").trim();
if (msg && !confirm(msg)) return; if (msg && !confirm(msg)) return;
openInstance(btn.dataset.exId, btn.dataset.next || "/", { openInstance(btn.dataset.exId, btn.dataset.next || "/", {
newTab: ev.ctrlKey || ev.metaKey, newTab: btn.dataset.newTab === "1" || ev.ctrlKey || ev.metaKey,
}); });
}; };
}); });
@@ -3213,9 +3213,10 @@
</div> </div>
<div class="fs-head-actions"> <div class="fs-head-actions">
<button type="button" class="ghost btn-expand-back">返回监控</button> <button type="button" class="ghost btn-expand-back">返回监控</button>
${flaskOpen ? `<a class="btn-link btn-open-instance btn-open-trade" href="#" data-ex-id="${esc(row.id)}" data-next="/trade">打开实例</a>` : ""} ${flaskOpen ? `<a class="btn-link btn-open-instance btn-open-trade" href="#" data-ex-id="${esc(row.id)}" data-next="/trade" data-new-tab="1">打开实例</a>` : ""}
${flaskOpen ? `<a class="btn-link btn-open-instance" href="#" data-ex-id="${esc(row.id)}" data-next="/key_monitor">关键位监控</a>` : ""} ${flaskOpen ? `<a class="btn-link btn-open-instance" href="#" data-ex-id="${esc(row.id)}" data-next="/trade">下单</a>` : ""}
${flaskOpen ? `<a class="btn-link btn-open-instance" href="#" data-ex-id="${esc(row.id)}" data-next="/strategy">策略交易</a>` : ""} ${flaskOpen ? `<a class="btn-link btn-open-instance" href="#" data-ex-id="${esc(row.id)}" data-next="/key_monitor">监控位</a>` : ""}
${flaskOpen ? `<a class="btn-link btn-open-instance" href="#" data-ex-id="${esc(row.id)}" data-next="/records">复盘</a>` : ""}
<button type="button" class="danger btn-close-ex" data-id="${esc(row.id)}">全平</button> <button type="button" class="danger btn-close-ex" data-id="${esc(row.id)}">全平</button>
</div> </div>
</div>`; </div>`;
@@ -3538,10 +3539,13 @@
const dotCls = online ? "ok" : "bad"; const dotCls = online ? "ok" : "bad";
const flaskOpen = row.flask_url_browser || row.flask_url; const flaskOpen = row.flask_url_browser || row.flask_url;
const openFlask = flaskOpen const openFlask = flaskOpen
? `<a class="btn-link btn-open-instance btn-open-trade" href="#" data-ex-id="${esc(row.id)}" data-next="/trade">打开实例</a>` ? `<a class="btn-link btn-open-instance btn-open-trade" href="#" data-ex-id="${esc(row.id)}" data-next="/trade" data-new-tab="1">打开实例</a>`
: "";
const openTrade = flaskOpen
? `<a class="btn-link btn-open-instance" href="#" data-ex-id="${esc(row.id)}" data-next="/trade">下单</a>`
: ""; : "";
const openKey = flaskOpen const openKey = flaskOpen
? `<a class="btn-link btn-open-instance" href="#" data-ex-id="${esc(row.id)}" data-next="/key_monitor">关键位</a>` ? `<a class="btn-link btn-open-instance" href="#" data-ex-id="${esc(row.id)}" data-next="/key_monitor">监控位</a>`
: ""; : "";
const openReview = flaskOpen const openReview = flaskOpen
? `<a class="btn-link btn-open-instance" href="#" data-ex-id="${esc(row.id)}" data-next="/records">复盘</a>` ? `<a class="btn-link btn-open-instance" href="#" data-ex-id="${esc(row.id)}" data-next="/records">复盘</a>`
@@ -3557,6 +3561,7 @@
</div> </div>
<div class="card-actions"> <div class="card-actions">
${openFlask} ${openFlask}
${openTrade}
${openKey} ${openKey}
${openReview} ${openReview}
<button type="button" class="danger btn-close-ex" data-id="${esc(row.id)}">全平</button> <button type="button" class="danger btn-close-ex" data-id="${esc(row.id)}">全平</button>