You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Mobile/components/WorkoutPresentationComponen...

64 lines
2.0 KiB

import LinearProgressBar from "@/components/LinearProgressBar";
import Screen from "@/components/ui/Screen";
import { Workout } from "@/model/Workout";
import { Ionicons } from "@expo/vector-icons";
import { Router, useRouter } from "expo-router";
import * as React from "react";
import { ImageBackground, Text, TouchableOpacity, View } from "react-native";
type WorkoutPresentationComponentProps = {
workout: Workout;
dataExercise: Workout[];
router: Router; // Typage précis recommandé selon ta navigation
};
export default function WorkoutPresentationComponent({
workout,
}: WorkoutPresentationComponentProps) {
const router = useRouter();
return (
<ImageBackground
className="h-full w-full"
source={require("assets/images/backgroundWourkout.jpg")}
>
<Screen>
<View className="flex-col h-full justify-between">
{/* Bouton Retour */}
<View className="mt-5 ml-5">
<TouchableOpacity
onPress={() => {
router.replace("/ExercicesScreen");
}}
>
<Ionicons
name="chevron-back-circle-outline"
size={50}
color="white"
/>
</TouchableOpacity>
</View>
{/* Permet de pousser le reste du contenu vers le bas */}
<View className="flex-grow" />
{/* Texte en bas */}
<View className="items-center mb-10">
<Text className="text-white bg-transparent border-2 border-white px-3 py-1 rounded-full text-2xl font-bold">
{workout.nbSeries} x {workout.nbRepetitions}
</Text>
<Text className="text-white text-4xl font-bold mt-2">
{workout.name}
</Text>
</View>
{/* Barre de progression */}
<View className="mb-5">
<LinearProgressBar duration={workout.duration} />
</View>
</View>
</Screen>
</ImageBackground>
);
}