import { createClient } from "@supabase/supabase-js"; export default { async fetch(request, env) { const supabaseUrl = env.SUPABASE_URL || process.env.SUPABASE_URL; const supabaseKey = env.SUPABASE_KEY || process.env.SUPABASE_KEY; const supabase = createClient(supabaseUrl, supabaseKey); const { data, error } = await supabase .from("optimized_latest_listen") .select("*") .single(); const headers = { "Content-Type": "application/json", "Cache-Control": "public, s-maxage=360, stale-while-revalidate=1080", }; if (error) { console.error("Error fetching data:", error); return new Response( JSON.stringify({ error: "Failed to fetch the latest track" }), { headers } ); } if (!data) return new Response( JSON.stringify({ message: "No recent tracks found" }), { headers } ); const genreEmoji = data.genre_emoji; const emoji = data.artist_emoji || genreEmoji; return new Response( JSON.stringify({ content: `${emoji || "🎧"} ${ data.track_name } by ${data.artist_name}`, }), { headers } ); }, };