import { ImageResponse } from 'next/og';
import { getTranslations } from 'next-intl/server';
import { OGImageTemplate } from '@/components/OGImageTemplate';
import { getOgFonts, OG_IMAGE_SIZE } from '@/lib/og-helper';

export const size = OG_IMAGE_SIZE;
export const contentType = 'image/png';
export const runtime = 'nodejs';

export default async function Image({ params }: { params: Promise<{ locale: string }> }) {
  const { locale } = await params;
  const t = await getTranslations({ locale, namespace: 'Index.meta' });
  const fonts = await getOgFonts();

  return new ImageResponse(
    <OGImageTemplate
      title={t('title')}
      description={t('description')}
      label="Reliable Energy Infrastructure"
    />,
    {
      ...OG_IMAGE_SIZE,
      fonts,
    },
  );
}
