diff --git a/app/(pages)/_layout.tsx b/app/(pages)/_layout.tsx index 5e05a27..81e0c96 100644 --- a/app/(pages)/_layout.tsx +++ b/app/(pages)/_layout.tsx @@ -31,7 +31,7 @@ const TabLayout: React.FC = () => { }} /> { @@ -40,7 +40,17 @@ const TabLayout: React.FC = () => { }} /> { + return + }, + }} + /> + { @@ -49,7 +59,7 @@ const TabLayout: React.FC = () => { }} /> { @@ -58,7 +68,7 @@ const TabLayout: React.FC = () => { }} /> { @@ -67,7 +77,7 @@ const TabLayout: React.FC = () => { }} /> { diff --git a/app/(pages)/login.tsx b/app/(pages)/authentication/login.tsx similarity index 65% rename from app/(pages)/login.tsx rename to app/(pages)/authentication/login.tsx index c5916c0..ddaa9d9 100644 --- a/app/(pages)/login.tsx +++ b/app/(pages)/authentication/login.tsx @@ -1,25 +1,20 @@ -import { StyleSheet, Image } from "react-native" +import { useState } from "react" +import { Image, StyleSheet } from "react-native" import { - Button, - TextInput, - HelperText, ActivityIndicator, Banner, + Button, + HelperText, + TextInput, } from "react-native-paper" import { SafeAreaView } from "react-native-safe-area-context" -import * as React from "react" const LoginPage: React.FC = () => { - // Gérer l'état de votre formulaire ici : timeout, invalidité, etc. - // Possible de changer le type comme string. - const [hasError, _sethasError] = React.useState(true) + const [hasError, _sethasError] = useState(true) - // Message d'erreur à afficher pour HelperText - const [errorMessage, _setErrorMessage] = - React.useState("Error message") + const [errorMessage, _setErrorMessage] = useState("Error message") - // Affichage de l'indicateur de chargement - const [isPerfomingLogin, _setIsPerfomingLogin] = React.useState(true) + const [isPerfomingLogin, _setIsPerfomingLogin] = useState(true) return ( @@ -28,9 +23,6 @@ const LoginPage: React.FC = () => { actions={[ { label: "Report this problem", - onPress: () => { - return console.log("Pressed") - }, }, ]} icon={({ size }) => { @@ -54,15 +46,7 @@ const LoginPage: React.FC = () => { {errorMessage} - + { const regexEmail = /^[\w.-]+@[\d.A-Za-z-]+\.[A-Za-z]{2,4}$/ - const [password, setPassword] = React.useState("") - const [isPasswordCorrect, setIsPasswordCorrect] = - React.useState(true) - const [isEmailValid, setIsEmailValid] = React.useState(true) + const [password, setPassword] = useState("") + const [isPasswordCorrect, setIsPasswordCorrect] = useState(true) + const [isEmailValid, setIsEmailValid] = useState(true) return ( diff --git a/app/(pages)/history.tsx b/app/(pages)/habits/history.tsx similarity index 83% rename from app/(pages)/history.tsx rename to app/(pages)/habits/history.tsx index 9af88b9..ffcae32 100644 --- a/app/(pages)/history.tsx +++ b/app/(pages)/habits/history.tsx @@ -1,22 +1,13 @@ +import { useState } from "react" import { StyleSheet } from "react-native" -import { Button } from "react-native-paper" import { Calendar } from "react-native-calendars" import { SafeAreaView } from "react-native-safe-area-context" -import { useState } from "react" -const History: React.FC = () => { +const HistoryPage: React.FC = () => { const [selected, setSelected] = useState("") return ( - { setSelected(day.dateString) @@ -54,4 +45,4 @@ const styles = StyleSheet.create({ }, }) -export default History +export default HistoryPage diff --git a/app/(pages)/habits/index.tsx b/app/(pages)/habits/index.tsx new file mode 100644 index 0000000..4624218 --- /dev/null +++ b/app/(pages)/habits/index.tsx @@ -0,0 +1,34 @@ +import { StyleSheet, Text, View } from "react-native" +import { SafeAreaView } from "react-native-safe-area-context" + +import { useHabitsTracker } from "@/contexts/HabitsTracker" + +const HabitsPage: React.FC = () => { + const { habitsTrackerPresenterState } = useHabitsTracker() + const { habitsTracker } = habitsTrackerPresenterState + const { habitProgressHistories } = habitsTracker + + return ( + + {habitProgressHistories.map((progressHistory) => { + const { habit } = progressHistory + + return ( + + {habit.name} + + ) + })} + + ) +} + +const styles = StyleSheet.create({ + container: { + flex: 1, + alignItems: "center", + justifyContent: "center", + }, +}) + +export default HabitsPage diff --git a/app/(pages)/newHabit.tsx b/app/(pages)/habits/new.tsx similarity index 65% rename from app/(pages)/newHabit.tsx rename to app/(pages)/habits/new.tsx index f8f137e..5d6ac05 100644 --- a/app/(pages)/newHabit.tsx +++ b/app/(pages)/habits/new.tsx @@ -1,18 +1,11 @@ import { StyleSheet } from "react-native" -import { Button } from "react-native-paper" +import { Text } from "react-native-paper" import { SafeAreaView } from "react-native-safe-area-context" const NewHabitPage: React.FC = () => { return ( - + New Habit ) } diff --git a/app/(pages)/index.tsx b/app/(pages)/index.tsx index 3cf5263..b02cf0a 100644 --- a/app/(pages)/index.tsx +++ b/app/(pages)/index.tsx @@ -1,24 +1,10 @@ -import { StyleSheet, Text, View } from "react-native" +import { StyleSheet, Text } from "react-native" import { SafeAreaView } from "react-native-safe-area-context" -import { useHabitsTracker } from "@/contexts/HabitsTracker" - const HomePage: React.FC = () => { - const { habitsTrackerPresenterState } = useHabitsTracker() - const { habitsTracker } = habitsTrackerPresenterState - const { habitProgressHistories } = habitsTracker - return ( - {habitProgressHistories.map((progressHistory) => { - const { habit } = progressHistory - - return ( - - {habit.name} - - ) - })} + Home Page ) } diff --git a/app/(pages)/settings.tsx b/app/(pages)/settings.tsx deleted file mode 100644 index 553c375..0000000 --- a/app/(pages)/settings.tsx +++ /dev/null @@ -1,28 +0,0 @@ -import { StyleSheet } from "react-native" -import { Button } from "react-native-paper" -import { SafeAreaView } from "react-native-safe-area-context" - -const Settings: React.FC = () => { - return ( - - - - ) -} - -const styles = StyleSheet.create({ - container: { - flex: 1, - alignItems: "center", - justifyContent: "center", - }, -}) - -export default Settings diff --git a/app/(pages)/users/settings.tsx b/app/(pages)/users/settings.tsx new file mode 100644 index 0000000..9190a60 --- /dev/null +++ b/app/(pages)/users/settings.tsx @@ -0,0 +1,20 @@ +import { StyleSheet, Text } from "react-native" +import { SafeAreaView } from "react-native-safe-area-context" + +const SettingsPage: React.FC = () => { + return ( + + Settings + + ) +} + +const styles = StyleSheet.create({ + container: { + flex: 1, + alignItems: "center", + justifyContent: "center", + }, +}) + +export default SettingsPage