Updated on 2026-08-14
This commit is contained in:
parent
e3c0b0b311
commit
fcdfe622f9
27 changed files with 384 additions and 54 deletions
|
|
@ -0,0 +1,8 @@
|
|||
package com.tangem.domain.card
|
||||
|
||||
import com.tangem.domain.card.repository.CardRepository
|
||||
|
||||
class GetCardWasScannedUseCase(private val cardRepository: CardRepository) {
|
||||
|
||||
suspend operator fun invoke(cardId: String): Boolean = cardRepository.wasCardScanned(cardId)
|
||||
}
|
||||
|
|
@ -0,0 +1,6 @@
|
|||
package com.tangem.domain.card.repository
|
||||
|
||||
interface CardRepository {
|
||||
|
||||
suspend fun wasCardScanned(cardId: String): Boolean
|
||||
}
|
||||
|
|
@ -26,4 +26,20 @@ interface CardTypesResolver {
|
|||
fun getPrimaryToken(): Token?
|
||||
|
||||
fun getBackupCardsCount(): Int
|
||||
|
||||
fun isReleaseFirmwareType(): Boolean
|
||||
|
||||
fun getRemainingSignatures(): Int?
|
||||
|
||||
fun getCardId(): String
|
||||
|
||||
fun isTestCard(): Boolean
|
||||
|
||||
fun isAttestationFailed(): Boolean
|
||||
|
||||
fun hasWalletSignedHashes(): Boolean
|
||||
|
||||
fun hasBackup(): Boolean
|
||||
|
||||
fun isBackupForbidden(): Boolean
|
||||
}
|
||||
|
|
@ -10,6 +10,7 @@ import com.tangem.domain.common.TapWorkarounds.isStart2Coin
|
|||
import com.tangem.domain.common.TapWorkarounds.isTestCard
|
||||
import com.tangem.domain.models.scan.CardDTO
|
||||
import com.tangem.domain.models.scan.ProductType
|
||||
import com.tangem.operations.attestation.Attestation
|
||||
|
||||
internal class TangemCardTypesResolver(
|
||||
private val card: CardDTO,
|
||||
|
|
@ -73,6 +74,27 @@ internal class TangemCardTypesResolver(
|
|||
|
||||
override fun getBackupCardsCount(): Int = card.wallets.size
|
||||
|
||||
override fun isReleaseFirmwareType(): Boolean = card.firmwareVersion.type == FirmwareVersion.FirmwareType.Release
|
||||
|
||||
override fun getRemainingSignatures(): Int? = card.wallets.firstOrNull()?.remainingSignatures
|
||||
|
||||
override fun getCardId(): String = card.cardId
|
||||
|
||||
override fun isTestCard(): Boolean = card.isTestCard
|
||||
|
||||
override fun isAttestationFailed(): Boolean = card.attestation.status == Attestation.Status.Failed
|
||||
|
||||
override fun hasWalletSignedHashes(): Boolean {
|
||||
return card.wallets.any {
|
||||
val totalSignedHashes = it.totalSignedHashes ?: 0
|
||||
totalSignedHashes > 0
|
||||
}
|
||||
}
|
||||
|
||||
override fun hasBackup(): Boolean = card.backupStatus != CardDTO.BackupStatus.NoBackup
|
||||
|
||||
override fun isBackupForbidden(): Boolean = !(card.settings.isBackupAllowed || card.settings.isHDWalletAllowed)
|
||||
|
||||
private fun Blockchain.Companion.fromBlockchainName(blockchainName: String): Blockchain {
|
||||
// workaround for BSC (BNB) notes cards
|
||||
return when (blockchainName) {
|
||||
|
|
|
|||
1
domain/settings/.gitignore
vendored
Normal file
1
domain/settings/.gitignore
vendored
Normal file
|
|
@ -0,0 +1 @@
|
|||
/build
|
||||
4
domain/settings/build.gradle.kts
Normal file
4
domain/settings/build.gradle.kts
Normal file
|
|
@ -0,0 +1,4 @@
|
|||
plugins {
|
||||
alias(deps.plugins.kotlin.jvm)
|
||||
id("configuration")
|
||||
}
|
||||
|
|
@ -0,0 +1,8 @@
|
|||
package com.tangem.domain.settings
|
||||
|
||||
import com.tangem.domain.settings.repositories.SettingsRepository
|
||||
|
||||
class IsUserAlreadyRateAppUseCase(private val settingsRepository: SettingsRepository) {
|
||||
|
||||
suspend operator fun invoke(): Boolean = settingsRepository.isUserAlreadyRateApp()
|
||||
}
|
||||
|
|
@ -0,0 +1,6 @@
|
|||
package com.tangem.domain.settings.repositories
|
||||
|
||||
interface SettingsRepository {
|
||||
|
||||
suspend fun isUserAlreadyRateApp(): Boolean
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue