mirror of
https://github.com/Syngnat/GoNavi.git
synced 2026-05-12 20:29:43 +08:00
- 新增测试连接功能,修复底层驱动假成功问题,确保密码/端口验证准确 - 支持导入/导出连接配置(JSON),便于迁移与备份 - 优化侧边栏:实现虚拟滚动解决卡顿,增加数据库筛选与断开连接重连机制 - 优化交互:改进右键菜单体验(全行触发/禁用选文),完善新建查询的上下文自动关联 - 界面调整:精简连接弹窗,移除冗余的默认数据库输入
88 lines
1.5 KiB
TypeScript
88 lines
1.5 KiB
TypeScript
export interface SSHConfig {
|
|
host: string;
|
|
port: number;
|
|
user: string;
|
|
password?: string;
|
|
keyPath?: string;
|
|
}
|
|
|
|
export interface ConnectionConfig {
|
|
type: string;
|
|
host: string;
|
|
port: number;
|
|
user: string;
|
|
password?: string;
|
|
database?: string;
|
|
useSSH?: boolean;
|
|
ssh?: SSHConfig;
|
|
}
|
|
|
|
export interface SavedConnection {
|
|
id: string;
|
|
name: string;
|
|
config: ConnectionConfig;
|
|
includeDatabases?: string[];
|
|
}
|
|
|
|
export interface ColumnDefinition {
|
|
name: string;
|
|
type: string;
|
|
nullable: string;
|
|
key: string;
|
|
default?: string;
|
|
extra: string;
|
|
comment: string;
|
|
}
|
|
|
|
export interface IndexDefinition {
|
|
name: string;
|
|
columnName: string;
|
|
nonUnique: number;
|
|
seqInIndex: number;
|
|
indexType: string;
|
|
}
|
|
|
|
export interface ForeignKeyDefinition {
|
|
name: string;
|
|
columnName: string;
|
|
refTableName: string;
|
|
refColumnName: string;
|
|
constraintName: string;
|
|
}
|
|
|
|
export interface TriggerDefinition {
|
|
name: string;
|
|
timing: string;
|
|
event: string;
|
|
statement: string;
|
|
}
|
|
|
|
export interface TabData {
|
|
id: string;
|
|
title: string;
|
|
type: 'query' | 'table' | 'design';
|
|
connectionId: string;
|
|
dbName?: string;
|
|
tableName?: string;
|
|
query?: string;
|
|
initialTab?: string;
|
|
readOnly?: boolean;
|
|
}
|
|
|
|
export interface DatabaseNode {
|
|
title: string;
|
|
key: string;
|
|
isLeaf?: boolean;
|
|
children?: DatabaseNode[];
|
|
icon?: any;
|
|
}
|
|
|
|
export interface SavedQuery {
|
|
id: string;
|
|
name: string;
|
|
sql: string;
|
|
connectionId: string;
|
|
dbName: string;
|
|
createdAt: number;
|
|
}
|