From a2a609bdd18ee3fee3f6c40d5498d9c494d0f377 Mon Sep 17 00:00:00 2001 From: tonyfages Date: Mon, 24 Feb 2025 21:46:39 +0100 Subject: [PATCH] Ajout de la timebar :sparkles: --- app/(tabs)/(add)/_layout.tsx | 1 - app/(tabs)/(exercice)/ExerciceScreen.tsx | 40 ------------ app/(tabs)/(exercice)/ExercicesScreen.tsx | 47 ++++++++++++++ app/(tabs)/(exercice)/WorkoutScreen.tsx | 23 +++++++ app/(tabs)/(exercice)/_layout.tsx | 10 ++- app/(tabs)/(help)/_layout.tsx | 1 - app/(tabs)/(home)/_layout.tsx | 1 - app/(tabs)/(profil)/_layout.tsx | 1 - app/(tabs)/_layout.tsx | 3 +- app/+not-found.tsx | 6 +- .../04-MM-IA-Regression-Classification.pdf | Bin 0 -> 1175227 bytes assets/images/sigmaC.jpeg | Bin 0 -> 1370220 bytes components/LinearProgressBar.tsx | 58 ++++++++++++++++++ components/WorkoutCardComponent.tsx | 24 ++++---- components/WorkoutPresentationComponent.tsx | 28 +++++++++ package-lock.json | 18 +++++- package.json | 1 + 17 files changed, 198 insertions(+), 64 deletions(-) delete mode 100644 app/(tabs)/(exercice)/ExerciceScreen.tsx create mode 100644 app/(tabs)/(exercice)/ExercicesScreen.tsx create mode 100644 app/(tabs)/(exercice)/WorkoutScreen.tsx create mode 100644 assets/images/04-MM-IA-Regression-Classification.pdf create mode 100644 assets/images/sigmaC.jpeg create mode 100644 components/LinearProgressBar.tsx create mode 100644 components/WorkoutPresentationComponent.tsx diff --git a/app/(tabs)/(add)/_layout.tsx b/app/(tabs)/(add)/_layout.tsx index 6b7abee..1209652 100644 --- a/app/(tabs)/(add)/_layout.tsx +++ b/app/(tabs)/(add)/_layout.tsx @@ -5,7 +5,6 @@ export default function RootoLayout() { return ( diff --git a/app/(tabs)/(exercice)/ExerciceScreen.tsx b/app/(tabs)/(exercice)/ExerciceScreen.tsx deleted file mode 100644 index e72b0f5..0000000 --- a/app/(tabs)/(exercice)/ExerciceScreen.tsx +++ /dev/null @@ -1,40 +0,0 @@ -import {FlatList, Text, View} from "react-native"; -import React from "react"; -import HeaderProfileComponent from "@/components/HeaderProfileComponent"; -import Screen from "@/components/ui/Screen"; -import WorkoutCardComponent from "@/components/WorkoutCardComponent"; -import {useSession} from "@/ctx"; -import {Workout} from "@/model/Workout"; - -export default function ExerciceScreen() { - const [text, onChangeText] = React.useState(""); - const exercise = [new Workout("Développé couché", 25,"8 Series Workout", 412, "assets/images/Sigma-2.png","Intense" ), - new Workout("Curl halterné", 30, "8 Series Workout", 342, "assets/images/Sigma.jpg","Medium" ), - new Workout("Tirage Vertival", 29, "8 Series Workout", 793, "assets/images/Sigma.jpg","Easy" )]; - - return ( - - - - - - - - Séance du jour - - - - } - data={exercise} - className="h-full" - renderItem={({ item }: { item: Workout }) => - - - - } - /> - - ); -} \ No newline at end of file diff --git a/app/(tabs)/(exercice)/ExercicesScreen.tsx b/app/(tabs)/(exercice)/ExercicesScreen.tsx new file mode 100644 index 0000000..bbe405c --- /dev/null +++ b/app/(tabs)/(exercice)/ExercicesScreen.tsx @@ -0,0 +1,47 @@ +import {FlatList, SafeAreaView, Text, View} from "react-native"; +import React from "react"; +import HeaderProfileComponent from "@/components/HeaderProfileComponent"; +import Screen from "@/components/ui/Screen"; +import WorkoutCardComponent from "@/components/WorkoutCardComponent"; +import {useSession} from "@/ctx"; +import {Workout} from "@/model/Workout"; +import LinearTimer from "react-native-linear-timer"; + +export default function ExercicesScreen() { + const [text, onChangeText] = React.useState(""); + const exercise = [new Workout("Développé couché", 25,"8 Series Workout", 412, "assets/images/Sigma-2.png","Intense" ), + new Workout("Curl halterné", 30, "8 Series Workout", 342, "assets/images/Sigma.jpg","Medium" ), + new Workout("Tirage Vertival", 29, "8 Series Workout", 793, "assets/images/Sigma.jpg","Easy" )]; + + return ( + + + + + + + + + Séance du jour + + + + + } + data={exercise} + className="h-full" + renderItem={({ item }: { item: Workout }) => + + + + + } + /> + + + + + ); +} \ No newline at end of file diff --git a/app/(tabs)/(exercice)/WorkoutScreen.tsx b/app/(tabs)/(exercice)/WorkoutScreen.tsx new file mode 100644 index 0000000..f11ad98 --- /dev/null +++ b/app/(tabs)/(exercice)/WorkoutScreen.tsx @@ -0,0 +1,23 @@ +import * as React from 'react'; +import LinearTimer from 'react-native-linear-timer'; +import {Button, Image, ImageBackground, SafeAreaView, Text, TouchableOpacity, View} from "react-native"; +import Screen from "@/components/ui/Screen"; +import {Background} from "@react-navigation/elements"; +import {AntDesign} from "@expo/vector-icons"; +import {router, useRouter} from "expo-router"; +import WelcomeComponent from "@/components/WelcomeComponent"; +import WorkoutPresentationComponent from "@/components/WorkoutPresentationComponent"; + + +export default function WorkoutScreen() { + + const router = useRouter(); + return ( + + + + + ) + + +} \ No newline at end of file diff --git a/app/(tabs)/(exercice)/_layout.tsx b/app/(tabs)/(exercice)/_layout.tsx index b03bdcf..278487e 100644 --- a/app/(tabs)/(exercice)/_layout.tsx +++ b/app/(tabs)/(exercice)/_layout.tsx @@ -5,9 +5,13 @@ export default function RootoLayout() { return ( - + }} + initialRouteName={"ExercicesScreen"} + > + + + + ); diff --git a/app/(tabs)/(help)/_layout.tsx b/app/(tabs)/(help)/_layout.tsx index 6da6271..3d0f8ca 100644 --- a/app/(tabs)/(help)/_layout.tsx +++ b/app/(tabs)/(help)/_layout.tsx @@ -6,7 +6,6 @@ export default function RootoLayout() { return ( diff --git a/app/(tabs)/(home)/_layout.tsx b/app/(tabs)/(home)/_layout.tsx index c7b1cd6..07cd7de 100644 --- a/app/(tabs)/(home)/_layout.tsx +++ b/app/(tabs)/(home)/_layout.tsx @@ -5,7 +5,6 @@ export default function RootoLayout() { return ( diff --git a/app/(tabs)/(profil)/_layout.tsx b/app/(tabs)/(profil)/_layout.tsx index 4f3fd23..104e7e8 100644 --- a/app/(tabs)/(profil)/_layout.tsx +++ b/app/(tabs)/(profil)/_layout.tsx @@ -5,7 +5,6 @@ export default function RootoLayout() { return ( diff --git a/app/(tabs)/_layout.tsx b/app/(tabs)/_layout.tsx index e6ee3da..f6ff288 100644 --- a/app/(tabs)/_layout.tsx +++ b/app/(tabs)/_layout.tsx @@ -1,4 +1,4 @@ -import { Redirect, Tabs } from "expo-router"; +import {Redirect, Tabs, useRouter} from "expo-router"; import { useSession } from "@/ctx"; import React from "react"; import { AntDesign, Ionicons, MaterialIcons } from "@expo/vector-icons"; @@ -7,6 +7,7 @@ import Loading from "../loading"; export default function TabBarLayout() { const { session, isLoading } = useSession(); + const router = useRouter() const sizeIcon = 24; // You can keep the splash screen open, or render a loading screen like we do here. if (isLoading) { diff --git a/app/+not-found.tsx b/app/+not-found.tsx index d075182..7b07a8a 100644 --- a/app/+not-found.tsx +++ b/app/+not-found.tsx @@ -1,15 +1,17 @@ -import { Link, Stack, usePathname } from 'expo-router'; -import {StyleSheet, Text, View} from 'react-native'; +import {Link, router, Stack, usePathname, useRouter} from 'expo-router'; +import {Button, StyleSheet, Text, View} from 'react-native'; export default function NotFoundScreen() { const pathname = usePathname(); + const router = useRouter(); return ( <> This screen {pathname} doesn't exist: {pathname} +