diff --git a/app/(tabs)/_layout.tsx b/app/(tabs)/_layout.tsx index 3c818bf..f359c95 100644 --- a/app/(tabs)/_layout.tsx +++ b/app/(tabs)/_layout.tsx @@ -52,7 +52,7 @@ export default function TabLayout() { component={BonjourScreen} options={{ title: 'Bonjour', - tabBarIcon: ({ color }) => , + tabBarIcon: ({ color }) => , }} /> {item.group} {item.date} {item.location} - Prix : {item.price} € - Places restantes : {item.ticketsLeft} ); diff --git a/app/ContextRessource.tsx b/app/ContextRessource.tsx new file mode 100644 index 0000000..73be03c --- /dev/null +++ b/app/ContextRessource.tsx @@ -0,0 +1,33 @@ +import { Ressources } from "@/class/class"; +import { createContext, ReactNode, useContext, useMemo, useState } from "react"; + +type RessourcesContextType = { + ressources: Ressources[]; + setRessources: (list: Ressources[]) => void; +}; + +const RessourcesContext = createContext(null); + +type RessourcesProviderProps = { + children: ReactNode; +}; + +export const RessourcesProvider = ({ children }: RessourcesProviderProps) => { + const [ressources, setRessources] = useState([]); + + const value = useMemo(() => ({ ressources, setRessources }), [ressources]); + + return ( + + {children} + + ); +}; + +export const useRessources = () => { + const context = useContext(RessourcesContext); + if (!context) { + throw new Error("useRessources doit être utilisé dans "); + } + return context; +}; \ No newline at end of file diff --git a/app/ContextUser.tsx b/app/ContextUser.tsx new file mode 100644 index 0000000..c755826 --- /dev/null +++ b/app/ContextUser.tsx @@ -0,0 +1,33 @@ +import { User } from "@/class/class"; +import { createContext, ReactNode, useContext, useMemo, useState } from "react"; + +type UserContextType = { + user: User[]; + setUser: (list: User[]) => void; +}; + +const UserContext = createContext(null); + +type UserProviderProps = { + children: ReactNode; +}; + +export const UserProvider = ({ children }: UserProviderProps) => { + const [user, setUser] = useState([]); + + const value = useMemo(() => ({ user, setUser }), [user]); + + return ( + + {children} + + ); +}; + +export const useUser = () => { + const context = useContext(UserContext); + if (!context) { + throw new Error("useUser doit être utilisé dans "); + } + return context; +}; \ No newline at end of file diff --git a/components/ui/icon-symbol.tsx b/components/ui/icon-symbol.tsx index dbb65ca..d478af9 100644 --- a/components/ui/icon-symbol.tsx +++ b/components/ui/icon-symbol.tsx @@ -18,7 +18,8 @@ const MAPPING = { 'paperplane.fill': 'send', 'chevron.left.forwardslash.chevron.right': 'code', 'chevron.right': 'chevron-right', - 'backpack.fill': 'backpack', + 'backpack.fill': 'backpack', + 'person.fill': 'person', } as IconMapping; /**