Files
2026-07-19 16:29:37 +03:30

77 lines
2.8 KiB
TypeScript

import businessCardMenu from "@/assets/images/business-card-menu.png";
import Image from "next/image";
import { FC } from "react";
type CategoryGroup = {
title: string;
items: string[];
};
const columns: CategoryGroup[][] = [
[
{
title: "کارت‌های استاندارد",
items: ["مات", "براق", "بدون روکش"],
},
{
title: "شکل‌های خاص",
items: ["گوشه گرد", "مربع", "دایره", "بیضی"],
},
],
[
{
title: "کارت‌های پریمیوم",
items: ["بافت طبیعی", "مخملی", "پنبه‌ای", "کتانی (Linen)", "کرافت"],
},
{
title: "کارت‌های لوکس",
items: ["پریمیوم پلاس", "لبه رنگی", "فوق‌ضخیم", "پلاستیکی"],
},
],
[
{
title: "روکش های ویژه",
items: ["فویل تزئینی", "برجسته براق", "فویل برجسته"],
},
{
title: "کارت‌های ویزیت دیجیتال",
items: ["کارت ویزیت دارای کد QR"],
},
],
];
const AllProductsMenu: FC = () => {
return (
<div className="absolute top-full z-50 mt-2 inset-x-4 sm:inset-x-8 lg:inset-x-auto lg:right-[120px] w-auto lg:w-[min(1099px,calc(100vw-240px))] max-h-[70vh] overflow-y-auto rounded-2xl sm:rounded-[32px] bg-[#F9FAFB]/95 backdrop-blur-sm px-4 sm:px-8 pt-6 sm:pt-8 pb-6 sm:pb-10 shadow-lg border border-[#E9EEF2]/80">
<div className="flex w-full flex-col lg:flex-row items-start justify-between gap-8">
<div className="grid grid-cols-1 sm:grid-cols-2 lg:grid-cols-3 gap-6 lg:gap-0 lg:contents w-full lg:w-auto">
{columns.map((groups) => (
<div key={groups[0].title} className="flex w-full lg:w-[228px] shrink-0 flex-col gap-6">
{groups.map((group) => (
<div key={group.title} className="flex flex-col gap-2">
<div className="flex h-10 items-center px-2 sm:px-4 text-sm sm:text-base font-bold text-black">{group.title}</div>
{group.items.map((item) => (
<button
key={item}
type="button"
className="flex h-6 w-full items-center px-2 sm:px-4 text-right text-sm sm:text-base font-medium text-[#011E3A] transition-colors hover:text-primary"
>
{item}
</button>
))}
</div>
))}
</div>
))}
</div>
<div className="relative mx-auto lg:mx-0 h-[140px] w-[145px] sm:h-[157px] sm:w-[163px] shrink-0 overflow-hidden rounded-2xl">
<Image src={businessCardMenu} alt="کارت ویزیت" fill className="object-cover" sizes="163px" />
</div>
</div>
</div>
);
};
export default AllProductsMenu;