feat: update copyright year placeholders and enhance footer styling; add new project titles and descriptions in Persian; implement locale handling in various components

This commit is contained in:
2025-06-16 15:21:44 +03:30
parent 5818c895cd
commit 8ddf2dc7db
15 changed files with 43 additions and 13 deletions
+43
View File
@@ -0,0 +1,43 @@
import routeFactory from '@/assets/constants/routeFactory';
import images from '@/assets/images/images';
import Button from '@/components/uikit/button';
import { IPageParams } from '@/models/layout';
import { getTranslations, setRequestLocale } from 'next-intl/server';
export async function generateMetadata({ params }: { params: IPageParams }) {
const { locale } = await params;
setRequestLocale(locale);
const t = await getTranslations({ locale });
return {
title: t('page_not_found_metadata_title'),
description: t('page_not_found_metadata_description'),
};
}
export default async function NotFound({ params }: { params: IPageParams }) {
const paramsData = await params;
const t = await getTranslations({ locale: paramsData.locale });
const routes = routeFactory(t, paramsData.locale);
return (
<div className="container mx-auto flex h-svh flex-col items-center justify-center gap-6">
<h2 className="text-center text-4xl md:text-[5rem]">
{t('pages_notFound_title')}
</h2>
<p className="text-center text-xl text-gray-300 md:text-2xl">
{t('pages_notFound_description')}
</p>
<div>
<img
alt="404 page"
src={images.notFound.src}
className="aspect-square"
/>
</div>
<Button link={routes.home.route()} endIcon="showMore" className="w-fit">
{t('pages_notFound_button')}
</Button>
</div>
);
}