From 4869f4dda39be2dff97ce9e9b78954e4e7661df0 Mon Sep 17 00:00:00 2001 From: Tangem Date: Wed, 4 Sep 2024 16:11:38 +0400 Subject: [PATCH] Updated on 2026-08-14 --- .../managetokens/model/ManageTokensModel.kt | 17 +++++++++++++---- 1 file changed, 13 insertions(+), 4 deletions(-) diff --git a/features/manage-tokens/impl/src/main/kotlin/com/tangem/features/managetokens/model/ManageTokensModel.kt b/features/manage-tokens/impl/src/main/kotlin/com/tangem/features/managetokens/model/ManageTokensModel.kt index 030e583e14..5c4d924942 100644 --- a/features/manage-tokens/impl/src/main/kotlin/com/tangem/features/managetokens/model/ManageTokensModel.kt +++ b/features/manage-tokens/impl/src/main/kotlin/com/tangem/features/managetokens/model/ManageTokensModel.kt @@ -28,7 +28,7 @@ import com.tangem.pagination.BatchFetchResult import com.tangem.pagination.PaginationStatus import com.tangem.utils.coroutines.CoroutineDispatcherProvider import kotlinx.collections.immutable.ImmutableList -import kotlinx.collections.immutable.persistentListOf +import kotlinx.collections.immutable.toPersistentList import kotlinx.coroutines.FlowPreview import kotlinx.coroutines.flow.* import kotlinx.coroutines.launch @@ -91,7 +91,7 @@ internal class ManageTokensModel @Inject constructor( popBack = router::pop, isInitialBatchLoading = true, isNextBatchLoading = false, - items = persistentListOf(), + items = getLoadingItems(), topBar = ManageTokensTopBarUM.ReadContent( title = resourceReference(R.string.common_search_tokens), onBackButtonClick = router::pop, @@ -112,7 +112,7 @@ internal class ManageTokensModel @Inject constructor( popBack = router::pop, isInitialBatchLoading = true, isNextBatchLoading = false, - items = persistentListOf(), + items = getLoadingItems(), topBar = ManageTokensTopBarUM.ManageContent( title = resourceReference(id = R.string.main_manage_tokens), onBackButtonClick = router::pop, @@ -175,9 +175,12 @@ internal class ManageTokensModel @Inject constructor( is PaginationStatus.InitialLoading, -> { if (state.search.isActive) { - state + state.copySealed( + items = getLoadingItems(), + ) } else { state.copySealed( + items = getLoadingItems(), isInitialBatchLoading = true, ) } @@ -224,6 +227,12 @@ internal class ManageTokensModel @Inject constructor( } } + private fun getLoadingItems(): ImmutableList { + return List(size = 10) { index -> + CurrencyItemUM.Loading(index) + }.toPersistentList() + } + private fun consumeScrollToTopEvent() { this.state.update { state -> state.copySealed(