From e6574b1e9e594bb52d24d766af168e6503053309 Mon Sep 17 00:00:00 2001 From: Arda Samadi Date: Sat, 27 Jun 2026 21:44:20 +0330 Subject: [PATCH] feat(seller): mobile brand header redesign (cover + overlapping logo) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Bring the seller page mobile header in line with the design / desktop: replace the plain top bar + centered logo with a cover banner, a floating circular back button (safe-area aware), an overlapping rounded logo, the store name + verified badge + @handle, a clean borderless stats row (محصول / دنبال‌کننده / امتیاز), the description, and follow + message-icon actions. Search bar and product masonry unchanged. Desktop untouched. Co-Authored-By: Claude Opus 4.8 --- app/routes/seller.$sellerId._index.tsx | 194 ++++++++++++++----------- 1 file changed, 107 insertions(+), 87 deletions(-) diff --git a/app/routes/seller.$sellerId._index.tsx b/app/routes/seller.$sellerId._index.tsx index 0acf149..99c6b47 100644 --- a/app/routes/seller.$sellerId._index.tsx +++ b/app/routes/seller.$sellerId._index.tsx @@ -19,8 +19,9 @@ import { UserMinus, Shirt, BadgeCheck, + ArrowRight, + MessageCircle, } from "lucide-react"; -import HeaderWithSupport from "../components/HeaderWithSupport"; import { useState, useEffect } from "react"; import { DrawerContent, Drawer } from "../components/ui/drawer"; import { Button } from "../components/ui/button"; @@ -283,96 +284,115 @@ export default function Seller() {
- {/* Mobile header */} -
- -
- + {/* Mobile brand header (cover + overlapping logo + stats + actions) */} +
+ {/* Cover */} +
+
+ +
+ {/* Head */} +
+
+ {seller?.storeLogo ? ( + {seller?.storeName + ) : null} +
+

+ {seller?.storeName} + {seller?.isVerified ? ( + + ) : null} +

+ {seller?.username ? ( +

+ @{seller.username} +

+ ) : null} + {/* Stats */} +
+
+ + {seller?.productCount ?? 0} + + محصول +
+
+ + {seller?.followerCount ?? 0} + + دنبال‌کننده +
+
+ + {seller?.productReviewsCount ? seller?.reviewAverage : "—"} + {seller?.productReviewsCount ? ( + + ) : null} + + امتیاز +
+
+ {/* Description */} + {seller?.storeDescription ? ( +
+ +
+ ) : null} + {/* Actions */} +
+ + +
-
-
-
-

{seller?.followerCount}

-

دنبال کننده

-
-
- {seller?.productReviewsCount ? ( - <> -
-

{seller?.reviewAverage}

-

- (از {seller?.productReviewsCount} نظر) -

-
-
- {Array.from({ length: 5 }).map((_, index) => ( - - ))} -
- - ) : ( -

بدون امتیاز

- )} -
-
-

{seller?.productCount}

-

تعداد محصولات

-
-
-
-
- -
-
- - -
{/* Search Bar (mobile) */}