create products page

This commit is contained in:
2025-06-03 12:59:05 +03:30
parent 05e50f0eee
commit bd368ab6b5
17 changed files with 408 additions and 64 deletions
@@ -0,0 +1,39 @@
import { Icon } from '@/components/uikit/icons';
import type { IProductCategoryCardProps } from './productCategoryCard.d';
import AchievementTextBox from '@/components/layout/achievementTextBox';
import { t } from '@/locales/translates';
import Button from '@/components/uikit/button';
import routeFactory from '@/assets/constants/routeFactory';
export default function ProductsCategoryCard({
icon,
title,
typesCount,
priceTypeTitle,
bestForTitle,
id,
}: IProductCategoryCardProps) {
return (
<div className="relative overflow-hidden rounded-4xl bg-gray-100 p-12">
<div className="absolute -end-2 -top-2">
<Icon name={icon} className="text-primary h-36 w-36" />
</div>
<div className="flex flex-col gap-4 pt-32">
<h2 className="text-xl font-semibold text-gray-500">{title}</h2>
<AchievementTextBox
title={
t('com_products_category_types_count', {
count: typesCount,
}) as string
}
/>
<AchievementTextBox title={priceTypeTitle} />
<AchievementTextBox title={bestForTitle} />
</div>
<div className="mt-24">
<Button link={routeFactory.products.route()}>See All</Button>
</div>
</div>
);
}
+10
View File
@@ -0,0 +1,10 @@
import { IconName } from '@/components/uikit/icons';
export interface IProductCategoryCardProps {
id: string;
title: string;
icon: IconName;
typesCount: number;
priceTypeTitle: string;
bestForTitle: string;
}