import SeoNavbar from '@/components/seo/SeoNavbar' import SeoFooter from '@/components/seo/SeoFooter' import { SeoHero, SeoAdvantage, SeoMethodology, SeoComparison, SeoContentSections, SeoBestFit, SeoFaq, SeoRelated, } from '@/components/seo/SeoSections' import type { SeoPageProfile } from '@/lib/seoPages' import { seoTemplateCopy } from '@/lib/seoTemplateCopy' import { siteConfig, hasIosStoreUrl } from '@/lib/site' interface SeoCategoryPageProps { profile: SeoPageProfile } export default function SeoCategoryPage({ profile }: SeoCategoryPageProps) { const locale = profile.locale ?? 'en' const copy = seoTemplateCopy[locale] const faqSchema = { '@context': 'https://schema.org', '@type': 'FAQPage', mainEntity: profile.faqs.map((item) => ({ '@type': 'Question', name: item.question, acceptedAnswer: { '@type': 'Answer', text: item.answer, }, })), } const appSchema = profile.includeAppSchema ? { '@context': 'https://schema.org', '@type': 'SoftwareApplication', name: siteConfig.name, operatingSystem: 'iOS, Android', applicationCategory: 'LifestyleApplication', description: profile.directAnswer, ...(hasIosStoreUrl && { downloadUrl: siteConfig.iosAppStoreUrl }), offers: { '@type': 'Offer', price: '0', priceCurrency: 'EUR', }, } : null const breadcrumbSchema = { '@context': 'https://schema.org', '@type': 'BreadcrumbList', itemListElement: [ { '@type': 'ListItem', position: 1, name: 'Home', item: siteConfig.domain, }, { '@type': 'ListItem', position: 2, name: profile.h1, item: `${siteConfig.domain}${profile.canonical}`, }, ], } return (