From 22a32ec8f132387b42619d57a3642458dd0d88ea Mon Sep 17 00:00:00 2001 From: Tangem Date: Thu, 15 Jan 2026 15:08:33 +0100 Subject: [PATCH] Updated on 2026-08-14 --- .../data/news/repository/DefaultNewsRepository.kt | 15 ++++++++++++--- 1 file changed, 12 insertions(+), 3 deletions(-) diff --git a/data/news/src/main/java/com/tangem/data/news/repository/DefaultNewsRepository.kt b/data/news/src/main/java/com/tangem/data/news/repository/DefaultNewsRepository.kt index 9fbf09d3f3..9a60bf6729 100644 --- a/data/news/src/main/java/com/tangem/data/news/repository/DefaultNewsRepository.kt +++ b/data/news/src/main/java/com/tangem/data/news/repository/DefaultNewsRepository.kt @@ -2,6 +2,7 @@ package com.tangem.data.news.repository import com.tangem.datasource.api.common.response.ApiResponse import com.tangem.datasource.api.common.response.ApiResponseError +import com.tangem.datasource.api.common.response.fold import com.tangem.datasource.api.common.response.getOrThrow import com.tangem.datasource.api.news.NewsApi import com.tangem.datasource.api.news.models.response.NewsTrendingResponse @@ -55,16 +56,24 @@ internal class DefaultNewsRepository( override fun getNews(config: NewsListConfig, limit: Int): Flow> { return flow { - val response = newsApi.getNews( + val items = newsApi.getNews( page = FIRST_PAGE, limit = limit, language = config.language, snapshot = config.snapshot, tokenIds = config.tokenIds.takeIf { it.isNotEmpty() }, categoryIds = config.categoryIds.takeIf { it.isNotEmpty() }, - ).getOrThrow() + ).fold( + onSuccess = { response -> + response.items + }, + onError = { error -> + Timber.e(error, "Failed to get list of news") + emptyList() + }, + ) - val shortArticles = response.items.map { it.toDomainShortArticle() } + val shortArticles = items.map { it.toDomainShortArticle() } emit(shortArticles) } .flowOn(dispatchers.io)