@libredb/studio 0.9.7 → 0.9.13
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/chunk-34YQUUCM.mjs +319 -0
- package/dist/chunk-34YQUUCM.mjs.map +1 -0
- package/dist/chunk-4LVB3K53.mjs +37 -0
- package/dist/chunk-4LVB3K53.mjs.map +1 -0
- package/dist/chunk-6DRZXXNT.mjs +100 -0
- package/dist/chunk-6DRZXXNT.mjs.map +1 -0
- package/dist/chunk-CPF7XWV5.mjs +1289 -0
- package/dist/chunk-CPF7XWV5.mjs.map +1 -0
- package/dist/chunk-CZVV3JJB.mjs +160 -0
- package/dist/chunk-CZVV3JJB.mjs.map +1 -0
- package/dist/chunk-D4WVWWWF.js +332 -0
- package/dist/chunk-D4WVWWWF.js.map +1 -0
- package/dist/chunk-DY3KXE44.mjs +3 -0
- package/dist/chunk-DY3KXE44.mjs.map +1 -0
- package/dist/chunk-FYSE52VB.js +242 -0
- package/dist/chunk-FYSE52VB.js.map +1 -0
- package/dist/chunk-G3S66G64.mjs +6673 -0
- package/dist/chunk-G3S66G64.mjs.map +1 -0
- package/dist/chunk-G4WYE6TI.js +4 -0
- package/dist/chunk-G4WYE6TI.js.map +1 -0
- package/dist/chunk-HGPD6PWV.js +1310 -0
- package/dist/chunk-HGPD6PWV.js.map +1 -0
- package/dist/chunk-JZO5KRZN.js +165 -0
- package/dist/chunk-JZO5KRZN.js.map +1 -0
- package/dist/chunk-KV356UXJ.js +253 -0
- package/dist/chunk-KV356UXJ.js.map +1 -0
- package/dist/chunk-PPODO6HX.mjs +237 -0
- package/dist/chunk-PPODO6HX.mjs.map +1 -0
- package/dist/chunk-PTIRB2JO.js +258 -0
- package/dist/chunk-PTIRB2JO.js.map +1 -0
- package/dist/chunk-Q6LRDBK7.js +42 -0
- package/dist/chunk-Q6LRDBK7.js.map +1 -0
- package/dist/chunk-QJP5FZRY.mjs +255 -0
- package/dist/chunk-QJP5FZRY.mjs.map +1 -0
- package/dist/chunk-R3POCJK6.mjs +248 -0
- package/dist/chunk-R3POCJK6.mjs.map +1 -0
- package/dist/chunk-RCQB4FCE.js +186 -0
- package/dist/chunk-RCQB4FCE.js.map +1 -0
- package/dist/chunk-SR5DRGBX.mjs +174 -0
- package/dist/chunk-SR5DRGBX.mjs.map +1 -0
- package/dist/chunk-VLCRUZX7.js +102 -0
- package/dist/chunk-VLCRUZX7.js.map +1 -0
- package/dist/chunk-Y52UIFEX.js +6741 -0
- package/dist/chunk-Y52UIFEX.js.map +1 -0
- package/dist/components.d.mts +273 -0
- package/dist/components.d.ts +273 -0
- package/dist/components.js +59 -0
- package/dist/components.js.map +1 -0
- package/dist/components.mjs +6 -0
- package/dist/components.mjs.map +1 -0
- package/dist/custom-BNDOYC5P.js +134 -0
- package/dist/custom-BNDOYC5P.js.map +1 -0
- package/dist/custom-S2EKFMP3.mjs +132 -0
- package/dist/custom-S2EKFMP3.mjs.map +1 -0
- package/dist/gemini-4ASHNK4H.js +81 -0
- package/dist/gemini-4ASHNK4H.js.map +1 -0
- package/dist/gemini-C5RBLQEJ.mjs +79 -0
- package/dist/gemini-C5RBLQEJ.mjs.map +1 -0
- package/dist/index.d.mts +6 -0
- package/dist/index.d.ts +6 -0
- package/dist/index.js +95 -0
- package/dist/index.js.map +1 -0
- package/dist/index.mjs +10 -0
- package/dist/index.mjs.map +1 -0
- package/dist/mongodb-XMZEZA4A.mjs +748 -0
- package/dist/mongodb-XMZEZA4A.mjs.map +1 -0
- package/dist/mongodb-YQJJTLX3.js +750 -0
- package/dist/mongodb-YQJJTLX3.js.map +1 -0
- package/dist/mssql-PMOU4D36.js +916 -0
- package/dist/mssql-PMOU4D36.js.map +1 -0
- package/{src/lib/db/providers/sql/mssql.ts → dist/mssql-ZH5VP2C5.mjs} +268 -423
- package/dist/mssql-ZH5VP2C5.mjs.map +1 -0
- package/{src/lib/db/providers/sql/mysql.ts → dist/mysql-I3WJQXN2.mjs} +277 -428
- package/dist/mysql-I3WJQXN2.mjs.map +1 -0
- package/dist/mysql-Y3MSA5QY.js +833 -0
- package/dist/mysql-Y3MSA5QY.js.map +1 -0
- package/dist/ollama-26BYLVEV.mjs +115 -0
- package/dist/ollama-26BYLVEV.mjs.map +1 -0
- package/dist/ollama-HVWAGKQC.js +117 -0
- package/dist/ollama-HVWAGKQC.js.map +1 -0
- package/dist/openai-4U56KPG7.mjs +111 -0
- package/dist/openai-4U56KPG7.mjs.map +1 -0
- package/dist/openai-AK3R37BS.js +113 -0
- package/dist/openai-AK3R37BS.js.map +1 -0
- package/dist/oracle-L6VEAVXO.js +917 -0
- package/dist/oracle-L6VEAVXO.js.map +1 -0
- package/{src/lib/db/providers/sql/oracle.ts → dist/oracle-P2G7T4P4.mjs} +321 -454
- package/dist/oracle-P2G7T4P4.mjs.map +1 -0
- package/{src/lib/db/providers/sql/postgres.ts → dist/postgres-O5KOQUVP.mjs} +261 -471
- package/dist/postgres-O5KOQUVP.mjs.map +1 -0
- package/dist/postgres-RLCWNFFX.js +971 -0
- package/dist/postgres-RLCWNFFX.js.map +1 -0
- package/dist/providers.d.mts +149 -0
- package/dist/providers.d.ts +149 -0
- package/dist/providers.js +44 -0
- package/dist/providers.js.map +1 -0
- package/dist/providers.mjs +7 -0
- package/dist/providers.mjs.map +1 -0
- package/dist/redis-4WMQOVLX.mjs +435 -0
- package/dist/redis-4WMQOVLX.mjs.map +1 -0
- package/dist/redis-QVQ6YU62.js +441 -0
- package/dist/redis-QVQ6YU62.js.map +1 -0
- package/dist/sqlite-4I2P2OGQ.js +554 -0
- package/dist/sqlite-4I2P2OGQ.js.map +1 -0
- package/dist/sqlite-OA4YJX5S.mjs +531 -0
- package/dist/sqlite-OA4YJX5S.mjs.map +1 -0
- package/dist/types-BJvJfxSY.d.mts +141 -0
- package/dist/types-BJvJfxSY.d.ts +141 -0
- package/dist/types-ClAg_v5k.d.mts +343 -0
- package/dist/types-Der_X8E8.d.ts +343 -0
- package/dist/types.d.mts +2 -0
- package/dist/types.d.ts +2 -0
- package/dist/types.js +6 -0
- package/dist/types.js.map +1 -0
- package/dist/types.mjs +3 -0
- package/dist/types.mjs.map +1 -0
- package/dist/workspace.d.mts +80 -0
- package/dist/workspace.d.ts +80 -0
- package/dist/workspace.js +4174 -0
- package/dist/workspace.js.map +1 -0
- package/dist/workspace.mjs +4147 -0
- package/dist/workspace.mjs.map +1 -0
- package/package.json +60 -5
- package/.claude/settings.local.json +0 -127
- package/.cursorrules +0 -426
- package/.devin/wiki.json +0 -143
- package/.dockerignore +0 -80
- package/.env.example +0 -159
- package/.github/ISSUE_TEMPLATE/bug_report.md +0 -49
- package/.github/ISSUE_TEMPLATE/feature_request.md +0 -29
- package/.github/PULL_REQUEST_TEMPLATE.md +0 -57
- package/.github/workflows/ci.yml +0 -185
- package/.github/workflows/codeql.yml +0 -57
- package/.github/workflows/docker-build-push.yml +0 -118
- package/.github/workflows/helm-release.yml +0 -113
- package/CLAUDE.md +0 -265
- package/CODE_OF_CONDUCT.md +0 -124
- package/CONTRIBUTING.md +0 -154
- package/Dockerfile +0 -73
- package/SECURITY.md +0 -107
- package/artifacthub-repo.yml +0 -4
- package/bun.lock +0 -1714
- package/bunfig.toml +0 -3
- package/charts/libredb-studio/.helmignore +0 -11
- package/charts/libredb-studio/Chart.lock +0 -6
- package/charts/libredb-studio/Chart.yaml +0 -50
- package/charts/libredb-studio/README.md +0 -206
- package/charts/libredb-studio/templates/NOTES.txt +0 -59
- package/charts/libredb-studio/templates/_helpers.tpl +0 -135
- package/charts/libredb-studio/templates/configmap.yaml +0 -37
- package/charts/libredb-studio/templates/deployment.yaml +0 -184
- package/charts/libredb-studio/templates/hpa.yaml +0 -32
- package/charts/libredb-studio/templates/ingress.yaml +0 -41
- package/charts/libredb-studio/templates/networkpolicy.yaml +0 -50
- package/charts/libredb-studio/templates/pdb.yaml +0 -18
- package/charts/libredb-studio/templates/pvc.yaml +0 -23
- package/charts/libredb-studio/templates/secret.yaml +0 -30
- package/charts/libredb-studio/templates/seed-configmap.yaml +0 -11
- package/charts/libredb-studio/templates/service.yaml +0 -22
- package/charts/libredb-studio/templates/serviceaccount.yaml +0 -13
- package/charts/libredb-studio/values.schema.json +0 -246
- package/charts/libredb-studio/values.yaml +0 -286
- package/components.json +0 -22
- package/conductor/code_styleguides/typescript.md +0 -43
- package/conductor/product-guidelines.md +0 -43
- package/conductor/product.md +0 -3
- package/conductor/setup_state.json +0 -1
- package/conductor/tech-stack.md +0 -39
- package/conductor/tracks/enhance_postgres_monitoring_20251227/metadata.json +0 -8
- package/conductor/tracks/enhance_postgres_monitoring_20251227/plan.md +0 -44
- package/conductor/tracks/enhance_postgres_monitoring_20251227/spec.md +0 -31
- package/conductor/tracks.md +0 -8
- package/conductor/workflow.md +0 -333
- package/database-compose.yml +0 -55
- package/docker/postgres-init/01-extensions.sql +0 -10
- package/docker/postgres-init/02-sample-data.sql +0 -585
- package/docker/postgres.yml +0 -68
- package/docker-compose.yml +0 -38
- package/docs/AI_PLAN.md +0 -74
- package/docs/API_DOCS.md +0 -875
- package/docs/ARCHITECTURE.md +0 -218
- package/docs/DATABASE_PROVIDERS.md +0 -358
- package/docs/FEATURES.md +0 -116
- package/docs/HELM_CHART.md +0 -252
- package/docs/LOGIN_PAGE.md +0 -178
- package/docs/MONACO_EDITOR_PERFORMANCE.md +0 -315
- package/docs/OIDC_ARCH.md +0 -681
- package/docs/OIDC_SETUP.md +0 -322
- package/docs/POSTGRES_METRICS.md +0 -516
- package/docs/QUERY_OPTIMIZATION.md +0 -370
- package/docs/SEED_CONNECTIONS.md +0 -468
- package/docs/SQL_ALIAS_COMPLETION.md +0 -190
- package/docs/STORAGE_ARCHITECTURE.md +0 -565
- package/docs/STORAGE_QUICK_SETUP.md +0 -419
- package/docs/TECHNICAL_PLAN.md +0 -36
- package/docs/THEMING.md +0 -345
- package/docs/adding-a-new-database-provider.md +0 -642
- package/docs/backlogs/000-PLATFORM_DATA_SYNC_DATABASE.md +0 -360
- package/docs/backlogs/001-INLINE_DATA_EDITING.md +0 -118
- package/docs/backlogs/002-DATA_IMPORT.md +0 -215
- package/docs/backlogs/003-QUERY_TIME_MACHINE.md +0 -183
- package/docs/backlogs/004-AI_DATA_STORYTELLER.md +0 -292
- package/docs/backlogs/005-QUERY_PLAYGROUND.md +0 -352
- package/docs/backlogs/006-DATA_MASKING.md +0 -418
- package/docs/enterprise-features.md +0 -718
- package/docs/kubernetes-helm-chart-artifacthub-plan.md +0 -803
- package/docs/medium-koyeb-article-en.md +0 -215
- package/docs/plans/test-plans.md +0 -445
- package/docs/releases/RELEASE.V0.3.0.md +0 -22
- package/docs/releases/RELEASE.V0.4.0.md +0 -154
- package/docs/releases/RELEASE.V0.5.0.md +0 -252
- package/docs/releases/RELEASE_v0.5.6.md +0 -145
- package/docs/releases/RELEASE_v0.6.1.md +0 -303
- package/docs/releases/RELEASE_v0.6.7.md +0 -292
- package/docs/releases/RELEASE_v0.7.0.md +0 -332
- package/docs/releases/RELEASE_v0.8.0.md +0 -521
- package/docs/sampledb/titanic.sql +0 -1379
- package/docs/superpowers/plans/2026-03-25-seed-connections.md +0 -1362
- package/docs/superpowers/specs/2026-03-25-seed-connections-design.md +0 -590
- package/e2e/admin-dashboard.spec.ts +0 -64
- package/e2e/connection-management.spec.ts +0 -58
- package/e2e/export.spec.ts +0 -34
- package/e2e/login.spec.ts +0 -85
- package/e2e/query-execution.spec.ts +0 -35
- package/e2e/tab-management.spec.ts +0 -64
- package/eslint.config.mjs +0 -28
- package/fly.toml +0 -43
- package/next.config.ts +0 -32
- package/playwright.config.ts +0 -34
- package/postcss.config.mjs +0 -7
- package/public/favicon-32x32.png +0 -0
- package/public/favicon.ico +0 -0
- package/public/file.svg +0 -1
- package/public/globe.svg +0 -1
- package/public/logo.svg +0 -32
- package/public/next.svg +0 -1
- package/public/screenshots/code-generator.png +0 -0
- package/public/screenshots/connection-modal.png +0 -0
- package/public/screenshots/data-profiler.png +0 -0
- package/public/screenshots/erd-diagram.png +0 -0
- package/public/screenshots/hero-editor.png +0 -0
- package/public/screenshots/nl2sql.png +0 -0
- package/public/vercel.svg +0 -1
- package/public/window.svg +0 -1
- package/render.yaml +0 -58
- package/scripts/merge-lcov.mjs +0 -239
- package/sonar-project.properties +0 -16
- package/src/app/admin/error.tsx +0 -46
- package/src/app/admin/page.tsx +0 -10
- package/src/app/api/admin/audit/route.ts +0 -52
- package/src/app/api/admin/fleet-health/route.ts +0 -81
- package/src/app/api/ai/autopilot/route.ts +0 -105
- package/src/app/api/ai/chat/route.ts +0 -132
- package/src/app/api/ai/describe-schema/route.ts +0 -52
- package/src/app/api/ai/explain/route.ts +0 -86
- package/src/app/api/ai/impact/route.ts +0 -97
- package/src/app/api/ai/index-advisor/route.ts +0 -98
- package/src/app/api/ai/nl2sql/route.ts +0 -87
- package/src/app/api/ai/query-safety/route.ts +0 -87
- package/src/app/api/auth/login/route.ts +0 -62
- package/src/app/api/auth/logout/route.ts +0 -25
- package/src/app/api/auth/me/route.ts +0 -10
- package/src/app/api/auth/oidc/callback/route.ts +0 -82
- package/src/app/api/auth/oidc/login/route.ts +0 -43
- package/src/app/api/connections/managed/route.ts +0 -35
- package/src/app/api/db/cancel/route.ts +0 -42
- package/src/app/api/db/disconnect/route.ts +0 -28
- package/src/app/api/db/health/route.ts +0 -49
- package/src/app/api/db/maintenance/route.ts +0 -72
- package/src/app/api/db/monitoring/route.ts +0 -62
- package/src/app/api/db/multi-query/route.ts +0 -116
- package/src/app/api/db/pool-stats/route.ts +0 -37
- package/src/app/api/db/profile/route.ts +0 -144
- package/src/app/api/db/provider-meta/route.ts +0 -49
- package/src/app/api/db/query/route.ts +0 -50
- package/src/app/api/db/schema/route.ts +0 -47
- package/src/app/api/db/schema-snapshot/route.ts +0 -42
- package/src/app/api/db/test-connection/route.ts +0 -55
- package/src/app/api/db/transaction/route.ts +0 -111
- package/src/app/api/storage/[collection]/route.ts +0 -67
- package/src/app/api/storage/config/route.ts +0 -17
- package/src/app/api/storage/migrate/route.ts +0 -45
- package/src/app/api/storage/route.ts +0 -32
- package/src/app/error.tsx +0 -49
- package/src/app/global-error.tsx +0 -55
- package/src/app/globals.css +0 -146
- package/src/app/icon.svg +0 -42
- package/src/app/layout.tsx +0 -34
- package/src/app/login/login-form.tsx +0 -301
- package/src/app/login/page.tsx +0 -11
- package/src/app/monitoring/page.tsx +0 -8
- package/src/app/not-found.tsx +0 -29
- package/src/app/page.tsx +0 -5
- package/src/components/AIAutopilotPanel.tsx +0 -238
- package/src/components/CodeGenerator.tsx +0 -271
- package/src/components/CommandPalette.tsx +0 -227
- package/src/components/ConnectionModal.tsx +0 -759
- package/src/components/CreateTableModal.tsx +0 -281
- package/src/components/DataCharts.tsx +0 -962
- package/src/components/DataImportModal.tsx +0 -582
- package/src/components/DataProfiler.tsx +0 -335
- package/src/components/DatabaseDocs.tsx +0 -251
- package/src/components/MaskingSettings.tsx +0 -414
- package/src/components/MobileNav.tsx +0 -50
- package/src/components/NL2SQLPanel.tsx +0 -281
- package/src/components/PivotTable.tsx +0 -257
- package/src/components/QueryEditor.tsx +0 -760
- package/src/components/QueryHistory.tsx +0 -344
- package/src/components/QuerySafetyDialog.tsx +0 -290
- package/src/components/ResultsGrid.tsx +0 -644
- package/src/components/SaveQueryModal.tsx +0 -104
- package/src/components/SavedQueries.tsx +0 -128
- package/src/components/SchemaDiagram.tsx +0 -473
- package/src/components/SchemaDiff.tsx +0 -473
- package/src/components/SnapshotTimeline.tsx +0 -116
- package/src/components/Studio.tsx +0 -639
- package/src/components/TestDataGenerator.tsx +0 -261
- package/src/components/VisualExplain.tsx +0 -820
- package/src/components/admin/AdminDashboard.tsx +0 -163
- package/src/components/admin/tabs/AuditTab.tsx +0 -531
- package/src/components/admin/tabs/MonitoringEmbed.tsx +0 -11
- package/src/components/admin/tabs/OperationsTab.tsx +0 -646
- package/src/components/admin/tabs/OverviewTab.tsx +0 -1328
- package/src/components/admin/tabs/SecurityTab.tsx +0 -284
- package/src/components/community-section.tsx +0 -92
- package/src/components/icons/db-icons.tsx +0 -84
- package/src/components/libredb-logo.tsx +0 -61
- package/src/components/monitoring/MonitoringDashboard.tsx +0 -345
- package/src/components/monitoring/tabs/MetricChart.tsx +0 -82
- package/src/components/monitoring/tabs/OverviewTab.tsx +0 -263
- package/src/components/monitoring/tabs/PerformanceTab.tsx +0 -254
- package/src/components/monitoring/tabs/PoolTab.tsx +0 -174
- package/src/components/monitoring/tabs/QueriesTab.tsx +0 -287
- package/src/components/monitoring/tabs/SessionsTab.tsx +0 -316
- package/src/components/monitoring/tabs/StorageTab.tsx +0 -335
- package/src/components/monitoring/tabs/TablesTab.tsx +0 -300
- package/src/components/results-grid/ResultCard.tsx +0 -111
- package/src/components/results-grid/RowDetailSheet.tsx +0 -178
- package/src/components/results-grid/StatsBar.tsx +0 -201
- package/src/components/results-grid/index.ts +0 -1
- package/src/components/results-grid/utils.ts +0 -23
- package/src/components/schema-explorer/ColumnList.tsx +0 -53
- package/src/components/schema-explorer/SchemaExplorer.tsx +0 -182
- package/src/components/schema-explorer/TableItem.tsx +0 -210
- package/src/components/schema-explorer/index.ts +0 -1
- package/src/components/sidebar/ConnectionItem.tsx +0 -105
- package/src/components/sidebar/ConnectionsList.tsx +0 -62
- package/src/components/sidebar/Sidebar.tsx +0 -130
- package/src/components/sidebar/index.ts +0 -2
- package/src/components/studio/BottomPanel.tsx +0 -286
- package/src/components/studio/QueryToolbar.tsx +0 -180
- package/src/components/studio/StudioDesktopHeader.tsx +0 -114
- package/src/components/studio/StudioMobileHeader.tsx +0 -340
- package/src/components/studio/StudioTabBar.tsx +0 -82
- package/src/components/studio/index.ts +0 -5
- package/src/components/ui/accordion.tsx +0 -66
- package/src/components/ui/alert-dialog.tsx +0 -157
- package/src/components/ui/alert.tsx +0 -66
- package/src/components/ui/aspect-ratio.tsx +0 -11
- package/src/components/ui/avatar.tsx +0 -53
- package/src/components/ui/badge.tsx +0 -46
- package/src/components/ui/breadcrumb.tsx +0 -109
- package/src/components/ui/button-group.tsx +0 -83
- package/src/components/ui/button.tsx +0 -60
- package/src/components/ui/calendar.tsx +0 -216
- package/src/components/ui/card.tsx +0 -92
- package/src/components/ui/carousel.tsx +0 -241
- package/src/components/ui/chart.tsx +0 -357
- package/src/components/ui/checkbox.tsx +0 -32
- package/src/components/ui/collapsible.tsx +0 -33
- package/src/components/ui/command.tsx +0 -184
- package/src/components/ui/context-menu.tsx +0 -252
- package/src/components/ui/dialog.tsx +0 -143
- package/src/components/ui/drawer.tsx +0 -135
- package/src/components/ui/dropdown-menu.tsx +0 -257
- package/src/components/ui/empty.tsx +0 -104
- package/src/components/ui/field.tsx +0 -248
- package/src/components/ui/form.tsx +0 -167
- package/src/components/ui/hover-card.tsx +0 -44
- package/src/components/ui/input-group.tsx +0 -170
- package/src/components/ui/input-otp.tsx +0 -77
- package/src/components/ui/input.tsx +0 -21
- package/src/components/ui/item.tsx +0 -193
- package/src/components/ui/kbd.tsx +0 -28
- package/src/components/ui/label.tsx +0 -24
- package/src/components/ui/menubar.tsx +0 -276
- package/src/components/ui/navigation-menu.tsx +0 -168
- package/src/components/ui/pagination.tsx +0 -127
- package/src/components/ui/popover.tsx +0 -48
- package/src/components/ui/progress.tsx +0 -31
- package/src/components/ui/radio-group.tsx +0 -45
- package/src/components/ui/resizable.tsx +0 -56
- package/src/components/ui/scroll-area.tsx +0 -58
- package/src/components/ui/select.tsx +0 -187
- package/src/components/ui/separator.tsx +0 -28
- package/src/components/ui/sheet.tsx +0 -139
- package/src/components/ui/sidebar.tsx +0 -726
- package/src/components/ui/skeleton.tsx +0 -13
- package/src/components/ui/slider.tsx +0 -63
- package/src/components/ui/sonner.tsx +0 -40
- package/src/components/ui/spinner.tsx +0 -16
- package/src/components/ui/switch.tsx +0 -31
- package/src/components/ui/table.tsx +0 -116
- package/src/components/ui/tabs.tsx +0 -66
- package/src/components/ui/textarea.tsx +0 -18
- package/src/components/ui/toggle-group.tsx +0 -83
- package/src/components/ui/toggle.tsx +0 -47
- package/src/components/ui/tooltip.tsx +0 -61
- package/src/exports/components.ts +0 -15
- package/src/exports/index.ts +0 -4
- package/src/exports/providers.ts +0 -4
- package/src/exports/types.ts +0 -26
- package/src/hooks/use-ai-chat.ts +0 -182
- package/src/hooks/use-all-connections.ts +0 -66
- package/src/hooks/use-api-call.ts +0 -71
- package/src/hooks/use-auth.ts +0 -51
- package/src/hooks/use-connection-form.ts +0 -349
- package/src/hooks/use-connection-manager.ts +0 -169
- package/src/hooks/use-connection-payload.ts +0 -15
- package/src/hooks/use-inline-editing.ts +0 -109
- package/src/hooks/use-mobile.ts +0 -20
- package/src/hooks/use-monitoring-data.ts +0 -270
- package/src/hooks/use-provider-metadata.ts +0 -62
- package/src/hooks/use-query-execution.ts +0 -478
- package/src/hooks/use-storage-sync.ts +0 -259
- package/src/hooks/use-tab-manager.ts +0 -231
- package/src/hooks/use-toast.ts +0 -20
- package/src/hooks/use-transaction-control.ts +0 -64
- package/src/lib/api/error-codes.ts +0 -30
- package/src/lib/api/errors.ts +0 -236
- package/src/lib/api/with-error-handler.ts +0 -41
- package/src/lib/audit.ts +0 -105
- package/src/lib/auth.ts +0 -87
- package/src/lib/connection-string-parser.ts +0 -172
- package/src/lib/data-masking.ts +0 -385
- package/src/lib/db/base-provider.ts +0 -325
- package/src/lib/db/errors.ts +0 -317
- package/src/lib/db/factory.ts +0 -324
- package/src/lib/db/index.ts +0 -123
- package/src/lib/db/providers/document/index.ts +0 -6
- package/src/lib/db/providers/document/mongodb.ts +0 -992
- package/src/lib/db/providers/keyvalue/redis.ts +0 -554
- package/src/lib/db/providers/sql/index.ts +0 -11
- package/src/lib/db/providers/sql/sql-base.ts +0 -174
- package/src/lib/db/providers/sql/sqlite.ts +0 -721
- package/src/lib/db/types.ts +0 -437
- package/src/lib/db/utils/pool-manager.ts +0 -287
- package/src/lib/db/utils/query-limiter.ts +0 -239
- package/src/lib/db-ui-config.ts +0 -86
- package/src/lib/editor/mongodb-completions.ts +0 -172
- package/src/lib/editor/sql-completions.ts +0 -280
- package/src/lib/llm/base-provider.ts +0 -117
- package/src/lib/llm/factory.ts +0 -102
- package/src/lib/llm/index.ts +0 -90
- package/src/lib/llm/providers/custom.ts +0 -181
- package/src/lib/llm/providers/gemini.ts +0 -126
- package/src/lib/llm/providers/ollama.ts +0 -154
- package/src/lib/llm/providers/openai.ts +0 -146
- package/src/lib/llm/types.ts +0 -173
- package/src/lib/llm/utils/config.ts +0 -187
- package/src/lib/llm/utils/retry.ts +0 -119
- package/src/lib/llm/utils/streaming.ts +0 -202
- package/src/lib/logger.ts +0 -127
- package/src/lib/monitoring-thresholds.ts +0 -44
- package/src/lib/oidc.ts +0 -262
- package/src/lib/query-generators.ts +0 -61
- package/src/lib/schema-diff/diff-engine.ts +0 -273
- package/src/lib/schema-diff/migration-generator.ts +0 -208
- package/src/lib/schema-diff/types.ts +0 -55
- package/src/lib/seed/config-loader.ts +0 -79
- package/src/lib/seed/connection-filter.ts +0 -49
- package/src/lib/seed/credential-resolver.ts +0 -62
- package/src/lib/seed/index.ts +0 -40
- package/src/lib/seed/resolve-connection.ts +0 -57
- package/src/lib/seed/types.ts +0 -69
- package/src/lib/sql/alias-extractor.ts +0 -267
- package/src/lib/sql/index.ts +0 -8
- package/src/lib/sql/statement-splitter.ts +0 -167
- package/src/lib/sql/types.ts +0 -40
- package/src/lib/ssh/tunnel.ts +0 -142
- package/src/lib/storage/factory.ts +0 -84
- package/src/lib/storage/index.ts +0 -14
- package/src/lib/storage/local-storage.ts +0 -99
- package/src/lib/storage/providers/postgres.ts +0 -225
- package/src/lib/storage/providers/sqlite.ts +0 -153
- package/src/lib/storage/storage-facade.ts +0 -272
- package/src/lib/storage/types.ts +0 -75
- package/src/lib/time-series-buffer.ts +0 -58
- package/src/lib/types.ts +0 -173
- package/src/lib/utils.ts +0 -6
- package/src/proxy.ts +0 -104
- package/src/types/db-drivers.d.ts +0 -23
- package/src/types/html2canvas.d.ts +0 -9
- package/tests/api/admin/audit.test.ts +0 -178
- package/tests/api/admin/fleet-health.test.ts +0 -183
- package/tests/api/ai/autopilot.test.ts +0 -174
- package/tests/api/ai/chat.test.ts +0 -250
- package/tests/api/ai/describe-schema.test.ts +0 -266
- package/tests/api/ai/explain.test.ts +0 -199
- package/tests/api/ai/impact.test.ts +0 -168
- package/tests/api/ai/index-advisor.test.ts +0 -171
- package/tests/api/ai/nl2sql.test.ts +0 -202
- package/tests/api/ai/query-safety.test.ts +0 -196
- package/tests/api/auth/login.test.ts +0 -170
- package/tests/api/auth/logout.test.ts +0 -140
- package/tests/api/auth/me.test.ts +0 -73
- package/tests/api/auth/oidc-callback.test.ts +0 -215
- package/tests/api/auth/oidc-login.test.ts +0 -127
- package/tests/api/db/cancel.test.ts +0 -198
- package/tests/api/db/disconnect.test.ts +0 -124
- package/tests/api/db/health.test.ts +0 -222
- package/tests/api/db/maintenance.test.ts +0 -263
- package/tests/api/db/monitoring.test.ts +0 -221
- package/tests/api/db/multi-query.test.ts +0 -316
- package/tests/api/db/pool-stats.test.ts +0 -135
- package/tests/api/db/profile.test.ts +0 -330
- package/tests/api/db/provider-meta.test.ts +0 -193
- package/tests/api/db/query.test.ts +0 -314
- package/tests/api/db/schema-snapshot.test.ts +0 -170
- package/tests/api/db/schema.test.ts +0 -191
- package/tests/api/db/test-connection.test.ts +0 -185
- package/tests/api/db/transaction.test.ts +0 -314
- package/tests/api/proxy.test.ts +0 -191
- package/tests/api/seed/managed-route.test.ts +0 -113
- package/tests/api/storage/config.test.ts +0 -42
- package/tests/api/storage/storage-routes.test.ts +0 -309
- package/tests/components/AIAutopilotPanel.test.tsx +0 -756
- package/tests/components/AdminPage.test.tsx +0 -33
- package/tests/components/CodeGenerator.test.tsx +0 -182
- package/tests/components/CommandPalette.test.tsx +0 -428
- package/tests/components/CommunitySection.test.tsx +0 -91
- package/tests/components/ConnectionModal.mobile.test.tsx +0 -284
- package/tests/components/ConnectionModal.test.tsx +0 -570
- package/tests/components/CreateTableModal.test.tsx +0 -383
- package/tests/components/DataCharts.test.tsx +0 -739
- package/tests/components/DataImportModal.test.tsx +0 -751
- package/tests/components/DataProfiler.test.tsx +0 -589
- package/tests/components/DatabaseDocs.test.tsx +0 -353
- package/tests/components/LoginPage.test.tsx +0 -163
- package/tests/components/LoginPageOIDC.test.tsx +0 -92
- package/tests/components/MaskingSettings.test.tsx +0 -498
- package/tests/components/MobileNav.test.tsx +0 -30
- package/tests/components/MonitoringPage.test.tsx +0 -32
- package/tests/components/NL2SQLPanel.test.tsx +0 -621
- package/tests/components/Page.test.tsx +0 -33
- package/tests/components/PivotTable.test.tsx +0 -350
- package/tests/components/QueryEditor.test.tsx +0 -1730
- package/tests/components/QueryHistory.test.tsx +0 -572
- package/tests/components/QuerySafetyDialog.test.tsx +0 -586
- package/tests/components/ResultsGrid.test.tsx +0 -804
- package/tests/components/RootLayout.test.tsx +0 -83
- package/tests/components/SaveQueryModal.test.tsx +0 -25
- package/tests/components/SavedQueries.test.tsx +0 -43
- package/tests/components/SchemaDiagram.test.tsx +0 -1034
- package/tests/components/SchemaDiff.test.tsx +0 -906
- package/tests/components/SnapshotTimeline.test.tsx +0 -174
- package/tests/components/Studio.test.tsx +0 -1030
- package/tests/components/TestDataGenerator.test.tsx +0 -291
- package/tests/components/VisualExplain.test.tsx +0 -704
- package/tests/components/admin/AdminDashboard.test.tsx +0 -205
- package/tests/components/admin/AuditTab.test.tsx +0 -220
- package/tests/components/admin/MonitoringEmbed.test.tsx +0 -58
- package/tests/components/admin/OperationsTab.test.tsx +0 -975
- package/tests/components/admin/OverviewTab.test.tsx +0 -254
- package/tests/components/admin/SecurityTab.test.tsx +0 -467
- package/tests/components/monitoring/MetricChart.test.tsx +0 -111
- package/tests/components/monitoring/MonitoringDashboard.test.tsx +0 -259
- package/tests/components/monitoring/OverviewTab.test.tsx +0 -78
- package/tests/components/monitoring/PerformanceTab.test.tsx +0 -87
- package/tests/components/monitoring/PoolTab.test.tsx +0 -42
- package/tests/components/monitoring/QueriesTab.test.tsx +0 -80
- package/tests/components/monitoring/SessionsTab.test.tsx +0 -154
- package/tests/components/monitoring/StorageTab.test.tsx +0 -127
- package/tests/components/monitoring/TablesTab.test.tsx +0 -153
- package/tests/components/results-grid/ResultCard.test.tsx +0 -105
- package/tests/components/results-grid/RowDetailSheet.test.tsx +0 -308
- package/tests/components/results-grid/StatsBar.test.tsx +0 -162
- package/tests/components/schema-explorer/ColumnList.test.tsx +0 -151
- package/tests/components/schema-explorer/SchemaExplorer.test.tsx +0 -461
- package/tests/components/schema-explorer/TableItem.test.tsx +0 -415
- package/tests/components/sidebar/ConnectionItem.test.tsx +0 -201
- package/tests/components/sidebar/ConnectionsList.test.tsx +0 -176
- package/tests/components/sidebar/Sidebar.test.tsx +0 -187
- package/tests/components/studio/BottomPanel.test.tsx +0 -383
- package/tests/components/studio/QueryToolbar.test.tsx +0 -321
- package/tests/components/studio/StudioDesktopHeader.test.tsx +0 -377
- package/tests/components/studio/StudioMobileHeader.test.tsx +0 -198
- package/tests/components/studio/StudioTabBar.test.tsx +0 -331
- package/tests/fixtures/connections.ts +0 -96
- package/tests/fixtures/masking-configs.ts +0 -86
- package/tests/fixtures/query-results.ts +0 -71
- package/tests/fixtures/schemas.ts +0 -64
- package/tests/fixtures/seed-connections/invalid-config.yaml +0 -7
- package/tests/fixtures/seed-connections/minimal-config.yaml +0 -8
- package/tests/fixtures/seed-connections/mixed-credentials.yaml +0 -23
- package/tests/fixtures/seed-connections/multi-role-config.yaml +0 -30
- package/tests/fixtures/seed-connections/valid-config.json +0 -15
- package/tests/fixtures/seed-connections/valid-config.yaml +0 -51
- package/tests/helpers/mock-fetch.ts +0 -59
- package/tests/helpers/mock-monaco.ts +0 -112
- package/tests/helpers/mock-navigation.ts +0 -28
- package/tests/helpers/mock-next.ts +0 -80
- package/tests/helpers/mock-provider.ts +0 -133
- package/tests/helpers/mock-sonner.ts +0 -29
- package/tests/helpers/render-with-providers.tsx +0 -19
- package/tests/hooks/use-ai-chat.test.ts +0 -600
- package/tests/hooks/use-auth.test.ts +0 -371
- package/tests/hooks/use-connection-form.test.ts +0 -743
- package/tests/hooks/use-connection-manager.test.ts +0 -466
- package/tests/hooks/use-inline-editing.test.ts +0 -321
- package/tests/hooks/use-mobile.test.ts +0 -177
- package/tests/hooks/use-monitoring-data.test.ts +0 -819
- package/tests/hooks/use-provider-metadata.test.ts +0 -228
- package/tests/hooks/use-query-execution.test.ts +0 -1212
- package/tests/hooks/use-tab-manager.test.ts +0 -756
- package/tests/hooks/use-toast.test.ts +0 -74
- package/tests/hooks/use-transaction-control.test.ts +0 -211
- package/tests/integration/db/mongodb-provider.test.ts +0 -698
- package/tests/integration/db/mssql-provider.test.ts +0 -840
- package/tests/integration/db/mysql-provider.test.ts +0 -872
- package/tests/integration/db/oracle-provider.test.ts +0 -843
- package/tests/integration/db/postgres-provider.test.ts +0 -1382
- package/tests/integration/db/redis-provider.test.ts +0 -526
- package/tests/integration/db/sqlite-provider.test.ts +0 -480
- package/tests/integration/seed/seed-pipeline.test.ts +0 -102
- package/tests/isolated/factory-singleton.test.ts +0 -150
- package/tests/isolated/use-storage-sync.test.ts +0 -389
- package/tests/run-components.sh +0 -196
- package/tests/setup-dom.ts +0 -58
- package/tests/setup.ts +0 -40
- package/tests/unit/api-errors.test.ts +0 -210
- package/tests/unit/code-generator-functions.test.ts +0 -271
- package/tests/unit/components/column-list.test.tsx +0 -190
- package/tests/unit/components/data-import-modal.test.tsx +0 -441
- package/tests/unit/components/studio-mobile-header.test.tsx +0 -327
- package/tests/unit/data-charts-functions.test.ts +0 -496
- package/tests/unit/data-import-functions.test.ts +0 -320
- package/tests/unit/data-import-utils.test.ts +0 -125
- package/tests/unit/db/base-provider.test.ts +0 -517
- package/tests/unit/db/errors.test.ts +0 -403
- package/tests/unit/db/factory.test.ts +0 -436
- package/tests/unit/db/pool-manager.test.ts +0 -440
- package/tests/unit/db/query-limiter.test.ts +0 -387
- package/tests/unit/db/sql-base.test.ts +0 -438
- package/tests/unit/lib/api/error-codes.test.ts +0 -39
- package/tests/unit/lib/audit.test.ts +0 -326
- package/tests/unit/lib/auth.test.ts +0 -146
- package/tests/unit/lib/connection-string-parser.test.ts +0 -424
- package/tests/unit/lib/data-masking.test.ts +0 -583
- package/tests/unit/lib/db-icons.test.tsx +0 -41
- package/tests/unit/lib/monitoring-thresholds.test.ts +0 -133
- package/tests/unit/lib/oidc.test.ts +0 -509
- package/tests/unit/lib/query-generators.test.ts +0 -127
- package/tests/unit/lib/storage/factory.test.ts +0 -71
- package/tests/unit/lib/storage/local-storage.test.ts +0 -114
- package/tests/unit/lib/storage/providers/postgres.test.ts +0 -312
- package/tests/unit/lib/storage/providers/sqlite.test.ts +0 -232
- package/tests/unit/lib/storage/storage-facade-extended.test.ts +0 -331
- package/tests/unit/lib/storage/storage-facade.test.ts +0 -184
- package/tests/unit/lib/storage.test.ts +0 -317
- package/tests/unit/lib/time-series-buffer.test.ts +0 -212
- package/tests/unit/lib/utils.test.ts +0 -24
- package/tests/unit/llm/base-provider.test.ts +0 -238
- package/tests/unit/llm/config.test.ts +0 -262
- package/tests/unit/llm/custom-provider.test.ts +0 -281
- package/tests/unit/llm/gemini-provider.test.ts +0 -248
- package/tests/unit/llm/llm-factory.test.ts +0 -155
- package/tests/unit/llm/ollama-provider.test.ts +0 -288
- package/tests/unit/llm/openai-provider.test.ts +0 -324
- package/tests/unit/llm/retry.test.ts +0 -180
- package/tests/unit/llm/streaming.test.ts +0 -355
- package/tests/unit/logger.test.ts +0 -198
- package/tests/unit/mongodb-completions.test.ts +0 -516
- package/tests/unit/pivot-table-functions.test.ts +0 -76
- package/tests/unit/query-cancelled-error.test.ts +0 -81
- package/tests/unit/schema-diff/diff-engine.test.ts +0 -367
- package/tests/unit/schema-diff/migration-generator.test.ts +0 -513
- package/tests/unit/seed/config-loader.test.ts +0 -73
- package/tests/unit/seed/connection-filter.test.ts +0 -91
- package/tests/unit/seed/credential-resolver.test.ts +0 -85
- package/tests/unit/seed/index.test.ts +0 -72
- package/tests/unit/seed/resolve-connection.test.ts +0 -74
- package/tests/unit/seed/types.test.ts +0 -129
- package/tests/unit/sql/alias-extractor.test.ts +0 -444
- package/tests/unit/sql/statement-splitter.test.ts +0 -348
- package/tests/unit/sql-completions.test.ts +0 -463
- package/tests/unit/ssh-tunnel.test.ts +0 -465
- package/tsconfig.json +0 -42
|
@@ -1,303 +0,0 @@
|
|
|
1
|
-
# Release v0.6.1 - Database Monitoring & Theming System
|
|
2
|
-
|
|
3
|
-
**Release Date:** December 2024
|
|
4
|
-
|
|
5
|
-
This release introduces a comprehensive database monitoring dashboard, modernized theming system with Tailwind CSS v4, and significant UI/UX improvements.
|
|
6
|
-
|
|
7
|
-
---
|
|
8
|
-
|
|
9
|
-
## Highlights
|
|
10
|
-
|
|
11
|
-
- **Database Monitoring Dashboard:** Real-time database metrics, performance analytics, and session management
|
|
12
|
-
- **Tailwind CSS v4 Theming:** Modern `@theme inline` directive for CSS variable mapping
|
|
13
|
-
- **Resizable Sidebar:** Drag-to-resize sidebar panel for better workspace flexibility
|
|
14
|
-
- **Theming Documentation:** Comprehensive guide for theme customization
|
|
15
|
-
|
|
16
|
-
---
|
|
17
|
-
|
|
18
|
-
## New Features
|
|
19
|
-
|
|
20
|
-
### Database Monitoring Dashboard
|
|
21
|
-
|
|
22
|
-
A new `/monitoring` route provides comprehensive database insights accessible to all authenticated users.
|
|
23
|
-
|
|
24
|
-
**Six Tab-Based Views:**
|
|
25
|
-
|
|
26
|
-
| Tab | Description |
|
|
27
|
-
|-----|-------------|
|
|
28
|
-
| **Overview** | Database version, uptime, connection stats, size metrics |
|
|
29
|
-
| **Performance** | Cache hit ratio, buffer usage, transaction stats |
|
|
30
|
-
| **Queries** | Slow query analysis from `pg_stat_statements` |
|
|
31
|
-
| **Sessions** | Active connections with kill session capability |
|
|
32
|
-
| **Tables** | Table statistics, row counts, bloat analysis |
|
|
33
|
-
| **Storage** | Tablespace usage, WAL size, storage metrics |
|
|
34
|
-
|
|
35
|
-
**Key Features:**
|
|
36
|
-
- Auto-refresh every 30 seconds (configurable)
|
|
37
|
-
- Manual refresh button
|
|
38
|
-
- Connection selector dropdown
|
|
39
|
-
- PostgreSQL-optimized with graceful fallback for other databases
|
|
40
|
-
- Kill session support for DBAs
|
|
41
|
-
|
|
42
|
-
**Access:**
|
|
43
|
-
- All authenticated users (admin + user roles)
|
|
44
|
-
- Navigate via header link or `/monitoring` URL
|
|
45
|
-
|
|
46
|
-
### Theming System
|
|
47
|
-
|
|
48
|
-
Complete theming overhaul using Tailwind CSS v4's CSS-first configuration:
|
|
49
|
-
|
|
50
|
-
```css
|
|
51
|
-
@theme inline {
|
|
52
|
-
--color-background: var(--background);
|
|
53
|
-
--color-foreground: var(--foreground);
|
|
54
|
-
--color-card: var(--card);
|
|
55
|
-
--color-popover: var(--popover);
|
|
56
|
-
--color-primary: var(--primary);
|
|
57
|
-
--color-secondary: var(--secondary);
|
|
58
|
-
--color-muted: var(--muted);
|
|
59
|
-
--color-muted-foreground: var(--muted-foreground);
|
|
60
|
-
--color-accent: var(--accent);
|
|
61
|
-
--color-border: var(--border);
|
|
62
|
-
--color-input: var(--input);
|
|
63
|
-
--color-ring: var(--ring);
|
|
64
|
-
/* ... */
|
|
65
|
-
}
|
|
66
|
-
```
|
|
67
|
-
|
|
68
|
-
**Benefits:**
|
|
69
|
-
- Semantic class names (`bg-background`, `text-foreground`)
|
|
70
|
-
- Consistent dark/light mode support
|
|
71
|
-
- Easy theme customization via CSS variables
|
|
72
|
-
- shadcn/ui component compatibility
|
|
73
|
-
|
|
74
|
-
### Resizable Sidebar
|
|
75
|
-
|
|
76
|
-
Sidebar panel is now resizable with drag handle:
|
|
77
|
-
|
|
78
|
-
- **Default width:** 22%
|
|
79
|
-
- **Minimum:** 15%
|
|
80
|
-
- **Maximum:** 35%
|
|
81
|
-
- Drag handle visible on hover (blue highlight)
|
|
82
|
-
- Preserves layout on mobile (collapsed to bottom tabs)
|
|
83
|
-
|
|
84
|
-
---
|
|
85
|
-
|
|
86
|
-
## UI/UX Improvements
|
|
87
|
-
|
|
88
|
-
### SchemaExplorer Fixes
|
|
89
|
-
|
|
90
|
-
- Fixed dropdown menu visibility issue (overflow clipping)
|
|
91
|
-
- Replaced hardcoded colors with theme variables
|
|
92
|
-
- Improved button styling with proper `variant="ghost"`
|
|
93
|
-
- Better hover states with `hover:bg-accent`
|
|
94
|
-
|
|
95
|
-
### Theme-Compatible Components
|
|
96
|
-
|
|
97
|
-
All components updated to use theme variables:
|
|
98
|
-
|
|
99
|
-
```tsx
|
|
100
|
-
// Before (hardcoded)
|
|
101
|
-
<div className="bg-zinc-900 text-white">
|
|
102
|
-
|
|
103
|
-
// After (theme-aware)
|
|
104
|
-
<div className="bg-background text-foreground">
|
|
105
|
-
```
|
|
106
|
-
|
|
107
|
-
---
|
|
108
|
-
|
|
109
|
-
## Architecture
|
|
110
|
-
|
|
111
|
-
### New Files
|
|
112
|
-
|
|
113
|
-
```
|
|
114
|
-
src/
|
|
115
|
-
├── app/
|
|
116
|
-
│ ├── monitoring/
|
|
117
|
-
│ │ └── page.tsx # Monitoring route
|
|
118
|
-
│ └── api/db/monitoring/
|
|
119
|
-
│ └── route.ts # Monitoring API endpoint
|
|
120
|
-
├── components/monitoring/
|
|
121
|
-
│ ├── MonitoringDashboard.tsx # Main dashboard component
|
|
122
|
-
│ └── tabs/
|
|
123
|
-
│ ├── OverviewTab.tsx
|
|
124
|
-
│ ├── PerformanceTab.tsx
|
|
125
|
-
│ ├── QueriesTab.tsx
|
|
126
|
-
│ ├── SessionsTab.tsx
|
|
127
|
-
│ ├── TablesTab.tsx
|
|
128
|
-
│ └── StorageTab.tsx
|
|
129
|
-
├── hooks/
|
|
130
|
-
│ └── use-monitoring-data.ts # Data fetching hook
|
|
131
|
-
└── lib/db/
|
|
132
|
-
└── types.ts # Monitoring type definitions
|
|
133
|
-
```
|
|
134
|
-
|
|
135
|
-
### Provider Extensions
|
|
136
|
-
|
|
137
|
-
New monitoring methods added to `BaseDatabaseProvider`:
|
|
138
|
-
|
|
139
|
-
```typescript
|
|
140
|
-
// Abstract methods (implemented per provider)
|
|
141
|
-
getOverview(): Promise<DatabaseOverview>;
|
|
142
|
-
getPerformanceMetrics(): Promise<PerformanceMetrics>;
|
|
143
|
-
getSlowQueries(options?): Promise<SlowQueryStats[]>;
|
|
144
|
-
getActiveSessions(options?): Promise<ActiveSessionDetails[]>;
|
|
145
|
-
getTableStats(options?): Promise<TableStats[]>;
|
|
146
|
-
getIndexStats(options?): Promise<IndexStats[]>;
|
|
147
|
-
getStorageStats(): Promise<StorageStats[]>;
|
|
148
|
-
|
|
149
|
-
// Convenience method
|
|
150
|
-
getMonitoringData(options?): Promise<MonitoringData>;
|
|
151
|
-
```
|
|
152
|
-
|
|
153
|
-
### PostgreSQL SQL Sources
|
|
154
|
-
|
|
155
|
-
| Metric | SQL Source |
|
|
156
|
-
|--------|------------|
|
|
157
|
-
| Version/Uptime | `version()`, `pg_postmaster_start_time()` |
|
|
158
|
-
| Connections | `pg_stat_activity`, `max_connections` |
|
|
159
|
-
| Cache Hit Ratio | `pg_statio_user_tables` |
|
|
160
|
-
| Slow Queries | `pg_stat_statements` (extension) |
|
|
161
|
-
| Active Sessions | `pg_stat_activity`, `pg_locks` |
|
|
162
|
-
| Table Stats | `pg_stat_user_tables`, `pg_table_size()` |
|
|
163
|
-
| Storage | `pg_tablespace`, `pg_wal_lsn_diff()` |
|
|
164
|
-
|
|
165
|
-
---
|
|
166
|
-
|
|
167
|
-
## Documentation
|
|
168
|
-
|
|
169
|
-
### New: Theming Guide
|
|
170
|
-
|
|
171
|
-
Comprehensive documentation at `docs/THEMING.md`:
|
|
172
|
-
|
|
173
|
-
- Theme architecture overview
|
|
174
|
-
- CSS variable reference
|
|
175
|
-
- Tailwind v4 integration guide
|
|
176
|
-
- Dark/light mode configuration
|
|
177
|
-
- Custom color additions
|
|
178
|
-
- Troubleshooting guide
|
|
179
|
-
|
|
180
|
-
### Updated: README.md
|
|
181
|
-
|
|
182
|
-
- Added Theming row to Tech Stack table
|
|
183
|
-
- Community & Quality section with SonarCloud badge
|
|
184
|
-
|
|
185
|
-
---
|
|
186
|
-
|
|
187
|
-
## Dependencies
|
|
188
|
-
|
|
189
|
-
### No New Dependencies
|
|
190
|
-
|
|
191
|
-
All monitoring features built with existing stack:
|
|
192
|
-
- `react-resizable-panels` (already in project)
|
|
193
|
-
- `recharts` (already in project)
|
|
194
|
-
- shadcn/ui components
|
|
195
|
-
|
|
196
|
-
---
|
|
197
|
-
|
|
198
|
-
## Database Support
|
|
199
|
-
|
|
200
|
-
### Monitoring Feature Matrix
|
|
201
|
-
|
|
202
|
-
| Feature | PostgreSQL | MySQL | SQLite | MongoDB |
|
|
203
|
-
|---------|------------|-------|--------|---------|
|
|
204
|
-
| Overview | Full | Full | Basic | Full |
|
|
205
|
-
| Performance | Full | Full | Basic | Full |
|
|
206
|
-
| Slow Queries | Full* | Full | N/A | Profile** |
|
|
207
|
-
| Sessions | Full | Full | Single | Full |
|
|
208
|
-
| Tables | Full | Full | Basic | Collections |
|
|
209
|
-
| Storage | Full | Basic | Basic | Full |
|
|
210
|
-
|
|
211
|
-
\* Requires `pg_stat_statements` extension
|
|
212
|
-
\** Requires profiler enabled
|
|
213
|
-
|
|
214
|
-
---
|
|
215
|
-
|
|
216
|
-
## Breaking Changes
|
|
217
|
-
|
|
218
|
-
None. All existing APIs remain compatible.
|
|
219
|
-
|
|
220
|
-
---
|
|
221
|
-
|
|
222
|
-
## Bug Fixes
|
|
223
|
-
|
|
224
|
-
- Fixed dropdown menu not visible in SchemaExplorer (overflow issue)
|
|
225
|
-
- Fixed hardcoded `text-white` colors breaking light mode
|
|
226
|
-
- Fixed sidebar width preventing dropdown visibility
|
|
227
|
-
|
|
228
|
-
---
|
|
229
|
-
|
|
230
|
-
## Configuration
|
|
231
|
-
|
|
232
|
-
### VS Code Settings
|
|
233
|
-
|
|
234
|
-
Added CSS warning suppression for Tailwind v4:
|
|
235
|
-
|
|
236
|
-
```json
|
|
237
|
-
{
|
|
238
|
-
"css.lint.unknownAtRules": "ignore"
|
|
239
|
-
}
|
|
240
|
-
```
|
|
241
|
-
|
|
242
|
-
---
|
|
243
|
-
|
|
244
|
-
## What's Next
|
|
245
|
-
|
|
246
|
-
### v0.7.0 (Planned)
|
|
247
|
-
- Real-time monitoring charts with historical data
|
|
248
|
-
- Query performance trends
|
|
249
|
-
- Alert thresholds configuration
|
|
250
|
-
- Monitoring data export
|
|
251
|
-
|
|
252
|
-
---
|
|
253
|
-
|
|
254
|
-
## Full Changelog
|
|
255
|
-
|
|
256
|
-
### Added
|
|
257
|
-
- `/monitoring` route with comprehensive database dashboard
|
|
258
|
-
- `MonitoringDashboard` component with 6 tab views
|
|
259
|
-
- `use-monitoring-data` hook with auto-refresh
|
|
260
|
-
- `/api/db/monitoring` endpoint
|
|
261
|
-
- Monitoring type definitions in `types.ts`
|
|
262
|
-
- Provider monitoring methods (PostgreSQL, MySQL, SQLite, MongoDB)
|
|
263
|
-
- `@theme inline` block in globals.css
|
|
264
|
-
- `docs/THEMING.md` comprehensive guide
|
|
265
|
-
- Resizable sidebar with `ResizablePanelGroup`
|
|
266
|
-
- VS Code settings for CSS warning suppression
|
|
267
|
-
|
|
268
|
-
### Changed
|
|
269
|
-
- Sidebar from fixed width to resizable panel
|
|
270
|
-
- SchemaExplorer dropdown trigger to proper Button component
|
|
271
|
-
- Hardcoded colors to theme variables across components
|
|
272
|
-
- README.md with theming and community sections
|
|
273
|
-
|
|
274
|
-
### Fixed
|
|
275
|
-
- SchemaExplorer dropdown menu visibility
|
|
276
|
-
- Theme color inconsistencies
|
|
277
|
-
- Light mode color issues
|
|
278
|
-
|
|
279
|
-
---
|
|
280
|
-
|
|
281
|
-
## Screenshots
|
|
282
|
-
|
|
283
|
-
### Monitoring Dashboard - Overview
|
|
284
|
-
Database overview with key metrics, connection stats, and uptime information.
|
|
285
|
-
|
|
286
|
-
### Monitoring Dashboard - Sessions
|
|
287
|
-
Active session management with kill session capability.
|
|
288
|
-
|
|
289
|
-
### Resizable Sidebar
|
|
290
|
-
Drag handle for sidebar width adjustment.
|
|
291
|
-
|
|
292
|
-
---
|
|
293
|
-
|
|
294
|
-
## Contributors
|
|
295
|
-
|
|
296
|
-
- Database monitoring implementation
|
|
297
|
-
- Tailwind v4 theming integration
|
|
298
|
-
- UI/UX improvements
|
|
299
|
-
- Documentation
|
|
300
|
-
|
|
301
|
-
---
|
|
302
|
-
|
|
303
|
-
*LibreDB Studio v0.6.1 - Modern database management for the cloud era.*
|
|
@@ -1,292 +0,0 @@
|
|
|
1
|
-
# Release v0.6.7 - Query Optimization & Demo Database
|
|
2
|
-
|
|
3
|
-
**Release Date:** January 2025
|
|
4
|
-
|
|
5
|
-
This release introduces smart query pagination, large result estimation, and a comprehensive demo employees database with showcase SQL queries to help users learn and explore LibreDB Studio.
|
|
6
|
-
|
|
7
|
-
---
|
|
8
|
-
|
|
9
|
-
## Highlights
|
|
10
|
-
|
|
11
|
-
- **Smart Query Pagination:** Automatic result limiting with silent handling and load-more functionality
|
|
12
|
-
- **Large Result Estimation:** Pre-execution row count estimation and user confirmation for unlimited queries
|
|
13
|
-
- **Component Refactoring:** Renamed Dashboard component to Studio for better clarity
|
|
14
|
-
- **Demo Employees Database:** Complete HR database schema with 100+ showcase SQL queries
|
|
15
|
-
- **Enhanced Showcase Queries:** Difficulty levels and fun intro messages for better learning experience
|
|
16
|
-
|
|
17
|
-
---
|
|
18
|
-
|
|
19
|
-
## New Features
|
|
20
|
-
|
|
21
|
-
### Query Pagination System
|
|
22
|
-
|
|
23
|
-
Automatic pagination for SELECT queries to prevent browser freezes when dealing with large datasets.
|
|
24
|
-
|
|
25
|
-
**Key Features:**
|
|
26
|
-
- **Default Limit:** 500 rows per page (configurable via `DEFAULT_QUERY_LIMIT`)
|
|
27
|
-
- **Silent Auto-Limiting:** No interruption dialogs, results are automatically limited
|
|
28
|
-
- **Load More:** Users can load additional pages incrementally
|
|
29
|
-
- **Preserves User Limits:** Existing `LIMIT` clauses in queries are respected
|
|
30
|
-
- **Maximum Safe Limit:** 100,000 rows for "Load All" operations
|
|
31
|
-
|
|
32
|
-
**How It Works:**
|
|
33
|
-
1. User executes a SELECT query without a LIMIT clause
|
|
34
|
-
2. System automatically adds `LIMIT 500 OFFSET 0`
|
|
35
|
-
3. Results display with pagination metadata
|
|
36
|
-
4. "Load More" button appears when more rows are available
|
|
37
|
-
|
|
38
|
-
### Large Result Estimation
|
|
39
|
-
|
|
40
|
-
Pre-execution row count estimation for queries without LIMIT clauses to help users understand query impact.
|
|
41
|
-
|
|
42
|
-
**Features:**
|
|
43
|
-
- **Row Count Estimation:** Uses `EXPLAIN` or `COUNT(*)` to estimate result size
|
|
44
|
-
- **User Confirmation:** Optional confirmation dialog for potentially large result sets
|
|
45
|
-
- **Silent Limiting:** Alternative mode that silently limits without confirmation
|
|
46
|
-
- **Performance Insight:** Shows estimated execution impact before running query
|
|
47
|
-
|
|
48
|
-
**Implementation:**
|
|
49
|
-
- PostgreSQL: Uses `EXPLAIN` with `ANALYZE` for accurate estimates
|
|
50
|
-
- MySQL: Uses `EXPLAIN` and `COUNT(*)` subquery
|
|
51
|
-
- SQLite: Uses `EXPLAIN QUERY PLAN` with row count hints
|
|
52
|
-
- MongoDB: Uses `countDocuments()` before executing find queries
|
|
53
|
-
|
|
54
|
-
### Demo Employees Database
|
|
55
|
-
|
|
56
|
-
A comprehensive HR database schema designed for learning and demonstration purposes.
|
|
57
|
-
|
|
58
|
-
**Database Schema:**
|
|
59
|
-
- **employees** - Employee master data with personal information
|
|
60
|
-
- **departments** - Department hierarchy and management
|
|
61
|
-
- **positions** - Job positions and salary ranges
|
|
62
|
-
- **employee_departments** - Employee-department assignments (many-to-many)
|
|
63
|
-
- **salaries** - Salary history tracking
|
|
64
|
-
- **projects** - Project management
|
|
65
|
-
- **project_assignments** - Employee-project assignments
|
|
66
|
-
- **attendance** - Time tracking and attendance records
|
|
67
|
-
|
|
68
|
-
**Features:**
|
|
69
|
-
- Realistic data relationships and constraints
|
|
70
|
-
- Foreign keys and indexes for proper normalization
|
|
71
|
-
- Sample data for immediate query testing
|
|
72
|
-
- Compatible with PostgreSQL, MySQL, and SQLite
|
|
73
|
-
|
|
74
|
-
### Showcase SQL Queries
|
|
75
|
-
|
|
76
|
-
100+ curated SQL queries organized by difficulty level to help users learn SQL and explore the demo database.
|
|
77
|
-
|
|
78
|
-
**Organization:**
|
|
79
|
-
- **Difficulty Levels:** Beginner, Intermediate, Advanced, Expert
|
|
80
|
-
- **Categories:** Basic SELECT, JOINs, Aggregations, Window Functions, CTEs, Subqueries
|
|
81
|
-
- **Fun Intros:** Random intro messages with divider lines for engaging learning experience
|
|
82
|
-
- **Progressive Learning:** Queries build upon each other from simple to complex
|
|
83
|
-
|
|
84
|
-
**Query Categories:**
|
|
85
|
-
1. Basic SELECT and Filtering
|
|
86
|
-
2. JOINs (INNER, LEFT, RIGHT, FULL)
|
|
87
|
-
3. Aggregations and GROUP BY
|
|
88
|
-
4. Window Functions (RANK, ROW_NUMBER, PARTITION BY)
|
|
89
|
-
5. Common Table Expressions (CTEs)
|
|
90
|
-
6. Subqueries and Correlated Subqueries
|
|
91
|
-
7. Date Functions and Time Series Analysis
|
|
92
|
-
8. Advanced Analytics and Reporting
|
|
93
|
-
|
|
94
|
-
---
|
|
95
|
-
|
|
96
|
-
## Architecture Changes
|
|
97
|
-
|
|
98
|
-
### Component Renaming
|
|
99
|
-
|
|
100
|
-
**Dashboard → Studio**
|
|
101
|
-
|
|
102
|
-
The main application component has been renamed from `Dashboard` to `Studio` to better reflect its purpose as a comprehensive database development studio.
|
|
103
|
-
|
|
104
|
-
**Impact:**
|
|
105
|
-
- Component file: `src/components/Dashboard.tsx` → `src/components/Studio.tsx`
|
|
106
|
-
- All internal references updated
|
|
107
|
-
- No API or external interface changes
|
|
108
|
-
- Backward compatible (no breaking changes)
|
|
109
|
-
|
|
110
|
-
---
|
|
111
|
-
|
|
112
|
-
## Documentation
|
|
113
|
-
|
|
114
|
-
### Query Optimization Guide
|
|
115
|
-
|
|
116
|
-
New comprehensive documentation for query optimization features:
|
|
117
|
-
|
|
118
|
-
**Location:** `docs/QUERY_OPTIMIZATION.md`
|
|
119
|
-
|
|
120
|
-
**Sections:**
|
|
121
|
-
- Query Pagination System architecture
|
|
122
|
-
- Silent Auto-Limiting philosophy and implementation
|
|
123
|
-
- Load More functionality details
|
|
124
|
-
- Query EXPLAIN integration
|
|
125
|
-
- Performance insights and metrics
|
|
126
|
-
- Provider-specific optimizations
|
|
127
|
-
|
|
128
|
-
### Demo Database Documentation
|
|
129
|
-
|
|
130
|
-
Complete documentation for the demo employees database:
|
|
131
|
-
|
|
132
|
-
**Location:** `docs/postgres/demo-employee-database.md`
|
|
133
|
-
|
|
134
|
-
**Contents:**
|
|
135
|
-
- Complete schema documentation
|
|
136
|
-
- ER diagram and relationships
|
|
137
|
-
- Sample queries organized by category
|
|
138
|
-
- Learning paths and tutorials
|
|
139
|
-
- Performance considerations
|
|
140
|
-
|
|
141
|
-
---
|
|
142
|
-
|
|
143
|
-
## Breaking Changes
|
|
144
|
-
|
|
145
|
-
None. All existing APIs remain compatible.
|
|
146
|
-
|
|
147
|
-
---
|
|
148
|
-
|
|
149
|
-
## Bug Fixes
|
|
150
|
-
|
|
151
|
-
- Fixed query execution performance for large datasets
|
|
152
|
-
- Improved memory handling for unlimited query results
|
|
153
|
-
- Enhanced error messages for query optimization features
|
|
154
|
-
|
|
155
|
-
---
|
|
156
|
-
|
|
157
|
-
## Dependencies
|
|
158
|
-
|
|
159
|
-
No new dependencies added in this release.
|
|
160
|
-
|
|
161
|
-
### Existing Dependencies
|
|
162
|
-
All existing database drivers and UI libraries remain unchanged:
|
|
163
|
-
- `pg` - PostgreSQL driver
|
|
164
|
-
- `mysql2` - MySQL driver
|
|
165
|
-
- `better-sqlite3` - SQLite driver (dynamic import)
|
|
166
|
-
- `mongodb` - MongoDB driver
|
|
167
|
-
|
|
168
|
-
---
|
|
169
|
-
|
|
170
|
-
## Migration Guide
|
|
171
|
-
|
|
172
|
-
### For Users
|
|
173
|
-
|
|
174
|
-
No migration required. All existing connections and queries continue to work as before.
|
|
175
|
-
|
|
176
|
-
**New Behavior:**
|
|
177
|
-
- Queries without LIMIT clauses now automatically paginate to 500 rows
|
|
178
|
-
- Use "Load More" button to retrieve additional pages
|
|
179
|
-
- Large result estimation may show confirmation dialogs (if enabled)
|
|
180
|
-
|
|
181
|
-
### For Developers
|
|
182
|
-
|
|
183
|
-
If you have custom code referencing the Dashboard component:
|
|
184
|
-
|
|
185
|
-
```typescript
|
|
186
|
-
// Before (v0.6.6 and earlier)
|
|
187
|
-
import Dashboard from '@/components/Dashboard';
|
|
188
|
-
|
|
189
|
-
// After (v0.6.7)
|
|
190
|
-
import Studio from '@/components/Studio';
|
|
191
|
-
```
|
|
192
|
-
|
|
193
|
-
**Note:** The component API remains the same, only the name changed.
|
|
194
|
-
|
|
195
|
-
---
|
|
196
|
-
|
|
197
|
-
## What's Next
|
|
198
|
-
|
|
199
|
-
### v0.7.0 (Planned)
|
|
200
|
-
- Query result export formats (CSV, JSON, Excel)
|
|
201
|
-
- Query history and saved queries management
|
|
202
|
-
- Query performance comparison tools
|
|
203
|
-
- Advanced query builder UI
|
|
204
|
-
- Real-time query execution monitoring
|
|
205
|
-
|
|
206
|
-
---
|
|
207
|
-
|
|
208
|
-
## Contributors
|
|
209
|
-
|
|
210
|
-
- Query pagination and optimization features
|
|
211
|
-
- Large result estimation implementation
|
|
212
|
-
- Demo employees database schema design
|
|
213
|
-
- Showcase queries curation and documentation
|
|
214
|
-
- Component refactoring (Dashboard → Studio)
|
|
215
|
-
|
|
216
|
-
---
|
|
217
|
-
|
|
218
|
-
## Full Changelog
|
|
219
|
-
|
|
220
|
-
### Added
|
|
221
|
-
- Query pagination system with automatic LIMIT handling
|
|
222
|
-
- Large result estimation with pre-execution row counting
|
|
223
|
-
- User confirmation dialogs for potentially large queries
|
|
224
|
-
- Silent auto-limiting mode for seamless workflow
|
|
225
|
-
- "Load More" functionality for incremental result loading
|
|
226
|
-
- Demo employees database schema (7 tables)
|
|
227
|
-
- 100+ showcase SQL queries with difficulty levels
|
|
228
|
-
- Random intro messages with divider lines for showcase queries
|
|
229
|
-
- `docs/QUERY_OPTIMIZATION.md` comprehensive guide
|
|
230
|
-
- `docs/postgres/demo-employee-database.md` demo database documentation
|
|
231
|
-
|
|
232
|
-
### Changed
|
|
233
|
-
- Renamed `Dashboard` component to `Studio` throughout codebase
|
|
234
|
-
- Enhanced query execution flow with pagination support
|
|
235
|
-
- Improved query result handling for large datasets
|
|
236
|
-
- Updated showcase query system with difficulty categorization
|
|
237
|
-
- Refined user experience for unlimited query handling
|
|
238
|
-
|
|
239
|
-
### Fixed
|
|
240
|
-
- Query performance issues with large result sets
|
|
241
|
-
- Memory management for unlimited queries
|
|
242
|
-
- Error handling in query optimization features
|
|
243
|
-
|
|
244
|
-
### Removed
|
|
245
|
-
- None
|
|
246
|
-
|
|
247
|
-
---
|
|
248
|
-
|
|
249
|
-
## Screenshots
|
|
250
|
-
|
|
251
|
-
### Query Pagination
|
|
252
|
-
Automatic pagination controls appear when query results exceed the default limit, with "Load More" button for incremental loading.
|
|
253
|
-
|
|
254
|
-
### Large Result Estimation
|
|
255
|
-
Pre-execution estimation dialog showing estimated row count and execution impact before running potentially expensive queries.
|
|
256
|
-
|
|
257
|
-
### Demo Database Schema
|
|
258
|
-
Complete HR database schema with employees, departments, positions, salaries, projects, and attendance tables with proper relationships.
|
|
259
|
-
|
|
260
|
-
### Showcase Queries
|
|
261
|
-
Curated SQL queries organized by difficulty level with fun intro messages to enhance learning experience.
|
|
262
|
-
|
|
263
|
-
---
|
|
264
|
-
|
|
265
|
-
## Performance Improvements
|
|
266
|
-
|
|
267
|
-
- **Query Execution:** Faster initial response time with automatic pagination
|
|
268
|
-
- **Memory Usage:** Reduced memory footprint for large result sets
|
|
269
|
-
- **Browser Stability:** Prevented browser freezes on unlimited queries
|
|
270
|
-
- **User Experience:** Seamless workflow with silent auto-limiting
|
|
271
|
-
|
|
272
|
-
---
|
|
273
|
-
|
|
274
|
-
## Security
|
|
275
|
-
|
|
276
|
-
No security-related changes in this release.
|
|
277
|
-
|
|
278
|
-
---
|
|
279
|
-
|
|
280
|
-
## Testing
|
|
281
|
-
|
|
282
|
-
All features have been tested with:
|
|
283
|
-
- PostgreSQL 12+ databases
|
|
284
|
-
- MySQL 8.0+ databases
|
|
285
|
-
- SQLite 3.x databases
|
|
286
|
-
- MongoDB 6.0+ databases
|
|
287
|
-
- Various query sizes (small to very large datasets)
|
|
288
|
-
|
|
289
|
-
---
|
|
290
|
-
|
|
291
|
-
**Full Changelog:** [Compare v0.6.6...v0.6.7](https://github.com/libredb/libredb-studio/compare/v0.6.6...v0.6.7)
|
|
292
|
-
|