Updated on 2026-08-14

This commit is contained in:
Tangem 2024-12-20 19:08:19 +05:00
parent 3c602ba584
commit d3d8dc8cc0
4 changed files with 30 additions and 1 deletions

View file

@ -74,6 +74,16 @@ sealed class TokenScreenAnalyticsEvent(
params = mapOf("Token" to tokenSymbol, "Blockchain" to blockchain),
)
class RevealTryAgain(tokenSymbol: String, blockchain: String) : TokenScreenAnalyticsEvent(
event = "Button - Reveal Try Again",
params = mapOf("Token" to tokenSymbol, "Blockchain" to blockchain),
)
class RevealCancel(tokenSymbol: String, blockchain: String) : TokenScreenAnalyticsEvent(
event = "Button - Reveal Cancel",
params = mapOf("Token" to tokenSymbol, "Blockchain" to blockchain),
)
data class StakingClicked(val token: String) : TokenScreenAnalyticsEvent(
event = "Staking Clicked",
params = mapOf("Token" to token),

View file

@ -23,5 +23,10 @@ internal open class TokenDetailsAnalyticsEvent(
event = "Not Enough Fee",
params = currency.toAnalyticsParams(),
)
class Reveal(currency: CryptoCurrency) : Notice(
event = "Notice - Reveal Transaction",
params = currency.toAnalyticsParams(),
)
}
}

View file

@ -41,6 +41,9 @@ internal class TokenDetailsNotificationsAnalyticsSender(
programName = TokenSwapPromoAnalyticsEvent.ProgramName.OKX,
source = AnalyticsParam.ScreensSources.Token,
)
is TokenDetailsNotification.KaspaIncompleteTransactionWarning -> TokenDetailsAnalyticsEvent.Notice.Reveal(
currency = cryptoCurrency,
)
is TokenDetailsNotification.NetworksUnreachable,
is TokenDetailsNotification.ExistentialDeposit,
is TokenDetailsNotification.NetworksNoAccount,
@ -48,7 +51,6 @@ internal class TokenDetailsNotificationsAnalyticsSender(
is TokenDetailsNotification.RentInfo,
is TokenDetailsNotification.NetworkShutdown,
is TokenDetailsNotification.HederaAssociateWarning,
is TokenDetailsNotification.KaspaIncompleteTransactionWarning,
is TokenDetailsNotification.KoinosMana,
is TokenDetailsNotification.MigrationMaticToPol,
-> null

View file

@ -825,6 +825,12 @@ internal class TokenDetailsViewModel @Inject constructor(
}
override fun onRetryIncompleteTransactionClick() {
analyticsEventsHandler.send(
TokenScreenAnalyticsEvent.RevealTryAgain(
tokenSymbol = cryptoCurrency.symbol,
blockchain = cryptoCurrency.network.name,
),
)
viewModelScope.launch {
retryIncompleteTransactionUseCase(
userWalletId = userWalletId,
@ -860,6 +866,12 @@ internal class TokenDetailsViewModel @Inject constructor(
}
override fun onDismissIncompleteTransactionClick() {
analyticsEventsHandler.send(
TokenScreenAnalyticsEvent.RevealCancel(
tokenSymbol = cryptoCurrency.symbol,
blockchain = cryptoCurrency.network.name,
),
)
viewModelScope.launch {
internalUiState.value = stateFactory.getStateWithDismissIncompleteTransactionConfirmDialog()
}