115 lines
5.2 KiB
TypeScript
115 lines
5.2 KiB
TypeScript
import { ChevronRight } from "lucide-react";
|
|
import { FaFacebook, FaInstagram, FaYoutube } from "react-icons/fa";
|
|
import { FaXTwitter } from "react-icons/fa6";
|
|
|
|
import { cn } from "@/lib/utils";
|
|
|
|
interface Community4Props {
|
|
className?: string;
|
|
}
|
|
|
|
const Community4 = ({ className }: Community4Props) => {
|
|
const socialPlatforms = [
|
|
{
|
|
name: "Facebook",
|
|
icon: <FaFacebook className="size-6 text-blue-400/90" />,
|
|
color: "blue",
|
|
heading: "به جمع ما بپیوندید",
|
|
description:
|
|
"ایدهها، پروژهها و دستاوردهای خود را با سایر اعضای جامعه به اشتراک بگذارید.",
|
|
followText: "ما را در Facebook دنبال کنید",
|
|
url: "#",
|
|
},
|
|
{
|
|
name: "Youtube",
|
|
icon: <FaYoutube className="size-6 text-red-500/90" />,
|
|
color: "red",
|
|
heading: "ویدئوهای آموزشی ما را ببینید",
|
|
description: "آموزشها، معرفی قابلیتهای جدید و محتوای تخصصی را دنبال کنید.",
|
|
followText: "کانال YouTube ما را دنبال کنید",
|
|
url: "#",
|
|
},
|
|
{
|
|
name: "X",
|
|
icon: <FaXTwitter className="size-5 text-white" />,
|
|
color: "zinc",
|
|
heading: "آخرین اخبار و بهروزرسانیها",
|
|
description: "از آخرین تغییرات محصول، نسخههای جدید و اطلاعیههای مهم باخبر شوید.",
|
|
followText: "در X همراه ما باشید",
|
|
url: "#",
|
|
},
|
|
{
|
|
name: "Instagram",
|
|
icon: <FaInstagram className="size-6 text-pink-400/90" />,
|
|
color: "pink",
|
|
heading: "نمونه کارهای ما را ببینید",
|
|
description: "پروژهها، تصاویر و پشتصحنه توسعه محصولات را دنبال کنید.",
|
|
followText: "ما را در Instagram دنبال کنید",
|
|
url: "#",
|
|
},
|
|
];
|
|
|
|
return (
|
|
<section dir="rtl" lang="fa" className={cn("py-32", className)}>
|
|
<div className="container">
|
|
<div className="flex flex-col items-center gap-2.5 text-center">
|
|
<h2 className="text-xl font-medium md:text-2xll">
|
|
به جامعه ما بپیوندید
|
|
</h2>
|
|
<p className="text-muted-foreground md:text-lg">
|
|
با متخصصان و علاقهمندان صنعت ارتباط بگیرید، دانش خود را به اشتراک بگذارید و از آخرین تحولات باخبر شوید.
|
|
</p>
|
|
</div>
|
|
<div className="mx-auto mt-8 grid grid-cols-1 gap-2 md:grid-cols-2 xl:grid-cols-4">
|
|
{socialPlatforms.map((platform) => (
|
|
<a
|
|
key={platform.name}
|
|
href={platform.url}
|
|
target="_blank"
|
|
rel="noopener noreferrer"
|
|
className={cn(
|
|
"group relative flex h-full flex-col gap-10 overflow-hidden rounded-xl border bg-radial-[at_80%_14%] from-[-50%] via-zinc-950 via-75% to-zinc-950 p-6",
|
|
platform.color === "pink" &&
|
|
"from-pink-500 dark:border-pink-500/50",
|
|
platform.color === "blue" &&
|
|
"from-blue-500 dark:border-blue-500/50",
|
|
platform.color === "red" &&
|
|
"from-red-500 dark:border-red-500/50",
|
|
platform.color === "zinc" &&
|
|
"from-zinc-500 dark:border-zinc-500/50",
|
|
)}
|
|
>
|
|
<div className="absolute inset-0 h-full w-full shrink-0 bg-[radial-gradient(white_1px,transparent_1px)] [mask-image:radial-gradient(ellipse_at_80%_14%,#000,transparent_40%)] [background-size:3px_3px] opacity-35"></div>
|
|
<div
|
|
className={`relative grid size-11 shrink-0 place-items-center rounded-full bg-gradient-to-b from-${platform.color === "zinc" ? "white" : `${platform.color}-500`}/50 via-transparent to-${platform.color === "zinc" ? "white" : `${platform.color}-500`}/50 p-px`}
|
|
>
|
|
<div
|
|
className={`grid size-full place-items-center rounded-full bg-zinc-950 bg-gradient-to-b from-${platform.color === "zinc" ? "white" : `${platform.color}-500`}/30 via-transparent to-${platform.color === "zinc" ? "white" : `${platform.color}-500`}/30`}
|
|
>
|
|
{platform.icon}
|
|
</div>
|
|
</div>
|
|
<div className="flex h-full flex-col justify-between">
|
|
<div className="mb-5">
|
|
<h3 className="relative text-lg font-semibold text-white">
|
|
{platform.heading}
|
|
</h3>
|
|
<p className="mt-2 text-sm text-white/70">
|
|
{platform.description}
|
|
</p>
|
|
</div>
|
|
<div className="flex items-center gap-1 text-sm font-semibold text-white/90 transition-colors group-hover:text-white">
|
|
{platform.followText}
|
|
<ChevronRight className="size-4.5 transition-transform group-hover:translate-x-0.5 rtl:rotate-180 rtl:group-hover:-translate-x-0.5" />
|
|
</div>
|
|
</div>
|
|
</a>
|
|
))}
|
|
</div>
|
|
</div>
|
|
</section>
|
|
);
|
|
};
|
|
|
|
export { Community4 };
|