From 88af1828656986cfeb16284654b73cedb68a0784 Mon Sep 17 00:00:00 2001
From: Adrien Bonnin <adbonnin@ippon.fr>
Date: Mon, 5 Sep 2022 14:01:50 +0200
Subject: [PATCH] =?UTF-8?q?:recycle:=20D=C3=A9placement=20du=201er=20artic?=
 =?UTF-8?q?le=20dans=20un=20fichier=20ind=C3=A9pendant?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 README.md => docs/01_decouverte_des_bases.md | 30 ++++++++++----------
 1 file changed, 15 insertions(+), 15 deletions(-)
 rename README.md => docs/01_decouverte_des_bases.md (97%)

diff --git a/README.md b/docs/01_decouverte_des_bases.md
similarity index 97%
rename from README.md
rename to docs/01_decouverte_des_bases.md
index 248d683..2567bb1 100644
--- a/README.md
+++ b/docs/01_decouverte_des_bases.md
@@ -43,7 +43,7 @@ Utiliser des instances comme clef corrige la limitation de la bibliothèque Prov
 Le `Provider` est un moyen de __récupérer__ un état présent dans un `ProviderContainer`.
 La déclaration d'un provider permet d'indiquer __le type__ et __la valeur d'initialisation__ de l'état auquel il correspond.
 
-![Déclaration d'un Provider](docs/images/declaration_provider.png)
+![Déclaration d'un Provider](images/declaration_provider.png)
 
 > Déclarer un provider permet de __typer__, __initialiser__ et __récupérer__ un état.
 
@@ -68,7 +68,7 @@ void main() {
 }
 ```
 
-![provider](docs/images/provider.png)
+![provider](images/provider.png)
 
 Le `Provider` est instancié en tant que variable globale et son état est initialisé avec la valeur 13 `<1>`.
 L'instance du `ProviderContainer` contient les états `<2>` et permet de les récupérer en passant l'instance du `Provider` en paramètre de sa méthode `read` `<3>`.
@@ -129,7 +129,7 @@ void main() {
 }
 ```
 
-![Circle of life](docs/images/circle_of_life.png)
+![Circle of life](images/circle_of_life.png)
 
 Le `Provider` est déclaré au sein du test pour retenir son affectation d'état et sa libération de ressources `<1>`.
 Avant toute manipulation, sa valeur n'est toujours pas affectée `<2>`.
@@ -170,7 +170,7 @@ void main() {
 }
 ```
 
-![Provider](docs/images/autodispose.png)
+![Provider](images/autodispose.png)
 
 Le `Provider` est déclaré pour que ses ressources soient libérées dès qu'il n'est plus utilisé `<1>`.
 Après avoir été lu `<2>` ses ressources ne sont pas instantanément libérées `<3>`.
@@ -231,7 +231,7 @@ void main() {
 }
 ```
 
-![Provider](docs/images/test_overrides.png)
+![Provider](images/test_overrides.png)
 
 Deux `Providers` sont déclarés pour retourner la valeur 13 `<1>`.
 Le comportement du `ProviderContainer` est surchargé pour remplacer le premier `Provider` et pour remplacer la valeur retournée par le second `<2>`.
@@ -257,7 +257,7 @@ void main() {
 }
 ```
 
-![.family](docs/images/family.png)
+![.family](images/family.png)
 
 Un `Provider` est déclaré pour indiquer par ses états si la clef passée en paramètre est paire `<1>`.
 La lecture du `Provider` se fait en passant cette clef et la valeur correspondante est retournée `<2>`.
@@ -292,7 +292,7 @@ void main() {
 }
 ```
 
-![StateProvider](docs/images/state_provider.png)
+![StateProvider](images/state_provider.png)
 
 Le `StateProvider` est instancié de la même manière qu'un `Provider`, en initialisant son état avec la valeur 13 `<1>`.
 Le notifier du `StateProvider` est récupéré par l'intermédiaire du `ProviderContainer` et son état est remplacé par la valeur 42 `<2>`.
@@ -339,7 +339,7 @@ void main() {
 }
 ```
 
-![watch modifier](docs/images/watch.png)
+![watch modifier](images/watch.png)
 
 Le `StateProvider` `intProvider` est initialisé avec la valeur 13, `readProvider` vient lire son état et `watchProvider` le surveiller `<1>`.
 Lors de leurs premières lectures, l'état des `readProvider` et `watchProvider` sont identiques à celui du `intProvider` `<2>`.
@@ -434,7 +434,7 @@ void main() {
 }
 ```
 
-![listener](docs/images/listener.png)
+![listener](images/listener.png)
 
 Le `StateProvider` `intProvider` est initialisé avec la valeur 13 et `watchProvider` surveille ses modifications `<1>`.
 Des listeners écoutent leurs changements d'état respectif pour stocker les nouvelles valeurs `<2>`.
@@ -495,7 +495,7 @@ void main() {
 }
 ```
 
-![select](docs/images/select.png)
+![select](images/select.png)
 
 Le `StateProvider` `intProvider` est initialisé avec la valeur 13 et le `moduloProvider` vient l'écouter en sélectionnant uniquement le modulo de 10 de l'état `<1>`.
 Un compteur écoute le nombre de changements réalisés par `moduloProvider` `<2>`.
@@ -572,7 +572,7 @@ void main() {
 }
 ```
 
-![state_notifier_provider](docs/images/state_notifier_provider.png)
+![state_notifier_provider](images/state_notifier_provider.png)
 
 Le `StateProvider` `intProvider` est initialisé avec la valeur 13 `<1>`. 
 Il est écouté par le `StateNotifierProvider` `incrementProvider` dont le notifier `IncrementNotifier` dispose d'une méthode pour incrémenter son état `<2>`.
@@ -648,7 +648,7 @@ void main() {
 }
 ```
 
-![change_notifier_provider](docs/images/change_notifier_provider.png)
+![change_notifier_provider](images/change_notifier_provider.png)
 
 La classe `IncrementNotifier`, un `ChangeNotifier` avec une méthode `increment` pour incrémenter sa propriété `number`, est initialisé avec la valeur 13 `<1>`.
 La propriété `number` de son `notifier` dispose bien de la valeur 13.
@@ -695,7 +695,7 @@ void main() {
 }
 ```
 
-![future_provider](docs/images/future_provider.png)
+![future_provider](images/future_provider.png)
 
 Un `FutureProvider` est instancié pour que son état prenne la valeur 13 après 100ms `<1>`.
 Tant que le `Futur` n'a pas été résolu, aucune valeur n'est attribuée à l'état et il conserve la valeur `AsyncLoading` `<2>`.
@@ -742,7 +742,7 @@ void main() {
 }
 ```
 
-![stream_provider](docs/images/stream_provider.png)
+![stream_provider](images/stream_provider.png)
 
 Une `Stream` est déclarée pour retourner la valeur 13 suivie d'une erreur, le tout entrecoupé par un délai de 100 millisecondes `<1>`.
 Tant que la première valeur de la `Stream` n'est pas retournée, l'état conserve la valeur `AsyncLoading` `<2>`.
@@ -756,6 +756,6 @@ Vous disposez maintenant des bases pour en comprendre les principaux mécanismes
 
 Le prochain article sera plus court et portera sur son intégration avec Flutter.
 
-![zelda_sword](docs/images/zelda_sword.png)
+![zelda_sword](images/zelda_sword.png)
 
 [^1]: Les interfaces n'existent pas à proprement parler en Dart, ce sont des classes abstraites avec des méthodes abstraites dont l'interface implicite est implémentée.
\ No newline at end of file
-- 
GitLab