From 2adaac8ec478c9a9f9b8c6a755ea2b6b6a7653e5 Mon Sep 17 00:00:00 2001 From: hamid zarghami Date: Sun, 19 Jul 2026 16:09:33 +0330 Subject: [PATCH] footer and first desktop version completed --- app/components/Button.tsx | 2 +- app/components/Input.tsx | 2 +- app/components/Select.tsx | 2 +- app/home/Home.tsx | 2 +- app/layout.tsx | 8 ++- app/shared/Footer.tsx | 46 ++++++++++++ app/shared/components/FooterContact.tsx | 53 ++++++++++++++ app/shared/components/FooterLinkColumn.tsx | 25 +++++++ app/shared/components/FooterNewsletter.tsx | 22 ++++++ app/shared/components/FooterSocial.tsx | 78 +++++++++++++++++++++ app/shared/components/FooterTrustBadges.tsx | 20 ++++++ app/shared/components/FooterTrustValues.tsx | 22 ++++++ 12 files changed, 275 insertions(+), 7 deletions(-) create mode 100644 app/shared/Footer.tsx create mode 100644 app/shared/components/FooterContact.tsx create mode 100644 app/shared/components/FooterLinkColumn.tsx create mode 100644 app/shared/components/FooterNewsletter.tsx create mode 100644 app/shared/components/FooterSocial.tsx create mode 100644 app/shared/components/FooterTrustBadges.tsx create mode 100644 app/shared/components/FooterTrustValues.tsx diff --git a/app/components/Button.tsx b/app/components/Button.tsx index c51a8c1..f55bca7 100644 --- a/app/components/Button.tsx +++ b/app/components/Button.tsx @@ -12,7 +12,7 @@ const Button: FC = ({ variant = "primary", className, children, ...rest } return ( + + + ); +}; + +export default FooterNewsletter; diff --git a/app/shared/components/FooterSocial.tsx b/app/shared/components/FooterSocial.tsx new file mode 100644 index 0000000..f093b10 --- /dev/null +++ b/app/shared/components/FooterSocial.tsx @@ -0,0 +1,78 @@ +import { type FC, type ReactNode } from "react"; + +type SocialLink = { + label: string; + href: string; + bg: string; + icon: ReactNode; +}; + +const socialLinks: SocialLink[] = [ + { + label: "Facebook", + href: "#", + bg: "bg-[#1877F2]", + icon: ( + + + + ), + }, + { + label: "Instagram", + href: "#", + bg: "bg-linear-to-br from-[#F58529] via-[#DD2A7B] to-[#8134AF]", + icon: ( + + + + ), + }, + { + label: "LinkedIn", + href: "#", + bg: "bg-[#0A66C2]", + icon: ( + + + + ), + }, + { + label: "Telegram", + href: "#", + bg: "bg-[#2AABEE]", + icon: ( + + + + ), + }, + { + label: "WhatsApp", + href: "#", + bg: "bg-[#25D366]", + icon: ( + + + + ), + }, +]; + +const FooterSocial: FC = () => { + return ( +
+

ما را در شبکه‌های اجتماعی دنبال کنید

+
+ {socialLinks.map((item) => ( + + {item.icon} + + ))} +
+
+ ); +}; + +export default FooterSocial; diff --git a/app/shared/components/FooterTrustBadges.tsx b/app/shared/components/FooterTrustBadges.tsx new file mode 100644 index 0000000..74cbaca --- /dev/null +++ b/app/shared/components/FooterTrustBadges.tsx @@ -0,0 +1,20 @@ +import { type FC } from "react"; + +const badges = ["اینماد", "ساماندهی", "اتحادیه"]; + +const FooterTrustBadges: FC = () => { + return ( +
+

نماد های اعتماد

+
+ {badges.map((badge) => ( +
+ {badge} +
+ ))} +
+
+ ); +}; + +export default FooterTrustBadges; diff --git a/app/shared/components/FooterTrustValues.tsx b/app/shared/components/FooterTrustValues.tsx new file mode 100644 index 0000000..611337f --- /dev/null +++ b/app/shared/components/FooterTrustValues.tsx @@ -0,0 +1,22 @@ +import { TickCircle } from "iconsax-reactjs"; +import { type FC } from "react"; + +const values = ["تضمین کیفیت چاپ", "طراحی اختصاصی", "تحویل سریع", "پشتیبانی قبل و بعد از خرید", "ارسال به سراسر ایران"]; + +const FooterTrustValues: FC = () => { + return ( +
+

اعتماد شما، سرمایه ما

+
    + {values.map((value) => ( +
  • + + {value} +
  • + ))} +
+
+ ); +}; + +export default FooterTrustValues;