Refactor: Replace emojis with Lucide React icons

This commit is contained in:
gpt-engineer-app[bot]
2025-09-29 12:36:38 +00:00
parent bb139bd70c
commit d1f32dbf25
14 changed files with 136 additions and 118 deletions

View File

@@ -19,7 +19,11 @@ import {
Camera,
Heart,
RotateCcw,
AlertTriangle
AlertTriangle,
FerrisWheel,
Waves,
Theater,
Train
} from 'lucide-react';
import { ReviewsSection } from '@/components/reviews/ReviewsSection';
import { MeasurementDisplay } from '@/components/ui/measurement-display';
@@ -82,13 +86,13 @@ export default function RideDetail() {
const getRideIcon = (category: string) => {
switch (category) {
case 'roller_coaster': return '🎢';
case 'water_ride': return '🌊';
case 'dark_ride': return '🎭';
case 'flat_ride': return '🎡';
case 'kiddie_ride': return '🎠';
case 'transportation': return '🚂';
default: return '🎢';
case 'roller_coaster': return <FerrisWheel className="w-20 h-20" />;
case 'water_ride': return <Waves className="w-20 h-20" />;
case 'dark_ride': return <Theater className="w-20 h-20" />;
case 'flat_ride': return <FerrisWheel className="w-20 h-20" />;
case 'kiddie_ride': return <FerrisWheel className="w-20 h-20" />;
case 'transportation': return <Train className="w-20 h-20" />;
default: return <FerrisWheel className="w-20 h-20" />;
}
};
@@ -159,7 +163,7 @@ export default function RideDetail() {
/>
) : (
<div className="flex items-center justify-center h-full">
<div className="text-8xl opacity-50">
<div className="opacity-50">
{getRideIcon(ride.category)}
</div>
</div>
@@ -273,7 +277,7 @@ export default function RideDetail() {
{ride.drop_height_meters && (
<Card>
<CardContent className="p-4 text-center">
<div className="text-2xl mb-2"></div>
<TrendingDown className="w-6 h-6 mx-auto mb-2 text-destructive" />
<div className="text-2xl font-bold text-destructive">
<MeasurementDisplay value={ride.drop_height_meters} type="distance" />
</div>
@@ -285,7 +289,7 @@ export default function RideDetail() {
{ride.max_g_force && (
<Card>
<CardContent className="p-4 text-center">
<div className="text-2xl mb-2"></div>
<Zap className="w-6 h-6 mx-auto mb-2 text-warning" />
<div className="text-2xl font-bold text-warning">{ride.max_g_force}g</div>
<div className="text-sm text-muted-foreground">max G-force</div>
</CardContent>
@@ -352,7 +356,7 @@ export default function RideDetail() {
</CardHeader>
<CardContent className="space-y-4">
<div className="flex items-center gap-3">
<div className="text-2xl">{getRideIcon(ride.category)}</div>
<div className="flex items-center">{getRideIcon(ride.category)}</div>
<div>
<div className="font-medium">Category</div>
<div className="text-sm text-muted-foreground">