fix(app): 修复可见对象过滤器候选列表

修复 #2272:已保存可见对象过滤后,再次打开过滤器时仍显示当前连接可选对象全集。

已有 visible_databases 只用于初始勾选状态,侧边栏树展示仍继续应用已保存过滤。

Co-authored-by: zero <zero@zeroMacmini.local>
This commit is contained in:
LRcodingandzero authored and GitHub committed 2026-07-01 14:43:13 +08:00
1 parent 889d0af92c
commit d30d47ccda
5 files changed
+29 -7

No files matched your search

@@ -1,5 +1,5 @@
import type { ConnectionConfig, DatabaseType } from "@/types/database";
import { filterDatabaseNamesForConnection, normalizeVisibleDatabaseSelection } from "@/lib/visibleDatabases";
import { filterDatabaseNamesForVisiblePicker, normalizeVisibleDatabaseSelection } from "@/lib/visibleDatabases";
const DRAFT_VISIBLE_DATABASES_PREFIX = "__visible_draft_";
@@ -22,7 +22,7 @@ export function initialVisibleDatabaseSelection(databaseNames: string[], visible
if (Array.isArray(visibleDatabases)) {
return normalizeVisibleDatabaseSelection(visibleDatabases, databaseNames);
}
return filterDatabaseNamesForConnection(databaseNames, connection);
return filterDatabaseNamesForVisiblePicker(databaseNames, connection);
}
export function visibleDatabaseSelectionIsStale(previous: VisibleDatabaseConnectionFields, current: VisibleDatabaseConnectionFields): boolean {
+4
View File
@@ -93,6 +93,10 @@ export function filterDatabaseNamesForConnection(databaseNames: string[], connec
if (visibleDatabaseFilterIsEnabled(visibleDatabases)) {
return filterVisibleDatabaseNames(databaseNames, visibleDatabases);
}
return filterDatabaseNamesForVisiblePicker(databaseNames, connection);
}
export function filterDatabaseNamesForVisiblePicker(databaseNames: string[], connection: Pick<ConnectionConfig, "db_type" | "driver_profile"> | undefined): string[] {
if (connection?.db_type === "gbase" && connection.driver_profile === "gbase8s") {
return databaseNames;
}