// app/sitemap.ts
import { createSupabaseServerClient } from "@/lib/supabase/server";
import { MetadataRoute } from "next";
import { SITE } from "@/lib/config/site";

export default async function sitemap(): Promise<MetadataRoute.Sitemap> {
  const supabase = await createSupabaseServerClient();

  // Fetch all published snap dates
  const { data, error } = await supabase
    .from("snap_days")
    .select("snap_date")
    .order("snap_date", { ascending: false });

  if (error || !data) {
    return [];
  }

  
  const today = new Date().toISOString().slice(0, 10);

  return [
    // 🏠 Today page
    {
      url: `${SITE.url}/`,
      lastModified: today,
      changeFrequency: "daily",
      priority: 1.0,
    },

    // 🗂 Archive index (optional but recommended)
    {
      url: `${SITE.url}/archive`,
      lastModified: today,
      changeFrequency: "weekly",
      priority: 0.5,
    },

    // 📅 Every published day
    ...data.map((row) => ({
      url: `${SITE.url}/${row.snap_date}`,
      lastModified: row.snap_date,
      changeFrequency: "never",
      priority: 0.6,
    })),
  ];
}
