From 716164ce9646177cff3641b5b3ae45c77db0da8f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Afra=20=E2=80=8C?= Date: Wed, 19 Aug 2026 17:49:43 +0330 Subject: [PATCH] fix: design issues fixed --- public/satelliet.png | Bin 0 -> 9252 bytes src/app/(customer)/location/error/page.tsx | 13 ++- .../(customer)/location/permission/page.tsx | 85 ++++++++++-------- .../location/neighborhood-search.tsx | 18 ++-- 4 files changed, 64 insertions(+), 52 deletions(-) create mode 100644 public/satelliet.png diff --git a/public/satelliet.png b/public/satelliet.png new file mode 100644 index 0000000000000000000000000000000000000000..11cb30917e7be7c6952721062db45c5f1ceadf1a GIT binary patch literal 9252 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 literal 0 HcmV?d00001 diff --git a/src/app/(customer)/location/error/page.tsx b/src/app/(customer)/location/error/page.tsx index 9478550..5346038 100644 --- a/src/app/(customer)/location/error/page.tsx +++ b/src/app/(customer)/location/error/page.tsx @@ -37,16 +37,15 @@ function LocationErrorPageInner() { return (
- - - -
+ + +

موقعیت مکانی شناسایی نشد

-

مشکلی در دریافت موقعیت شما پیش آمد. لطفاً محله خود را دستی انتخاب کنید.

+

مشکلی در دریافت موقعیت شما پیش آمد. لطفاً محله خود را دستی انتخاب کنید.

-
+
- پشتیبانی + پشتیبانی
); diff --git a/src/app/(customer)/location/permission/page.tsx b/src/app/(customer)/location/permission/page.tsx index 7ac9986..fd5e47e 100644 --- a/src/app/(customer)/location/permission/page.tsx +++ b/src/app/(customer)/location/permission/page.tsx @@ -12,8 +12,7 @@ const BENEFITS = [ { icon: Store, text: "کشف بازارچه‌های اطراف" }, ]; -// L01 — winofyfrontenddoc (1).md §4.1. No illustration asset was provided; -// approximated with a simple icon badge rather than the isometric map graphic. +// L01 — winofyfrontenddoc (1).md §4.1. export default function LocationPermissionPage() { return ( @@ -32,7 +31,11 @@ function LocationPermissionPageInner() { setLoading(true); navigator.geolocation.getCurrentPosition( (position) => { - setLocation({ mode: "geo", lat: position.coords.latitude, lng: position.coords.longitude }); + setLocation({ + mode: "geo", + lat: position.coords.latitude, + lng: position.coords.longitude, + }); router.push(next); router.refresh(); }, @@ -45,42 +48,52 @@ function LocationPermissionPageInner() { } return ( -
- - - +
+ {/* eslint-disable-next-line @next/next/no-img-element */} + -
-

بازارچه محلی شما

-

برای نمایش فروشگاه‌های نزدیک، به موقعیت مکانی شما نیاز داریم

-
+
+
+

+ بازارچه محلی شما +

+

+ برای نمایش فروشگاه‌های نزدیک، به موقعیت مکانی شما نیاز داریم +

+
-
- {BENEFITS.map(({ icon: Icon, text }) => ( -
- - {text} -
- ))} -
+
+ {BENEFITS.map(({ icon: Icon, text }) => ( +
+ + {text} +
+ ))} +
-
- - - پشتیبانی +
+ + + پشتیبانی +
); diff --git a/src/components/location/neighborhood-search.tsx b/src/components/location/neighborhood-search.tsx index 9e293d3..dbf5623 100644 --- a/src/components/location/neighborhood-search.tsx +++ b/src/components/location/neighborhood-search.tsx @@ -55,9 +55,9 @@ export function NeighborhoodSearch({ -

انتخاب محله

+

انتخاب محله

- + setQuery(e.target.value)} onFocus={() => setFocused(true)} onBlur={() => setFocused(false)} - placeholder="با نام محله خود را جستجو کنید" - className="h-full flex-1 bg-transparent text-body-medium text-foreground placeholder:text-gray-500 focus:outline-none" + placeholder="شهر یا محله خود را جستجو کنید" + className="h-full flex-1 bg-transparent text-body-medium text-foreground placeholder:text-gray-600 focus:outline-none" autoFocus />
@@ -125,7 +125,7 @@ export function NeighborhoodSearch({ {(state === "idle" || state === "empty") && (
-

محله‌های پیشنهادی

+

محله‌های پیشنهادی

{suggestions.map((n) => ( ))}