From cf5a5896d0cbbd27bddcf879405652630f15a0b8 Mon Sep 17 00:00:00 2001 From: Tangem Date: Mon, 29 May 2023 10:56:39 +0400 Subject: [PATCH] Updated on 2026-08-14 --- .../com/tangem/tap/common/DialogManager.kt | 31 +++++-------------- .../com/tangem/tap/domain/TangemSdkManager.kt | 2 +- .../wallet/redux/OnboardingWalletAction.kt | 2 +- .../redux/OnboardingWalletMiddleware.kt | 7 +++-- .../wallet/redux/OnboardingWalletState.kt | 2 +- .../ui/dialogs/ResetBackupCardDialog.kt | 4 +-- gradle/dependencies.toml | 2 +- 7 files changed, 18 insertions(+), 32 deletions(-) diff --git a/app/src/main/java/com/tangem/tap/common/DialogManager.kt b/app/src/main/java/com/tangem/tap/common/DialogManager.kt index bf28d1f618..1147faf13a 100644 --- a/app/src/main/java/com/tangem/tap/common/DialogManager.kt +++ b/app/src/main/java/com/tangem/tap/common/DialogManager.kt @@ -7,33 +7,15 @@ import com.tangem.tap.common.redux.global.GlobalState import com.tangem.tap.common.ui.SimpleAlertDialog import com.tangem.tap.common.ui.SimpleCancelableAlertDialog import com.tangem.tap.features.details.redux.walletconnect.WalletConnectDialog -import com.tangem.tap.features.details.ui.walletconnect.dialogs.ApproveWcSessionDialog -import com.tangem.tap.features.details.ui.walletconnect.dialogs.BnbTransactionDialog -import com.tangem.tap.features.details.ui.walletconnect.dialogs.ChooseNetworkDialog -import com.tangem.tap.features.details.ui.walletconnect.dialogs.ClipboardOrScanQrDialog -import com.tangem.tap.features.details.ui.walletconnect.dialogs.PersonalSignDialog -import com.tangem.tap.features.details.ui.walletconnect.dialogs.TransactionDialog +import com.tangem.tap.features.details.ui.walletconnect.dialogs.* import com.tangem.tap.features.onboarding.AddressInfoBottomSheetDialog import com.tangem.tap.features.onboarding.OnboardingDialog import com.tangem.tap.features.onboarding.products.twins.ui.dialog.TwinningProcessNotCompletedDialog import com.tangem.tap.features.onboarding.products.wallet.redux.BackupDialog -import com.tangem.tap.features.onboarding.products.wallet.saltPay.dialog.InterruptOnboardingDialog -import com.tangem.tap.features.onboarding.products.wallet.saltPay.dialog.NoFundsForActivationDialog -import com.tangem.tap.features.onboarding.products.wallet.saltPay.dialog.PutVisaCardDialog -import com.tangem.tap.features.onboarding.products.wallet.saltPay.dialog.RegistrationErrorDialog -import com.tangem.tap.features.onboarding.products.wallet.saltPay.dialog.SaltPayDialog -import com.tangem.tap.features.onboarding.products.wallet.ui.dialogs.AddMoreBackupCardsDialog -import com.tangem.tap.features.onboarding.products.wallet.ui.dialogs.BackupInProgressDialog -import com.tangem.tap.features.onboarding.products.wallet.ui.dialogs.ConfirmDiscardingBackupDialog -import com.tangem.tap.features.onboarding.products.wallet.ui.dialogs.ResetBackupCardDialog -import com.tangem.tap.features.onboarding.products.wallet.ui.dialogs.UnfinishedBackupFoundDialog +import com.tangem.tap.features.onboarding.products.wallet.saltPay.dialog.* +import com.tangem.tap.features.onboarding.products.wallet.ui.dialogs.* import com.tangem.tap.features.wallet.redux.models.WalletDialog -import com.tangem.tap.features.wallet.ui.dialogs.AmountToSendBottomSheetDialog -import com.tangem.tap.features.wallet.ui.dialogs.ChooseTradeActionBottomSheetDialog -import com.tangem.tap.features.wallet.ui.dialogs.RussianCardholdersWarningBottomSheetDialog -import com.tangem.tap.features.wallet.ui.dialogs.ScanFailsDialog -import com.tangem.tap.features.wallet.ui.dialogs.SignedHashesWarningDialog -import com.tangem.tap.features.wallet.ui.dialogs.SimpleOkDialog +import com.tangem.tap.features.wallet.ui.dialogs.* import com.tangem.tap.features.wallet.ui.wallet.CurrencySelectionDialog import com.tangem.tap.store import com.tangem.wallet.R @@ -132,7 +114,10 @@ class DialogManager : StoreSubscriber { is BackupDialog.BackupInProgress -> BackupInProgressDialog.create(context) is BackupDialog.UnfinishedBackupFound -> UnfinishedBackupFoundDialog.create(context) is BackupDialog.ConfirmDiscardingBackup -> ConfirmDiscardingBackupDialog.create(context) - is BackupDialog.ResetBackupCard -> ResetBackupCardDialog.create(context) + is BackupDialog.ResetBackupCard -> ResetBackupCardDialog.create( + context = context, + cardId = state.dialog.cardId, + ) is SaltPayDialog.Activation.NoGas -> NoFundsForActivationDialog.create(context) is SaltPayDialog.Activation.PutVisaCard -> PutVisaCardDialog.create(context) is SaltPayDialog.Activation.OnError -> RegistrationErrorDialog.create(context, state.dialog) diff --git a/app/src/main/java/com/tangem/tap/domain/TangemSdkManager.kt b/app/src/main/java/com/tangem/tap/domain/TangemSdkManager.kt index 5c76d3840a..ffb1ece346 100644 --- a/app/src/main/java/com/tangem/tap/domain/TangemSdkManager.kt +++ b/app/src/main/java/com/tangem/tap/domain/TangemSdkManager.kt @@ -123,7 +123,7 @@ class TangemSdkManager(private val tangemSdk: TangemSdk, private val context: Co return runTaskAsyncReturnOnMain(DeriveMultipleWalletPublicKeysTask(derivations), cardId) } - suspend fun resetToFactorySettings(cardId: String? = null): CompletionResult { + suspend fun resetToFactorySettings(cardId: String): CompletionResult { return runTaskAsyncReturnOnMain( runnable = ResetToFactorySettingsTask(), cardId = cardId, diff --git a/app/src/main/java/com/tangem/tap/features/onboarding/products/wallet/redux/OnboardingWalletAction.kt b/app/src/main/java/com/tangem/tap/features/onboarding/products/wallet/redux/OnboardingWalletAction.kt index 558f244806..227cdb626d 100644 --- a/app/src/main/java/com/tangem/tap/features/onboarding/products/wallet/redux/OnboardingWalletAction.kt +++ b/app/src/main/java/com/tangem/tap/features/onboarding/products/wallet/redux/OnboardingWalletAction.kt @@ -91,5 +91,5 @@ sealed class BackupAction : Action { object DiscardSavedBackup : BackupAction() object ResumeFoundUnfinishedBackup : BackupAction() - object ResetBackupCard : BackupAction() + data class ResetBackupCard(val cardId: String) : BackupAction() } \ No newline at end of file diff --git a/app/src/main/java/com/tangem/tap/features/onboarding/products/wallet/redux/OnboardingWalletMiddleware.kt b/app/src/main/java/com/tangem/tap/features/onboarding/products/wallet/redux/OnboardingWalletMiddleware.kt index c8a16471b4..ce33520089 100644 --- a/app/src/main/java/com/tangem/tap/features/onboarding/products/wallet/redux/OnboardingWalletMiddleware.kt +++ b/app/src/main/java/com/tangem/tap/features/onboarding/products/wallet/redux/OnboardingWalletMiddleware.kt @@ -362,12 +362,13 @@ private fun handleBackupAction(appState: () -> AppState?, action: BackupAction) } is CompletionResult.Failure -> { - if (result.error is TangemSdkError.BackupFailedNotEmptyWallets && + val error = result.error + if (error is TangemSdkError.BackupFailedNotEmptyWallets && onboardingWalletState.wallet2State != null ) { store.dispatchOnMain( GlobalAction.ShowDialog( - BackupDialog.ResetBackupCard, + BackupDialog.ResetBackupCard(error.cardId), ), ) } @@ -478,7 +479,7 @@ private fun handleBackupAction(appState: () -> AppState?, action: BackupAction) } is BackupAction.ResetBackupCard -> { - scope.launch { tangemSdkManager.resetToFactorySettings() } + scope.launch { tangemSdkManager.resetToFactorySettings(action.cardId) } } else -> Unit diff --git a/app/src/main/java/com/tangem/tap/features/onboarding/products/wallet/redux/OnboardingWalletState.kt b/app/src/main/java/com/tangem/tap/features/onboarding/products/wallet/redux/OnboardingWalletState.kt index ce6e2e6dde..94ce0d1f54 100644 --- a/app/src/main/java/com/tangem/tap/features/onboarding/products/wallet/redux/OnboardingWalletState.kt +++ b/app/src/main/java/com/tangem/tap/features/onboarding/products/wallet/redux/OnboardingWalletState.kt @@ -122,5 +122,5 @@ sealed class BackupDialog : StateDialog { object BackupInProgress : BackupDialog() object UnfinishedBackupFound : BackupDialog() object ConfirmDiscardingBackup : BackupDialog() - object ResetBackupCard : BackupDialog() + data class ResetBackupCard(val cardId: String) : BackupDialog() } \ No newline at end of file diff --git a/app/src/main/java/com/tangem/tap/features/onboarding/products/wallet/ui/dialogs/ResetBackupCardDialog.kt b/app/src/main/java/com/tangem/tap/features/onboarding/products/wallet/ui/dialogs/ResetBackupCardDialog.kt index 352972273e..0632c6a120 100644 --- a/app/src/main/java/com/tangem/tap/features/onboarding/products/wallet/ui/dialogs/ResetBackupCardDialog.kt +++ b/app/src/main/java/com/tangem/tap/features/onboarding/products/wallet/ui/dialogs/ResetBackupCardDialog.kt @@ -8,12 +8,12 @@ import com.tangem.tap.store import com.tangem.wallet.R object ResetBackupCardDialog { - fun create(context: Context): AlertDialog { + fun create(context: Context, cardId: String): AlertDialog { return AlertDialog.Builder(context).apply { setTitle(R.string.common_warning) setMessage(R.string.onboarding_linking_error_card_with_wallets) setPositiveButton(R.string.common_continue) { _, _ -> - store.dispatch(BackupAction.ResetBackupCard) + store.dispatch(BackupAction.ResetBackupCard(cardId)) } setNegativeButton(R.string.common_cancel) { _, _ -> } diff --git a/gradle/dependencies.toml b/gradle/dependencies.toml index 933e43fd14..fa47d72409 100644 --- a/gradle/dependencies.toml +++ b/gradle/dependencies.toml @@ -75,7 +75,7 @@ reactiveNetwork = "3.0.8" # region Tangem tangemBlockchainSdk = "develop-222" #tangemBlockchainSdk = "0.0.1" # Keep it! - used for local builds -tangemCardSdk = "develop-248" +tangemCardSdk = "develop-249" #tangemCardSdk = "0.0.1" # Keep it! - used for local builds # endregion Tangem