From 0549793a7cc12bbec8f83e97e73e4056ef04208f Mon Sep 17 00:00:00 2001 From: Aravind Date: Sun, 19 Jul 2026 23:51:39 +0530 Subject: [PATCH] update navbar dropdown --- public/convenience.svg | 52 +++++++++ src/components/layout/PremiumNavbar.tsx | 71 ++++++++++-- .../why-nearle/AICommerceExplainer.tsx | 103 ++++++++++++++++-- .../why-nearle/CommerceEvolution.tsx | 43 +++++++- .../why-nearle/NeighborhoodStores.tsx | 37 ++++++- 5 files changed, 274 insertions(+), 32 deletions(-) create mode 100644 public/convenience.svg diff --git a/public/convenience.svg b/public/convenience.svg new file mode 100644 index 0000000..77bf44a --- /dev/null +++ b/public/convenience.svg @@ -0,0 +1,52 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/components/layout/PremiumNavbar.tsx b/src/components/layout/PremiumNavbar.tsx index ef09783..945d89a 100644 --- a/src/components/layout/PremiumNavbar.tsx +++ b/src/components/layout/PremiumNavbar.tsx @@ -14,13 +14,28 @@ import { MaterialIcon } from "@/components/ui/MaterialIcon"; const EASE = [0.22, 1, 0.36, 1] as [number, number, number, number]; -type NavChild = { label: string; href: string }; +type NavChild = { label: string; href: string; icon: string; desc: string }; type NavLink = { label: string; href: string; children?: NavChild[] }; const SOLUTIONS_CHILDREN: NavChild[] = [ - { label: "For Business", href: "/businesses" }, - { label: "For People", href: "/people" }, - { label: "For D2C Brands", href: "/brands" }, + { + label: "For Business", + href: "/businesses", + icon: "storefront", + desc: "Run your neighborhood shop online.", + }, + { + label: "For People", + href: "/people", + icon: "shopping_bag", + desc: "Order from local stores you trust.", + }, + { + label: "For D2C Brands", + href: "/brands", + icon: "auto_awesome", + desc: "Connect regional catalogs direct.", + }, ]; const NAV_LINKS: NavLink[] = [ @@ -29,7 +44,6 @@ const NAV_LINKS: NavLink[] = [ { label: "Platform", href: "/platform" }, { label: "Solutions", href: "/businesses", children: SOLUTIONS_CHILDREN }, { label: "About", href: "/about" }, - { label: "Contact", href: "/contact" }, ]; const mobileMenuVariants = { @@ -203,7 +217,7 @@ export function PremiumNavbar() { initial="hidden" animate="visible" exit="exit" - className="absolute left-1/2 top-full z-50 mt-2 w-56 -translate-x-1/2 overflow-hidden rounded-2xl border border-white/12 bg-[#30226F]/98 p-1.5 shadow-[0_18px_45px_rgba(20,0,30,0.45)] backdrop-blur-xl" + className="absolute left-1/2 top-full z-50 mt-3 w-100 -translate-x-1/2 overflow-hidden rounded-2xl border border-white/12 bg-gradient-to-b from-[#1C0F4E] to-[#0A0524] p-2 shadow-[0_24px_50px_rgba(0,0,0,0.55)] backdrop-blur-2xl" role="menu" > {link.children.map((child) => { @@ -214,13 +228,25 @@ export function PremiumNavbar() { href={child.href} role="menuitem" onClick={() => setOpenDropdown(null)} - className={`block rounded-xl px-4 py-2.5 text-sm font-bold transition-all duration-200 ${ + className={`group flex items-start gap-3.5 rounded-xl p-3 transition-all duration-200 ${ childActive - ? "bg-white/15 text-white" - : "text-white/75 hover:bg-white/10 hover:text-white" + ? "bg-white/12 text-white shadow-sm" + : "text-white/70 hover:bg-white/[0.07] hover:text-white" }`} > - {child.label} + {/* Left — Medallion Icon */} +
+ +
+ {/* Right — Info */} +
+ + {child.label} + + + {child.desc} + +
); })} @@ -271,6 +297,16 @@ export function PremiumNavbar() { })} + {/* Desktop Action Button */} +
+ + Contact Us + +
+ {/* Mobile Toggle */}