import type { MetadataRoute } from "next"; import { caseStudies, pageUpdatedAt, servicePages, siteUrl, } from "@/lib/site-content"; /** * `lastmod` de cada rota: a data de mudança do conteúdo dela (`updatedAt` do serviço ou do case, `pageUpdatedAt` nas * páginas fixas), sempre a mesma a cada build. Não vem do relógio nem do git, que mudariam sem o texto mudar. * Atualize a data quando o texto da página mudar. */ function dateOf(day: string) { return new Date(`${day}T00:00:00Z`); } export default function sitemap(): MetadataRoute.Sitemap { return [ { url: siteUrl, lastModified: dateOf(pageUpdatedAt.home) }, { url: `${siteUrl}/curriculo`, lastModified: dateOf(pageUpdatedAt.curriculo), }, { url: `${siteUrl}/privacidade`, lastModified: dateOf(pageUpdatedAt.privacidade), }, { url: `${siteUrl}/servicos`, lastModified: dateOf(pageUpdatedAt.servicos), }, { url: `${siteUrl}/cases`, lastModified: dateOf(pageUpdatedAt.cases) }, { url: `${siteUrl}/ia`, lastModified: dateOf(pageUpdatedAt.ia) }, ...servicePages.map(({ slug, updatedAt }) => ({ url: `${siteUrl}/servicos/${slug}`, lastModified: dateOf(updatedAt), })), ...caseStudies.map(({ id, updatedAt }) => ({ url: `${siteUrl}/cases/${id}`, lastModified: dateOf(updatedAt), })), ]; }