Updated on 2026-08-14
This commit is contained in:
parent
4e53603fdf
commit
5003eabc07
2 changed files with 10 additions and 4 deletions
|
|
@ -2,14 +2,20 @@ package com.tangem.domain.models.staking
|
||||||
|
|
||||||
import java.math.BigDecimal
|
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> {
|
fun P2PEthPoolStakingAccount.toStakingBalanceEntries(vaultName: String? = null): List<StakingBalanceEntry> {
|
||||||
return buildList {
|
return buildList {
|
||||||
if (stake.assets > BigDecimal.ZERO) {
|
if (stake.assets > BigDecimal.ZERO) {
|
||||||
add(createStakedEntry(vaultAddress, stake.assets, vaultName))
|
add(createStakedEntry(vaultAddress, stake.assets, vaultName))
|
||||||
}
|
}
|
||||||
exitQueue.requests.filter { !it.isClaimable }.forEach { add(createUnstakingEntry(vaultAddress, it, vaultName)) }
|
exitQueue.requests.filter { !it.isClaimable }.forEach { add(createUnstakingEntry(vaultAddress, it, vaultName)) }
|
||||||
if (availableToWithdraw > BigDecimal.ZERO) {
|
if (withdrawableAssets > BigDecimal.ZERO) {
|
||||||
add(createWithdrawableEntry(vaultAddress, availableToWithdraw, vaultName))
|
add(createWithdrawableEntry(vaultAddress, withdrawableAssets, vaultName))
|
||||||
}
|
}
|
||||||
if (stake.totalEarnedAssets > BigDecimal.ZERO) {
|
if (stake.totalEarnedAssets > BigDecimal.ZERO) {
|
||||||
add(createRewardsEntry(vaultAddress, stake.totalEarnedAssets, vaultName))
|
add(createRewardsEntry(vaultAddress, stake.totalEarnedAssets, vaultName))
|
||||||
|
|
|
||||||
|
|
@ -62,9 +62,9 @@ sealed interface StakingBalance {
|
||||||
|
|
||||||
override val totalRewards: SerializedBigDecimal = accounts.sumOf { it.stake.totalEarnedAssets }
|
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() }
|
override val entries: List<StakingBalanceEntry> = accounts.flatMap { it.toStakingBalanceEntries() }
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue