From 71325746dc4b6086b6d6ced3aac937a8ec64e531 Mon Sep 17 00:00:00 2001 From: Tangem Date: Fri, 12 Sep 2025 21:35:48 +0300 Subject: [PATCH 1/2] Updated on 2026-08-14 --- .../walletconnect/pair/DefaultWcPairUseCase.kt | 3 ++- .../data/walletconnect/pair/WcPairSdkDelegate.kt | 8 ++------ .../request/DefaultWcRequestService.kt | 3 ++- .../data/walletconnect/utils/WcExtensions.kt | 15 +++++++++++++++ 4 files changed, 21 insertions(+), 8 deletions(-) create mode 100644 data/wallet-connect/src/main/kotlin/com/tangem/data/walletconnect/utils/WcExtensions.kt diff --git a/data/wallet-connect/src/main/kotlin/com/tangem/data/walletconnect/pair/DefaultWcPairUseCase.kt b/data/wallet-connect/src/main/kotlin/com/tangem/data/walletconnect/pair/DefaultWcPairUseCase.kt index 3db26641c5..2383bb2e9d 100644 --- a/data/wallet-connect/src/main/kotlin/com/tangem/data/walletconnect/pair/DefaultWcPairUseCase.kt +++ b/data/wallet-connect/src/main/kotlin/com/tangem/data/walletconnect/pair/DefaultWcPairUseCase.kt @@ -10,6 +10,7 @@ import com.reown.walletkit.client.Wallet import com.tangem.core.analytics.api.AnalyticsEventHandler import com.tangem.data.walletconnect.utils.WC_TAG import com.tangem.data.walletconnect.utils.WcSdkSessionConverter +import com.tangem.data.walletconnect.utils.getDappOriginUrl import com.tangem.domain.blockaid.BlockAidVerifier import com.tangem.domain.walletconnect.WcAnalyticEvents import com.tangem.domain.walletconnect.model.* @@ -112,7 +113,7 @@ internal class DefaultWcPairUseCase @AssistedInject constructor( wallet = sessionForApprove.wallet, sdkModel = WcSdkSessionConverter.convert( value = WcSdkSessionConverter.Input( - originUrl = sdkVerifyContext.origin, + originUrl = sdkVerifyContext.getDappOriginUrl(), session = settledSession.session, ), ), diff --git a/data/wallet-connect/src/main/kotlin/com/tangem/data/walletconnect/pair/WcPairSdkDelegate.kt b/data/wallet-connect/src/main/kotlin/com/tangem/data/walletconnect/pair/WcPairSdkDelegate.kt index b647a6e959..2e71915a53 100644 --- a/data/wallet-connect/src/main/kotlin/com/tangem/data/walletconnect/pair/WcPairSdkDelegate.kt +++ b/data/wallet-connect/src/main/kotlin/com/tangem/data/walletconnect/pair/WcPairSdkDelegate.kt @@ -7,6 +7,7 @@ import com.reown.walletkit.client.Wallet import com.reown.walletkit.client.WalletKit import com.tangem.data.walletconnect.utils.WC_TAG import com.tangem.data.walletconnect.utils.WcSdkObserver +import com.tangem.data.walletconnect.utils.getDappOriginUrl import com.tangem.domain.walletconnect.model.WcPairError import com.tangem.domain.walletconnect.model.WcPairError.ApprovalFailed import kotlinx.coroutines.* @@ -112,12 +113,7 @@ internal class WcPairSdkDelegate : WcSdkObserver { sessionProposal: Wallet.Model.SessionProposal, verifyContext: Wallet.Model.VerifyContext, ) { - val url = if (verifyContext.validation == Wallet.Model.Validation.INVALID || verifyContext.isScam == true) { - verifyContext.origin - } else { - verifyContext.origin.ifEmpty { verifyContext.verifyUrl } - } - val sessionProposalWithRealUrl = sessionProposal.copy(url = url) + val sessionProposalWithRealUrl = sessionProposal.copy(url = verifyContext.getDappOriginUrl()) // Triggered when wallet receives the session proposal sent by a Dapp onSessionProposal.trySend(sessionProposalWithRealUrl to verifyContext) } diff --git a/data/wallet-connect/src/main/kotlin/com/tangem/data/walletconnect/request/DefaultWcRequestService.kt b/data/wallet-connect/src/main/kotlin/com/tangem/data/walletconnect/request/DefaultWcRequestService.kt index c04fa9a1c7..e1cf03ff9d 100644 --- a/data/wallet-connect/src/main/kotlin/com/tangem/data/walletconnect/request/DefaultWcRequestService.kt +++ b/data/wallet-connect/src/main/kotlin/com/tangem/data/walletconnect/request/DefaultWcRequestService.kt @@ -7,6 +7,7 @@ import com.tangem.data.walletconnect.respond.WcRespondService import com.tangem.data.walletconnect.utils.WC_TAG import com.tangem.data.walletconnect.utils.WcSdkObserver import com.tangem.data.walletconnect.utils.WcSdkSessionRequestConverter +import com.tangem.data.walletconnect.utils.getDappOriginUrl import com.tangem.domain.walletconnect.WcRequestService import com.tangem.domain.walletconnect.model.WcMethodName import com.tangem.domain.walletconnect.model.sdkcopy.WcSdkSessionRequest @@ -35,7 +36,7 @@ internal class DefaultWcRequestService( // Triggered when a Dapp sends SessionRequest to sign a transaction or a message val sr = WcSdkSessionRequestConverter.convert( WcSdkSessionRequestConverter.Input( - originUrl = verifyContext.origin, + originUrl = verifyContext.getDappOriginUrl(), sessionRequest = sessionRequest, ), ) diff --git a/data/wallet-connect/src/main/kotlin/com/tangem/data/walletconnect/utils/WcExtensions.kt b/data/wallet-connect/src/main/kotlin/com/tangem/data/walletconnect/utils/WcExtensions.kt new file mode 100644 index 0000000000..c517205623 --- /dev/null +++ b/data/wallet-connect/src/main/kotlin/com/tangem/data/walletconnect/utils/WcExtensions.kt @@ -0,0 +1,15 @@ +package com.tangem.data.walletconnect.utils + +import com.reown.walletkit.client.Wallet +import kotlin.text.ifEmpty + +/** + * Returns the dapp URL to show and verify based on the validation status and scam check. + */ +fun Wallet.Model.VerifyContext.getDappOriginUrl(): String { + return if (this.validation == Wallet.Model.Validation.INVALID || this.isScam == true) { + this.origin + } else { + this.origin.ifEmpty { this.verifyUrl } + } +} \ No newline at end of file From 18b9831f69e2798149e1a551a1f394226f8ba0bf Mon Sep 17 00:00:00 2001 From: Tangem Date: Fri, 12 Sep 2025 18:36:12 +0000 Subject: [PATCH 2/2] Updated on 2026-08-14 --- gradle/tangem_dependencies.toml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/gradle/tangem_dependencies.toml b/gradle/tangem_dependencies.toml index adeb5e20db..ed82bec0bf 100644 --- a/gradle/tangem_dependencies.toml +++ b/gradle/tangem_dependencies.toml @@ -5,13 +5,13 @@ # https://github.com/tangem/tangem-sdk-android/ # https://github.com/tangem/vico -tangemBlockchainSdk = "releases-5.28-1226" +tangemBlockchainSdk = "develop-1222" #tangemBlockchainSdk = "0.0.1" # Keep it! - used for local builds -tangemCardSdk = "releases-5.28-559" +tangemCardSdk = "develop-561" #tangemCardSdk = "0.0.1" # Keep it! - used for local builds ^ tangemVico = "2.0.0-alpha.25-tangem12" #tangemVico = "0.0.1" # Keep it! - used for local builds ^ -tangemHotSdk = "develop-461" +tangemHotSdk = "develop-528" #tangemHotSdk = "0.0.1" # Keep it! - used for local builds ^