t8y2
4b0681f5af
feat(settings): add about tab
2026-05-09 18:07:52 +08:00
t8y2
e984f698b2
fix(ui): 优化表格与 SQL 文件弹窗布局
2026-05-09 17:54:38 +08:00
t8y2
36b1ac8eda
fix(grid): 翻页后重置表格滚动位置
2026-05-09 17:39:20 +08:00
t8y2
5c52560368
feat(schema): 增加数据库对象列表缓存
2026-05-09 17:36:20 +08:00
t8y2
1fd1cb10eb
perf(sidebar): 优化侧边栏搜索匹配性能
2026-05-09 17:36:09 +08:00
t8y2
de6fecb18b
fix: restore workspace build and refine grid menu
2026-05-09 17:07:52 +08:00
t8y2
40a3c13961
feat(grid): improve table context menu
2026-05-09 16:36:12 +08:00
t8y2
6a5dd3b51b
feat(sidebar): create connections from group menu
2026-05-09 16:27:25 +08:00
t8y2
b41e548911
fix(sidebar): preserve expanded tree on refresh
2026-05-09 16:22:00 +08:00
skyler
9b4267ef7b
Merge pull request #180 from rarnu/fix/toolbar-condition
...
Fix: 修复表数据编辑的工具栏,条件过滤和刷新丢状态的问题
2026-05-09 16:12:19 +08:00
t8y2
b8b4ef2e5a
feat(editor): support tab indentation
2026-05-09 15:58:28 +08:00
t8y2
af029daf57
fix(db): normalize default database handling
2026-05-09 15:53:06 +08:00
rarnu
c6aa0cf84f
1. 修复 ORDER BY watch 重复数组
...
2. WHERE / ORDER BY 输入框 @blur 处理
2026-05-09 15:51:13 +08:00
rarnu
9261cb71a2
1. src/components/grid/DataGrid.vue
...
- 左侧搜索框:移除了 WHERE 支持(isWhereSearch 永远返回 false),现在是纯客户端文本过滤。保留了列名代码提示功能(Tab 补全、箭头导航)。
- WHERE 框:新增列名代码提示(独立的下拉建议面板),支持单双引号和小括号自动配对,Enter 直接应用过滤。
- ORDER BY 框:新增列名代码提示(同样的建议面板),Enter 直接应用排序。
- 刷新/回滚/提交:reload emit 现在传递 4 个参数 (sql, searchText, whereInput, orderBy),确保刷新后所有条件不丢失。
- 分页/排序:统一使用新的 currentWhereInput() 函数,替代已废弃的 activeWhereInput。
- 删除了 applyWhereSearch() 和 onSearchEnter()(左侧搜索不再需要执行 WHERE 查询)。
2. src/composables/useDataGridActions.ts
- onReloadData() 签名改为接受 4 个参数 (sql, searchText, whereInput, orderBy)。
- table-data 模式刷新时,用 buildTableSql(tab, { whereInput, orderBy }) 重建 SQL,保留 WHERE 和 ORDER BY 条件。
3. src/components/layout/ContentArea.vue
- reload emit 签名同步更新为 4 个参数。
- results 模式和 table-data 模式两个 DataGrid 的 @reload 处理器都转发全部 4 个参数。
4. src/App.vue
- ContentArea 的 @reload 处理器转发 4 个参数给 onReloadData()。
2026-05-09 15:04:06 +08:00
t8y2
9a9f67f9ae
fix(window): prevent double-toggle on titlebar double-click ( #179 )
...
data-tauri-drag-region already handles double-click to maximize
natively; the @dblclick handler was calling toggleMaximize() again,
immediately restoring the window.
2026-05-09 14:51:47 +08:00
Bacon2994
ce2f97a175
fix(sidebar): 修复默认库过滤数据库树 ( #175 )
2026-05-09 14:42:24 +08:00
t8y2
5c911f39ff
fix(ui): prevent tab scroll arrow overlapping with text
...
Widen the scroll button gradient area and use a solid-to-transparent
gradient (40% opaque) instead of a semi-transparent via stop, so tab
text is fully hidden behind the arrow overlay.
2026-05-09 14:26:31 +08:00
t8y2
94927faa4c
feat: add CROSS APPLY / OUTER APPLY support for SQL Server completion ( #168 )
2026-05-09 12:14:42 +08:00
t8y2
4c5de25f95
fix: enable tab context menu (close all/close others/close right)
2026-05-09 11:56:09 +08:00
t8y2
1a1f128f2b
feat: Redis browser overhaul — Navicat-style table, editing, and pagination
...
- Unified key table with columns: key, type, value preview, size, TTL
- Top-bottom split layout: key table above, value detail below
- Virtual scrolling via RecycleScroller for large key sets
- ZSet editing: add/remove members with scores
- TTL inline editing: click badge to modify expiration
- Batch key deletion with checkbox selection
- Paginated loading for Hash/Set/ZSet/List values (HSCAN/SSCAN/ZSCAN)
- Debounced auto-search (400ms) for key filtering
- Value previews fetched during key scan for instant display
2026-05-09 11:45:50 +08:00
t8y2
d6e273e136
feat: custom titlebar with integrated window controls
...
- macOS: overlay mode with native traffic lights, toolbar as drag region
- Windows/Linux: frameless window with custom minimize/maximize/close buttons
- Double-click toolbar to toggle maximize
2026-05-09 10:44:34 +08:00
t8y2
26b6c50800
fix: add explicit @source to prevent Tailwind styles missing on tmpfs ( #167 )
2026-05-09 09:52:13 +08:00
t8y2
424bbdfc52
feat: add value editor and Set NULL in cell detail panel
...
Double-click value area or click Edit button to open textarea editor
for long text/JSON. Add Set NULL button for quick null assignment.
Fix: null values via ?? operator were ignored in dirty row display.
2026-05-09 01:06:19 +08:00
t8y2
ad79642502
feat: auto-fit column widths based on header and data content
...
Scan column names and first 50 rows to calculate optimal column width
instead of using a fixed 150px default. Double-click column separator
to auto-fit individual columns. Min 60px, max 400px.
2026-05-09 00:51:51 +08:00
t8y2
9ea098bd57
refactor: use icons for tab mode and Navicat-style tab titles
...
Replace text badges (SQL/表) with icons (Code2/Table2), remove
connection color dot, and adopt table@database.schema naming.
2026-05-09 00:21:56 +08:00
t8y2
70b55fe49a
feat: add independent WHERE and ORDER BY filter inputs to data grid ( #165 )
...
- Split WHERE and ORDER BY into separate inputs alongside search bar
- Three equal sections: Search | WHERE | ORDER BY with border separators
- Preserve tableMeta on error so filters remain visible after failed queries
- Show schema@database format in table data badge
2026-05-09 00:11:46 +08:00
t8y2
0e2fbc5a40
feat: show sort hint icon on column header hover ( #165 )
2026-05-08 21:44:56 +08:00
t8y2
bd08d9865d
feat: add "Copy as INSERT" to data grid context menu ( #166 )
2026-05-08 21:33:41 +08:00
t8y2
77ed6404a0
fix: disable overscroll bounce on data grid to prevent header desync ( #156 )
2026-05-08 20:38:40 +08:00
t8y2
e83a3bbab9
fix: only show configured database in sidebar when specified ( #160 )
2026-05-08 19:52:36 +08:00
t8y2
0e6617c817
feat: support create/drop database and schema from sidebar context menu
...
Add context menu actions for creating and dropping databases and schemas
directly from the sidebar tree. Supports MySQL, PostgreSQL, SQL Server,
ClickHouse, Oracle, and other server-based databases.
2026-05-08 19:24:13 +08:00
t8y2
acfe9d1b23
fix: disable native context menu and add sidebar refresh button ( #159 )
...
Prevent browser native "Reload" from resetting app state in Tauri,
and add a refresh button to the sidebar header for convenience.
2026-05-08 19:05:21 +08:00
t8y2
85be58822e
fix(oracle): Oracle 11g compatibility and sidebar improvements
...
- Rewrite FETCH FIRST to ROWNUM for Oracle 11g (no 12c+ syntax)
- Filter APEX_*, FLOWS_*, $-prefixed system schemas from sidebar
- Set schema prefix on table nodes for schema-aware databases
- Use all_objects instead of all_tables+all_views (4x faster)
- Disable statement cache to avoid stale cursor issues
- Update rust-oracle with streaming TTC, drain fixes
2026-05-08 18:54:24 +08:00
rarnu
8a249a2194
add: 在结果集中增加数据过滤的功能 ( #163 )
...
* add: 在结果集中增加数据过滤的功能
* 1. 提取 isResultsContext — 新增具名计算属性,替代魔法字符串 results,模板和逻辑中统一使用。
2. wherePredicate 在 results 场景下短路 — 加了 canUseWhereSearch.value ? ... : undefined 守卫,避免在结果集界面无意义地调用 normalizeWhereInput()。在 results 上下文下:
- wherePredicate → undefined
- isWhereSearch → false(因为 canUseWhereSearch 为 false)
- activeWhereInput → undefined
- 搜索框 placeholder 切换为纯 search(由 canUseWhereSearch 控制,已存在)
- 应用按钮隐藏(v-if=isWhereSearch,已存在)
逻辑链现在是一致的:canUseWhereSearch === false 时,所有 where 相关功能(解析、建议、按钮、回车提交)全部失效
2026-05-08 18:33:59 +08:00
Bacon2994
3b4b6c1ff7
fix(query): 修复查询结果表头提示与全量排序 ( #164 )
...
* fix(grid): 修复查询结果表头提示与排序
修复 MySQL 查询结果列元数据取错库名的问题,并补齐查询结果全量排序链路,避免表头提示与排序行为失效。
* fix(query): 修复结果排序重复列名报错
2026-05-08 18:31:09 +08:00
t8y2
c036dd19e4
feat: support middle-click to close tabs ( #162 )
2026-05-08 17:19:31 +08:00
t8y2
92fe47b913
fix: pass SQL directly in AI execute to avoid stale state ( #153 )
...
When executing SQL from the AI panel, pass the SQL string directly to
tryExecute() instead of relying on the executableSql computed property,
which could use stale selectedSql or cursorPos values.
2026-05-08 16:45:01 +08:00
rarnu
47ad960bbb
Fix: DataGrid数据集和工具栏的修复及加强 ( #157 )
...
* fix: 修复结果集内的数据过滤功能
* add: 将原先误删的WHERE查询加回
* add: 合并事务栏和搜索栏,并且在结果集中不启用搜索功能
* add: 修复在表数据和结果集模式下,DataGrid刷新时未保留查询条件的问题,将表数据和结果集的处理逻辑进行拆分
* add: 与主分支合并,解决冲突
* add: 恢复i18n
* add: 恢复useDataGridActions.ts
* add: 恢复ContentArea.vue
* add: 恢复DataGrid.vue
* fix: 修复括号自动配对的bug
* add: 将DDL按钮移到表数据编辑的第一行尾,并且不在DataGrid中显示
2026-05-08 16:04:21 +08:00
t8y2
68d8776e8f
feat(mcp): notify desktop UI to reload after connection add/remove
...
Add /reload-connections bridge route that emits mcp-reload-connections
event, triggering the frontend to re-read connections from SQLite.
2026-05-08 12:44:16 +08:00
t8y2
b06d5ded04
fix(redis): align value viewer header height with key browser search bar
2026-05-08 11:49:03 +08:00
skyler
de244a0b12
Merge pull request #149 from Bacon2994/codex/redis-rdm-consistency
...
feat(redis): 修复全库键浏览与二进制展示
2026-05-08 11:34:20 +08:00
t8y2
9fd16e3c1f
perf(grid): pre-stringify JSON/JSONB values and truncate cell display
...
Serialize JSON/JSONB as strings in Postgres and MySQL drivers to avoid
repeated JSON.stringify in the render loop. Truncate cell display to
256 chars so the browser doesn't lay out huge text nodes on scroll.
2026-05-08 11:23:31 +08:00
t8y2
fdf65ac5e3
fix(grid): display JSONB values as JSON string in edit mode and detail panel ( #152 )
...
String() on objects produces [object Object]. Use JSON.stringify()
consistently wherever cell values are converted to strings.
2026-05-08 11:12:05 +08:00
Bacon2994
5d00dd583a
style(i18n): 修正英文文案格式
2026-05-08 10:39:12 +08:00
Bacon2994
d6f5c25c17
fix(redis): 优化 UTF-8 展示与提示文案
2026-05-08 10:31:51 +08:00
Bacon2994
0fb6aebd59
feat(redis): 修复全库键浏览与二进制展示
2026-05-08 10:06:16 +08:00
t8y2
631db17a08
refactor: merge data table info bar and transaction toolbar into one row
...
Move refresh/commit/rollback buttons from DataGrid's internal toolbar
to ContentArea's table info header. Remove the redundant second row
and the column count display.
2026-05-07 23:48:51 +08:00
t8y2
52add6a503
fix: raise toast z-index above dialog overlay
2026-05-07 23:30:34 +08:00
t8y2
9206daf679
fix: allow text selection in DDL panel
...
Closes #143
2026-05-07 23:22:47 +08:00
rarnu
53c5c28542
fix: 修复结果集内的数据过滤功能 ( #145 )
2026-05-07 22:05:27 +08:00