import { MetadataRoute } from 'next';
import { PrismaClient } from "@prisma/client";

const prisma = new PrismaClient();

export default async function sitemap(): Promise<MetadataRoute.Sitemap> {
  // Traemos todos los posts publicados
  const facts = await prisma.fact.findMany({
    where: { status: "PUBLICADO" },
    select: { id: true, updatedAt: true },
  });

  const postsUrls = facts.map((fact) => ({
    url: `https://concon.com.do/post/${fact.id}`,
    lastModified: fact.updatedAt,
    changeFrequency: 'weekly' as const,
    priority: 0.8,
  }));

  return [
    {
      url: 'https://concon.com.do',
      lastModified: new Date(),
      changeFrequency: 'daily',
      priority: 1,
    },
    ...postsUrls,
  ];
}