Loading app/src/main/java/foundation/e/apps/data/enums/Source.kt +11 −1 Original line number Diff line number Diff line Loading @@ -20,5 +20,15 @@ package foundation.e.apps.data.enums enum class Source { GPLAY, OPEN, PWA, PWA; companion object { fun fromString(source: String): Source { return when (source) { "Open Source" -> OPEN "PWA" -> PWA else -> GPLAY } } } } app/src/main/java/foundation/e/apps/data/fused/FusedAPIRepository.kt +5 −3 Original line number Diff line number Diff line Loading @@ -22,9 +22,11 @@ import androidx.lifecycle.LiveData import com.aurora.gplayapi.SearchSuggestEntry import com.aurora.gplayapi.data.models.AuthData import foundation.e.apps.data.ResultSupreme import foundation.e.apps.data.enums.AppTag import foundation.e.apps.data.enums.FilterLevel import foundation.e.apps.data.enums.Origin import foundation.e.apps.data.enums.ResultStatus import foundation.e.apps.data.enums.Source import foundation.e.apps.data.enums.Status import foundation.e.apps.data.fused.data.FusedApp import foundation.e.apps.data.fused.data.FusedCategory Loading Loading @@ -118,11 +120,11 @@ class FusedAPIRepository @Inject constructor(private val fusedAPIImpl: FusedApi) authData: AuthData, category: String, pageUrl: String?, source: String source: Source ): ResultSupreme<Pair<List<FusedApp>, String>> { return when (source) { "Open Source" -> fusedAPIImpl.getOpenSourceApps(category) "PWA" -> fusedAPIImpl.getPWAApps(category) Source.OPEN -> fusedAPIImpl.getOpenSourceApps(category) Source.PWA -> fusedAPIImpl.getPWAApps(category) else -> fusedAPIImpl.getGplayAppsByCategory(authData, category, pageUrl) } } Loading app/src/main/java/foundation/e/apps/ui/applicationlist/ApplicationListViewModel.kt +4 −2 Original line number Diff line number Diff line Loading @@ -23,6 +23,7 @@ import androidx.lifecycle.viewModelScope import com.aurora.gplayapi.data.models.AuthData import dagger.hilt.android.lifecycle.HiltViewModel import foundation.e.apps.data.ResultSupreme import foundation.e.apps.data.enums.AppTag import foundation.e.apps.data.enums.ResultStatus import foundation.e.apps.data.enums.Source import foundation.e.apps.data.fused.FusedAPIRepository Loading Loading @@ -75,13 +76,14 @@ class ApplicationListViewModel @Inject constructor( if (isLoading) { return } viewModelScope.launch(Dispatchers.IO) { isLoading = true val result = fusedAPIRepository.getAppsListBasedOnCategory( authData, category, nextPageUrl, source Source.fromString(source) ).apply { isLoading = false } Loading Loading @@ -145,7 +147,7 @@ class ApplicationListViewModel @Inject constructor( authData, category, nextPageUrl, Source.GPLAY.toString() Source.GPLAY ) isLoading = false Loading Loading
app/src/main/java/foundation/e/apps/data/enums/Source.kt +11 −1 Original line number Diff line number Diff line Loading @@ -20,5 +20,15 @@ package foundation.e.apps.data.enums enum class Source { GPLAY, OPEN, PWA, PWA; companion object { fun fromString(source: String): Source { return when (source) { "Open Source" -> OPEN "PWA" -> PWA else -> GPLAY } } } }
app/src/main/java/foundation/e/apps/data/fused/FusedAPIRepository.kt +5 −3 Original line number Diff line number Diff line Loading @@ -22,9 +22,11 @@ import androidx.lifecycle.LiveData import com.aurora.gplayapi.SearchSuggestEntry import com.aurora.gplayapi.data.models.AuthData import foundation.e.apps.data.ResultSupreme import foundation.e.apps.data.enums.AppTag import foundation.e.apps.data.enums.FilterLevel import foundation.e.apps.data.enums.Origin import foundation.e.apps.data.enums.ResultStatus import foundation.e.apps.data.enums.Source import foundation.e.apps.data.enums.Status import foundation.e.apps.data.fused.data.FusedApp import foundation.e.apps.data.fused.data.FusedCategory Loading Loading @@ -118,11 +120,11 @@ class FusedAPIRepository @Inject constructor(private val fusedAPIImpl: FusedApi) authData: AuthData, category: String, pageUrl: String?, source: String source: Source ): ResultSupreme<Pair<List<FusedApp>, String>> { return when (source) { "Open Source" -> fusedAPIImpl.getOpenSourceApps(category) "PWA" -> fusedAPIImpl.getPWAApps(category) Source.OPEN -> fusedAPIImpl.getOpenSourceApps(category) Source.PWA -> fusedAPIImpl.getPWAApps(category) else -> fusedAPIImpl.getGplayAppsByCategory(authData, category, pageUrl) } } Loading
app/src/main/java/foundation/e/apps/ui/applicationlist/ApplicationListViewModel.kt +4 −2 Original line number Diff line number Diff line Loading @@ -23,6 +23,7 @@ import androidx.lifecycle.viewModelScope import com.aurora.gplayapi.data.models.AuthData import dagger.hilt.android.lifecycle.HiltViewModel import foundation.e.apps.data.ResultSupreme import foundation.e.apps.data.enums.AppTag import foundation.e.apps.data.enums.ResultStatus import foundation.e.apps.data.enums.Source import foundation.e.apps.data.fused.FusedAPIRepository Loading Loading @@ -75,13 +76,14 @@ class ApplicationListViewModel @Inject constructor( if (isLoading) { return } viewModelScope.launch(Dispatchers.IO) { isLoading = true val result = fusedAPIRepository.getAppsListBasedOnCategory( authData, category, nextPageUrl, source Source.fromString(source) ).apply { isLoading = false } Loading Loading @@ -145,7 +147,7 @@ class ApplicationListViewModel @Inject constructor( authData, category, nextPageUrl, Source.GPLAY.toString() Source.GPLAY ) isLoading = false Loading