Updated on 2026-08-14

This commit is contained in:
Tangem 2022-11-17 21:46:18 +03:00
parent d7d7b3f301
commit 62a032e3d1
9 changed files with 119 additions and 30 deletions

View file

@ -1,14 +1,37 @@
package com.tangem.tap.proxy
import com.tangem.crypto.DerivationManager
import com.tangem.blockchain.common.Blockchain
import com.tangem.domain.common.TapWorkarounds.derivationStyle
import com.tangem.domain.common.extensions.fromNetworkId
import com.tangem.lib.crypto.DerivationManager
import com.tangem.tap.features.tokens.redux.TokensMiddleware
class DerivationManagerImpl : DerivationManager {
class DerivationManagerImpl(
val tokesMiddleware: TokensMiddleware,
val cardStateHolder: CardStateHolder,
) : DerivationManager {
override fun deriveMissingBlockchains(networkId: String?) {
TODO("Not yet implemented")
override suspend fun deriveMissingBlockchains(networkId: String) {
if (cardStateHolder.scanResponse != null) { //todo how to get Currency list from token
tokesMiddleware.deriveMissingBlockchains(
cardStateHolder.scanResponse, emptyList(),
) {
}
}
}
override fun hasDerivation(): Boolean {
TODO("Not yet implemented")
override fun hasDerivation(networkId: String): Boolean {
val scanResponse = cardStateHolder.scanResponse
val blockchain = Blockchain.fromNetworkId(networkId)
if (scanResponse != null && blockchain != null) {
val derivationPath = blockchain.derivationPath(cardStateHolder.getActualCard()?.derivationStyle)?.rawPath
if (derivationPath.isNullOrEmpty()) return false
return scanResponse.hasDerivation(
blockchain,
derivationPath,
)
}
return false
}
}