Syngnat
|
d7f1297a48
|
🌐 i18n: 统一显示隐藏字段列文案(6 语言)
- 将字段显示入口明确为显示/隐藏字段列
- 同步简中、繁中、英语、日语、德语和俄语文案
- 更新 DataGrid 布局与图标按钮断言
|
2026-08-07 17:59:42 +08:00 |
|
Syngnat
|
5446269855
|
✨ feat(query-editor): 支持查询另存为快捷键
- 首次保存弹窗自动聚焦查询名称输入框\n- 已保存查询可另存为独立副本并打开新标签页\n- 新增 Cmd/Ctrl+Shift+S 可配置快捷键和平台提示\n- 补齐多语言目录与保存、持久化回归测试
|
2026-08-07 11:33:37 +08:00 |
|
Syngnat
|
4d190989df
|
✨ feat(external-sql): 支持 SQL 文件指定执行数据库 (#862)
## 背景
Issue #847 希望外部 SQL 文件能够单独指定执行连接和数据库,并在后续打开时自动恢复该上下文,减少在数据库客户端之间复制 SQL
的操作成本。
## 变更点
- 在外部 SQL 文件右键菜单增加“指定执行数据库”,支持选择连接、数据库及清除单独绑定
- 将文件绑定持久化到外部 SQL 目录配置,并在树节点、最近文件、大文件执行、顶部文件入口和 AI 文件检查中统一解析
- 文件或目录重命名时同步迁移绑定,删除时清理失效绑定
- 最近 SQL 文件按物理路径去重,避免切换指定数据库后重复展示同一文件
- 补充六语言文案及绑定优先级、持久化、生命周期和菜单回归测试
## 影响范围
- 仅影响外部 SQL 文件的上下文选择和最近文件展示
- 未绑定文件仍使用原有目录默认上下文;清除单独绑定后恢复原行为
- 不涉及后端接口、数据库迁移、依赖或构建链路变更
## 验证
- `npx vitest run src/components/TabManager.recent.test.ts
src/components/ai/aiExternalSqlFileInsights.test.ts
src/components/sidebar/sidebarLegacyNodeMenu.external-sql.test.tsx
src/store.test.ts src/utils/externalSqlTree.test.ts`:128 项通过
- `npx tsc --noEmit`:通过
- `npm run build`:通过
- 六份 `shared/i18n/*.json`:解析成功且键集合一致
- `git diff --cached --check`:通过
Closes #847
|
2026-08-07 08:15:11 +08:00 |
|
Syngnat
|
0439c472a9
|
🐛 fix(data-grid): 统一待提交单元格视觉与填充模板交互
- 将待提交状态绘制到完整单元格,保持悬停、行选择与固定列视觉一致
- 区分单元格选择、剪贴板复制、填充模板与批量设值操作
- 统一模板目标行解析,排除源行、查找高亮及右键误批量应用
- 完善无障碍提示、多语言文案与回归测试
Refs #856
|
2026-08-06 23:52:26 +08:00 |
|
AutumnNazi
|
aeb0b5bc07
|
✨ feat(external-sql): 支持 SQL 文件指定执行数据库
- 为外部 SQL 文件增加连接与数据库单独绑定,并持久化保存
- 统一侧边栏、最近文件、大文件执行、工具栏和 AI 文件检查上下文
- 在文件与目录重命名、删除时迁移或清理绑定
- 按物理路径去重最近 SQL 文件并补充多语言与回归测试
|
2026-08-06 21:46:37 +08:00 |
|
Syngnat
|
ed88831661
|
✨ feat(tab): 支持标签显示直属分组名称 (#860)
## 背景
Issue #853 希望在“设置 → 工作区 → Tab 标签”中增加连接分组名称展示能力,便于在多个服务器分组之间快速识别当前标签来源。
## 变更点
- 在 Tab 标签显示元素中增加“分组”选项,双行布局启用后默认放在第二行
- 根据连接 ID 解析连接直接所属的分组名称,并在分组重命名、移动连接或删除分组后即时刷新
- 嵌套分组场景仅展示连接的直属分组名称,不继承、不拼接父级分组路径
- 未分组连接的分组值保持为空,不生成多余分隔符
- 为长分组名称增加收缩与省略显示,并补充六种语言文案
- 增加分组展示、未分组回退及嵌套直属分组边界测试
## 影响范围
- 仅影响工作区 Tab 标签的可选显示内容
- “分组”默认不启用,不改变现有用户的 Tab 布局和显示结果
- 不涉及后端接口、连接配置、数据库结构或数据迁移
## 验证
- `npm run test -- src/utils/tabDisplay.test.ts`:27/27 通过
- `npx tsc --noEmit --pretty false`:通过
- `npx vite build`:通过
- 六套 `shared/i18n/*.json`:解析通过
- `git diff --check origin/dev...HEAD`:通过
Closes #853
|
2026-08-06 20:49:11 +08:00 |
|
Syngnat
|
fd97034d97
|
feat(data-grid-filter): 优化筛选框显示与性能 (#858)
## 功能
- 优化筛选功能在大数据量时的性能
- 实现值统计结果的升降序排序功能
- 将原有复选框列表替换为带排序功能的Ant Design表格
- 修复筛选弹窗内的事件冒泡问题,避免干扰列表头拖拽
## 验证
- 聚焦测试:18/18 通过。
- tsc --noEmit、Vite 生产构建、git diff --check 均通过。
|
2026-08-06 20:48:43 +08:00 |
|
AutumnNazi
|
0921324374
|
✨ feat(tab): 支持标签显示直属分组名称
- 工作区 Tab 标签新增分组显示项,未分组连接保持为空
- 按连接直接所属分组解析名称,不继承或拼接父级分组路径
- 支持分组变更即时刷新并限制长名称宽度
- 补充六种语言文案及嵌套分组回归测试
|
2026-08-06 18:19:33 +08:00 |
|
wait
|
0a98541a8e
|
feat(data-grid-filter): 优化筛选框显示与性能
- 优化筛选功能在大数据量时的性能
- 实现值统计结果的升降序排序功能
- 将原有复选框列表替换为带排序功能的Ant Design表格
- 修复筛选弹窗内的事件冒泡问题,避免干扰列表头拖拽
|
2026-08-06 17:00:07 +08:00 |
|
kunghim
|
cf8397d310
|
✨ feat(data-grid): 增加结果视图字段搜索定位
|
2026-08-06 11:33:06 +08:00 |
|
Syngnat
|
005113dd79
|
🐛 fix(redis): 修复列表新增与精确删除
- 对齐新版 Redis List 头尾新增的 Wails 参数契约
- 分别使用 LPUSH 与 RPUSH 保证插入位置语义
- 按索引原子删除并避免重复值误删
- 补充多语言文案与前后端回归测试
Refs #639
|
2026-08-05 22:33:53 +08:00 |
|
Syngnat
|
07835ea125
|
🐛 fix(connection): 修复连接环境标识与生产操作保护 (#830)
## 变更说明
Closes #823
- 删除分组级环境预设,连接分组下新建查询的 Tab、侧边栏和相关视图统一读取连接自身的环境类型与颜色。
- 对未配置任何生产保护的生产连接,所有可能修改数据、结构、配置、服务或消息的入口增加 5 秒风险确认,并要求点击“我已知悉”。
- 写操作成功提示等待实际刷新完成,避免提示早于侧栏、表概览、Redis、Nacos 等界面状态更新。
- 增加环境迁移、生产风险确认、刷新竞态和相关入口测试。
## 验证
- `npx tsc --noEmit` 通过
- `npx vite build` 通过
- 定向 Vitest:8 个测试文件,55 个测试全部通过
- `go test ./shared/i18n` 仍受上游已有的 `ru-RU` 缺少
`table_designer.tdengine.tag.value` 阻断,本次未引入该问题
|
2026-08-03 19:49:10 +08:00 |
|
AutumnNazi
|
455b12f443
|
🐛 fix(i18n): 补齐俄语 TDengine 翻译
- 补充侧栏回到顶部的俄语文案\n- 补充 TDengine TAG 值、超级表提示和 TAG 定义加载文案\n- 保持俄语 catalog 与英文 key 集合一致
|
2026-08-03 17:06:49 +08:00 |
|
AutumnNazi
|
ad7179941f
|
🐛 fix(connection): 修复连接环境标识与生产操作保护
- 分组不再覆盖连接自身环境类型,Tab 和侧栏视图统一使用连接环境颜色\n- 为未配置生产保护的生产连接增加 5 秒风险确认,覆盖 SQL、数据、结构、同步、Redis、Nacos 和消息操作\n- 写操作完成后等待刷新请求结束再提示成功,避免界面状态落后于实际结果\n- 增加连接环境、生产风险确认和刷新竞态测试,关联 Issue #823
|
2026-08-03 16:39:06 +08:00 |
|
Syngnat
|
75f897c1ab
|
🐛 fix(query-editor): 修复 Cmd 点击失效表链接异常
- 表链接跳转前精确校验对象存在性并清理过期元数据
- 隔离标签、数据库及连接切换后的迟到响应并合并重复点击
- 扩展 Elasticsearch 与可选驱动代理的存在性检查及兼容回退
- 补充前后端回归测试和 Wails 绑定
|
2026-08-03 14:57:06 +08:00 |
|
Syngnat
|
0b6c0e8e51
|
✨ feat(about): 应用内查看更新日志并与下载进度同窗
- 关于页提供「查看更新日志」入口,弹窗可滚动阅读 Markdown
- 下载进度与更新日志合并,支持边看日志边下载
- 本地缓存已读版本并展示未读提示
- 修正弹窗层级,避免被设置中心遮挡
- 补充多语言文案与单测
|
2026-08-02 13:07:36 +08:00 |
|
Syngnat
|
218e9388d2
|
🎨 style(theme): 对齐表概览主题表面并优化工具栏与时间展示
- 主内容区与侧栏统一 panel-2,消除表概览空白区色差
- 查询工具栏保存按钮改为 default 图标样式,提升暗色可读性
- 表概览时间格式化为 YYYY-MM-DD HH:mm:ss,保留小数秒
- 补充多语言文案与相关测试
|
2026-08-02 12:43:02 +08:00 |
|
Kunghim
|
c440280118
|
✨ feat(data-grid): 优化文本记录视图
|
2026-08-02 00:42:25 +08:00 |
|
Kunghim
|
f46dc08519
|
fix(data-grid): 修复行号列整格双击切换文本视图
|
2026-08-02 00:42:23 +08:00 |
|
Syngnat
|
b80843483a
|
✨ feat(database): 支持通配符过滤数据库显示范围
- 新增数据库包含与排除通配规则,保持原精确筛选兼容
- 同步侧栏、查询编辑器、数据导入导出及连接配置
- 完善持久化、连接包、Wails 绑定、多语言与回归测试
Fixes #776
|
2026-08-02 00:06:20 +08:00 |
|
Kunghim
|
42f34a36f4
|
✨ feat(datagrid): 支持列值多选筛选
|
2026-08-01 19:32:20 +08:00 |
|
Syngnat
|
aa7d927b67
|
🌐 i18n: 创建数据库字符集/排序规则文案(6 语言)
|
2026-08-01 18:22:21 +08:00 |
|
Syngnat
|
88434e77a9
|
✨ feat(elasticsearch): 新增 REST 控制台并完善安全执行链
- 复用查询页提供 ES 控制台、模板、AI 辅助及原始与表格结果
- 新增统一解析分类、危险确认、连接保护和受控 REST 执行
- 扩展 driver agent、版本适配、Wails 绑定、多语言与文档
- 修复完整回归中发现的跨平台和前端基线用例问题
Refs #782
|
2026-08-01 14:58:12 +08:00 |
|
Kunghim
|
fd1b5c272e
|
🌐 i18n: 接受 SQL AI 自动补全快捷键文案(6 语言)
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
|
2026-08-01 00:45:12 +08:00 |
|
Syngnat
|
98d07e49cc
|
✨ feat(oracle): 支持 SID 连接模式 (#804)
- 在连接弹窗中切换 Service Name 与 SID,并完善 URI 和参数回显
- 使用 SID 查询参数生成 Oracle DSN,兼容 Navicat 导入及历史配置
- 补充多语言、弹窗滚动布局和前后端回归测试
Fixes #801
|
2026-07-31 23:06:11 +08:00 |
|
liuqiufeng
|
c259e2ebe2
|
✨ feat(oracle): 支持 SID 连接模式
- 在连接弹窗中切换 Service Name 与 SID,并完善 URI 和参数回显
- 使用 SID 查询参数生成 Oracle DSN,兼容 Navicat 导入及历史配置
- 补充多语言、弹窗滚动布局和前后端回归测试
|
2026-07-31 22:02:11 +08:00 |
|
AutumnNazi
|
d36244019c
|
✨ feat(sidebar): 新增数据库置顶与分区展示
- 支持在 V2 数据库右键菜单中置顶和取消置顶
- 持久化数据库置顶状态并按置顶与全部分区展示
- 保留数据库原始顺序及已加载的展开子树
- 修复数据库折叠后再次展开触发重新连接的问题
- 补充多语言文案和侧边栏回归测试
|
2026-07-31 20:51:55 +08:00 |
|
Syngnat
|
4402f4ae1b
|
✨ feat(sidebar/data-grid): 重构标题栏快捷操作并统一查询文案
- 标题栏增加新建查询、新建连接及分组快捷工具入口\n- 将批量处理、SQL 工具和数据工作流按菜单分组呈现\n- 优化 V2 对象区固定栏、连接操作与窗口拖拽区域\n- 更新六种语言的快捷操作和手动查询条件文案\n- 补充标题栏与侧栏交互回归测试
|
2026-07-31 16:21:36 +08:00 |
|
Syngnat
|
6ed3597262
|
✨ feat(tdengine): 支持普通表超级表与子表创建
- 表设计器新增普通表、超级表和子表类型配置\n- 生成并执行 CREATE TABLE、CREATE STABLE 与 USING ... TAGS 语句\n- 支持超级表 TAG 定义和子表 TAGS 值校验,补齐多语言文案\n- 创建成功后自动刷新对应数据库的侧边栏表树\n- 增加 SQL 生成、执行拆分和 TDengine 元数据回归测试
|
2026-07-31 09:23:31 +08:00 |
|
Syngnat
|
c4e7142309
|
🐛 fix(mac-window): 固定使用 macOS 原生窗口控制
- macOS 窗口创建时启用原生标题栏与红黄绿控制
- 移除主题切换及持久化偏好,兼容旧前端禁用调用
- 保持 Windows/Linux 自定义无边框窗口并补充回归测试
|
2026-07-30 21:06:12 +08:00 |
|
Syngnat
|
c42a8679e9
|
✨ feat(connection/redis): 补充哨兵拓扑并修复探活字段重叠
- 新建连接弹窗 Redis 拓扑补充 Sentinel 模式:哨兵地址列表、master 名称、
哨兵账号/密码(密码复用现有掩码密文控件),与 MySQL replica、Mongo
副本集等拓扑保持一致的密排布局
- 移除指向孤儿组件 ConnectionModalRedisSections.tsx 的死引用
- 修复自定义探活 SQL 文本框:AntD showCount 计数器绝对定位探出容器
约一行高度,与下方 .gn-conn-field-hint 提示文字重叠;调整
Form.Item marginBottom(0→22)为计数器预留空间
- 同步密排布局下的 i18n 文案(URI 区域、字段短标签等)与相关快照测试
- 清理已废弃的 UI mockup 草稿文件 ai_ui_mockups_wip.html
|
2026-07-30 07:16:54 +08:00 |
|
Syngnat
|
b6af0a09cc
|
✨ feat(query-editor/sidebar): 支持执行计时与单库展开
- 在停止按钮中实时展示 SQL 执行耗时,并保持计时宽度稳定
- 新增默认关闭且可持久化的同连接单数据库展开设置
- 覆盖关系型数据库与 Redis 节点,并补充多语言和回归测试
Refs #754
Refs #755
|
2026-07-29 17:30:37 +08:00 |
|
Syngnat
|
21951ca08a
|
✨ feat(nacos-service): 完善实例详情与列表交互
- 补充实例元数据展示并默认折叠详情
- 调整实例操作位置与详情展开交互
- 完善多语言文案和交互回归测试
|
2026-07-29 12:04:47 +08:00 |
|
Syngnat
|
e5e80cbbe8
|
🐛 fix(nacos): 完善多版本连接与配置服务可靠性
- 支持 Nacos v1、v2、v3 就绪探测与受限账号连接
- 强化认证、缓存、单飞连接和关闭代际的并发边界
- 修复监听重复事件、导入身份碰撞及部分失败误报成功
- 补齐只读保护、结构化错误与六语言提示
|
2026-07-28 23:51:17 +08:00 |
|
Syngnat
|
cef273f228
|
✨ feat(nacos): 新增 Nacos 数据源管理能力
- 支持 Nacos 连接测试及多命名空间资源树
- 提供配置搜索、发布、删除、历史回滚和变更监听
- 增加 Beta 发布、配置导入导出与批量操作
- 支持服务发现、实例管理、只读保护和多语言界面
- 补充 Wails 接口绑定及前后端回归测试
Refs #756
|
2026-07-28 15:58:22 +08:00 |
|
Syngnat
|
0674216d53
|
🐛 fix(sidebar): 将 PostgreSQL 分区表归入主表
- 读取 PostgreSQL 分区父子关系并隐藏分区主表行数
- 在主表下增加 Partitions 分组并保留分区表操作能力
- 兼容多级分区、跨 schema 显隐及异常元数据
- 补充分区树接入测试与多语言文案
Refs #750
|
2026-07-28 13:58:56 +08:00 |
|
Syngnat
|
c39fa3e8fe
|
🐛 fix(window): 遵循启动最大化偏好并恢复窗口尺寸
- 原生窗口统一以普通状态启动,避免关闭偏好后仍被强制最大化
- 关闭偏好时恢复持久化尺寸与位置,并阻止启动瞬态覆盖窗口数据
- Windows、Linux 与 macOS 开启偏好时统一使用窗口最大化
- 更新启动窗口文案与跨平台回归测试
Refs #703
|
2026-07-28 10:43:06 +08:00 |
|
Syngnat
|
861d4ace3f
|
🐛 fix(redis): 将 Key 搜索调整为前缀匹配
- 移除搜索 pattern 的前导通配符,避免中段 Key 误命中
- 将搜索模式和六语言文案由模糊统一为前缀
- 更新模式生成与命名空间筛选回归测试
|
2026-07-28 09:42:12 +08:00 |
|
Syngnat
|
c192b6cc3a
|
🐛 fix(dameng): 修复索引元数据查询与错误提示
修正 ALL_IND_COLUMNS 与 ALL_INDEXES 的索引归属关联;保留复合索引顺序、唯一性与索引类型元数据;索引加载失败时显示错误,并补齐回归测试和多语言文案。
Fixes #735
|
2026-07-27 22:57:50 +08:00 |
|
Syngnat
|
32eed103a4
|
✨ feat(redis): 支持按命名空间快速模糊筛选
- 为 Redis Key 目录增加完整路径快捷筛选入口
- 自动回填搜索框并切换到模糊匹配模式
- 补齐多语言文案、无障碍标签和交互回归测试
Fixes #692
|
2026-07-27 21:21:21 +08:00 |
|
AutumnNazi
|
ee53a56183
|
✨ feat(cloud-backup): 支持加密云端备份与选择性恢复
- 新增 WebDAV 与 S3 独立配置、凭据和远端状态管理
- 使用 Argon2id 与 AES-256-GCM 加密连接及配置备份
- 支持分类备份、自动同步、远端预览和一次性确认恢复
- 连接与已保存查询按 ID 合并恢复,并保留本地独有数据
- 补充前后端回归测试、六语言文案和恢复失败回滚
|
2026-07-27 20:20:00 +08:00 |
|
Syngnat
|
1bede52595
|
🐛 fix(redis): 完善集合值分页与只读查看
- 统一 Hash、List、Set、ZSet 与 Stream 的自适应分页表格
- 使用 Redis 返回长度展示真实总数并保持分页入口可见
- 为 List 元素增加只读查看模式且避免误写 Redis
- 短列表不再预留空滚动槽并补齐多语言文案
Refs #728
Refs #733
|
2026-07-27 17:35:00 +08:00 |
|
Syngnat
|
fac84c29fb
|
✨ feat(connection-modal): 重构连接弹窗 Studio 交互 (#740)
2026年7月27日 17:05:54 提交
|
2026-07-27 17:34:34 +08:00 |
|
lsx
|
e79da2e1e6
|
✨ feat(connection-modal): 重构连接弹窗 Studio 交互
|
2026-07-27 17:02:55 +08:00 |
|
mango
|
83f54d62af
|
🐛 fix: 修复 Issue #726 (Closes #726)
|
2026-07-27 16:54:46 +08:00 |
|
Syngnat
|
2d1034e77e
|
✨ feat(connection-modal): 按 Demo 重做新建连接弹窗信息架构与密排表单
- 选型页:侧栏搜索/最近/分类 + 类型卡片网格(Studio 布局)
- 配置页:顶栏 Tab(基本/网络与安全/外观/高级),去掉左侧分区导航
- 基本区:URI 置顶,名称/主机/认证密排,模式分段,生产保护扁平折叠
- 网络区:列表勾选 + 详情面板;高级区承接 connectionParams
- Step1/Step2 分宽(960/600),补充 dense 文案 i18n 与相关单测
- 附:标题栏主操作抽成 TitleBarPrimaryActions,并附 HTML Demo 参考
|
2026-07-27 12:20:12 +08:00 |
|
Syngnat
|
d48c7d06d6
|
🐛 fix(updater): 修复状态竞态与后台进程回收
|
2026-07-27 00:14:03 +08:00 |
|
Syngnat
|
cc24d8213a
|
✨ feat(connection): 优化数据源选择并支持全局搜索
- 新增全部分类、跨分类名称与类型键搜索及空结果提示
- 将卡片网格重构为响应式平面目录并完善键盘可达性
- 补齐六语言文案及语言切换、状态重置与过滤行为回归
|
2026-07-26 23:13:51 +08:00 |
|
Syngnat
|
c5e25d2ff5
|
🐛 fix(sql-error): 锁等待超时不再被误判为查询超时并给出无效建议
MySQL 报 Error 1205 (HY000): Lock wait timeout exceeded 时,界面归类为「查询超时或被取消」,
建议「检查 SQL 执行计划、过滤条件和索引,必要时缩小查询范围或调整超时时间」——
这套建议对行锁等待完全无效:成因是另一个事务持锁,调大超时只会让用户等更久。
根因:timeout_or_canceled 规则里有一条过宽的 /timeout/i,而 findSqlErrorSemantic 取首个
命中的规则,于是把锁等待超时也吞成了查询超时。
- 新增 lock_contention 规则并排在 timeout_or_canceled 之前,覆盖各方言的锁竞争与死锁:
MySQL 1205/1213、PostgreSQL deadlock detected 与 lock timeout、
SQL Server 1222/1205、Oracle ORA-00060/00054/30006、SQLite database is locked
- 文案改为指向真正的处置动作:先提交或回滚未完成的事务(含本应用 SQL 编辑器里自己未提交的
事务)再重试,并明确说明调大查询超时无效
- 6 个语言补齐 label/explanation/suggestion
- 补 4 项测试:1205 不再归类为超时、建议不再提"调整超时"、各方言锁竞争均被识别、
普通查询超时不被新规则误吞。已确认清空新规则的 patterns 后 3 项必定失败,
且失败信息正好复现原缺陷
|
2026-07-26 22:17:04 +08:00 |
|
Syngnat
|
9074cd9707
|
🔥 remove(frontend-test): 删除源码文本断言型测试并补齐全局 i18n 校验
- 删除 105 个纯静态测试文件(6624 行):仅把源码当字符串断言、不执行被测代码
- 新增 testPolicy 守卫:禁止新增读源码文本的测试,131 个存量文件记入只减不增的基线
- 新增 i18n keyResolution:校验源码 t() 引用的 key 均可经完整解析链得到译文
- 新增 i18n catalogIntegrity:校验占位符跨语言一致、无空译文
- 补齐 6 个语言包缺失的 common.retry,修复审计面板重试按钮显示字面量 key
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
|
2026-07-26 20:39:11 +08:00 |
|