diff --git a/features/send-v2/api/src/main/java/com/tangem/features/send/v2/api/subcomponents/destination/entity/DestinationTextFieldUM.kt b/features/send-v2/api/src/main/java/com/tangem/features/send/v2/api/subcomponents/destination/entity/DestinationTextFieldUM.kt index b0bbb0fc76..725f9af80f 100644 --- a/features/send-v2/api/src/main/java/com/tangem/features/send/v2/api/subcomponents/destination/entity/DestinationTextFieldUM.kt +++ b/features/send-v2/api/src/main/java/com/tangem/features/send/v2/api/subcomponents/destination/entity/DestinationTextFieldUM.kt @@ -32,6 +32,8 @@ sealed class DestinationTextFieldUM { // if value is human-readable address, this field contains the actual brief blockchain address val briefBlockchainAddress: String? get() = blockchainAddress?.toBriefAddressFormat(BRIEF_ADDRESS_EDGE_LENGTH, BRIEF_ADDRESS_EDGE_LENGTH) + + val isAddressEns = blockchainAddress != null } data class RecipientMemo( diff --git a/features/send-v2/impl/src/main/java/com/tangem/features/send/v2/send/analytics/SendAnalyticEvents.kt b/features/send-v2/impl/src/main/java/com/tangem/features/send/v2/send/analytics/SendAnalyticEvents.kt index acaf93aac4..4c2f12ab7a 100644 --- a/features/send-v2/impl/src/main/java/com/tangem/features/send/v2/send/analytics/SendAnalyticEvents.kt +++ b/features/send-v2/impl/src/main/java/com/tangem/features/send/v2/send/analytics/SendAnalyticEvents.kt @@ -24,6 +24,7 @@ internal sealed class SendAnalyticEvents( val feeType: AnalyticsParam.FeeType, val blockchain: String, val nonceNotEmpty: Boolean, + private val ensStatus: AnalyticsParam.EnsStatus, ) : SendAnalyticEvents( event = "Transaction Sent Screen Opened", params = mapOf( @@ -31,7 +32,10 @@ internal sealed class SendAnalyticEvents( FEE_TYPE to feeType.value, BLOCKCHAIN to blockchain, NONCE to nonceNotEmpty.toString().capitalize(), - ENS_ADDRESS to (blockchain == "Ethereum").toString(), + ENS_ADDRESS to when (ensStatus) { + AnalyticsParam.EnsStatus.EMPTY -> false.toString().capitalize() + AnalyticsParam.EnsStatus.FULL -> true.toString().capitalize() + }, ), ) diff --git a/features/send-v2/impl/src/main/java/com/tangem/features/send/v2/send/analytics/SendAnalyticHelper.kt b/features/send-v2/impl/src/main/java/com/tangem/features/send/v2/send/analytics/SendAnalyticHelper.kt index ab9490ce77..60eaad3cbc 100644 --- a/features/send-v2/impl/src/main/java/com/tangem/features/send/v2/send/analytics/SendAnalyticHelper.kt +++ b/features/send-v2/impl/src/main/java/com/tangem/features/send/v2/send/analytics/SendAnalyticHelper.kt @@ -28,6 +28,7 @@ internal class SendAnalyticHelper @Inject constructor( feeType = feeType, blockchain = cryptoCurrency.network.name, nonceNotEmpty = feeSelectorUM.nonce != null, + ensStatus = getEnsStatus(sendUM), ), ) analyticsEventHandler.send( @@ -52,4 +53,14 @@ internal class SendAnalyticHelper @Inject constructor( else -> Basic.TransactionSent.MemoType.Null } } + + private fun getEnsStatus(sendUM: SendUM): AnalyticsParam.EnsStatus { + val blockchainAddressForEns = + (sendUM.destinationUM as? DestinationUM.Content)?.addressTextField?.isAddressEns + return if (blockchainAddressForEns == true) { + AnalyticsParam.EnsStatus.FULL + } else { + AnalyticsParam.EnsStatus.EMPTY + } + } } \ No newline at end of file