Files
sre-03-token-vendor/packages/nextjs/utils/scaffold-eth/getMetadata.ts
2026-01-12 10:42:14 +07:00

57 lines
1.2 KiB
TypeScript

import type { Metadata } from "next";
const baseUrl = process.env.VERCEL_PROJECT_PRODUCTION_URL
? `https://${process.env.VERCEL_PROJECT_PRODUCTION_URL}`
: `http://localhost:${process.env.PORT || 3000}`;
const titleTemplate = "%s | Speedrun Ethereum";
export const getMetadata = ({
title,
description,
imageRelativePath = "/thumbnail-challenge.png",
}: {
title: string;
description: string;
imageRelativePath?: string;
}): Metadata => {
const imageUrl = `${baseUrl}${imageRelativePath}`;
return {
metadataBase: new URL(baseUrl),
title: {
default: title,
template: titleTemplate,
},
description: description,
openGraph: {
title: {
default: title,
template: titleTemplate,
},
description: description,
images: [
{
url: imageUrl,
},
],
},
twitter: {
title: {
default: title,
template: titleTemplate,
},
description: description,
images: [imageUrl],
},
icons: {
icon: [
{
url: "/favicon.png",
sizes: "32x32",
type: "image/png",
},
],
},
};
};