fix(xray): clear outbound test state on delete to prevent result bleed (#4205)

This commit is contained in:
Ali Fotouhi
2026-05-10 12:03:00 +02:00
committed by GitHub
parent cf5767acd1
commit 9cbba130ab
2 changed files with 12 additions and 2 deletions
+10
View File
@@ -57,6 +57,15 @@ async function onTestOutbound(idx) {
if (outbound) await testOutbound(idx, outbound);
}
function onDeleteOutbound(idx) {
templateSettings.value.outbounds.splice(idx, 1);
outboundTestStates.value = Object.fromEntries(
Object.entries(outboundTestStates.value)
.filter(([k]) => Number(k) !== idx)
.map(([k, v]) => [Number(k) > idx ? Number(k) - 1 : Number(k), v]),
);
}
// === Advanced tab — radio-driven view ==============================
// Mirrors the legacy advanced page: a 4-way radio toggles which slice
// of the xray config the textarea edits — the full config, just the
@@ -298,6 +307,7 @@ function confirmRestart() {
:is-mobile="isMobile"
@reset-traffic="resetOutboundsTraffic"
@test="onTestOutbound"
@delete="onDeleteOutbound"
@show-warp="showWarp"
@show-nord="showNord"
/>