Open
Conversation
- Add @vueuse/core dependency
- Replace manual addEventListener/removeEventListener with
useEventListener
- Replace manual clipboard API + setTimeout with useClipboard
- Replace manual setInterval/clearInterval with useIntervalFn
- Replace manual localStorage + classList.toggle with useDark
- Replace manual document.title with useTitle
- Replace manual getBoundingClientRect with useElementBounding
- Replace manual setTimeout/clearTimeout debounce with useDebounceFn
- Replace watch + setTimeout with watchDebounced
- Replace document.activeElement check with useActiveElement
- Replace global click listener with onClickOutside for context menu
- Replace watch(source, v => { if (v) }) with whenever
- Replace ref() template refs with useTemplateRef() (Vue 3.5+)
- Replace ref() with shallowRef() for large store objects (schema, info,
settings)
- Add onCleanup to async watchers in DiffUnsavedDialog and
ProjectSettingsDialog
- Fix race condition on rapid open/close of async dialogs
- Replace index-based v-for :key with stable name-based keys
- Replace direct Pinia store mutations with store actions
(clearTestData, clearServerErrors)
Backend: - Add AppManager (pkg/designer) to centralize file/demo/diff operations - Add ListDirectory, GetHomePath, GetRecentFilesInfo, RemoveRecentFile RPC methods - Add SupportedExtensions map to pkg/format - Add Config.RemoveRecentFile for recent files management - Add addRecentFile callback to ProjectService for SaveAs - Block new filesystem RPC methods in read-only mode Frontend: - Rewrite OpenDialog with tabs (Recent / Browse / DSN) and rich recent files list - Add FileBrowser component for server-side directory navigation - Add SaveDialog and useSaveDialog composable for Save As flow - Replace appPrompt-based Save As with proper SaveDialog in MenuBar and confirmUnsaved - Disable Save As on welcome screen
- Add IntrospectDSN RPC: connect to PostgreSQL, return preview of schemas, tables, views, functions, triggers, enums, domains, sequences, extensions, roles - Add ImportDSN RPC: import schema with filtering by schemas, tables, and categories - Add pkg/format/pgre/preview.go: PostgreSQL introspection via pg_catalog queries - Add pkg/designer/app_manager.go: centralize app-level operations - Add pkg/rpc/convert_app.go: DSN preview/role model converters - Rewrite OpenDialog DSN tab with 2-step flow: connect → select schemas/tables → import - Block IntrospectDSN and ImportDSN in read-only mode
- Add pkg/app/updater.go: fetch latest release from GitHub API, semver compare via golang.org/x/mod/semver, cache result for 24h in config - Add pkg/app/updater_test.go: 10 test cases for version comparison - Add LastUpdateCheck, CachedLatestVersion, DismissedVersion fields to Config - Add UpdateInfo model and CheckForUpdate, DismissUpdate RPC methods - Wire update check callbacks in app.go - Block DismissUpdate in read-only mode - Add updateInfo state, checkForUpdate(), dismissUpdate() to ui store - Show "↑ v0.x.x" badge in status bar (both project and welcome screen) - Call checkForUpdate() on mount without blocking startup - Regenerate rpc_zenrpc.go and factory.generated.ts
- Add SaveTextFile RPC to write DDL/diff SQL to user-chosen path - Add auto-save DDL (.sql next to .pgd) on Save/SaveAs with project setting - Add autoSaveDDL project setting (default: on) with checkbox in settings - Replace "Download .sql" with "Save .sql..." in DDL dialog (uses SaveDialog) - Add "Save .sql..." button to Diff dialog with YYYY-MM-DD.sql default name - Add defaultExtension prop to FileBrowser/SaveDialog (.pgd or .sql) - Replace native title tooltips with custom popup tooltips in project settings - Add custom styled checkbox for auto-save setting aligned with form layout - Add two-column layout to Keyboard Reference dialog to avoid scrolling - Add unit tests for filterProject and toSet (11 tests) - Fix default column storage not emitted in DDL (compare attstorage vs typstorage)
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
No description provided.