mirror of
https://github.com/t8y2/dbx.git
synced 2026-10-31 00:22:30 +00:00
feat(sql): persist SQL library in app database
This commit is contained in:
@@ -36,6 +36,11 @@ export const connectDb = forward("connectDb");
|
||||
export const disconnectDb = forward("disconnectDb");
|
||||
export const saveConnections = forward("saveConnections");
|
||||
export const loadConnections = forward("loadConnections");
|
||||
export const loadSavedSqlLibrary = forward("loadSavedSqlLibrary");
|
||||
export const saveSavedSqlFolder = forward("saveSavedSqlFolder");
|
||||
export const deleteSavedSqlFolder = forward("deleteSavedSqlFolder");
|
||||
export const saveSavedSqlFile = forward("saveSavedSqlFile");
|
||||
export const deleteSavedSqlFile = forward("deleteSavedSqlFile");
|
||||
|
||||
// Schema
|
||||
export const listDatabases = forward("listDatabases");
|
||||
|
||||
@@ -8,6 +8,9 @@ import type {
|
||||
TriggerInfo,
|
||||
QueryResult,
|
||||
SidebarLayout,
|
||||
SavedSqlFile,
|
||||
SavedSqlFolder,
|
||||
SavedSqlLibrary,
|
||||
} from "@/types/database";
|
||||
import type { AiConfig } from "@/stores/settingsStore";
|
||||
import type {
|
||||
@@ -88,6 +91,26 @@ export async function loadConnections(): Promise<ConnectionConfig[]> {
|
||||
return get("/api/connection/list");
|
||||
}
|
||||
|
||||
export async function loadSavedSqlLibrary(): Promise<SavedSqlLibrary> {
|
||||
return get("/api/saved-sql");
|
||||
}
|
||||
|
||||
export async function saveSavedSqlFolder(folder: SavedSqlFolder): Promise<SavedSqlFolder> {
|
||||
return post("/api/saved-sql/folders", folder);
|
||||
}
|
||||
|
||||
export async function deleteSavedSqlFolder(id: string): Promise<void> {
|
||||
return del(`/api/saved-sql/folders/${encodeURIComponent(id)}`);
|
||||
}
|
||||
|
||||
export async function saveSavedSqlFile(file: SavedSqlFile): Promise<SavedSqlFile> {
|
||||
return post("/api/saved-sql", file);
|
||||
}
|
||||
|
||||
export async function deleteSavedSqlFile(id: string): Promise<void> {
|
||||
return del(`/api/saved-sql/${encodeURIComponent(id)}`);
|
||||
}
|
||||
|
||||
// ---------------------------------------------------------------------------
|
||||
// Schema
|
||||
// ---------------------------------------------------------------------------
|
||||
|
||||
@@ -9,6 +9,9 @@ import type {
|
||||
ForeignKeyInfo,
|
||||
TriggerInfo,
|
||||
QueryResult,
|
||||
SavedSqlFile,
|
||||
SavedSqlFolder,
|
||||
SavedSqlLibrary,
|
||||
} from "@/types/database";
|
||||
import type { AiConfig } from "@/stores/settingsStore";
|
||||
|
||||
@@ -241,6 +244,26 @@ export async function loadConnections(): Promise<ConnectionConfig[]> {
|
||||
return invoke("load_connections");
|
||||
}
|
||||
|
||||
export async function loadSavedSqlLibrary(): Promise<SavedSqlLibrary> {
|
||||
return invoke("load_saved_sql_library");
|
||||
}
|
||||
|
||||
export async function saveSavedSqlFolder(folder: SavedSqlFolder): Promise<SavedSqlFolder> {
|
||||
return invoke("save_saved_sql_folder", { folder });
|
||||
}
|
||||
|
||||
export async function deleteSavedSqlFolder(id: string): Promise<void> {
|
||||
return invoke("delete_saved_sql_folder", { id });
|
||||
}
|
||||
|
||||
export async function saveSavedSqlFile(file: SavedSqlFile): Promise<SavedSqlFile> {
|
||||
return invoke("save_saved_sql_file", { file });
|
||||
}
|
||||
|
||||
export async function deleteSavedSqlFile(id: string): Promise<void> {
|
||||
return invoke("delete_saved_sql_file", { id });
|
||||
}
|
||||
|
||||
export async function saveSidebarLayout(layout: import("@/types/database").SidebarLayout): Promise<void> {
|
||||
return invoke("save_sidebar_layout", { layout });
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user