Updated on 2026-08-14

This commit is contained in:
Tangem 2025-07-27 22:16:37 +05:00
parent 9ab23a953d
commit c89a95265d
23 changed files with 126 additions and 90 deletions

View file

@ -24,14 +24,13 @@ internal sealed interface OnrampMainComponentUM {
) : OnrampMainComponentUM {
override val topBarConfig: OnrampMainTopBarUM = OnrampMainTopBarUM(
title = combinedReference(resourceReference(R.string.common_buy), stringReference(" $currency")),
startButtonUM = TopAppBarButtonUM(
iconRes = R.drawable.ic_close_24,
onIconClicked = onClose,
startButtonUM = TopAppBarButtonUM.Back(
onBackClicked = onClose,
enabled = true,
),
endButtonUM = TopAppBarButtonUM(
endButtonUM = TopAppBarButtonUM.Icon(
iconRes = R.drawable.ic_more_vertical_24,
onIconClicked = openSettings,
onClicked = openSettings,
enabled = false,
),
)

View file

@ -6,6 +6,7 @@ import androidx.compose.ui.text.input.ImeAction
import androidx.compose.ui.text.input.KeyboardType
import com.tangem.common.ui.amountScreen.models.AmountFieldModel
import com.tangem.common.ui.notifications.NotificationUM
import com.tangem.core.ui.components.appbar.models.TopAppBarButtonUM
import com.tangem.core.ui.extensions.TextReference
import com.tangem.core.ui.extensions.resourceReference
import com.tangem.domain.models.currency.CryptoCurrency
@ -37,7 +38,10 @@ internal class OnrampStateFactory(
fun getReadyState(currency: OnrampCurrency): OnrampMainComponentUM.Content {
val state = currentStateProvider()
val endButton = state.topBarConfig.endButtonUM.copy(enabled = true)
val endButton = when (val button = state.topBarConfig.endButtonUM) {
is TopAppBarButtonUM.Icon -> button.copy(enabled = true)
is TopAppBarButtonUM.Text -> button.copy(enabled = true)
}
return OnrampMainComponentUM.Content(
topBarConfig = state.topBarConfig.copy(endButtonUM = endButton),
buyButtonConfig = state.buyButtonConfig,
@ -80,7 +84,10 @@ internal class OnrampStateFactory(
fun getErrorState(errorCode: String? = null, onRefresh: () -> Unit): OnrampMainComponentUM {
val state = currentStateProvider()
val endButton = state.topBarConfig.endButtonUM.copy(enabled = true)
val endButton = when (val button = state.topBarConfig.endButtonUM) {
is TopAppBarButtonUM.Icon -> button.copy(enabled = true)
is TopAppBarButtonUM.Text -> button.copy(enabled = true)
}
return when (state) {
is OnrampMainComponentUM.Content -> state.copy(

View file

@ -54,9 +54,8 @@ internal class OnrampRedirectModel @Inject constructor(
resourceReference(R.string.common_buy),
stringReference(" ${params.cryptoCurrency.name}"),
),
startButtonUM = TopAppBarButtonUM(
iconRes = R.drawable.ic_close_24,
onIconClicked = appRouter::pop,
startButtonUM = TopAppBarButtonUM.Back(
onBackClicked = appRouter::pop,
enabled = true,
),
),

View file

@ -61,9 +61,8 @@ private fun Content(state: OnrampSuccessComponentUM.Content, onBackClick: () ->
.systemBarsPadding(),
topBar = {
TangemTopAppBar(
startButton = TopAppBarButtonUM(
iconRes = R.drawable.ic_close_24,
onIconClicked = onBackClick,
startButton = TopAppBarButtonUM.Back(
onBackClicked = onBackClick,
),
)
},