🐛 fix(query-tab): 修复新建查询标签页语言切换不同步

- 提取共享的新建查询默认标题识别逻辑
- 按当前语言重算默认查询和数据库作用域查询标题
- 补充跨语言标题回归测试
This commit is contained in:
tianqijiuyun-latiao
2026-06-24 10:26:05 +08:00
parent 5089e6b294
commit 1aab48783d
4 changed files with 107 additions and 25 deletions

View File

@@ -1,6 +1,7 @@
import type { ConnectionConfig, SavedConnection, TabData } from '../types';
import { t as catalogTranslate } from '../i18n/catalog';
import type { I18nParams } from '../i18n/types';
import { resolveLocalizedUntitledQueryTitle } from './queryTabTitle';
export const TAB_DISPLAY_ELEMENT_KEYS = ['connection', 'kind', 'object', 'database', 'schema', 'host'] as const;
@@ -425,7 +426,9 @@ const compactQueryTabTitle = (tab: TabData, translate: TabDisplayTranslate = def
}
const rawTitle = String(tab.title || '').trim();
const title = rawTitle && !isLikelyRawSqlTitle(rawTitle) ? rawTitle : translate('sidebar.tab.new_query');
const resolvedUntitledTitle = resolveLocalizedUntitledQueryTitle(rawTitle, tab.dbName, translate);
const displayTitle = resolvedUntitledTitle || rawTitle;
const title = displayTitle && !isLikelyRawSqlTitle(displayTitle) ? displayTitle : translate('sidebar.tab.new_query');
if (title.length <= QUERY_TAB_TITLE_MAX_LENGTH) {
return title;
}