From 5ec91d4b6e8559c8939d725c192b007f10b0759e Mon Sep 17 00:00:00 2001 From: Tangem Date: Fri, 29 Nov 2024 18:21:30 +0200 Subject: [PATCH] Updated on 2026-08-14 --- .../com/tangem/core/analytics/models/AnalyticsParam.kt | 1 + .../wallet/analytics/WalletScreenAnalyticsEvent.kt | 9 +++++---- .../wallet/analytics/utils/TokenListAnalyticsSender.kt | 7 ++++++- .../wallet/subscribers/PrimaryCurrencySubscriber.kt | 8 +++++++- 4 files changed, 19 insertions(+), 6 deletions(-) diff --git a/core/analytics/models/src/main/java/com/tangem/core/analytics/models/AnalyticsParam.kt b/core/analytics/models/src/main/java/com/tangem/core/analytics/models/AnalyticsParam.kt index ce733b8c51..9c7c2a3251 100644 --- a/core/analytics/models/src/main/java/com/tangem/core/analytics/models/AnalyticsParam.kt +++ b/core/analytics/models/src/main/java/com/tangem/core/analytics/models/AnalyticsParam.kt @@ -175,6 +175,7 @@ sealed class AnalyticsParam { const val TOKEN_PARAM = "Token" const val SOURCE = "Source" const val BALANCE = "Balance" + const val TOKENS_COUNT = "Tokens Count" const val STATE = "State" const val BATCH = "Batch" const val TYPE = "Type" diff --git a/features/wallet/impl/src/main/java/com/tangem/feature/wallet/presentation/wallet/analytics/WalletScreenAnalyticsEvent.kt b/features/wallet/impl/src/main/java/com/tangem/feature/wallet/presentation/wallet/analytics/WalletScreenAnalyticsEvent.kt index 39d99aaf63..0ab4cced59 100644 --- a/features/wallet/impl/src/main/java/com/tangem/feature/wallet/presentation/wallet/analytics/WalletScreenAnalyticsEvent.kt +++ b/features/wallet/impl/src/main/java/com/tangem/feature/wallet/presentation/wallet/analytics/WalletScreenAnalyticsEvent.kt @@ -30,11 +30,12 @@ sealed class WalletScreenAnalyticsEvent { ), ) - class BalanceLoaded(balance: AnalyticsParam.CardBalanceState) : Basic( + class BalanceLoaded(balance: AnalyticsParam.CardBalanceState, tokensCount: Int?) : Basic( event = "Balance Loaded", - params = mapOf( - AnalyticsParam.BALANCE to balance.value, - ), + params = buildMap { + put(AnalyticsParam.BALANCE, balance.value) + tokensCount?.let { put(AnalyticsParam.TOKENS_COUNT, it.toString()) } + }, ) class TokenBalance(balance: AnalyticsParam.TokenBalanceState, token: String) : Basic( diff --git a/features/wallet/impl/src/main/java/com/tangem/feature/wallet/presentation/wallet/analytics/utils/TokenListAnalyticsSender.kt b/features/wallet/impl/src/main/java/com/tangem/feature/wallet/presentation/wallet/analytics/utils/TokenListAnalyticsSender.kt index c7aefdd0f1..fd984d0d22 100644 --- a/features/wallet/impl/src/main/java/com/tangem/feature/wallet/presentation/wallet/analytics/utils/TokenListAnalyticsSender.kt +++ b/features/wallet/impl/src/main/java/com/tangem/feature/wallet/presentation/wallet/analytics/utils/TokenListAnalyticsSender.kt @@ -50,7 +50,12 @@ internal class TokenListAnalyticsSender @Inject constructor( currenciesStatuses: List, ) { createCardBalanceState(fiatBalance, currenciesStatuses)?.let { balanceState -> - analyticsEventHandler.send(Basic.BalanceLoaded(balanceState)) + analyticsEventHandler.send( + Basic.BalanceLoaded( + balance = balanceState, + tokensCount = currenciesStatuses.size, + ), + ) } } diff --git a/features/wallet/impl/src/main/java/com/tangem/feature/wallet/presentation/wallet/subscribers/PrimaryCurrencySubscriber.kt b/features/wallet/impl/src/main/java/com/tangem/feature/wallet/presentation/wallet/subscribers/PrimaryCurrencySubscriber.kt index 41fef9b424..855300bc2c 100644 --- a/features/wallet/impl/src/main/java/com/tangem/feature/wallet/presentation/wallet/subscribers/PrimaryCurrencySubscriber.kt +++ b/features/wallet/impl/src/main/java/com/tangem/feature/wallet/presentation/wallet/subscribers/PrimaryCurrencySubscriber.kt @@ -81,7 +81,13 @@ internal class PrimaryCurrencySubscriber( } cardBalanceState?.let { - analyticsEventHandler.send(event = WalletScreenAnalyticsEvent.Basic.BalanceLoaded(balance = it)) + // do not send tokens count for single currency wallet + analyticsEventHandler.send( + event = WalletScreenAnalyticsEvent.Basic.BalanceLoaded( + balance = it, + tokensCount = null, + ), + ) } }