From ed845c4f21457a139e8e699f914b3a325f0652f5 Mon Sep 17 00:00:00 2001 From: Renaud BEURET Date: Wed, 27 Mar 2024 09:54:18 +0100 Subject: [PATCH] =?UTF-8?q?[ADD]=20S=C3=A9paration=20dans=20un=20UIState?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ViewModels/ScientifiquesDecouvertsVM.kt | 5 +++-- .../UiStates/ScientifiqueDecouvertsUIState.kt | 15 +++++++++++++++ .../view/scientifiques/ScientifiqueListeScreen.kt | 2 +- 3 files changed, 19 insertions(+), 3 deletions(-) create mode 100644 android/app/src/main/java/fr/iut/sciencequest/ViewModels/UiStates/ScientifiqueDecouvertsUIState.kt diff --git a/android/app/src/main/java/fr/iut/sciencequest/ViewModels/ScientifiquesDecouvertsVM.kt b/android/app/src/main/java/fr/iut/sciencequest/ViewModels/ScientifiquesDecouvertsVM.kt index dd762ab..f2e3f0e 100644 --- a/android/app/src/main/java/fr/iut/sciencequest/ViewModels/ScientifiquesDecouvertsVM.kt +++ b/android/app/src/main/java/fr/iut/sciencequest/ViewModels/ScientifiquesDecouvertsVM.kt @@ -8,6 +8,7 @@ import androidx.lifecycle.LiveData import androidx.lifecycle.MutableLiveData import androidx.lifecycle.ViewModel import androidx.lifecycle.viewModelScope +import fr.iut.sciencequest.ViewModels.UiStates.ScientifiqueDecouvertsUIState import fr.iut.sciencequest.model.buisness.Scientifique.fetchScientifiqueById import fr.iut.sciencequest.model.buisness.Scientifique.fetchScientifiques import fr.iut.sciencequest.model.dto.extensions.ToModel @@ -17,7 +18,7 @@ import kotlinx.coroutines.flow.collect import kotlinx.coroutines.launch class ScientifiquesDecouvertsVM : ViewModel() { - var listeScientifique: MutableStateFlow> = MutableStateFlow(ArrayList().toMutableStateList()) + var listeScientifique: MutableStateFlow = MutableStateFlow(ScientifiqueDecouvertsUIState()) // fun getScientifiqueById(id: Int) { // Log.d("ViewModelScientifique", "Recup un scientifique d'id: $id") @@ -30,7 +31,7 @@ class ScientifiquesDecouvertsVM : ViewModel() { Log.d("ViewModelScientifique","Recup la liste de scientifiques") viewModelScope.launch { fetchScientifiques(page).collect { - listeScientifique.value = it.scientifiques.ToModel().toMutableList() + listeScientifique.value = ScientifiqueDecouvertsUIState(it.scientifiques.ToModel().toMutableList()) } } } diff --git a/android/app/src/main/java/fr/iut/sciencequest/ViewModels/UiStates/ScientifiqueDecouvertsUIState.kt b/android/app/src/main/java/fr/iut/sciencequest/ViewModels/UiStates/ScientifiqueDecouvertsUIState.kt new file mode 100644 index 0000000..4af7448 --- /dev/null +++ b/android/app/src/main/java/fr/iut/sciencequest/ViewModels/UiStates/ScientifiqueDecouvertsUIState.kt @@ -0,0 +1,15 @@ +package fr.iut.sciencequest.ViewModels.UiStates + +import fr.iut.sciencequest.model.metier.Scientifique + +class ScientifiqueDecouvertsUIState { + lateinit var scientifiques: MutableList + + constructor() { + scientifiques = ArrayList().toMutableList() + } + + constructor(scientifiques : MutableList) { + this.scientifiques = scientifiques + } +} \ No newline at end of file diff --git a/android/app/src/main/java/fr/iut/sciencequest/view/scientifiques/ScientifiqueListeScreen.kt b/android/app/src/main/java/fr/iut/sciencequest/view/scientifiques/ScientifiqueListeScreen.kt index 45dfaf9..6431a3a 100644 --- a/android/app/src/main/java/fr/iut/sciencequest/view/scientifiques/ScientifiqueListeScreen.kt +++ b/android/app/src/main/java/fr/iut/sciencequest/view/scientifiques/ScientifiqueListeScreen.kt @@ -26,6 +26,6 @@ fun scientifiqueListeScreen(viewModel: ScientifiquesDecouvertsVM = viewModel(), }, ) { innerPadding -> viewModel.getScientifiques(1) - scientifiqueListeContainer(liste, innerPadding) + scientifiqueListeContainer(liste.scientifiques, innerPadding) } } \ No newline at end of file