mirror of
https://github.com/walkxcode/dashboard-icons.git
synced 2025-06-28 15:30:22 +08:00
feat: Update sitemap logic
This commit is contained in:
parent
d83edeedce
commit
dc50e08440
@ -1,36 +1,44 @@
|
||||
import { BASE_URL, WEB_URL } from "@/constants"
|
||||
import { getAllIcons } from "@/lib/api"
|
||||
import type { MetadataRoute } from "next"
|
||||
import { BASE_URL, WEB_URL } from "@/constants";
|
||||
import { getAllIcons } from "@/lib/api";
|
||||
import type { MetadataRoute } from "next";
|
||||
|
||||
export const dynamic = "force-static"
|
||||
export const dynamic = "force-static";
|
||||
|
||||
// Helper function to format dates as YYYY-MM-DD
|
||||
const formatDate = (date: Date): string => {
|
||||
// Format to YYYY-MM-DD
|
||||
return date.toISOString().split('T')[0];
|
||||
};
|
||||
|
||||
export default async function sitemap(): Promise<MetadataRoute.Sitemap> {
|
||||
const iconsData = await getAllIcons()
|
||||
const iconsData = await getAllIcons();
|
||||
return [
|
||||
{
|
||||
url: WEB_URL,
|
||||
lastModified: new Date(),
|
||||
lastModified: formatDate(new Date()),
|
||||
changeFrequency: "yearly",
|
||||
priority: 1,
|
||||
},
|
||||
{
|
||||
url: `${WEB_URL}/icons`,
|
||||
lastModified: new Date(),
|
||||
lastModified: formatDate(new Date()),
|
||||
changeFrequency: "daily",
|
||||
priority: 1,
|
||||
images: [`${WEB_URL}/icons/icon.png`],
|
||||
},
|
||||
...Object.keys(iconsData).map((iconName) => ({
|
||||
url: `${WEB_URL}/icons/${iconName}`,
|
||||
lastModified: iconsData[iconName].update.timestamp,
|
||||
lastModified: formatDate(new Date(iconsData[iconName].update.timestamp)),
|
||||
changeFrequency: "yearly" as const,
|
||||
priority: 0.8,
|
||||
images: [
|
||||
`${BASE_URL}/png/${iconName}.png`,
|
||||
// SVG is conditional if it exists
|
||||
iconsData[iconName].base === "svg" ? `${BASE_URL}/svg/${iconName}.svg` : null,
|
||||
iconsData[iconName].base === "svg"
|
||||
? `${BASE_URL}/svg/${iconName}.svg`
|
||||
: null,
|
||||
`${BASE_URL}/webp/${iconName}.webp`,
|
||||
].filter(Boolean) as string[],
|
||||
})),
|
||||
]
|
||||
];
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user