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 runtime = 'nodejs';

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

  const title = t('meta.title') || t('breadcrumb') || t('title').replace(/<[^>]*>/g, '');
  const description = t('meta.description') || t('subtitle');

  return new ImageResponse(
    <OGImageTemplate title={title} description={description} label="Products" />,
    {
      ...OG_IMAGE_SIZE,
      fonts,
    },
  );
}
