From 3dba878341a69459174318b63e4f55ccc91c9088 Mon Sep 17 00:00:00 2001 From: Tangem Date: Tue, 9 Mar 2021 13:38:08 +0300 Subject: [PATCH] Updated on 2026-08-14 --- .../com/tangem/tap/domain/TapWorkarounds.kt | 24 ++++++++++++++++++- .../tangem/tap/domain/tasks/ScanNoteTask.kt | 21 +++------------- 2 files changed, 26 insertions(+), 19 deletions(-) diff --git a/app/src/main/java/com/tangem/tap/domain/TapWorkarounds.kt b/app/src/main/java/com/tangem/tap/domain/TapWorkarounds.kt index 1e18167a52..d0cc8b64b2 100644 --- a/app/src/main/java/com/tangem/tap/domain/TapWorkarounds.kt +++ b/app/src/main/java/com/tangem/tap/domain/TapWorkarounds.kt @@ -1,6 +1,7 @@ package com.tangem.tap.domain import com.tangem.commands.common.card.Card +import com.tangem.commands.common.card.masks.Product import java.util.* object TapWorkarounds { @@ -12,5 +13,26 @@ object TapWorkarounds { isStart2Coin = card.cardData?.issuerName?.toLowerCase(Locale.US) == START_2_COIN_ISSUER } - const val START_2_COIN_ISSUER = "start2coin" + fun Card.isExcluded(): Boolean { + val cardData = this.cardData ?: return false + val productMask = cardData.productMask + val excludedBatch = excludedBatches.contains(cardData.batchId) + val excludedIssuerName = excludedIssuers.contains(cardData.issuerName?.capitalize(Locale.US)) + val excludedProductMask = (productMask != null && // product mask is on cards v2.30 and later + !productMask.contains(Product.Note) && !productMask.contains(Product.TwinCard)) + return excludedBatch || excludedIssuerName || excludedProductMask + + } + + private const val START_2_COIN_ISSUER = "start2coin" + + private val excludedBatches = listOf( + "0027", + "0030", + "0031", + ) // Tangem tags + + private val excludedIssuers = listOf( + "TTM BANK" + ) } \ No newline at end of file diff --git a/app/src/main/java/com/tangem/tap/domain/tasks/ScanNoteTask.kt b/app/src/main/java/com/tangem/tap/domain/tasks/ScanNoteTask.kt index 207062e770..c0e33bb929 100644 --- a/app/src/main/java/com/tangem/tap/domain/tasks/ScanNoteTask.kt +++ b/app/src/main/java/com/tangem/tap/domain/tasks/ScanNoteTask.kt @@ -10,12 +10,12 @@ import com.tangem.commands.CommandResponse import com.tangem.commands.ReadIssuerDataCommand import com.tangem.commands.common.card.Card import com.tangem.commands.common.card.CardStatus -import com.tangem.commands.common.card.masks.Product import com.tangem.commands.verifycard.VerifyCardCommand import com.tangem.commands.verifycard.VerifyCardResponse import com.tangem.common.CompletionResult import com.tangem.common.extensions.toHexString import com.tangem.tap.domain.TapSdkError +import com.tangem.tap.domain.TapWorkarounds.isExcluded import com.tangem.tap.domain.twins.TwinCardsManager import com.tangem.tap.domain.twins.isTwinCard import com.tangem.tasks.ScanTask @@ -113,26 +113,11 @@ class ScanNoteTask(val card: Card? = null) : CardSessionRunnable