Updated on 2026-08-14

This commit is contained in:
Tangem 2026-01-26 18:10:18 +02:00
parent 54e612cf30
commit c3030d93c9
8 changed files with 43 additions and 8 deletions

View file

@ -16,6 +16,7 @@ import com.tangem.domain.staking.model.StakingIntegration
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.isCardano
import com.tangem.lib.crypto.BlockchainUtils.isStakingRewardUnavailable
import com.tangem.utils.Provider
import com.tangem.utils.converter.Converter
@ -110,6 +111,7 @@ internal class YieldBalancesConverter(
}
isRewardsClaimable && isActionable -> RewardBlockType.Rewards
isRewardsClaimable && !isActionable -> RewardBlockType.RewardsRequirementsError
isCardano(blockchainId) -> RewardBlockType.CardanoNoRewards
else -> RewardBlockType.NoRewards
}
}

View file

@ -4,9 +4,11 @@ import com.tangem.core.ui.extensions.*
import com.tangem.domain.staking.model.common.RewardSchedule
import com.tangem.domain.staking.model.common.RewardType
import com.tangem.features.staking.impl.R
import com.tangem.features.staking.impl.presentation.state.utils.StakingRewardScheduleConstants.CARDANO_SCHEDULE
import com.tangem.features.staking.impl.presentation.state.utils.StakingRewardScheduleConstants.COSMOS_SCHEDULE
import com.tangem.features.staking.impl.presentation.state.utils.StakingRewardScheduleConstants.SOLANA_SCHEDULE
import com.tangem.features.staking.impl.presentation.state.utils.StakingRewardScheduleConstants.TON_SCHEDULE
import com.tangem.lib.crypto.BlockchainUtils.isCardano
import com.tangem.lib.crypto.BlockchainUtils.isCosmos
import com.tangem.lib.crypto.BlockchainUtils.isSolana
import com.tangem.lib.crypto.BlockchainUtils.isTon
@ -15,6 +17,7 @@ import com.tangem.utils.StringsSigns.MINUS
import com.tangem.utils.StringsSigns.NON_BREAKING_SPACE
private data object StakingRewardScheduleConstants {
const val CARDANO_SCHEDULE = 5
val COSMOS_SCHEDULE = 5 to 12
val SOLANA_SCHEDULE = 2 to 3
val TON_SCHEDULE = 1 to 2
@ -100,6 +103,15 @@ private fun getCustomRewardSchedule(networkId: String, decapitalize: Boolean = f
count = TON_SCHEDULE.second,
),
)
isCardano(networkId) -> combinedReference(
resourceReference(id = R.string.staking_reward_schedule_each_plural, decapitalize = decapitalize),
stringReference(NON_BREAKING_SPACE.toString()),
stringReference("$CARDANO_SCHEDULE$NON_BREAKING_SPACE"),
pluralReference(
id = R.plurals.common_days_no_param,
count = CARDANO_SCHEDULE,
),
)
else -> null
}
}

View file

@ -257,6 +257,10 @@ private fun StakingRewardBlock(
resourceReference(R.string.staking_solana_details_auto_claiming_rewards_daily_text) to
TangemTheme.colors.text.tertiary
}
RewardBlockType.CardanoNoRewards -> {
resourceReference(R.string.staking_cardano_details_rewards_info_text) to
TangemTheme.colors.text.tertiary
}
RewardBlockType.NoRewards -> {
resourceReference(R.string.staking_details_no_rewards_to_claim) to TangemTheme.colors.text.tertiary
}