Updated on 2026-08-14
This commit is contained in:
parent
309f1cda20
commit
081128f2cf
16 changed files with 40 additions and 50 deletions
|
|
@ -61,7 +61,6 @@ internal class CreateMobileWalletModel @Inject constructor(
|
|||
init {
|
||||
trackingContextProxy.addHotWalletContext()
|
||||
analyticsEventHandler.send(event = OnboardingAnalyticsEvent.Onboarding.Started(source = params.source))
|
||||
analyticsEventHandler.send(event = OnboardingAnalyticsEvent.Onboarding.AppsFlyerOnlyEntryScreenView())
|
||||
analyticsEventHandler.send(
|
||||
event = OnboardingAnalyticsEvent.SeedPhrase.CreateMobileScreenOpened(source = params.source),
|
||||
)
|
||||
|
|
|
|||
|
|
@ -34,12 +34,7 @@ sealed class OnboardingEvent(
|
|||
put("Seed Phrase Length", seedPhraseLength.toString())
|
||||
}
|
||||
},
|
||||
), AppsFlyerIncludedEvent {
|
||||
override val appsFlyerReplacedEvent = when (creationType) {
|
||||
WalletCreationType.NewSeed, WalletCreationType.PrivateKey -> "wallet_created_successfully"
|
||||
WalletCreationType.SeedImport -> "wallet_imported"
|
||||
}
|
||||
}
|
||||
), AppsFlyerIncludedEvent
|
||||
|
||||
sealed class WalletCreationType(val value: String) {
|
||||
data object PrivateKey : WalletCreationType(value = "Private Key")
|
||||
|
|
@ -92,7 +87,6 @@ sealed class OnboardingEvent(
|
|||
) : OnboardingEvent("Onboarding / Twins", event, params) {
|
||||
|
||||
class ScreenOpened : Twins("Twinning Screen Opened")
|
||||
class SetupStarted : Twins("Twin Setup Started")
|
||||
class SetupFinished : Twins("Twin Setup Finished")
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -5,6 +5,7 @@ import com.tangem.core.analytics.models.AnalyticsParam.Key.BLOCKCHAIN
|
|||
import com.tangem.core.analytics.models.AnalyticsParam.Key.ERROR_CODE
|
||||
import com.tangem.core.analytics.models.AnalyticsParam.Key.SOURCE
|
||||
import com.tangem.core.analytics.models.AnalyticsParam.Key.TOKEN_PARAM
|
||||
import com.tangem.core.analytics.models.AppsFlyerIncludedEvent
|
||||
|
||||
/**
|
||||
* Send analytics
|
||||
|
|
@ -25,7 +26,7 @@ sealed class CommonSendAnalyticEvents(
|
|||
params = mapOf(
|
||||
SOURCE to source.analyticsName,
|
||||
),
|
||||
)
|
||||
), AppsFlyerIncludedEvent
|
||||
|
||||
/** Amount screen opened */
|
||||
data class AmountScreenOpened(
|
||||
|
|
@ -37,7 +38,7 @@ sealed class CommonSendAnalyticEvents(
|
|||
params = mapOf(
|
||||
SOURCE to source.analyticsName,
|
||||
),
|
||||
)
|
||||
), AppsFlyerIncludedEvent
|
||||
|
||||
/** Fee screen opened */
|
||||
data class FeeScreenOpened(
|
||||
|
|
@ -74,7 +75,7 @@ sealed class CommonSendAnalyticEvents(
|
|||
)
|
||||
}
|
||||
},
|
||||
)
|
||||
), AppsFlyerIncludedEvent
|
||||
|
||||
/** If transaction delays notification is present */
|
||||
data class NoticeTransactionDelays(
|
||||
|
|
|
|||
|
|
@ -8,6 +8,7 @@ import com.tangem.core.analytics.models.AnalyticsParam.Key.ENS_ADDRESS
|
|||
import com.tangem.core.analytics.models.AnalyticsParam.Key.FEE_TYPE
|
||||
import com.tangem.core.analytics.models.AnalyticsParam.Key.NONCE
|
||||
import com.tangem.core.analytics.models.AnalyticsParam.Key.TOKEN_PARAM
|
||||
import com.tangem.core.analytics.models.AppsFlyerIncludedEvent
|
||||
import com.tangem.core.ui.extensions.capitalize
|
||||
import com.tangem.features.send.v2.api.analytics.CommonSendAnalyticEvents
|
||||
|
||||
|
|
@ -41,7 +42,7 @@ internal sealed class SendAnalyticEvents(
|
|||
}
|
||||
put(ENS_ADDRESS, ensAddress)
|
||||
},
|
||||
)
|
||||
), AppsFlyerIncludedEvent
|
||||
|
||||
data class ConvertTokenButtonClicked(
|
||||
val token: String,
|
||||
|
|
|
|||
|
|
@ -8,6 +8,7 @@ import com.tangem.core.analytics.models.AnalyticsParam.Key.RECEIVE_BLOCKCHAIN
|
|||
import com.tangem.core.analytics.models.AnalyticsParam.Key.RECEIVE_TOKEN
|
||||
import com.tangem.core.analytics.models.AnalyticsParam.Key.SEND_BLOCKCHAIN
|
||||
import com.tangem.core.analytics.models.AnalyticsParam.Key.SEND_TOKEN
|
||||
import com.tangem.core.analytics.models.AppsFlyerIncludedEvent
|
||||
import com.tangem.domain.models.currency.CryptoCurrency
|
||||
import com.tangem.features.send.v2.api.analytics.CommonSendAnalyticEvents
|
||||
|
||||
|
|
@ -31,7 +32,7 @@ internal sealed class SendWithSwapAnalyticEvents(
|
|||
SEND_BLOCKCHAIN to fromToken.network.name,
|
||||
RECEIVE_BLOCKCHAIN to toToken.network.name,
|
||||
),
|
||||
)
|
||||
), AppsFlyerIncludedEvent
|
||||
|
||||
data class NoticeCanNotSwapToken(
|
||||
val fromToken: CryptoCurrency,
|
||||
|
|
|
|||
|
|
@ -7,6 +7,7 @@ import com.tangem.core.analytics.models.AnalyticsParam.Key.ERROR_MESSAGE
|
|||
import com.tangem.core.analytics.models.AnalyticsParam.Key.PROVIDER
|
||||
import com.tangem.core.analytics.models.AnalyticsParam.Key.RECEIVE_TOKEN
|
||||
import com.tangem.core.analytics.models.AnalyticsParam.Key.SEND_TOKEN
|
||||
import com.tangem.core.analytics.models.AppsFlyerIncludedEvent
|
||||
import com.tangem.feature.swap.domain.models.domain.SwapProvider
|
||||
import com.tangem.feature.swap.domain.models.ui.FeeType
|
||||
|
||||
|
|
@ -21,7 +22,7 @@ sealed class SwapEvents(
|
|||
data class SwapScreenOpened(val token: String) : SwapEvents(
|
||||
event = "Swap Screen Opened",
|
||||
params = mapOf("Token" to token),
|
||||
)
|
||||
), AppsFlyerIncludedEvent
|
||||
|
||||
class SendTokenBalanceClicked : SwapEvents(event = "Send Token Balance Clicked")
|
||||
|
||||
|
|
@ -96,7 +97,7 @@ sealed class SwapEvents(
|
|||
"Receive Blockchain" to receiveBlockchain,
|
||||
"Account Derivation From or To (optional)" to "$fromDerivationIndex, $toDerivationIndex",
|
||||
),
|
||||
)
|
||||
), AppsFlyerIncludedEvent
|
||||
|
||||
class ProviderClicked : SwapEvents("Provider Clicked")
|
||||
|
||||
|
|
|
|||
|
|
@ -2,7 +2,7 @@ package com.tangem.feature.wallet.presentation.wallet.analytics
|
|||
|
||||
import com.tangem.core.analytics.models.AnalyticsEvent
|
||||
import com.tangem.core.analytics.models.AnalyticsParam
|
||||
import com.tangem.core.analytics.models.AppsFlyerOnlyEvent
|
||||
import com.tangem.core.analytics.models.AppsFlyerIncludedEvent
|
||||
import com.tangem.core.analytics.models.OneTimeAnalyticsEvent
|
||||
import com.tangem.domain.models.wallet.UserWalletId
|
||||
|
||||
|
|
@ -18,16 +18,11 @@ sealed class WalletScreenAnalyticsEvent {
|
|||
event = "Topped up",
|
||||
params = mapOf(AnalyticsParam.CURRENCY to walletType.value),
|
||||
),
|
||||
OneTimeAnalyticsEvent {
|
||||
OneTimeAnalyticsEvent, AppsFlyerIncludedEvent {
|
||||
|
||||
override val oneTimeEventId: String = id + userWalletId.stringValue
|
||||
}
|
||||
|
||||
class AppsFlyerWalletFunded(userWalletId: UserWalletId) : Basic(event = "wallet_funded"),
|
||||
AppsFlyerOnlyEvent, OneTimeAnalyticsEvent {
|
||||
override val oneTimeEventId: String = id + userWalletId.stringValue
|
||||
}
|
||||
|
||||
class CardWasScanned(source: AnalyticsParam.ScreensSources) : Basic(
|
||||
event = "Card Was Scanned",
|
||||
params = mapOf(
|
||||
|
|
|
|||
|
|
@ -208,7 +208,6 @@ internal class TokenListAnalyticsSender @Inject constructor(
|
|||
}
|
||||
|
||||
analyticsEventHandler.send(Basic.WalletToppedUp(userWallet.walletId, walletType))
|
||||
analyticsEventHandler.send(Basic.AppsFlyerWalletFunded(userWallet.walletId))
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -5,6 +5,7 @@ import com.tangem.core.analytics.models.AnalyticsParam.Key.ACTION
|
|||
import com.tangem.core.analytics.models.AnalyticsParam.Key.BLOCKCHAIN
|
||||
import com.tangem.core.analytics.models.AnalyticsParam.Key.ERROR_DESCRIPTION
|
||||
import com.tangem.core.analytics.models.AnalyticsParam.Key.TOKEN_PARAM
|
||||
import com.tangem.core.analytics.models.AppsFlyerIncludedEvent
|
||||
|
||||
sealed class YieldSupplyAnalytics(
|
||||
event: String,
|
||||
|
|
@ -20,7 +21,7 @@ sealed class YieldSupplyAnalytics(
|
|||
TOKEN_PARAM to token,
|
||||
BLOCKCHAIN to blockchain,
|
||||
),
|
||||
)
|
||||
), AppsFlyerIncludedEvent
|
||||
|
||||
data class StartEarningScreen(
|
||||
val token: String,
|
||||
|
|
@ -31,7 +32,7 @@ sealed class YieldSupplyAnalytics(
|
|||
TOKEN_PARAM to token,
|
||||
BLOCKCHAIN to blockchain,
|
||||
),
|
||||
)
|
||||
), AppsFlyerIncludedEvent
|
||||
|
||||
data class StopEarningScreen(
|
||||
val token: String,
|
||||
|
|
@ -42,7 +43,7 @@ sealed class YieldSupplyAnalytics(
|
|||
TOKEN_PARAM to token,
|
||||
BLOCKCHAIN to blockchain,
|
||||
),
|
||||
)
|
||||
), AppsFlyerIncludedEvent
|
||||
|
||||
data class ButtonStartEarning(
|
||||
val token: String,
|
||||
|
|
@ -97,7 +98,7 @@ sealed class YieldSupplyAnalytics(
|
|||
TOKEN_PARAM to token,
|
||||
BLOCKCHAIN to blockchain,
|
||||
),
|
||||
)
|
||||
), AppsFlyerIncludedEvent
|
||||
|
||||
data class FundsEarned(
|
||||
val token: String,
|
||||
|
|
@ -108,7 +109,7 @@ sealed class YieldSupplyAnalytics(
|
|||
TOKEN_PARAM to token,
|
||||
BLOCKCHAIN to blockchain,
|
||||
),
|
||||
)
|
||||
), AppsFlyerIncludedEvent
|
||||
|
||||
data class FundsWithdrawn(
|
||||
val token: String,
|
||||
|
|
@ -119,7 +120,7 @@ sealed class YieldSupplyAnalytics(
|
|||
TOKEN_PARAM to token,
|
||||
BLOCKCHAIN to blockchain,
|
||||
),
|
||||
)
|
||||
), AppsFlyerIncludedEvent
|
||||
|
||||
data class EarnedFundsInfo(
|
||||
val token: String,
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue