Commit Graph

1035 Commits

Author SHA1 Message Date
Syngnat
5c3535c85d feat(native-window): 支持 macOS Dock 管理独立窗口
- 在主程序 Dock 菜单动态列出并聚焦已就绪的独立窗口
- 在 Wails 启动前固定子进程为 Accessory,消除临时 Dock 图标闪现
- 按多显示器可见区域修正越界窗口并回写实际坐标
- 将自定义 AI 面板快捷键同步到独立窗口并转交主窗口处理
- 补齐 Go、Objective-C、前端及 Wails 绑定回归测试
2026-07-21 18:52:54 +08:00
Syngnat
d7b60891c5 feat(mcp): 支持 OpenCode 客户端接入
- 识别用户目录与 XDG 路径下的 OpenCode JSON/JSONC 配置
- 保留注释、自定义字段与符号链接并原子写入 MCP 配置
- 增加 CLI 检测、安装状态、自动接入及旧路径修复
- 在客户端选择、浏览器模拟、AI 检查提示和六语言文案中接入 OpenCode
- 引入 hujson、补充许可声明及前后端回归测试
2026-07-21 18:52:19 +08:00
Syngnat
3c8692b133 🐛 fix(connection/elasticsearch): 修复索引加载超时与测试按钮卡顿
- 使用 CAT Indices 轻量枚举索引并兼容 ES 7.3 参数
- CAT 失败时在统一超时预算内回退 Alias API
- 分离连接测试与保存状态并后台加载数据库列表
- 隔离过期测试请求,避免弹窗重开后状态污染
- 补充索引回退、超时预算与按钮状态回归测试
2026-07-21 18:41:58 +08:00
Syngnat
446707698f feat(table-copy): 新增整表复制与自动副本命名
- 在表概览及新旧侧栏右键菜单接入复制整表入口与确认、进度和刷新反馈
- 按 source_copyN 原子创建目标表并复制列、索引、默认值及全部数据
- 处理 PostgreSQL 生成列、identity/serial 序列校准与失败清理
- 限定安全数据源与连接保护策略,阻止分区表、RLS 及引用型存储引擎
- 加固 MySQL/PostgreSQL 元数据标识符处理并补齐六语种文案
- 增加后端、能力矩阵、菜单接线和国际化回归测试
2026-07-21 13:27:24 +08:00
Syngnat
60d172254d 🐛 fix(update): 安装前确认并安全关闭当前安装的全部实例
- 安装更新前先确认关闭当前安装目录下的 GoNavi 实例,并继续执行未保存 SQL 退出保护
- 按可执行文件路径枚举并复核进程身份,优雅关闭超时后再强制终止,避免 PID 复用误杀
- 通过全局维护事件阻止更新期间启动新实例,并由 PowerShell 更新器完成跨权限无空窗交接
- 同步更新前端交互、多语言提示、Wails 绑定及 Windows 发布资产校验
2026-07-21 10:55:08 +08:00
Syngnat
b75fd37b05 🐛 fix(update): 修复下载进度弹窗层级
- 隐藏下载进度时销毁旧弹窗 Portal,重新查看时恢复到设置中心上层
- 保留后台下载进度与完成状态,支持隐藏后反复查看
- 补充弹窗挂载策略及更新状态回归测试
2026-07-21 09:01:22 +08:00
Syngnat
0f474e4918 🐛 fix(ci): 修复标题栏资源测试的类型错误
- 为 PNG 资源读取显式指定 base64 编码
- 恢复前端及 Docker 镜像构建的 TypeScript 校验
2026-07-20 22:19:57 +08:00
Syngnat
118da179f6 🐛 fix(titlebar): 修复暗色主题标题栏图标白底
- 为默认品牌图标增加透明紧凑标题栏素材
- 增加独立标题栏资源解析并保留其他品牌图标现有展示
- 移除标题栏图标强制白色背景
- 补充默认图标、未知图标回退及透明素材测试
2026-07-20 20:23:18 +08:00
Syngnat
b2819db495 feat(shortcuts): 支持快捷键关闭当前标签页
- 新增可自定义的关闭当前标签页动作,macOS 默认 ⌘W,Windows/Linux 默认 Ctrl+W
- 根据最近交互区域路由工作区或结果标签关闭,并隔离分离窗口
- 关闭日志标签时隐藏整个结果区,避免连续按键误关工作区
- 沿用未保存 SQL 与导入任务等工作区关闭保护
- 隔离 IME、快捷键录制、弹窗、抽屉与上下文菜单
- 补充多语言文案及快捷键路由回归测试
2026-07-20 20:22:35 +08:00
Syngnat
049ec7bdf1 feat(data-workbench): 直达批量操作并新增数据导入工作台
- 批量表和批量库入口无需预选目标即可进入统一工作台
- 将对象选择、导出、清空和删除操作迁入可持续查看的任务界面
- 新增侧栏数据导入入口并复用预览、字段映射和进度流程
- 保护运行中的导入标签并同步复用工作台的连接上下文
- 补齐多语言文案及批量操作、导入链路回归测试
2026-07-20 15:34:20 +08:00
Syngnat
21e0921b3b feat(data-sync/export): 支持同步与备份后台工作台
- 将数据同步及各级 SQL 备份统一迁入稳定工作区
- 全局保留任务状态、进度和结构化日志,关闭后可重新接回
- 支持从当前任务及历史记录打开 SQL 恢复工作台
- 锁定运行中配置并禁止后台任务分离到独立窗口
2026-07-20 13:43:58 +08:00
Syngnat
258f5bdd64 🐛 fix(tab-manager): 修复工作区标签批量关闭菜单失效
- 将右键菜单项和下拉菜单排除在标签拖拽触发区域外
- 避免 dnd-kit 指针捕获吞掉关闭其他页及左右侧关闭操作
- 补充菜单项不触发拖拽的指针回归测试
2026-07-20 13:40:29 +08:00
Syngnat
02eec5aee3 🐛 fix(query-editor): 修复 SQL 执行与结果标签交互
- 空白光标回退执行编辑器内全部有效 SQL
- 修复活动结果标签必须切换日志后才能关闭的问题
- 阻止关闭按钮和菜单指针误触结果标签分离拖拽
- 补充空白行、尾部空白和结果标签关闭回归
2026-07-20 13:40:03 +08:00
Syngnat
63ffa12958 🐛 fix(connection): 修复多数据源连接与浏览异常
- 修复 Milvus 表概览元数据查询与 SELECT 预览路由异常
- ClickHouse 非标端口 Native 握手超时后继续 HTTP 自动探测
- Elasticsearch 连接测试与索引枚举解耦,避免健康服务误判
- 更新可选驱动 revision 并补充回归测试
2026-07-20 10:55:19 +08:00
Syngnat
cb5f6a668f feat(datagrid): 支持按单元格选区删除记录
- 统一单元格选区与复选框行的删除目标和计数,按记录行去重处理
- 保留复选框优先级,新增行直接移除,已有记录进入待提交删除
- 隔离页内查找高亮,并在刷新、数据重载或上下文切换时清理旧选区
- 补充选区删除、刷新保护、查找隔离和新增行回归测试
2026-07-20 10:21:01 +08:00
Syngnat
ae0eb03c21 🐛 fix(datagrid): 修复 macOS 触摸板横向滚动回跳
- 持续横向滚动期间守护最新视觉偏移,避免虚拟列表异步回写旧位置
- 增加可取消的逐帧视觉守卫并完善交互与卸载清理
- 补充守卫时序及 DataGrid 滚动接线回归测试
2026-07-20 09:43:36 +08:00
Syngnat
54c06ed113 feat(context-menu): 增强字段与数据库名称复制交互
数据表列头支持按元数据复制字段注释;数据库节点旧版与 V2 菜单支持复制数据库名;补齐六语言文案与回归测试。

