feat: schema graph via FK introspection

- GET .../db-connections/:id/foreign-keys — per-dialect
  information_schema/pragma query through dbx_execute_query,
  identifier-whitelisted, read-role gated
- Databases page: Graph tab renders tables as radial SVG nodes with
  FK edges; hover highlights adjacency, click inspects the table
- demo stubs for edges + wider demo table set

Authored By: TDvorak <[email protected]>
This commit is contained in:
Tomas Dvorak committed 2026-09-16 15:27:28 +02:00
1 parent 627bd89d5e
commit d57f30cd59
12 files changed
+496 -2

No files matched your search

@@ -0,0 +1,30 @@
/* generated using openapi-typescript-codegen -- do not edit */
/* istanbul ignore file */
/* tslint:disable */
/* eslint-disable */
export const $DBForeignKeyEdge = {
properties: {
schema: {
type: 'string',
},
table: {
type: 'string',
isRequired: true,
},
column: {
type: 'string',
isRequired: true,
},
ref_schema: {
type: 'string',
},
ref_table: {
type: 'string',
isRequired: true,
},
ref_column: {
type: 'string',
isRequired: true,
},
},
} as const;
@@ -0,0 +1,21 @@
/* generated using openapi-typescript-codegen -- do not edit */
/* istanbul ignore file */
/* tslint:disable */
/* eslint-disable */
export const $DBForeignKeysResponse = {
properties: {
edges: {
type: 'array',
contains: {
type: 'DBForeignKeyEdge',
},
isRequired: true,
},
raw: {
type: 'string',
},
note: {
type: 'string',
},
},
} as const;