global context and language switcher
Bon j'avoue c'est une grosse merge request. j'aurai du commit avant désolé, je ferai plus attention la prochaine fois
i18n
J'ai rajouté le language switcher qui fonctionne en dynamique, j'ai compris comment ils ont fait dans la todo, il le stocke dans un contexte, ca rerender les morceaux qui ont besoin a chaque changement. Par contre, je pense que le composant react est preferable dans le DOM, on en parlera ensemble mais en tout cas, c'est conseillé dans la doc de i18n. Mais c'est vrai que c'est lourd de faire ca dans les autres cas.
Global State
Pour le global state, j'ai fait un melange de hooks avec useReducer et useContext. j'ai fait un logger egalement dessus. le logger permet de voir l'action effectuée sur le state avec l'etat precedent et le nouvel etat du state. On va pouvoir s'en servir pour stocker ce qu'on veut dedans.
On s'en sert de la meme facon que ce que j'ai fait dans le languageswitcher
const [state, dispatch] = useContext(Context)
dispatch({ type: 'language, data: { language: 'en' } })
en gros le dispatch va chercher une action dans le fichier reducer avec le type lui passe la data. Ensuite, a nous d'ajouter des actions en fonction.
Du coup j'ai enlevé le with user comme le user est stocké dans le global state
j'en ai profité pour faire quelques petites actions mineures:
- favicon
- nom d'app :) :)
- et responsive ( c'est pas totalement responsive, j'ai juste ajouté la balise html)
M'voilaaaaa