import { Link } from 'react-router-dom';
import { useTranslation } from 'react-i18next';
import SEOHead from '@/components/seo/SEOHead';
import BreadcrumbNav from '@/components/seo/BreadcrumbNav';
import { TOOLS_SEO } from '@/config/seoData';
import { generateBreadcrumbs, generateCollectionPage, generateItemList, getSiteOrigin } from '@/utils/seo';
const CATEGORY_ORDER = ['PDF', 'Convert', 'Image', 'AI', 'Utility'] as const;
export default function AllToolsPage() {
const { t } = useTranslation();
const origin = getSiteOrigin(typeof window !== 'undefined' ? window.location.origin : '');
const path = '/tools';
const url = `${origin}${path}`;
const groupedTools = CATEGORY_ORDER.map((category) => ({
category,
items: TOOLS_SEO.filter((tool) => tool.category === category),
})).filter((group) => group.items.length > 0);
const jsonLd = [
generateCollectionPage({
name: t('pages.toolsHub.metaTitle'),
description: t('pages.toolsHub.metaDescription'),
url,
}),
generateBreadcrumbs([
{ name: t('common.home'), url: origin },
{ name: t('common.allTools'), url },
]),
generateItemList(
TOOLS_SEO.map((tool) => ({
name: t(`tools.${tool.i18nKey}.title`),
url: `${origin}/tools/${tool.slug}`,
})),
),
];
return (
<>
{t('pages.toolsHub.description')}
{group.category}
{t(`tools.${tool.i18nKey}.shortDesc`)}
))}