diff --git a/features/feed/impl/src/main/kotlin/com/tangem/features/feed/model/converter/EarnTokenWithCurrencyToListItemUMConverter.kt b/features/feed/impl/src/main/kotlin/com/tangem/features/feed/model/converter/EarnTokenWithCurrencyToListItemUMConverter.kt index dfdd8f7610..6fbbecdc81 100644 --- a/features/feed/impl/src/main/kotlin/com/tangem/features/feed/model/converter/EarnTokenWithCurrencyToListItemUMConverter.kt +++ b/features/feed/impl/src/main/kotlin/com/tangem/features/feed/model/converter/EarnTokenWithCurrencyToListItemUMConverter.kt @@ -21,6 +21,7 @@ internal class EarnTokenWithCurrencyToListItemUMConverter( override fun convert(value: EarnTokenWithCurrency): EarnListItemUM { return EarnListItemUM( + id = "${value.cryptoCurrency.id.value}_${value.earnToken.type}", network = TextReference.Str(value.networkName), symbol = TextReference.Str(value.earnToken.tokenSymbol), tokenName = TextReference.Str(value.earnToken.tokenName), diff --git a/features/feed/impl/src/main/kotlin/com/tangem/features/feed/model/search/converter/UserAssetSearchItemConverter.kt b/features/feed/impl/src/main/kotlin/com/tangem/features/feed/model/search/converter/UserAssetSearchItemConverter.kt index a57bd66a42..4c82149114 100644 --- a/features/feed/impl/src/main/kotlin/com/tangem/features/feed/model/search/converter/UserAssetSearchItemConverter.kt +++ b/features/feed/impl/src/main/kotlin/com/tangem/features/feed/model/search/converter/UserAssetSearchItemConverter.kt @@ -105,7 +105,7 @@ internal class UserAssetSearchItemConverter( val entryCurrencyStatus = item.entries.first().currencyStatus return UserAssetItemUM.Grouped( - id = "grouped_${item.tokenName}_${item.tokenSymbol}", + id = "grouped_${firstCurrency.id.value}", icon = TangemIconUM.Currency( currencyIconState = CurrencyIconState.CoinIcon( url = entryCurrencyStatus.currency.iconUrl, diff --git a/features/feed/impl/src/main/kotlin/com/tangem/features/feed/ui/earn/EarnContent.kt b/features/feed/impl/src/main/kotlin/com/tangem/features/feed/ui/earn/EarnContent.kt index a8bbac4a18..60dec31652 100644 --- a/features/feed/impl/src/main/kotlin/com/tangem/features/feed/ui/earn/EarnContent.kt +++ b/features/feed/impl/src/main/kotlin/com/tangem/features/feed/ui/earn/EarnContent.kt @@ -117,7 +117,7 @@ private fun MostlyUsedContent(state: EarnListUM, onScroll: () -> Unit) { ) { itemsIndexed( items = animatedState.items, - key = { _, item -> "${item.tokenName}-${item.network}" }, + key = { _, item -> item.id }, ) { index, item -> val cardModifier = Modifier.conditional( condition = index == FOURTH_ITEM_INDEX, diff --git a/features/feed/impl/src/main/kotlin/com/tangem/features/feed/ui/earn/state/EarnListUM.kt b/features/feed/impl/src/main/kotlin/com/tangem/features/feed/ui/earn/state/EarnListUM.kt index 763954d13f..02a9c37fff 100644 --- a/features/feed/impl/src/main/kotlin/com/tangem/features/feed/ui/earn/state/EarnListUM.kt +++ b/features/feed/impl/src/main/kotlin/com/tangem/features/feed/ui/earn/state/EarnListUM.kt @@ -36,4 +36,5 @@ internal data class EarnListItemUM( val earnType: EarnType, val earnTypeTitle: TextReference, val onItemClick: () -> Unit, + val id: String = "$tokenName-$symbol-$network-$earnType", ) \ No newline at end of file diff --git a/features/feed/impl/src/main/kotlin/com/tangem/features/feed/ui/feed/components/EarnBlock.kt b/features/feed/impl/src/main/kotlin/com/tangem/features/feed/ui/feed/components/EarnBlock.kt index 087dbfa992..ddb450e65d 100644 --- a/features/feed/impl/src/main/kotlin/com/tangem/features/feed/ui/feed/components/EarnBlock.kt +++ b/features/feed/impl/src/main/kotlin/com/tangem/features/feed/ui/feed/components/EarnBlock.kt @@ -154,7 +154,7 @@ private fun EarnContentBlock(items: ImmutableList) { ) { items( items = items, - key = { item -> "${item.tokenName}-${item.network}" }, + key = { item -> item.id }, ) { item -> MostlyUsedCard( item = item,