puzzle-trainer/sitemap.ts
2026-05-23 01:05:21 +00:00

27 lines
1.1 KiB
TypeScript

import type { MetadataRoute } from "next";
const BASE = "https://puzzles.reverdin.eu";
const GAMES = ["queens", "tango", "zip", "sudoku", "patches"];
function todayISO(): string {
const now = new Date();
return `${now.getFullYear()}-${String(now.getMonth() + 1).padStart(2, "0")}-${String(now.getDate()).padStart(2, "0")}`;
}
export default function sitemap(): MetadataRoute.Sitemap {
const today = todayISO();
const staticRoutes: MetadataRoute.Sitemap = [
{ url: BASE, lastModified: today, changeFrequency: "daily", priority: 1 },
{ url: `${BASE}/archive`, lastModified: today, changeFrequency: "daily", priority: 0.5 },
{ url: `${BASE}/mentions-legales`, changeFrequency: "yearly", priority: 0.1 },
];
const gameRoutes: MetadataRoute.Sitemap = GAMES.flatMap((game) => [
{ url: `${BASE}/${game}`, lastModified: today, changeFrequency: "daily", priority: 0.9 },
{ url: `${BASE}/${game}/levels`, changeFrequency: "weekly", priority: 0.6 },
{ url: `${BASE}/${game}/${today}`, lastModified: today, changeFrequency: "daily", priority: 0.8 },
]);
return [...staticRoutes, ...gameRoutes];
}