Updated on 2026-08-14

This commit is contained in:
Tangem 2026-05-21 17:42:30 +03:00
parent 4e53603fdf
commit 5003eabc07
2 changed files with 10 additions and 4 deletions

View file

@ -2,14 +2,20 @@ package com.tangem.domain.models.staking
import java.math.BigDecimal
val P2PEthPoolStakingAccount.unstakingAssets: BigDecimal
get() = exitQueue.requests.filter { !it.isClaimable }.sumOf { it.totalAssets }
val P2PEthPoolStakingAccount.withdrawableAssets: BigDecimal
get() = exitQueue.requests.filter { it.isClaimable }.sumOf { it.totalAssets }
fun P2PEthPoolStakingAccount.toStakingBalanceEntries(vaultName: String? = null): List<StakingBalanceEntry> {
return buildList {
if (stake.assets > BigDecimal.ZERO) {
add(createStakedEntry(vaultAddress, stake.assets, vaultName))
}
exitQueue.requests.filter { !it.isClaimable }.forEach { add(createUnstakingEntry(vaultAddress, it, vaultName)) }
if (availableToWithdraw > BigDecimal.ZERO) {
add(createWithdrawableEntry(vaultAddress, availableToWithdraw, vaultName))
if (withdrawableAssets > BigDecimal.ZERO) {
add(createWithdrawableEntry(vaultAddress, withdrawableAssets, vaultName))
}
if (stake.totalEarnedAssets > BigDecimal.ZERO) {
add(createRewardsEntry(vaultAddress, stake.totalEarnedAssets, vaultName))

View file

@ -62,9 +62,9 @@ sealed interface StakingBalance {
override val totalRewards: SerializedBigDecimal = accounts.sumOf { it.stake.totalEarnedAssets }
override val unstakingAmount: SerializedBigDecimal = accounts.sumOf { it.exitQueue.total }
override val unstakingAmount: SerializedBigDecimal = accounts.sumOf { it.unstakingAssets }
override val withdrawableAmount: SerializedBigDecimal = accounts.sumOf { it.availableToWithdraw }
override val withdrawableAmount: SerializedBigDecimal = accounts.sumOf { it.withdrawableAssets }
override val entries: List<StakingBalanceEntry> = accounts.flatMap { it.toStakingBalanceEntries() }
}