From e64a7716feaec134bf072544812de7446a4d7674 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E4=BA=8C=E4=B8=AB=E8=AE=B2=E6=A2=B5?= Date: Thu, 15 Oct 2026 10:33:33 +0800 Subject: [PATCH] fix(etcd): hide generic query sidebar actions --- .../desktop/src/components/sidebar/SidebarTreeRuntimeHost.vue | 2 +- apps/desktop/src/lib/database/databaseFeatureSupport.ts | 4 ++-- apps/desktop/src/lib/sidebar/treeNodeClick.ts | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/apps/desktop/src/components/sidebar/SidebarTreeRuntimeHost.vue b/apps/desktop/src/components/sidebar/SidebarTreeRuntimeHost.vue index 7e9f436cdd..4567832ebd 100644 --- a/apps/desktop/src/components/sidebar/SidebarTreeRuntimeHost.vue +++ b/apps/desktop/src/components/sidebar/SidebarTreeRuntimeHost.vue @@ -7029,7 +7029,7 @@ function buildSpecialSidebarMenu(context: SidebarMenuFactoryContext): boolean { return true; } - if (node.type === "nacos-access-control" || node.type === "etcd-root" || node.type === "etcd-dashboard" || node.type === "etcd-access-control" || node.type === "zookeeper-root" || node.type === "consul-root" || node.type === "consul-overview") { + if (node.type === "nacos-access-control" || node.type === "zookeeper-root" || node.type === "consul-root" || node.type === "consul-overview") { items.push({ label: t("contextMenu.openConnection"), action: toggle, icon: Database }); return true; } diff --git a/apps/desktop/src/lib/database/databaseFeatureSupport.ts b/apps/desktop/src/lib/database/databaseFeatureSupport.ts index afbab44007..89254e2254 100644 --- a/apps/desktop/src/lib/database/databaseFeatureSupport.ts +++ b/apps/desktop/src/lib/database/databaseFeatureSupport.ts @@ -116,7 +116,7 @@ export function supportsClearableQuerySchema(dbType?: DatabaseType): boolean { * ZooKeeper has no query surface: its agent implements only kv_* operations, * so the sidebar "new query" flow would call list-databases and fail * (issue #8215). It is excluded alongside the other specialized surfaces - * (nacos, consul, hbase) whose connection workbench replaces query tabs. + * (nacos, consul, hbase, etcd) whose connection workbench replaces query tabs. * * The message-queue surfaces (`mq` — Pulsar/Kafka/RocketMQ/RabbitMQ — and * `mqtt`) belong to the same group: brokers have no SQL engine, and their @@ -128,7 +128,7 @@ export function supportsClearableQuerySchema(dbType?: DatabaseType): boolean { * hidden there as well (issue #9609). */ export function supportsConnectionQueryActions(dbType?: DatabaseType): boolean { - return dbType !== "nacos" && dbType !== "consul" && dbType !== "hbase" && dbType !== "zookeeper" && dbType !== "plugin" && dbType !== "mq" && dbType !== "mqtt" && dbType !== "meilisearch" && dbType !== "salesforce"; + return dbType !== "nacos" && dbType !== "consul" && dbType !== "hbase" && dbType !== "etcd" && dbType !== "zookeeper" && dbType !== "plugin" && dbType !== "mq" && dbType !== "mqtt" && dbType !== "meilisearch" && dbType !== "salesforce"; } /** diff --git a/apps/desktop/src/lib/sidebar/treeNodeClick.ts b/apps/desktop/src/lib/sidebar/treeNodeClick.ts index c5d28b599c..c1bff81417 100644 --- a/apps/desktop/src/lib/sidebar/treeNodeClick.ts +++ b/apps/desktop/src/lib/sidebar/treeNodeClick.ts @@ -73,7 +73,7 @@ const queryOnActivationNodeTypes = new Set(["connection", "databas /** * Whether activating this row should open (or focus) the connection's query * page for the "open query on connection open" preference. Specialized - * workbench connections (nacos, consul, hbase, zookeeper, plugin, mq, mqtt, + * workbench connections (nacos, consul, hbase, etcd, zookeeper, plugin, mq, mqtt, * meilisearch, salesforce) keep their dedicated surfaces instead — the same * `supportsConnectionQueryActions` gate the context menu applies to its * "New Query" entry.