Fixes #547
2026-07-19 18:17:14 +08:00
Syngnat
453bed439d 🐛 fix(data-export): 修复查询重放 SQL 导出缺少目标表
- 导出工作台执行 SQL 查询重放时传递已知目标表
- 保持 MariaDB 方言与列元数据由后端统一处理
- 补充当前页 SQL 导出的真实组件回归测试
2026-07-19 14:02:03 +08:00
Syngnat
94ad5ae2f6 feat(connection): 支持自定义 SQL 探活
- 新增连接级自定义探活 SQL 配置与多语言表单校验
- 限制单条 SELECT/WITH 并使用可取消的超时查询
- 隔离陈旧探活策略,避免配置错误驱逐健康连接

Fixes #611
2026-07-19 12:29:21 +08:00
Syngnat
82c62fd55c feat(query-result): 新增结果页快速查看表 DDL
- 识别单表查询并在 Legacy 与 V2 结果视图提供 DDL 入口
- 按数据库方言独立解析并传递 DDL 目标至浮动与独立窗口
- 避免多表和歧义查询误展示入口并补充回归测试

Fixes #537
2026-07-19 10:55:13 +08:00
Syngnat
e404fa3ac0 🐛 fix(data-grid): 兼容无 navigator 的服务端渲染
- 通过 globalThis 安全注入浏览器 navigator,避免 Node 20 渲染期抛错
- 补充无 navigator 环境下的 DataGrid 服务端渲染回归测试
- 保持浏览器剪贴板行为不变
2026-07-19 00:22:02 +08:00
Syngnat
7913811549 ️ perf(data-grid): 优化大数据量横纵向滚动性能
- 为固定行高结果集启用常数时间纵向窗口计算和横向列虚拟化
- 合并横向滚动预览与空闲提交,减少滚动期间重复渲染
- 固化 rc-table 与 rc-virtual-list 补丁并同步 Wails、Docker 和 CI 安装链路
- 补充滚动边界、页内查找及调度回归测试
2026-07-19 00:10:25 +08:00
AutumnNazi
6e58240c38 🐛 fix(table-metadata): 修复统计字段被误识别为表名
- 新增共享表元数据解析器,优先读取明确的表名字段
- 统一 AI、查询补全、侧边栏、导出和表概览等调用路径
- 补充字段顺序、兼容格式及去重行为的回归测试
2026-07-18 21:03:25 +08:00
Syngnat
3aea725f7b feat(import-export): 支持 SQL 导出前删除同名对象
- 新增默认关闭的 DROP IF EXISTS SQL 导出选项和数据删除提示
- 覆盖数据库、Schema、单表、批量导出及工作台入口
- 按方言生成逆序 DROP 前导段并保持纯数据与旧 API 兼容

