Updated on 2026-08-14

This commit is contained in:
Tangem 2021-11-03 17:07:05 +03:00
parent 939f6e87b6
commit 0343e9885a
2 changed files with 11 additions and 2 deletions

View file

@ -1,8 +1,10 @@
package com.tangem.tap.features.onboarding.products.note.redux
import com.tangem.blockchain.common.Blockchain
import com.tangem.blockchain.common.WalletManager
import com.tangem.tap.domain.TapError
import com.tangem.tap.features.onboarding.OnboardingWalletBalance
import com.tangem.tap.network.moonpay.MoonpayStatus
import com.tangem.tap.store
import org.rekotlin.StateType
import kotlin.properties.ReadOnlyProperty
@ -26,10 +28,16 @@ data class OnboardingNoteState(
get() = steps.indexOf(currentStep)
val isBuyAllowed: Boolean by ReadOnlyProperty<Any, Boolean> { thisRef, property ->
store.state.globalState.moonpayStatus?.isBuyAllowed ?: false
store.state.globalState.moonpayStatus?.canBuy(walletBalance) ?: false
}
}
fun MoonpayStatus.canBuy(walletBalance: OnboardingWalletBalance): Boolean {
if (walletBalance.currency.blockchain == Blockchain.Unknown) return false
return isBuyAllowed && availableToBuy.contains(walletBalance.currency.currencySymbol)
}
enum class OnboardingNoteStep {
None, CreateWallet, TopUpWallet, Done
}

View file

@ -5,6 +5,7 @@ import com.tangem.tap.domain.TapError
import com.tangem.tap.domain.twins.TwinCardNumber
import com.tangem.tap.domain.twins.TwinCardsManager
import com.tangem.tap.features.onboarding.OnboardingWalletBalance
import com.tangem.tap.features.onboarding.products.note.redux.canBuy
import com.tangem.tap.store
import org.rekotlin.StateType
import kotlin.properties.ReadOnlyProperty
@ -56,7 +57,7 @@ data class TwinCardsState(
get() = currentStep == TwinCardsStep.CreateSecondWallet || currentStep == TwinCardsStep.CreateThirdWallet
val isBuyAllowed: Boolean by ReadOnlyProperty<Any, Boolean> { thisRef, property ->
store.state.globalState.moonpayStatus?.isBuyAllowed ?: false
store.state.globalState.moonpayStatus?.canBuy(walletBalance) ?: false
}
}