From b979d5d8a8f503a5c35621b37b1b4bb99cce2eff Mon Sep 17 00:00:00 2001 From: Tangem Date: Fri, 4 Apr 2025 17:02:11 +0300 Subject: [PATCH 1/4] Updated on 2026-08-14 --- gradle/tangem_dependencies.toml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gradle/tangem_dependencies.toml b/gradle/tangem_dependencies.toml index 8361e7d217..f33bae32b2 100644 --- a/gradle/tangem_dependencies.toml +++ b/gradle/tangem_dependencies.toml @@ -1,7 +1,7 @@ [versions] -tangemBlockchainSdk = "develop-1005" +tangemBlockchainSdk = "releases-5.23-1007" #tangemBlockchainSdk = "0.0.1" # Keep it! - used for local builds -tangemCardSdk = "develop-451" +tangemCardSdk = "releases-5.23-452" #tangemCardSdk = "0.0.1" # Keep it! - used for local builds ^ tangemVico = "2.0.0-alpha.25-tangem-developments8" #tangemVico = "0.0.1" # Keep it! - used for local builds ^ From 4a38b9395a2e93bbbd56c4189c450ebafbddf8e9 Mon Sep 17 00:00:00 2001 From: Tangem Date: Mon, 7 Apr 2025 13:15:48 +0300 Subject: [PATCH 2/4] Updated on 2026-08-14 --- .../v2/twin/impl/model/OnboardingTwinModel.kt | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) diff --git a/features/onboarding-v2/impl/src/main/kotlin/com/tangem/features/onboarding/v2/twin/impl/model/OnboardingTwinModel.kt b/features/onboarding-v2/impl/src/main/kotlin/com/tangem/features/onboarding/v2/twin/impl/model/OnboardingTwinModel.kt index bfbd7e56c8..1d6bb00216 100644 --- a/features/onboarding-v2/impl/src/main/kotlin/com/tangem/features/onboarding/v2/twin/impl/model/OnboardingTwinModel.kt +++ b/features/onboarding-v2/impl/src/main/kotlin/com/tangem/features/onboarding/v2/twin/impl/model/OnboardingTwinModel.kt @@ -16,6 +16,9 @@ import com.tangem.core.decompose.ui.UiMessageSender import com.tangem.core.navigation.url.UrlOpener import com.tangem.core.ui.components.bottomsheets.TangemBottomSheetConfig import com.tangem.common.ui.bottomsheet.receive.TokenReceiveBottomSheetConfig +import com.tangem.core.analytics.Analytics +import com.tangem.core.navigation.share.ShareManager +import com.tangem.core.ui.clipboard.ClipboardManager import com.tangem.core.ui.extensions.resourceReference import com.tangem.core.ui.extensions.toWrappedList import com.tangem.core.ui.format.bigdecimal.crypto @@ -33,6 +36,7 @@ import com.tangem.domain.tokens.FetchCurrencyStatusUseCase import com.tangem.domain.tokens.GetPrimaryCurrencyStatusUpdatesUseCase import com.tangem.domain.tokens.model.CryptoCurrencyStatus import com.tangem.domain.tokens.model.Network +import com.tangem.domain.tokens.model.analytics.TokenReceiveAnalyticsEvent import com.tangem.domain.wallets.builder.UserWalletBuilder import com.tangem.domain.wallets.builder.UserWalletIdBuilder import com.tangem.domain.wallets.legacy.UserWalletsListManager @@ -77,6 +81,8 @@ internal class OnboardingTwinModel @Inject constructor( private val urlOpener: UrlOpener, private val uiMessageSender: UiMessageSender, private val sendFeedbackEmailUseCase: SendFeedbackEmailUseCase, + private val clipboardManager: ClipboardManager, + private val shareManager: ShareManager, ) : Model() { private val params = paramsContainer.require() @@ -376,8 +382,14 @@ internal class OnboardingTwinModel @Inject constructor( networkAddress = networkAddress, showMemoDisclaimer = currency.network.transactionExtrasType != Network.TransactionExtrasType.NONE, - onCopyClick = {}, - onShareClick = {}, + onCopyClick = { + Analytics.send(TokenReceiveAnalyticsEvent.ButtonCopyAddress(currency.symbol)) + clipboardManager.setText(text = it, isSensitive = true) + }, + onShareClick = { + Analytics.send(TokenReceiveAnalyticsEvent.ButtonShareAddress(currency.symbol)) + shareManager.shareText(text = it) + }, ), ), ) From 51b79c2941c3b8e037ce2c69a416fa4e20c57d3e Mon Sep 17 00:00:00 2001 From: Tangem Date: Mon, 7 Apr 2025 13:45:01 +0300 Subject: [PATCH 3/4] Updated on 2026-08-14 --- .../v2/twin/impl/model/OnboardingTwinModel.kt | 19 +++++++++++++++---- 1 file changed, 15 insertions(+), 4 deletions(-) diff --git a/features/onboarding-v2/impl/src/main/kotlin/com/tangem/features/onboarding/v2/twin/impl/model/OnboardingTwinModel.kt b/features/onboarding-v2/impl/src/main/kotlin/com/tangem/features/onboarding/v2/twin/impl/model/OnboardingTwinModel.kt index 1d6bb00216..13f2c6af15 100644 --- a/features/onboarding-v2/impl/src/main/kotlin/com/tangem/features/onboarding/v2/twin/impl/model/OnboardingTwinModel.kt +++ b/features/onboarding-v2/impl/src/main/kotlin/com/tangem/features/onboarding/v2/twin/impl/model/OnboardingTwinModel.kt @@ -157,7 +157,7 @@ internal class OnboardingTwinModel @Inject constructor( private fun createFirstWallet() { modelScope.launch { - setLoading(false) + setLoading(true) val result = tangemSdkManager.createFirstTwinWallet( cardId = params.scanResponse.card.cardId, @@ -170,7 +170,10 @@ internal class OnboardingTwinModel @Inject constructor( ) when (result) { - is CompletionResult.Failure -> showCardVerificationFailedDialog(result.error) + is CompletionResult.Failure -> { + setLoading(false) + showCardVerificationFailedDialog(result.error) + } is CompletionResult.Success -> { if (params.mode == Mode.CreateWallet) { cardRepository.startCardActivation(result.data.cardId) @@ -228,7 +231,10 @@ internal class OnboardingTwinModel @Inject constructor( ) when (result) { - is CompletionResult.Failure -> showCardVerificationFailedDialog(result.error) + is CompletionResult.Failure -> { + setLoading(false) + showCardVerificationFailedDialog(result.error) + } is CompletionResult.Success -> { if (params.mode == Mode.CreateWallet) { cardRepository.startCardActivation(result.data.cardId) @@ -257,6 +263,8 @@ internal class OnboardingTwinModel @Inject constructor( private fun createThirdWallet(secondCardPublicKey: ByteArray) { modelScope.launch { + setLoading(true) + val result = tangemSdkManager.finalizeTwin( secondCardPublicKey = secondCardPublicKey, issuerKeyPair = getIssuerKeys(), @@ -270,7 +278,10 @@ internal class OnboardingTwinModel @Inject constructor( ) when (result) { - is CompletionResult.Failure -> showCardVerificationFailedDialog(result.error) + is CompletionResult.Failure -> { + setLoading(false) + showCardVerificationFailedDialog(result.error) + } is CompletionResult.Success -> { scanComplete(result.data) } From 3249180a42ac86d9b51f0d29e9af7f3187a22c00 Mon Sep 17 00:00:00 2001 From: Tangem Date: Mon, 7 Apr 2025 10:45:23 +0000 Subject: [PATCH 4/4] Updated on 2026-08-14 --- gradle/tangem_dependencies.toml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gradle/tangem_dependencies.toml b/gradle/tangem_dependencies.toml index f33bae32b2..8361e7d217 100644 --- a/gradle/tangem_dependencies.toml +++ b/gradle/tangem_dependencies.toml @@ -1,7 +1,7 @@ [versions] -tangemBlockchainSdk = "releases-5.23-1007" +tangemBlockchainSdk = "develop-1005" #tangemBlockchainSdk = "0.0.1" # Keep it! - used for local builds -tangemCardSdk = "releases-5.23-452" +tangemCardSdk = "develop-451" #tangemCardSdk = "0.0.1" # Keep it! - used for local builds ^ tangemVico = "2.0.0-alpha.25-tangem-developments8" #tangemVico = "0.0.1" # Keep it! - used for local builds ^