Fixes #514
2026-07-18 18:20:30 +08:00
Syngnat
fd093b3325 feat(clickhouse): 支持自定义连接兼容 JDBC DSN
- 解析 ClickHouse 与 JDBC 风格 DSN 并映射协议、TLS、认证及数据库参数
- 统一连接缓存、DDL、数据同步与导出 driver-agent 生命周期
- 保持 DSN 加密存储并补充前后端回归测试和多语言提示

Fixes #383
2026-07-18 17:48:19 +08:00
Syngnat
0136b87311 🐛 fix(proxy): 避免全局代理影响数据库连接
移除数据库和 Redis 连接对全局代理的隐式继承

保留连接自身代理与 HTTP 隧道配置并修正缓存释放链路

同步六种语言的代理作用域说明并增加回归测试

Fixes #347
2026-07-18 16:43:39 +08:00
Syngnat
aeecffb517 feat(table-designer): 补齐 MySQL 空间字段类型
- 补充 Geometry、Point、MultiPoint 等八种 MySQL 空间类型候选
- 保留自定义字段类型表达式在建表和改表 SQL 中的原样输出
- 增加空间类型候选及 POINT SRID 属性回归测试

Fixes #341
2026-07-18 16:15:33 +08:00
Syngnat
15fba1d89f feat(import-export): 优化数据表导入导出能力
- 修复表格格式导出时空值显示为 null 的问题
- 支持按列导出并保持字段顺序
- 支持导入列与数据库字段映射及冲突校验
- 隔离并发导入任务进度并完善元数据回退

