Show cancellable pending option orders beside the order form.

Fetch live OKX option hangs on the right after submit, with refresh and one-click cancel.

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
dekun
2026-07-15 21:22:29 +08:00
parent c2a0cea3f4
commit ab8b2a74e2
5 changed files with 364 additions and 33 deletions
+95
View File
@@ -3639,6 +3639,101 @@ html[data-theme="light"] .options-strike-table--t .opt-strike-row-atm td {
.opt-order-panel-inner {
border-radius: 8px;
}
.opt-order-layout {
display: flex;
align-items: stretch;
gap: 14px;
}
.opt-order-main {
flex: 1 1 auto;
min-width: 0;
}
.opt-order-pending {
flex: 0 0 280px;
max-width: 320px;
padding: 10px 12px;
border-radius: 8px;
border: 1px solid rgba(158, 192, 255, 0.2);
background: rgba(0, 0, 0, 0.18);
}
.opt-order-pending-head {
display: flex;
align-items: center;
justify-content: space-between;
gap: 8px;
margin-bottom: 8px;
}
.opt-order-pending-title {
margin: 0;
font-size: 0.82rem;
color: #9ec0ff;
font-weight: 600;
}
.opt-order-pending-head .btn-secondary {
font-size: 0.68rem;
padding: 2px 8px;
}
.opt-pending-list {
display: flex;
flex-direction: column;
gap: 8px;
max-height: 220px;
overflow: auto;
}
.opt-pending-empty {
font-size: 0.72rem;
}
.opt-pending-item {
padding: 8px 9px;
border-radius: 7px;
background: rgba(255, 255, 255, 0.04);
border: 1px solid rgba(255, 255, 255, 0.06);
}
.opt-pending-item-top {
display: flex;
align-items: center;
justify-content: space-between;
gap: 8px;
margin-bottom: 4px;
}
.opt-pending-side {
font-size: 0.72rem;
font-weight: 600;
}
.opt-pending-side.is-buy { color: #3dd68c; }
.opt-pending-side.is-sell { color: #ff6b7a; }
.opt-pending-inst {
font-size: 0.68rem;
color: #c5d0ee;
word-break: break-all;
margin-bottom: 4px;
}
.opt-pending-meta {
font-size: 0.68rem;
color: #8892b0;
line-height: 1.35;
}
.opt-pending-item .opt-pending-cancel {
font-size: 0.68rem;
padding: 2px 8px;
}
html[data-theme="light"] .opt-order-pending {
background: rgba(0, 0, 0, 0.03);
border-color: rgba(0, 0, 0, 0.08);
}
html[data-theme="light"] .opt-pending-item {
background: #fff;
border-color: rgba(0, 0, 0, 0.08);
}
@media (max-width: 900px) {
.opt-order-layout {
flex-direction: column;
}
.opt-order-pending {
flex: 1 1 auto;
max-width: none;
}
}
.opt-order-panel-inner .opt-order-title {
margin: 0 0 8px;
font-size: 0.85rem;