import { createServerClient } from "@supabase/ssr"; import { createClient as createSupabaseClient } from "@supabase/supabase-js"; import { cookies } from "next/headers"; import type { Database } from "@/types/database.types"; // Client Supabase côté serveur (Server Components, Route Handlers) export const createClient = async () => { const cookieStore = await cookies(); return createServerClient( process.env.NEXT_PUBLIC_SUPABASE_URL!, process.env.NEXT_PUBLIC_SUPABASE_ANON_KEY!, { cookies: { getAll() { return cookieStore.getAll(); }, setAll(cookiesToSet) { try { cookiesToSet.forEach(({ name, value, options }) => cookieStore.set(name, value, options) ); } catch { // Ignore en Server Component (lecture seule) } }, }, } ); }; // Client admin avec service role (webhooks, opérations admin) // Utilise @supabase/supabase-js directement (pas besoin de cookies) export const createAdminClient = () => { return createSupabaseClient( process.env.NEXT_PUBLIC_SUPABASE_URL!, process.env.SUPABASE_SERVICE_ROLE_KEY! ); };