diff --git a/app/src/main/java/com/tangem/tap/di/domain/StakingDomainModule.kt b/app/src/main/java/com/tangem/tap/di/domain/StakingDomainModule.kt
index a714d71200..a4b7ff17e4 100644
--- a/app/src/main/java/com/tangem/tap/di/domain/StakingDomainModule.kt
+++ b/app/src/main/java/com/tangem/tap/di/domain/StakingDomainModule.kt
@@ -145,18 +145,6 @@ internal object StakingDomainModule {
)
}
- @Provides
- @Singleton
- fun provideIsStakeMoreAvailableUseCase(
- stakingRepository: StakingRepository,
- stakingErrorResolver: StakingErrorResolver,
- ): IsStakeMoreAvailableUseCase {
- return IsStakeMoreAvailableUseCase(
- stakingRepository = stakingRepository,
- stakingErrorResolver = stakingErrorResolver,
- )
- }
-
@Provides
@Singleton
fun provideIsApproveNeededUseCase(
diff --git a/app/src/main/res/layout/layout_receipt_total.xml b/app/src/main/res/layout/layout_receipt_total.xml
deleted file mode 100644
index 5ff5d3377c..0000000000
--- a/app/src/main/res/layout/layout_receipt_total.xml
+++ /dev/null
@@ -1,84 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/data/staking/src/main/java/com/tangem/data/staking/DefaultStakingRepository.kt b/data/staking/src/main/java/com/tangem/data/staking/DefaultStakingRepository.kt
index 213458581e..343c8f3116 100644
--- a/data/staking/src/main/java/com/tangem/data/staking/DefaultStakingRepository.kt
+++ b/data/staking/src/main/java/com/tangem/data/staking/DefaultStakingRepository.kt
@@ -556,14 +556,6 @@ internal class DefaultStakingRepository(
}
}
- override fun isStakeMoreAvailable(networkId: Network.ID): Boolean {
- val blockchain = Blockchain.fromId(networkId.value)
- return when (blockchain) {
- Blockchain.Solana -> false
- else -> true
- }
- }
-
override fun getStakingApproval(cryptoCurrency: CryptoCurrency): StakingApproval {
return when (getIntegrationKey(cryptoCurrency.id)) {
Blockchain.Ethereum.id + Blockchain.Polygon.toCoinId() -> {
diff --git a/domain/staking/src/main/java/com/tangem/domain/staking/IsStakeMoreAvailableUseCase.kt b/domain/staking/src/main/java/com/tangem/domain/staking/IsStakeMoreAvailableUseCase.kt
deleted file mode 100644
index 4dd7fc8f38..0000000000
--- a/domain/staking/src/main/java/com/tangem/domain/staking/IsStakeMoreAvailableUseCase.kt
+++ /dev/null
@@ -1,19 +0,0 @@
-package com.tangem.domain.staking
-
-import arrow.core.Either
-import com.tangem.domain.staking.model.stakekit.StakingError
-import com.tangem.domain.staking.repositories.StakingErrorResolver
-import com.tangem.domain.staking.repositories.StakingRepository
-import com.tangem.domain.tokens.model.Network
-
-class IsStakeMoreAvailableUseCase(
- private val stakingRepository: StakingRepository,
- private val stakingErrorResolver: StakingErrorResolver,
-) {
-
- operator fun invoke(networkId: Network.ID): Either {
- return Either
- .catch { stakingRepository.isStakeMoreAvailable(networkId) }
- .mapLeft { stakingErrorResolver.resolve(it) }
- }
-}
\ No newline at end of file
diff --git a/domain/staking/src/main/java/com/tangem/domain/staking/repositories/StakingRepository.kt b/domain/staking/src/main/java/com/tangem/domain/staking/repositories/StakingRepository.kt
index 528f40dac0..69016e1209 100644
--- a/domain/staking/src/main/java/com/tangem/domain/staking/repositories/StakingRepository.kt
+++ b/domain/staking/src/main/java/com/tangem/domain/staking/repositories/StakingRepository.kt
@@ -84,9 +84,6 @@ interface StakingRepository {
suspend fun sendUnsubmittedHashes()
- /** Returns whether additional staking is possible if there is already active staking */
- fun isStakeMoreAvailable(networkId: Network.ID): Boolean
-
/** Returns staking approval */
fun getStakingApproval(cryptoCurrency: CryptoCurrency): StakingApproval
}
\ No newline at end of file
diff --git a/domain/tokens/src/test/kotlin/com/tangem/domain/tokens/repository/MockStakingRepository.kt b/domain/tokens/src/test/kotlin/com/tangem/domain/tokens/repository/MockStakingRepository.kt
index 897920ce7f..9bc782020a 100644
--- a/domain/tokens/src/test/kotlin/com/tangem/domain/tokens/repository/MockStakingRepository.kt
+++ b/domain/tokens/src/test/kotlin/com/tangem/domain/tokens/repository/MockStakingRepository.kt
@@ -251,7 +251,5 @@ class MockStakingRepository : StakingRepository {
/* no-op */
}
- override fun isStakeMoreAvailable(networkId: Network.ID): Boolean = true
-
override fun getStakingApproval(cryptoCurrency: CryptoCurrency): StakingApproval = StakingApproval.Empty
}
\ No newline at end of file
diff --git a/features/staking/impl/src/main/java/com/tangem/features/staking/impl/presentation/state/StakingUiState.kt b/features/staking/impl/src/main/java/com/tangem/features/staking/impl/presentation/state/StakingUiState.kt
index 0d7e1081b8..0e08d89b1c 100644
--- a/features/staking/impl/src/main/java/com/tangem/features/staking/impl/presentation/state/StakingUiState.kt
+++ b/features/staking/impl/src/main/java/com/tangem/features/staking/impl/presentation/state/StakingUiState.kt
@@ -57,7 +57,6 @@ internal sealed class StakingStates {
val aprRange: TextReference,
val onInfoClick: (InfoType) -> Unit,
val yieldBalance: InnerYieldBalanceState,
- val isStakeMoreAvailable: Boolean,
) : InitialInfoState()
data class Empty(
diff --git a/features/staking/impl/src/main/java/com/tangem/features/staking/impl/presentation/state/previewdata/InitialStakingStatePreview.kt b/features/staking/impl/src/main/java/com/tangem/features/staking/impl/presentation/state/previewdata/InitialStakingStatePreview.kt
index f31cd5f501..66d92d8f89 100644
--- a/features/staking/impl/src/main/java/com/tangem/features/staking/impl/presentation/state/previewdata/InitialStakingStatePreview.kt
+++ b/features/staking/impl/src/main/java/com/tangem/features/staking/impl/presentation/state/previewdata/InitialStakingStatePreview.kt
@@ -52,7 +52,6 @@ internal object InitialStakingStatePreview {
),
onInfoClick = {},
yieldBalance = InnerYieldBalanceState.Empty,
- isStakeMoreAvailable = true,
)
val stateWithYield = defaultState.copy(
diff --git a/features/staking/impl/src/main/java/com/tangem/features/staking/impl/presentation/state/transformers/SetButtonsStateTransformer.kt b/features/staking/impl/src/main/java/com/tangem/features/staking/impl/presentation/state/transformers/SetButtonsStateTransformer.kt
index 6b4515a6ba..3f8b253474 100644
--- a/features/staking/impl/src/main/java/com/tangem/features/staking/impl/presentation/state/transformers/SetButtonsStateTransformer.kt
+++ b/features/staking/impl/src/main/java/com/tangem/features/staking/impl/presentation/state/transformers/SetButtonsStateTransformer.kt
@@ -119,7 +119,6 @@ internal class SetButtonsStateTransformer : Transformer {
private fun List.getSecondaryAction(): PendingAction? = getOrNull(1)
private fun StakingUiState.isButtonsVisible(): Boolean = when (currentStep) {
- StakingStep.InitialInfo -> isStakeMoreAvailable()
StakingStep.RewardsValidators -> false
else -> true
}
@@ -170,7 +169,7 @@ internal class SetButtonsStateTransformer : Transformer {
private fun StakingUiState.onPrimaryClick() {
when (currentStep) {
StakingStep.InitialInfo -> {
- val actionType = StakingActionCommonType.ENTER.takeIf { isStakeMoreAvailable() }
+ val actionType = StakingActionCommonType.ENTER
clickIntents.onAmountValueChange("") // reset amount state
clickIntents.onNextClick(actionType)
}
@@ -241,9 +240,4 @@ internal class SetButtonsStateTransformer : Transformer {
StakingActionType.UNKNOWN -> TextReference.EMPTY
null -> TextReference.EMPTY
}
-
- private fun StakingUiState.isStakeMoreAvailable(): Boolean {
- val initialState = initialInfoState as? StakingStates.InitialInfoState.Data
- return initialState?.isStakeMoreAvailable == true || initialState?.yieldBalance is InnerYieldBalanceState.Empty
- }
}
\ No newline at end of file
diff --git a/features/staking/impl/src/main/java/com/tangem/features/staking/impl/presentation/state/transformers/SetInitialDataStateTransformer.kt b/features/staking/impl/src/main/java/com/tangem/features/staking/impl/presentation/state/transformers/SetInitialDataStateTransformer.kt
index 2c0bcbef78..6402fc548e 100644
--- a/features/staking/impl/src/main/java/com/tangem/features/staking/impl/presentation/state/transformers/SetInitialDataStateTransformer.kt
+++ b/features/staking/impl/src/main/java/com/tangem/features/staking/impl/presentation/state/transformers/SetInitialDataStateTransformer.kt
@@ -33,7 +33,6 @@ import java.math.BigDecimal
internal class SetInitialDataStateTransformer(
private val clickIntents: StakingClickIntents,
private val yield: Yield,
- private val isStakeMoreAvailable: Boolean,
private val isApprovalNeeded: Boolean,
private val cryptoCurrencyStatusProvider: Provider,
private val userWalletProvider: Provider,
@@ -84,7 +83,6 @@ internal class SetInitialDataStateTransformer(
infoItems = getInfoItems(),
onInfoClick = clickIntents::onInfoClick,
yieldBalance = yieldBalancesConverter.convert(Unit),
- isStakeMoreAvailable = isStakeMoreAvailable,
)
}
diff --git a/features/staking/impl/src/main/java/com/tangem/features/staking/impl/presentation/viewmodel/StakingViewModel.kt b/features/staking/impl/src/main/java/com/tangem/features/staking/impl/presentation/viewmodel/StakingViewModel.kt
index 13c7fdda5e..d09ff672ca 100644
--- a/features/staking/impl/src/main/java/com/tangem/features/staking/impl/presentation/viewmodel/StakingViewModel.kt
+++ b/features/staking/impl/src/main/java/com/tangem/features/staking/impl/presentation/viewmodel/StakingViewModel.kt
@@ -89,7 +89,6 @@ internal class StakingViewModel @Inject constructor(
private val getExplorerTransactionUrlUseCase: GetExplorerTransactionUrlUseCase,
private val saveUnsubmittedHashUseCase: SaveUnsubmittedHashUseCase,
private val submitHashUseCase: SubmitHashUseCase,
- private val isStakeMoreAvailableUseCase: IsStakeMoreAvailableUseCase,
private val stakingYieldBalanceUseCase: FetchStakingYieldBalanceUseCase,
private val updateDelayedNetworkStatusUseCase: UpdateDelayedNetworkStatusUseCase,
private val fetchPendingTransactionsUseCase: FetchPendingTransactionsUseCase,
@@ -581,13 +580,10 @@ internal class StakingViewModel @Inject constructor(
setupApprovalNeeded()
- val networkId = cryptoCurrencyStatus.currency.network.id
- val isStakeMoreAvailable = isStakeMoreAvailableUseCase(networkId)
stateController.update(
transformer = SetInitialDataStateTransformer(
clickIntents = this@StakingViewModel,
yield = yield,
- isStakeMoreAvailable = isStakeMoreAvailable.getOrElse { false },
isApprovalNeeded = stakingApproval is StakingApproval.Needed,
cryptoCurrencyStatusProvider = Provider { cryptoCurrencyStatus },
userWalletProvider = Provider { userWallet },