Fixes #646
2026-07-18 15:17:54 +08:00
Syngnat
f08bcb5e10 🐛 fix(monaco-editor): 修复 WebKit 输入法组合输入时异常滚动
- 仅在原生 WebKit 环境稳定 Monaco 输入法组合期间的文本区滚动位置
- 在组合结束、失焦和编辑器销毁时及时停止并清理监听器
- 补充 WebKit、Chromium 隔离及销毁清理回归测试
2026-07-18 14:00:19 +08:00
Syngnat
6cd2835066 feat(ai): 支持 Codex 与 Claude 订阅登录
- 新增基于本机官方 CLI 登录状态的 Codex 与 Claude 订阅 Provider
- 隔离 API Key、工具与项目配置,完善登录校验和错误处理
- 补充设置界面、国际化及前后端回归测试

Fixes #651
2026-07-18 11:57:25 +08:00
Syngnat
07a4fe1fc9 🐛 fix(query-editor): 修复 MySQL 关键字需美化后才着色
- 根据当前连接方言为 MySQL 系查询启用 Monaco MySQL 语法
- 将补全、悬浮、斜杠命令和代码片段同步注册到 MySQL 语言
- 增加方言映射和首屏着色回归测试

Fixes #612
2026-07-18 10:32:51 +08:00
Syngnat
e24942083a 🐛 fix(sidebar): 顶部新建查询绑定选中数据库
Fixes #665
2026-07-17 22:40:36 +08:00
Syngnat
8f52cbc319 🐛 fix(query-editor): 修复选区输入首字符丢失
- 为 Monaco 可打印输入兜底补充非空选区替换恢复
- 区分原生成功、仅删除选区和完全丢失,避免重复插入
- 覆盖连续输入、重选文本和模型事件光标竞态
- 新增 &lt; 单次替换为 < 的回归测试
2026-07-17 17:39:02 +08:00
Syngnat
3f4b247faa feat(native-window): 完善原生独立窗口与跨屏拖拽
- 支持全部工作台标签与 AI 对话在多显示器中原生独立展示
- 修复拖拽指针捕获,恢复关闭、右键菜单和跨窗口释放识别
- 拆分子窗启动入口并按需加载语言与工作台内容
- 内容与 Monaco 完成可见绘制后再提交迁移,消除白屏和加载闪烁
- 加固结果编辑、宿主同步及关闭、超时和焦点竞态
2026-07-17 16:06:24 +08:00
Syngnat
a86f5c6078 🐛 fix(data-grid): 保留独立窗口完整结果快照
- 数据变更回传不再受界面隐藏列过滤
- 同步编辑与删除后的完整结果行数据
- 补充独立窗口隐藏列快照回归测试
2026-07-17 16:05:24 +08:00
Syngnat
38a18b9b8e 🐛 fix(ai): 稳定流式会话终止与窗口迁移
- 跟踪并等待全部流生产者退出,避免重叠请求残留
- 窗口迁移期间阻止新请求并保留最终流式消息
- 锁定会话切换与重试操作,状态落稳后再解除发送态
- 同步终止握手绑定并补充回归测试
2026-07-17 16:04:33 +08:00
Syngnat
43b33ca42a Merge pull request #664 from AutumnNazi/fix/middle-click-close-tab 2026-07-16 21:11:36 +08:00
Syngnat
fa9d21be8b feat(native-window): 支持标签页拖出为原生独立窗口
- 支持 SQL、数据和结果标签拖出到跨显示器原生窗口
- 通过受认证 loopback bridge 复用主进程后端与状态
- 支持子窗口继续拆窗、聚焦、关闭、还原与异常退出恢复
- 补充多窗口协议、状态同步和跨平台回归测试
2026-07-16 20:25:08 +08:00
AutumnNazi
35427d08a8 feat(tab): 支持鼠标中键关闭标签页
- 在标签标题上识别鼠标中键并阻止默认滚动行为
- 复用现有标签关闭流程,保留 SQL 文件未保存确认
- 修正停靠标签关闭范围断言并增加中键交互回归测试
2026-07-16 20:19:34 +08:00
Syngnat
193d68398b 🔧 chore(license): 补齐开源许可与发布声明
- 新增项目版权及上游 NOTICE
- 让桌面、容器、驱动发布包携带法律文档
- 补充 Wails 和前端许可证元数据
- 增加发布资产回归校验
2026-07-16 17:24:16 +08:00
Syngnat
d14ac65db9 🐛 fix(connection): 修复多数据源连接打开异常
- 修复 Milvus 等数据源类型被错误回退为 MySQL
- 为 ClickHouse 22.8 增加旧版 JSON HTTP 兼容回退
- 使用轻量别名接口验证 Elasticsearch 索引枚举
- 更新可选驱动 revision 并补充回归测试
2026-07-16 17:23:16 +08:00
Syngnat
dfa6836580 🐛 fix(sidebar): 修复元数据展示开关未过滤嵌套对象
- 修复子节点数量不变时误复用未过滤父节点的问题
- 保留标签、连接、数据库与 Schema 包装层中的深层过滤结果
- 补充多层侧栏树对象显隐回归测试
2026-07-16 15:56:15 +08:00
Syngnat
0080cb33ac 🐛 fix(table-overview): 修复未知存储大小误显示为零
将 Oracle、达梦和默认方言不支持的存储统计改为 NULL 占位。

