mirror of
https://github.com/pacnpal/thrilltrack-explorer.git
synced 2025-12-21 11:51:14 -05:00
Refactor unit conversion usage
This commit is contained in:
@@ -5,6 +5,7 @@ import { Card, CardContent } from '@/components/ui/card';
|
|||||||
import { Badge } from '@/components/ui/badge';
|
import { Badge } from '@/components/ui/badge';
|
||||||
import { Button } from '@/components/ui/button';
|
import { Button } from '@/components/ui/button';
|
||||||
import { Star, TrendingUp, Plus, MapPin, Clock, Zap } from 'lucide-react';
|
import { Star, TrendingUp, Plus, MapPin, Clock, Zap } from 'lucide-react';
|
||||||
|
import { MeasurementDisplay } from '@/components/ui/measurement-display';
|
||||||
import { Park, Ride } from '@/types/database';
|
import { Park, Ride } from '@/types/database';
|
||||||
import { supabase } from '@/integrations/supabase/client';
|
import { supabase } from '@/integrations/supabase/client';
|
||||||
|
|
||||||
@@ -172,14 +173,16 @@ export function ContentTabs() {
|
|||||||
{ride.max_speed_kmh && (
|
{ride.max_speed_kmh && (
|
||||||
<div className="flex items-center gap-1">
|
<div className="flex items-center gap-1">
|
||||||
<Zap className="w-3 h-3 text-primary" />
|
<Zap className="w-3 h-3 text-primary" />
|
||||||
<span className="text-primary font-medium">{ride.max_speed_kmh}</span>
|
<span className="text-primary font-medium">
|
||||||
<span className="text-muted-foreground text-xs">km/h</span>
|
<MeasurementDisplay value={ride.max_speed_kmh} type="speed" />
|
||||||
|
</span>
|
||||||
</div>
|
</div>
|
||||||
)}
|
)}
|
||||||
{ride.max_height_meters && (
|
{ride.max_height_meters && (
|
||||||
<div className="flex items-center gap-1">
|
<div className="flex items-center gap-1">
|
||||||
<span className="text-accent font-medium">{ride.max_height_meters}</span>
|
<span className="text-accent font-medium">
|
||||||
<span className="text-muted-foreground text-xs">m</span>
|
<MeasurementDisplay value={ride.max_height_meters} type="distance" />
|
||||||
|
</span>
|
||||||
</div>
|
</div>
|
||||||
)}
|
)}
|
||||||
{ride.duration_seconds && (
|
{ride.duration_seconds && (
|
||||||
|
|||||||
@@ -468,19 +468,25 @@ export default function RideDetail() {
|
|||||||
{ride.max_speed_kmh && (
|
{ride.max_speed_kmh && (
|
||||||
<div className="flex justify-between">
|
<div className="flex justify-between">
|
||||||
<span>Maximum Speed</span>
|
<span>Maximum Speed</span>
|
||||||
<span className="font-medium">{ride.max_speed_kmh} km/h</span>
|
<span className="font-medium">
|
||||||
|
<MeasurementDisplay value={ride.max_speed_kmh} type="speed" />
|
||||||
|
</span>
|
||||||
</div>
|
</div>
|
||||||
)}
|
)}
|
||||||
{ride.max_height_meters && (
|
{ride.max_height_meters && (
|
||||||
<div className="flex justify-between">
|
<div className="flex justify-between">
|
||||||
<span>Maximum Height</span>
|
<span>Maximum Height</span>
|
||||||
<span className="font-medium">{ride.max_height_meters}m</span>
|
<span className="font-medium">
|
||||||
|
<MeasurementDisplay value={ride.max_height_meters} type="distance" />
|
||||||
|
</span>
|
||||||
</div>
|
</div>
|
||||||
)}
|
)}
|
||||||
{ride.length_meters && (
|
{ride.length_meters && (
|
||||||
<div className="flex justify-between">
|
<div className="flex justify-between">
|
||||||
<span>Track Length</span>
|
<span>Track Length</span>
|
||||||
<span className="font-medium">{Math.round(ride.length_meters)}m</span>
|
<span className="font-medium">
|
||||||
|
<MeasurementDisplay value={ride.length_meters} type="distance" />
|
||||||
|
</span>
|
||||||
</div>
|
</div>
|
||||||
)}
|
)}
|
||||||
{ride.duration_seconds && (
|
{ride.duration_seconds && (
|
||||||
@@ -498,7 +504,9 @@ export default function RideDetail() {
|
|||||||
{ride.drop_height_meters && (
|
{ride.drop_height_meters && (
|
||||||
<div className="flex justify-between">
|
<div className="flex justify-between">
|
||||||
<span>Drop Height</span>
|
<span>Drop Height</span>
|
||||||
<span className="font-medium">{ride.drop_height_meters}m</span>
|
<span className="font-medium">
|
||||||
|
<MeasurementDisplay value={ride.drop_height_meters} type="distance" />
|
||||||
|
</span>
|
||||||
</div>
|
</div>
|
||||||
)}
|
)}
|
||||||
{ride.max_g_force && (
|
{ride.max_g_force && (
|
||||||
@@ -525,7 +533,9 @@ export default function RideDetail() {
|
|||||||
{ride.height_requirement && (
|
{ride.height_requirement && (
|
||||||
<div className="flex justify-between">
|
<div className="flex justify-between">
|
||||||
<span>Height Requirement</span>
|
<span>Height Requirement</span>
|
||||||
<span className="font-medium">{ride.height_requirement}cm minimum</span>
|
<span className="font-medium">
|
||||||
|
<MeasurementDisplay value={ride.height_requirement} type="height" /> minimum
|
||||||
|
</span>
|
||||||
</div>
|
</div>
|
||||||
)}
|
)}
|
||||||
{ride.age_requirement && (
|
{ride.age_requirement && (
|
||||||
|
|||||||
Reference in New Issue
Block a user