Commit Graph
63 Commits
Author SHA1 Message Date
t8y2 8a3bd067a2 fix: independent column width resizing in transpose view
Replace shared transposeRecordWidth with per-record width array so dragging a resize handle only affects that column. New columns auto-calculate optimal initial width based on content.
2026-05-29 16:35:29 +08:00
t8y2 6c0db6f517 feat: add "Copy as SQL ALTER" to DataGrid column header context menu
Right-click a column header in the data grid to copy the ALTER TABLE
statement for that column, making it easy to replicate column definitions
across databases. Supports all major dialects (MySQL, Postgres, SQL Server,
Oracle, ClickHouse, SQLite, DuckDB, H2).

Closes #516
2026-05-29 15:09:10 +08:00
t8y2 539faef23d feat(query): display total row count in result status bar
Execute COUNT query asynchronously after main query to show total
matching rows. Strip user-supplied LIMIT/OFFSET from count SQL so
the total reflects all rows, not just the limited page.
2026-05-28 22:44:13 +08:00
t8y2 d57660eba9 fix(grid): freeze row number column on horizontal scroll 2026-05-28 20:47:47 +08:00
t8y2 f41601e4dc fix(grid): improve column selection and transpose highlights 2026-05-28 20:09:35 +08:00
t8y2 3f64e830f8 fix(grid): show cell highlight for row multi-select 2026-05-28 19:03:21 +08:00
t8y2 a036ea1e8d fix(grid): sync value editor with selected cell 2026-05-28 18:31:57 +08:00
t8y2 4de788ada2 fix(ci): align desktop tests with zoom changes 2026-05-28 17:51:36 +08:00
t8y2 56c937f844 refactor: migrate all context menus to CustomContextMenu
Replace reka-ui ContextMenu usage in QueryHistory, DataGrid,
AppTabBar, ObjectBrowser, and TreeItem with the lightweight
CustomContextMenu component. This removes the last reka-ui
context menu dependencies and eliminates the performance
overhead of multiple cached ContextMenu instances.
2026-05-28 13:24:03 +08:00
t8y2 b3ddf9716f feat(grid): add search bar to table info panel for filtering columns, indexes, foreign keys, triggers, and DDL
Closes #493.
2026-05-28 11:02:59 +08:00
t8y2 753e40d403 Fix CI TypeScript check and rust disk pressure 2026-05-28 00:15:19 +08:00
t8y2 66ce9a368e feat(grid): always show sort button in column header regardless of compact mode
Previously when compactColumnHeaderActions was enabled, the sort button was
hidden inside a dropdown menu, requiring two clicks to sort. Now the sort
button is always visible, while formatter and local filter remain in the
dropdown when compact mode is on.
2026-05-28 00:00:03 +08:00
t8y2 68c8a5cc7b fix: fix value editor scrolling and add selection highlight
- Fix value editor not scrollable when content exceeds container
  (overflow-hidden -> overflow-auto)
- Extract vscodeSelectionLayer from QueryEditor into shared module
  and apply to value editor for consistent selection highlighting