补充 Oracle 与默认方言回归测试,保留 SQLite 真实零值的 0 B 展示。
2026-07-16 13:10:29 +08:00
AutumnNazi
2400823ca4 🐛 fix(sqlite): 修复表概览行数与大小统计
- 通过 driver-agent 为 SQLite 表列表补充精确行数与存储占用
- 使用 dbstat 区分数据页和索引页并支持相对大小展示
- 区分未知统计与真实零值并补充前后端回归测试
2026-07-16 12:44:18 +08:00
Syngnat
695fad283c 🐛 fix(ci): 补全前端 Node 文件系统类型声明
- 为测试环境的 node:fs shim 增加 readdirSync 返回类型
- 避免本机上级 @types/node 掩盖隔离构建错误
- 恢复 Dev Build 与 Web Server Docker 镜像前端编译
2026-07-16 12:11:29 +08:00
Syngnat
6de7807f01 🐛 fix(query-editor): 修复 Oracle 同名同义词补全
- 合并 PR #654,并按 OWNER 与名称保留同义词元数据
- 无限定名优先登录用户,缺失时回退 PUBLIC,显式 schema 精确匹配
- 保持 GetTables 仅返回物理表,避免影响导出、ER 与 ROWID 判断
- 补充 owner 解析、PUBLIC 回退及物理表查询回归测试
2026-07-16 11:49:15 +08:00
Syngnat
3de7e1bb40 feat(settings): 将工具中心整合至设置中心
- 侧栏移除独立工具入口并统一使用设置齿轮
- 设置中心扩展为六组导航并复用原有工具内页
- 统一安全更新、连接配置、AI 设置与工具页面的返回路径
- 清理快捷键捕获、连接密码弹窗和 AI 修复上下文等瞬态状态
- 更新设置、侧栏、SQL 审计与国际化回归测试
2026-07-16 11:17:59 +08:00
Syngnat
ac4b520295 🐛 fix(brand): 统一图标资源并适配 macOS Dock
- 将 40 个重复 PNG 变体收敛为 10 个 WebP 品牌资源
- 品牌选择器、关于页、favicon 与 Dock 统一复用所选图标
- 按 824px 安全区和 184px 标准圆角合成 macOS Dock 图标
- 补充资源映射、品牌展示和 Dock 合成回归测试
2026-07-16 11:16:47 +08:00
autumn
4df1dac2c2 feat(data-grid): 支持查询结果导出 INSERT SQL
- 导出弹窗新增 INSERT SQL 格式并支持选中行、当前页和全部结果
- 单表查询自动映射真实表名与字段类型,连表结果使用带方言引号的 <table_name> 占位符
- 复用流式导出与批量 INSERT 生成逻辑,兼容 PostgreSQL 布尔字面量
- 补充前后端回归测试,覆盖单表、连表、别名和占位表场景
2026-07-16 10:58:00 +08:00
Syngnat
5d91deaade 🔧 chore(frontend): 同步 package 校验文件
- 将 package.json.md5 同步为当前 frontend/package.json 的真实 MD5
- 消除工作台更新遗留的过期校验值
- 不改动依赖声明或自动生成的 TS 绑定
2026-07-16 08:44:19 +08:00