Updated on 2026-08-14
This commit is contained in:
parent
e7a2a07ed8
commit
4407663b8b
7 changed files with 32 additions and 16 deletions
|
|
@ -546,7 +546,7 @@ internal class StakingModel @Inject constructor(
|
|||
val rewardBlockType = yieldBalance?.reward?.rewardBlockType
|
||||
val rewardPendingActionConstraints = yieldBalance?.reward?.rewardConstraints
|
||||
|
||||
if (rewardBlockType == RewardBlockType.RewardsRequirementsError) {
|
||||
if (rewardBlockType is RewardBlockType.RewardsRequirementsError) {
|
||||
val minimumAmount = rewardPendingActionConstraints?.amountArg?.minimum
|
||||
// Temporary fix, until StakeKit adds minimum requirement amount to balance response
|
||||
val minimumAmountValue = if (minimumAmount == null && yieldBalance.integrationId != null) {
|
||||
|
|
|
|||
|
|
@ -15,6 +15,7 @@ import com.tangem.domain.staking.model.stakekit.Yield
|
|||
import com.tangem.domain.staking.utils.getRewardStakingBalance
|
||||
import com.tangem.features.staking.impl.presentation.state.InnerYieldBalanceState
|
||||
import com.tangem.features.staking.impl.presentation.state.YieldReward
|
||||
import com.tangem.lib.crypto.BlockchainUtils
|
||||
import com.tangem.lib.crypto.BlockchainUtils.isStakingRewardUnavailable
|
||||
import com.tangem.utils.Provider
|
||||
import com.tangem.utils.converter.Converter
|
||||
|
|
@ -91,7 +92,13 @@ internal class YieldBalancesConverter(
|
|||
val isRewardsClaimable = rewards?.isNotEmpty() == true
|
||||
|
||||
return when {
|
||||
isStakingRewardUnavailable(blockchainId) -> RewardBlockType.RewardUnavailable
|
||||
isStakingRewardUnavailable(blockchainId) -> {
|
||||
if (BlockchainUtils.isSolana(blockchainId)) {
|
||||
RewardBlockType.RewardUnavailable.SolanaRewardUnavailable
|
||||
} else {
|
||||
RewardBlockType.RewardUnavailable.DefaultRewardUnavailable
|
||||
}
|
||||
}
|
||||
isRewardsClaimable && isActionable -> RewardBlockType.Rewards
|
||||
isRewardsClaimable && !isActionable -> RewardBlockType.RewardsRequirementsError
|
||||
else -> RewardBlockType.NoRewards
|
||||
|
|
|
|||
|
|
@ -68,7 +68,7 @@ internal object InitialStakingStatePreview {
|
|||
reward = YieldReward(
|
||||
rewardsFiat = "100 $",
|
||||
rewardsCrypto = "100 SOL",
|
||||
rewardBlockType = RewardBlockType.RewardUnavailable,
|
||||
rewardBlockType = RewardBlockType.RewardUnavailable.DefaultRewardUnavailable,
|
||||
rewardConstraints = null,
|
||||
),
|
||||
isActionable = true,
|
||||
|
|
|
|||
|
|
@ -233,10 +233,14 @@ private fun StakingRewardBlock(
|
|||
append(reward.rewardsCrypto.orMaskWithStars(isBalanceHidden))
|
||||
} to TangemTheme.colors.text.primary1
|
||||
}
|
||||
RewardBlockType.RewardUnavailable -> {
|
||||
RewardBlockType.RewardUnavailable.DefaultRewardUnavailable -> {
|
||||
resourceReference(R.string.staking_details_auto_claiming_rewards_daily_text) to
|
||||
TangemTheme.colors.text.tertiary
|
||||
}
|
||||
RewardBlockType.RewardUnavailable.SolanaRewardUnavailable -> {
|
||||
resourceReference(R.string.staking_soloana_details_auto_claiming_rewards_daily_text) to
|
||||
TangemTheme.colors.text.tertiary
|
||||
}
|
||||
RewardBlockType.NoRewards -> {
|
||||
resourceReference(R.string.staking_details_no_rewards_to_claim) to TangemTheme.colors.text.tertiary
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue