From e35cd41fd2ccd2b6d1d0f0f07472960b3056dafa Mon Sep 17 00:00:00 2001 From: Tangem Date: Tue, 16 Apr 2024 15:28:55 +0100 Subject: [PATCH] Updated on 2026-08-14 --- .../tangem/tap/di/domain/TokensDomainModule.kt | 2 +- .../tap/domain/scanCard/UseCaseScanProcessor.kt | 16 +++++++++++++--- 2 files changed, 14 insertions(+), 4 deletions(-) diff --git a/app/src/main/java/com/tangem/tap/di/domain/TokensDomainModule.kt b/app/src/main/java/com/tangem/tap/di/domain/TokensDomainModule.kt index e4cf06239e..81d84db2d2 100644 --- a/app/src/main/java/com/tangem/tap/di/domain/TokensDomainModule.kt +++ b/app/src/main/java/com/tangem/tap/di/domain/TokensDomainModule.kt @@ -16,7 +16,7 @@ import dagger.hilt.android.scopes.ViewModelScoped @Module @InstallIn(ViewModelComponent::class) -@Suppress("TooManyFunctions") +@Suppress("TooManyFunctions", "LargeClass") internal object TokensDomainModule { @Provides diff --git a/app/src/main/java/com/tangem/tap/domain/scanCard/UseCaseScanProcessor.kt b/app/src/main/java/com/tangem/tap/domain/scanCard/UseCaseScanProcessor.kt index 9578e1ffe1..ed777bd666 100644 --- a/app/src/main/java/com/tangem/tap/domain/scanCard/UseCaseScanProcessor.kt +++ b/app/src/main/java/com/tangem/tap/domain/scanCard/UseCaseScanProcessor.kt @@ -54,7 +54,11 @@ internal object UseCaseScanProcessor { ) = progressScope(onProgressStateChange) { val scanCardUseCase = store.inject(DaggerGraphState::scanCardUseCase) val chains = buildList { - add(FailedScansCounterChain(UseCaseScanProcessor::showMaxUnsuccessfulScansReachedDialog)) + add( + FailedScansCounterChain( + { showMaxUnsuccessfulScansReachedDialog(analyticsSource) }, + ), + ) add(AnalyticsChain(Basic.CardWasScanned(analyticsSource))) add(DisclaimerChain(store, disclaimerWillShow)) add(CheckForOnboardingChain(store, store.state.globalState.tapWalletManager)) @@ -66,8 +70,14 @@ internal object UseCaseScanProcessor { ) } - private fun showMaxUnsuccessfulScansReachedDialog() { - store.dispatchDialogShow(StateDialog.ScanFailsDialog) + private fun showMaxUnsuccessfulScansReachedDialog(source: AnalyticsParam.ScreensSources) { + val scanFailsSource = when (source) { + is AnalyticsParam.ScreensSources.SignIn -> StateDialog.ScanFailsSource.SIGN_IN + is AnalyticsParam.ScreensSources.Settings -> StateDialog.ScanFailsSource.SETTINGS + is AnalyticsParam.ScreensSources.Intro -> StateDialog.ScanFailsSource.INTRO + else -> StateDialog.ScanFailsSource.MAIN + } + store.dispatchDialogShow(StateDialog.ScanFailsDialog(scanFailsSource)) } private suspend fun proceedWithException(