Commit Graph
33 Commits
Author SHA1 Message Date
t8y2 94487384e1 feat: add shortcut for accepting completion and update related functionality 2026-05-26 16:59:22 +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 792c816a17 feat: make query timeout configurable via global settings (default 30s)
Add queryTimeoutSecs to editor settings with UI control in the settings
dialog. 0 means no timeout. Applied to all query execution paths including
sidebar table data loading and EXPLAIN queries.

Closes #441.
2026-05-25 18:30:55 +08:00
t8y2 1b8355e7e6 style: fix frontend formatting (oxfmt) 2026-05-25 10:59:30 +08:00
t8y2 6107778358 feat: support customizable SQL snippet templates with custom trigger keys
Users can now create, edit, and delete SQL snippet templates from the settings dialog (new "Snippets" tab). Each template has a label, trigger prefix, and SQL body. Built-in defaults are modifiable and can be restored. Templates persist across sessions via the existing settings storage.
2026-05-25 01:43:09 +08:00
t8y2 ae49d87166 fix: sync gutter element heights during editor font size zoom
CSS variable changes alone don't trigger CodeMirror's measure cycle, so
gutter element heights would diverge from content line heights. The fix
reconfigures the font theme compartment (throttled to once per rAF) to
force a proper state transition → measure → syncGutters path.

Also adds missing fontFamily on .cm-gutters and i18n for "Follow app theme".
2026-05-25 00:23:44 +08:00
t8y2 24c334ef61 feat(i18n): add completion and search translations, remove hardcoded Chinese strings
- Add editor.completion (46 keys) and editor.search (10 keys) i18n sections
  across zh-CN, en, es locales, including 38 SQL function descriptions
- Create SqlCompletionTranslations interface in sqlCompletion.ts, pass via
  buildSqlCompletionItems/buildSqlCompletionItemsFromContext parameters
- Replace static FUNCTION_DESCRIPTIONS Map with getFunctionDescriptions(t?)
- Replace 11 hardcoded search toolbar strings in QueryEditor.vue with t()
- Fix YashanDB product label in connectionUrl.ts
2026-05-23 15:47:18 +08:00
t8y2 c7fa74f90c feat(sql): progressive autocomplete enhancements — fuzzy matching, type-aware hints, and more
- Fuzzy matching with character-order scoring (typo/abbreviation tolerant)
- Context-aware keyword filtering (DDL hidden in SELECT, etc.)
- CTE/subquery column resolution from parsed definitions
- INSERT column list completion
- Schema name completion
- Smart GROUP BY non-aggregated column suggestions
- Better FK join inference (shared FK, parent_id, created_by patterns)
- Table alias suggestions
- SELECT * expansion to explicit column list
- Type-aware comparison value hints (string/numeric/boolean/NULL)
- Function signature inline documentation (30+ functions)
- History-based learning ranking via recordCompletionSelection()
- Epoch-based request debouncing in QueryEditor.vue
- Irregular plural handling for singular table names
- Quoted identifier parsing for dots in names
2026-05-23 15:31:05 +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 e62ad97bcd feat(editor): enhance SQL completion icons and styles 2026-05-23 12:33:14 +08:00
t8y2 2fea0c38c5 fix(app): harden clipboard copy flows 2026-05-23 10:52:19 +08:00
t8y2 e1dd45e418 fix(editor): update AI mode icons 2026-05-22 21:18:32 +08:00
t8y2 ac32914797 fix(editor): refine completion popup styling 2026-05-22 16:53:53 +08:00
t8y2 0e189ba0cc feat(editor): add SQL semantic diagnostics 2026-05-22 14:22:58 +08:00
t8y2 a29b95b9fa fix(app): keep tray preference persistence stable 2026-05-22 10:39:47 +08:00
t8y2 bc41936e48 feat(app): configure background tray behavior 2026-05-22 02:24:16 +08:00
t8y2 7a3721952a feat(ai): highlight chat code with Shiki 2026-05-22 01:09:40 +08:00
t8y2 355e09ccf4 feat(editor): follow app theme 2026-05-22 00:41:49 +08:00
t8y2 3dc4f40e7f feat(sidebar): select active tab node 2026-05-21 23:32:07 +08:00
t8y2 a159dcfc83 feat(grid): optimize transpose view toggle 2026-05-21 23:15:44 +08:00
t8y2 2569d54f68 feat(sidebar): hide configured table prefixes 2026-05-21 22:56:42 +08:00
t8y2 895c0d58af feat(settings): support editor system fonts 2026-05-21 12:40:10 +08:00
t8y2 3ad19107d8 fix(editor): smooth sql zoom interactions 2026-05-21 00:08:47 +08:00
Abeautifulsnow 222ebefa6a feat(ai): add model list fetching in settings (#364)
- Add `ai_list_models` Tauri command and core support for fetching available models from OpenAI-compatible, Claude, and Ollama providers
- Replace manual model ID input with SearchableSelect in EditorSettingsDialog, including refresh button and loading state
- Add i18n translations for model list UI (en, es, zh-CN)
- Add tests for settings dialog layout and web driver management
2026-05-20 16:14:56 +08:00
t8y2 62af348a01 fix: custom find/replace UI for SQL editor (Ctrl+F)
Closes #352
2026-05-20 13:32:23 +08:00
t8y2 2afcfff4e3 fix(ai): extend timeout and token budget for thinking models
Thinking models like DeepSeek V4 Flash can exceed the 120s stream
timeout during long reasoning, causing truncated output and missing
answers. Increase stream timeout to 600s when thinking is enabled,
raise max_tokens floor to 8192, and bump reasoning display max-height.

Closes #326
2026-05-19 18:08:08 +08:00
t8y2 613c2f981f fix(ai): ignore IME composition enter 2026-05-19 15:56:34 +08:00
t8y2 653feb7c65 feat(editor): polish SQL autocomplete UI 2026-05-19 12:33:05 +08:00
t8y2 261d43c1b7 fix(grid): respect page size row limits 2026-05-19 11:31:38 +08:00
t8y2 4ef958a7e5 feat(connection): persist result page size 2026-05-19 10:47:17 +08:00
t8y2 f09fd5aa69 perf(ai): cache rendered message segments 2026-05-18 17:22:46 +08:00
t8y2 06683c57b1 chore(repo): move desktop app under apps 2026-05-18 02:35:39 +08:00