Updated on 2026-08-14

This commit is contained in:
Tangem 2023-02-17 14:08:05 +03:00
parent 69fe86f07c
commit e77bfba92a
13 changed files with 72 additions and 47 deletions

View file

@ -49,6 +49,8 @@ object DemoHelper {
fun isDemoCard(scanResponse: ScanResponse): Boolean = isDemoCardId(scanResponse.card.cardId)
fun isTestDemoCard(scanResponse: ScanResponse): Boolean = config.isTestDemoCardId(scanResponse.card.cardId)
fun isDemoCardId(cardId: String): Boolean = config.isDemoCardId(cardId)
fun tryHandle(appState: () -> AppState?, action: Action): Boolean {
@ -108,6 +110,8 @@ class DemoConfig {
fun isDemoCardId(cardId: String): Boolean = demoCardIds.contains(cardId)
fun isTestDemoCardId(cardId: String): Boolean = testDemoCardIds.contains(cardId)
fun getBalance(blockchain: Blockchain): Amount = walletBalances[blockchain]?.copy()
?: Amount(BigDecimal.ZERO, blockchain).copy()
@ -489,17 +493,19 @@ class DemoConfig {
class DemoTransactionSender(
private val walletManager: WalletManager,
private val sender: TransactionSender = walletManager as TransactionSender
private val sender: TransactionSender = walletManager as TransactionSender,
) : TransactionSender {
override suspend fun getFee(amount: Amount, destination: String): Result<List<Amount>> {
val blockchain = walletManager.wallet.blockchain
return when (walletManager) {
is BitcoinWalletManager -> Result.Success(listOf(
Amount(0.0001.toBigDecimal(), blockchain),
Amount(0.0003.toBigDecimal(), blockchain),
Amount(0.00055.toBigDecimal(), blockchain),
))
is BitcoinWalletManager -> Result.Success(
listOf(
Amount(0.0001.toBigDecimal(), blockchain),
Amount(0.0003.toBigDecimal(), blockchain),
Amount(0.00055.toBigDecimal(), blockchain),
),
)
else -> sender.getFee(amount, destination)
}
}
@ -508,7 +514,7 @@ class DemoTransactionSender(
val dataToSign = randomString(32).toByteArray()
val signerResponse = signer.sign(
hash = dataToSign,
publicKey = walletManager.wallet.publicKey
publicKey = walletManager.wallet.publicKey,
)
return when (signerResponse) {
is CompletionResult.Success -> SimpleResult.Failure(Exception(ID).toBlockchainSdkError())
@ -529,5 +535,4 @@ class DemoTransactionSender(
companion object {
val ID = DemoTransactionSender::class.java.simpleName
}
}