import React from 'react';
interface OGImageTemplateProps {
title: string;
description?: string;
label?: string;
image?: string;
logo?: string;
mode?: 'dark' | 'light' | 'image';
}
export function OGImageTemplate({
title,
description,
label,
image,
logo,
mode = 'dark',
}: OGImageTemplateProps) {
const backgroundDark = '#1a1a1a';
const primaryGreen = '#0e7a5c';
const containerStyle: React.CSSProperties = {
height: '100%',
width: '100%',
display: 'flex',
flexDirection: 'column',
alignItems: 'flex-start',
justifyContent: 'center',
backgroundColor: mode === 'light' ? '#ffffff' : backgroundDark,
padding: '80px',
position: 'relative',
fontFamily: 'Inter',
};
return (
{/* Background Image with Overlay */}
{image && (
{/* eslint-disable-next-line @next/next/no-img-element */}
)}
{/* Decorative Brand Accent (Top Right) */}
{/* Label / Category */}
{label && (
{label}
)}
{/* Title */}
40 ? '64px' : '82px',
fontWeight: 700,
color: 'white',
lineHeight: '1.05',
maxWidth: '950px',
marginBottom: '40px',
display: 'flex',
letterSpacing: '-0.02em',
}}
>
{title}
{/* Description */}
{description && (
{description.length > 160 ? description.substring(0, 157) + '...' : description}
)}
{/* Brand Footer */}
{logo ? (
// eslint-disable-next-line @next/next/no-img-element

) : (
)}
{!logo && (
E-TIB GmbH
)}
{/* Primary Green Brand Strip */}
);
}