/
githubmirror
/
stackwise
Обзор
Документация
Войти
/
githubmirror
/
stackwise
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
main
public/stacks/utils/stack-db.ts
50 строк
1 KB
Silen Naihin
readability and restructuring
19 фев 2024, 00:00
19 фев 2024, 00:00
0fdf743
Код
Авторство
О чём код?
import { createBrowserClient } from '@supabase/ssr'; import { createClient } from '@supabase/supabase-js'; type Status = 'published' | 'starred' | 'expansion'; export const supabaseClient = createBrowserClient( process.env.NEXT_PUBLIC_SUPABASE_URL!, process.env.NEXT_PUBLIC_SUPABASE_ANON_KEY! ) export async function getSupabaseClient() { return createClient( process.env.NEXT_PUBLIC_SUPABASE_URL || '', process.env.NEXT_PUBLIC_SUPABASE_ANON_KEY || '', ); } export async function getStackDB() { const supabase = createClient( process.env.NEXT_PUBLIC_SUPABASE_URL || '', process.env.NEXT_PUBLIC_SUPABASE_ANON_KEY || '', ); const { data: projectsArray, error } = await supabase .from('stack') // Replace with your actual table name .select('*'); if (error) { console.error('Error fetching data:', error); return null; } const projectsObject: Record<string, StackDescription> = {}; if (projectsArray) { projectsArray.forEach((project) => { projectsObject[project.id] = { name: project.name, description: project.description, tags: project.tags, }; }); } return projectsObject; } export interface StackDescription { name: string; description: string; tags: Status[]; } export const statusesToDisplay: Status[] = ['published'];