Supabase support: client, auth & SQL

This commit is contained in:
Will Chen
2025-04-22 16:45:47 -07:00
parent ec43482d6c
commit 4294ce5767
15 changed files with 694 additions and 9 deletions

View File

@@ -1,28 +0,0 @@
import { readSettings } from "../../main/settings";
import { SupabaseManagementAPI } from "supabase-management-js";
// Function to get the Supabase Management API client
export async function getSupabaseClient(): Promise<SupabaseManagementAPI> {
const settings = readSettings();
// Check if Supabase token exists in settings
const supabaseAccessToken = settings.supabase?.accessToken?.value;
if (!supabaseAccessToken) {
throw new Error(
"Supabase access token not found. Please authenticate first."
);
}
return new SupabaseManagementAPI({
accessToken: supabaseAccessToken,
});
}
export async function getSupabaseProjectName(
projectId: string
): Promise<string> {
const supabase = await getSupabaseClient();
const projects = await supabase.getProjects();
const project = projects?.find((p) => p.id === projectId);
return project?.name || `<project not found for: ${projectId}>`;
}