// components/exercises/SimplifiedExerciseCard.tsx import React from 'react'; import { View, TouchableOpacity, Image } from 'react-native'; import { Text } from '@/components/ui/text'; import { Badge } from '@/components/ui/badge'; import { ExerciseDisplay } from '@/types/exercise'; interface SimplifiedExerciseCardProps { exercise: ExerciseDisplay; onPress: () => void; } export function SimplifiedExerciseCard({ exercise, onPress }: SimplifiedExerciseCardProps) { const { title, category, equipment, type, source, } = exercise; const firstLetter = title.charAt(0).toUpperCase(); // Helper to check if exercise has workout-specific properties const isWorkoutExercise = 'sets' in exercise && Array.isArray((exercise as any).sets); // Access sets safely if available const workoutExercise = isWorkoutExercise ? (exercise as ExerciseDisplay & { sets: Array<{weight?: number, reps?: number}> }) : null; return ( {/* Image placeholder or first letter */} {firstLetter} {/* Title */} {title} {/* Tags row */} {/* Category Badge */} {category} {/* Equipment Badge (if available) */} {equipment && ( {equipment} )} {/* Type Badge */} {type && ( {type} )} {/* Source Badge - colored for 'powr' */} {source && ( {source} )} {/* Weight/Reps information if available from sets */} {workoutExercise?.sets?.[0] && ( {workoutExercise.sets[0].weight && `${workoutExercise.sets[0].weight} lb`} {workoutExercise.sets[0].weight && workoutExercise.sets[0].reps && ' '} {workoutExercise.sets[0].reps && `(×${workoutExercise.sets[0].reps})`} )} ); }