From f50bae92259c5caced1d68a5bc05f5e76e072e0f Mon Sep 17 00:00:00 2001 From: MHSanaei Date: Mon, 18 May 2026 09:24:38 +0200 Subject: [PATCH] fix(inbounds): keep Node column visible for node-attached inbounds MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The Node column was bound to hasActiveNode, so disabling every node hid the column even when inbounds were still attached to those nodes — the admin lost the visual cue that those inbounds belonged to a node and would come back when it was re-enabled. Combine hasActiveNode with a new hasNodeAttachedInbound check (any dbInbound with nodeId != null) so the column survives node-disable. --- frontend/src/pages/inbounds/InboundsPage.vue | 17 +++++++++-------- 1 file changed, 9 insertions(+), 8 deletions(-) diff --git a/frontend/src/pages/inbounds/InboundsPage.vue b/frontend/src/pages/inbounds/InboundsPage.vue index 2f40b7d2..a3858b2a 100644 --- a/frontend/src/pages/inbounds/InboundsPage.vue +++ b/frontend/src/pages/inbounds/InboundsPage.vue @@ -61,9 +61,11 @@ useWebSocket({ inbounds: applyInboundsEvent, }); const { isMobile } = useMediaQuery(); -// Node list lives on the central panel; the Inbounds page consumes -// the id→node map for the new "Node" column. Fetched once on mount. const { byId: nodesById, hasActive: hasActiveNode } = useNodeList(); +const hasNodeAttachedInbound = computed(() => + (dbInbounds.value || []).some((ib) => ib?.nodeId != null), +); +const showNodeInfo = computed(() => hasNodeAttachedInbound.value || hasActiveNode.value); const basePath = window.X_UI_BASE_PATH || ''; const requestUri = window.location.pathname; @@ -460,18 +462,17 @@ function onRowAction({ key, dbInbound }) { + :sub-enable="subSettings.enable" :nodes-by-id="nodesById" :has-active-node="showNodeInfo" + :stats-version="statsVersion" @refresh="refresh" @add-inbound="onAddInbound" + @general-action="onGeneralAction" @row-action="onRowAction" /> - +