From 342070c5fae14e1a198289e7ad00d7b395f1a62c Mon Sep 17 00:00:00 2001 From: Flatlogic Bot Date: Fri, 6 Mar 2026 21:15:50 +0000 Subject: [PATCH] =?UTF-8?q?07.03.2026=20=C3=A7al=C4=B1=C5=9Fan=20rota=20pa?= =?UTF-8?q?yla=C5=9F=C4=B1ml=C4=B1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/components/planner/BudgetSelector.tsx | 16 ++++++++-------- app-9xzmfic2e4g1/src/components/trip/Map.tsx | 12 ++++++------ app-9xzmfic2e4g1/src/pages/PlannerPage.tsx | 2 +- 3 files changed, 15 insertions(+), 15 deletions(-) diff --git a/app-9xzmfic2e4g1/src/components/planner/BudgetSelector.tsx b/app-9xzmfic2e4g1/src/components/planner/BudgetSelector.tsx index 8d09834..44dd49b 100644 --- a/app-9xzmfic2e4g1/src/components/planner/BudgetSelector.tsx +++ b/app-9xzmfic2e4g1/src/components/planner/BudgetSelector.tsx @@ -20,7 +20,7 @@ export const BudgetSelector = memo(({ selectedId, onSelect }: BudgetSelectorProp key={option.id} className={cn( 'h-1.5 flex-1 rounded-full transition-all duration-300', - i <= selectedIndex ? option.dot : 'bg-gray-100' + i <= selectedIndex ? option.bg : 'bg-gray-100' )} animate={{ scaleX: i <= selectedIndex ? 1 : 0.6 }} transition={{ duration: 0.3, delay: i * 0.05 }} @@ -46,7 +46,7 @@ export const BudgetSelector = memo(({ selectedId, onSelect }: BudgetSelectorProp className={cn( 'relative group flex items-center gap-4 px-5 py-4 rounded-2xl border-2 text-left transition-all duration-200 w-full overflow-hidden', isSelected - ? `${option.activeBorder} ${option.activeBg} shadow-md` + ? `${option.border} ${option.bg} shadow-md` : 'border-gray-100 bg-gray-50/60 hover:border-gray-200 hover:bg-white hover:shadow-sm' )} > @@ -57,8 +57,8 @@ export const BudgetSelector = memo(({ selectedId, onSelect }: BudgetSelectorProp key={i} className={cn( 'w-1.5 h-1.5 rounded-full transition-all duration-200', - i < option.tier - ? isSelected ? option.dot : 'bg-gray-300' + i < 3 + ? isSelected ? option.bg : 'bg-gray-300' : 'bg-gray-100' )} /> @@ -69,7 +69,7 @@ export const BudgetSelector = memo(({ selectedId, onSelect }: BudgetSelectorProp
@@ -79,7 +79,7 @@ export const BudgetSelector = memo(({ selectedId, onSelect }: BudgetSelectorProp

{option.label}

@@ -91,9 +91,9 @@ export const BudgetSelector = memo(({ selectedId, onSelect }: BudgetSelectorProp {/* Price range */}
- {option.range} + {option.description}
); diff --git a/app-9xzmfic2e4g1/src/components/trip/Map.tsx b/app-9xzmfic2e4g1/src/components/trip/Map.tsx index c9d1f70..7a6cf4e 100644 --- a/app-9xzmfic2e4g1/src/components/trip/Map.tsx +++ b/app-9xzmfic2e4g1/src/components/trip/Map.tsx @@ -32,7 +32,7 @@ interface PlaceDetail { opening_hours?: string[] | null; why_visit: string[]; tips: string[]; - reviews: { author: string; rating: number; text: string; time: string }[]; + reviews: { author: string; rating: number | undefined; text: string; time: string }[]; } interface SelectedPOI { @@ -122,13 +122,13 @@ export function TripMap({ itinerary, activePlaceId, onMarkerClick, onAddPlace }: tips.push((poi as any).personal_tip); } const reviewTips = (place.reviews || []) - .filter(r => r.rating >= 4 && r.text?.length > 30) + .filter(r => (r.rating ?? 0) >= 4 && r.text?.length > 30) .slice(0, tips.length > 0 ? 1 : 2) .map(r => `"${r.text.slice(0, 120).trim()}…"`); tips.push(...reviewTips); // summary: editorial_summary sadece Türkçe ise göster, değilse boş bırak - const rawSummary = place.editorial_summary?.overview || ''; + const rawSummary = (place as any).editorial_summary?.overview || ''; const isTurkish = /[çğışöüÇĞİŞÖÜ]/.test(rawSummary) || !/[a-zA-Z]{4,}/.test(rawSummary); const summary = isTurkish ? rawSummary : ''; @@ -569,14 +569,14 @@ export function TripMap({ itinerary, activePlaceId, onMarkerClick, onAddPlace }: )} {/* Çalışma saatleri */} - {placeDetail.opening_hours?.length > 0 && ( + {(placeDetail.opening_hours?.length ?? 0) > 0 && (

Çalışma Saatleri

- {placeDetail.opening_hours.map((h, i) => ( + {(placeDetail.opening_hours ?? []).map((h, i) => (

{h}

))}
@@ -607,7 +607,7 @@ export function TripMap({ itinerary, activePlaceId, onMarkerClick, onAddPlace }:
{[1,2,3,4,5].map(s => ( { try { const startDate = format(data.dateRange.from, 'yyyy-MM-dd'); const endDate = format(data.dateRange.to, 'yyyy-MM-dd'); - const result = await retryWithBackoff( + const result: any = await retryWithBackoff( () => withTimeout( api.generateItinerary({ startDate,