2026-05-27 16:05:30 +08:00
t8y2 12abe9d0e0 feat: add configurable find/replace shortcuts with Mod-R routing
Add find and replace shortcut definitions to the shortcut registry with
Mod+F and Mod+R defaults. Route Mod-R through App → ContentArea to
dispatch to either the query editor replace panel or data grid refresh
based on focus context. Add isModRShortcut helper and tests.
2026-05-27 12:20:20 +08:00
t8y2 366756333a feat: use codemirror for cell detail editor 2026-05-26 21:02:01 +08:00
t8y2 8c157c7c5e feat: support AND/OR conjunction between structured filter rules
Replace hardcoded AND-only filter condition joining with a grouped WHERE
builder that respects per-rule AND/OR conjunctions. The filter builder UI
now shows toggle buttons between rules to switch the logical operator.
2026-05-26 18:31:29 +08:00
t8y2 0e67f19117 feat: improve data grid selection and copy 2026-05-26 18:26:31 +08:00
t8y2 f5f986cdd6 fix: add Shiki SQL syntax highlighting to all SQL display components
Add useSqlHighlighter composable and integrate Shiki highlighting into
DangerConfirmDialog, QueryHistory, DataGrid (replacing regex-based
highlighting), SqlFileExecutionDialog, SchemaDiffDialog, TreeItem,
ObjectBrowser, and FieldLineageDialog. Also fix danger dialog overflow
by adding overflow-hidden to DialogContent and wrap/scroll support.
2026-05-26 15:31:15 +08:00
t8y2 8baa752721 feat: add compact data grid header controls 2026-05-25 21:29:37 +08:00
t8y2 c9f584d350 feat(grid): add compact filter builder 2026-05-25 11:57:36 +08:00
t8y2 207e8e63ad feat(grid): add copy column name on header right-click context menu 2026-05-23 21:52:40 +08:00
t8y2 8845ac061d style(grid): shrink local filter and column visibility popover sizing, fix dark mode 2026-05-23 12:53:10 +08:00
t8y2 cd5d1b928d feat(grid): add configurable keyboard shortcuts for copy and delete current row 2026-05-23 12:44:49 +08:00
t8y2 4cd0f2367b fix(grid): remove unused search memo key function and computed property 2026-05-23 12:33:11 +08:00
t8y2 2fea0c38c5 fix(app): harden clipboard copy flows 2026-05-23 10:52:19 +08:00
t8y2 f68edb2516 fix(grid): remove virtual row memoization 2026-05-23 08:58:18 +08:00
t8y2 7a3ff3bff9 refactor(sql): move builders to Rust 2026-05-23 01:28:52 +08:00
t8y2 efc68c4244 perf(grid): memoize virtual rows 2026-05-22 21:48:43 +08:00
t8y2 c2a13f3057 fix(grid): focus cell before detail 2026-05-22 19:02:08 +08:00
t8y2 f5633cff67 fix(layout): prevent editor overflow over side panels 2026-05-22 17:16:36 +08:00
t8y2 e71f1da19a fix(grid): remove unused keyless edit warning logic 2026-05-22 14:32:55 +08:00
SuLea-IT 64c068bbf5 perf: reduce high-density DOM memory (#404) 2026-05-22 14:02:13 +08:00
t8y2 ed38fc2768 fix(grid): enable editing in transpose view 2026-05-22 12:04:11 +08:00
t8y2 66d180f729 feat(grid): copy insert without primary keys 2026-05-22 11:55:08 +08:00
t8y2 2150443bda fix(grid): prevent toolbar overlap 2026-05-22 01:48:26 +08:00
t8y2 612c6d36db feat(grid): link cell detail to selection 2026-05-22 01:41:30 +08:00
t8y2 a159dcfc83 feat(grid): optimize transpose view toggle 2026-05-21 23:15:44 +08:00
t8y2 e9d58e5aef feat(grid): add table info column navigation 2026-05-21 22:26:10 +08:00
t8y2 d02a12efe7 fix(grid): keep JSON formatting manual 2026-05-21 15:34:20 +08:00
t8y2 12a1032e1b fix(grid): preserve column filters on refresh 2026-05-21 14:53:13 +08:00
t8y2 f7f39f124c feat(grid): format JSON values in cell editor 2026-05-21 14:39:47 +08:00
t8y2 306d037869 fix(grid): preserve sort on refresh 2026-05-21 13:11:59 +08:00
t8y2 803f70dce9 fix(grid): support keyless table edits by capability 2026-05-21 01:26:40 +08:00
t8y2 7592def541 feat(grid): add copy as UPDATE action 2026-05-21 00:42:15 +08:00
t8y2 1ed26ff4d7 feat(grid): add cell detail value editor 2026-05-20 17:12:00 +08:00
t8y2 75f92ce725 feat(grid): resize table filter panes 2026-05-20 17:01:37 +08:00
t8y2 47ec339d5a fix: preserve pending row edits when switching tabs (#362)
Wrap ContentArea in KeepAlive to cache tab instances across switches.
Add a module-level pending-changes cache in useDataGridEditor so edits
survive DataGrid destruction caused by result eviction and reload.
2026-05-20 16:22:17 +08:00
yavon007 49a7541450 Improve data grid cell detail, navigation, and transpose UX (#342)
* fix(mysql): avoid metadata collation conflicts

Split MySQL column and primary key metadata lookups so MariaDB and OceanBase do not join information_schema tables with incompatible collations.

* feat(grid): add invert column visibility action

* feat(grid): improve cell detail editing

* feat(grid): add keyboard cell navigation

* feat(grid): add column name copy in header tooltip

* feat(grid): improve transpose navigation
2026-05-20 09:43:40 +08:00
t8y2 13246aa5b9 feat(grid): add TemporalCellEditor component for enhanced date/time editing 2026-05-19 17:47:21 +08:00
t8y2 43c38bc5bc merge: fix HTTP randomUUID export fallback 2026-05-19 17:32:50 +08:00