From 74cf5ec26c85d5ffd3c8afa72f96a6242bb8d249 Mon Sep 17 00:00:00 2001 From: Tangem Date: Wed, 28 Dec 2022 15:37:05 +0300 Subject: [PATCH] Updated on 2026-08-14 --- app/src/main/java/com/tangem/tap/MainActivity.kt | 1 + app/src/main/java/com/tangem/tap/TapApplication.kt | 3 ++- .../java/com/tangem/tap/proxy/AppStateHolder.kt | 4 ++++ .../com/tangem/tap/proxy/DerivationManagerImpl.kt | 13 +++++++++++-- .../java/com/tangem/datasource/di/NetworkModule.kt | 2 +- 5 files changed, 19 insertions(+), 4 deletions(-) diff --git a/app/src/main/java/com/tangem/tap/MainActivity.kt b/app/src/main/java/com/tangem/tap/MainActivity.kt index 5ef7c985a6..da2ecd172f 100644 --- a/app/src/main/java/com/tangem/tap/MainActivity.kt +++ b/app/src/main/java/com/tangem/tap/MainActivity.kt @@ -84,6 +84,7 @@ class MainActivity : AppCompatActivity(), SnackbarHandler, ActivityResultCallbac context = applicationContext, tangemSdkManager = tangemSdkManager, ) + appStateHolder.userWalletsListManager = userWalletsListManager userWalletsListManagerSafe = userWalletsListManager lockUserWalletsTimer = LockUserWalletsTimer(owner = this) diff --git a/app/src/main/java/com/tangem/tap/TapApplication.kt b/app/src/main/java/com/tangem/tap/TapApplication.kt index 0d483b43ee..50ded416e6 100644 --- a/app/src/main/java/com/tangem/tap/TapApplication.kt +++ b/app/src/main/java/com/tangem/tap/TapApplication.kt @@ -128,7 +128,6 @@ class TapApplication : Application(), ImageLoaderFactory { middleware = AppState.getMiddleware(), state = AppState(), ) - appStateHolder.mainStore = store if (BuildConfig.DEBUG) { Timber.plant(Timber.DebugTree()) @@ -155,7 +154,9 @@ class TapApplication : Application(), ImageLoaderFactory { context = this, tangemTechService = store.state.domainNetworks.tangemTechService, ) + appStateHolder.mainStore = store appStateHolder.userTokensRepository = userTokensRepository + appStateHolder.walletStoresManager = walletStoresManager } //todo refactor: move to datasource and provide via DI diff --git a/app/src/main/java/com/tangem/tap/proxy/AppStateHolder.kt b/app/src/main/java/com/tangem/tap/proxy/AppStateHolder.kt index 11cfdee61f..cfe9b9cb17 100644 --- a/app/src/main/java/com/tangem/tap/proxy/AppStateHolder.kt +++ b/app/src/main/java/com/tangem/tap/proxy/AppStateHolder.kt @@ -5,6 +5,8 @@ import com.tangem.domain.common.ScanResponse import com.tangem.tap.common.redux.AppState import com.tangem.tap.domain.TangemSdkManager import com.tangem.tap.domain.tokens.UserTokensRepository +import com.tangem.tap.domain.userWalletList.UserWalletsListManager +import com.tangem.tap.domain.walletStores.WalletStoresManager import com.tangem.tap.features.wallet.redux.WalletState import org.rekotlin.Store @@ -19,6 +21,8 @@ class AppStateHolder { var userTokensRepository: UserTokensRepository? = null var mainStore: Store? = null var tangemSdkManager: TangemSdkManager? = null + var walletStoresManager: WalletStoresManager? = null + var userWalletsListManager: UserWalletsListManager? = null fun getActualCard(): CardDTO? { return scanResponse?.card diff --git a/app/src/main/java/com/tangem/tap/proxy/DerivationManagerImpl.kt b/app/src/main/java/com/tangem/tap/proxy/DerivationManagerImpl.kt index 7be322fc1e..265b0aa182 100644 --- a/app/src/main/java/com/tangem/tap/proxy/DerivationManagerImpl.kt +++ b/app/src/main/java/com/tangem/tap/proxy/DerivationManagerImpl.kt @@ -89,6 +89,8 @@ class DerivationManagerImpl( } scope.launch { + val selectedWallet = appStateHolder.userWalletsListManager?.selectedUserWalletSync + val result = appStateHolder.tangemSdkManager?.derivePublicKeys( scanResponse.card.cardId, derivations, @@ -108,6 +110,14 @@ class DerivationManagerImpl( val updatedScanResponse = scanResponse.copy( derivedKeys = updatedDerivedKeys, ) + if (selectedWallet != null) { + val userWallet = selectedWallet.copy( + scanResponse = updatedScanResponse, + ) + + appStateHolder.userWalletsListManager?.save(userWallet, canOverride = true) + appStateHolder.walletStoresManager?.fetch(userWallet, true) + } appStateHolder.mainStore?.dispatchOnMain(GlobalAction.SaveScanResponse(updatedScanResponse)) delay(DELAY_SDK_DIALOG_CLOSE) onSuccess(updatedScanResponse) @@ -115,8 +125,7 @@ class DerivationManagerImpl( is CompletionResult.Failure -> { appStateHolder.mainStore?.dispatchDebugErrorNotification( TapError.CustomError( - "Error adding " + - "tokens", + "Error derivation", ), ) } diff --git a/core/datasource/src/main/java/com/tangem/datasource/di/NetworkModule.kt b/core/datasource/src/main/java/com/tangem/datasource/di/NetworkModule.kt index d662a98721..522c6dd904 100644 --- a/core/datasource/src/main/java/com/tangem/datasource/di/NetworkModule.kt +++ b/core/datasource/src/main/java/com/tangem/datasource/di/NetworkModule.kt @@ -60,7 +60,7 @@ class NetworkModule { .build(), ), ) - .baseUrl(DEV_TANGEM_TECH_BASE_URL) + .baseUrl(PROD_TANGEM_TECH_BASE_URL) .client(okHttpClient) .build() .create(ReferralApi::class.java)