Updated on 2026-08-14
This commit is contained in:
parent
633666c3ce
commit
da13e0e62c
2 changed files with 27 additions and 10 deletions
|
|
@ -45,6 +45,7 @@ import com.tangem.core.ui.components.containers.pullToRefresh.TangemPullToRefres
|
||||||
import com.tangem.core.ui.components.dropdownmenu.TangemDropdownItem
|
import com.tangem.core.ui.components.dropdownmenu.TangemDropdownItem
|
||||||
import com.tangem.core.ui.components.dropdownmenu.TangemDropdownMenu
|
import com.tangem.core.ui.components.dropdownmenu.TangemDropdownMenu
|
||||||
import com.tangem.core.ui.components.notifications.Notification
|
import com.tangem.core.ui.components.notifications.Notification
|
||||||
|
import com.tangem.core.ui.components.notifications.NotificationConfig
|
||||||
import com.tangem.core.ui.components.text.applyBladeBrush
|
import com.tangem.core.ui.components.text.applyBladeBrush
|
||||||
import com.tangem.core.ui.extensions.*
|
import com.tangem.core.ui.extensions.*
|
||||||
import com.tangem.core.ui.res.TangemTheme
|
import com.tangem.core.ui.res.TangemTheme
|
||||||
|
|
@ -539,7 +540,16 @@ internal class TangemPayDetailsUMProvider : CollectionPreviewParameterProvider<T
|
||||||
isBalanceHidden = false,
|
isBalanceHidden = false,
|
||||||
addToWalletBlockState = null,
|
addToWalletBlockState = null,
|
||||||
accountDeactivatedNotificationConfig = null,
|
accountDeactivatedNotificationConfig = null,
|
||||||
errorNotificationConfig = null,
|
errorNotificationConfig = NotificationConfig(
|
||||||
|
title = TextReference.Str("Error title"),
|
||||||
|
subtitle = TextReference.Str("Error subtitle"),
|
||||||
|
iconResId = R.drawable.ic_alert_circle_24,
|
||||||
|
buttonsState = NotificationConfig.ButtonsState.SecondaryButtonConfig(
|
||||||
|
text = TextReference.Str("Error btn text"),
|
||||||
|
onClick = {},
|
||||||
|
iconResId = R.drawable.ic_tangem_24,
|
||||||
|
),
|
||||||
|
),
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
)
|
)
|
||||||
|
|
|
||||||
|
|
@ -30,6 +30,8 @@ import androidx.compose.ui.unit.Dp
|
||||||
import androidx.compose.ui.unit.dp
|
import androidx.compose.ui.unit.dp
|
||||||
import androidx.compose.ui.util.fastForEach
|
import androidx.compose.ui.util.fastForEach
|
||||||
import androidx.lifecycle.compose.collectAsStateWithLifecycle
|
import androidx.lifecycle.compose.collectAsStateWithLifecycle
|
||||||
|
import com.tangem.core.ui.components.SpacerH12
|
||||||
|
import com.tangem.core.ui.components.SpacerH24
|
||||||
import com.tangem.core.ui.components.SpacerW
|
import com.tangem.core.ui.components.SpacerW
|
||||||
import com.tangem.core.ui.components.buttons.actions.ActionButtonConfig
|
import com.tangem.core.ui.components.buttons.actions.ActionButtonConfig
|
||||||
import com.tangem.core.ui.components.containers.pullToRefresh.TangemPullToRefreshSlidingContainer
|
import com.tangem.core.ui.components.containers.pullToRefresh.TangemPullToRefreshSlidingContainer
|
||||||
|
|
@ -55,12 +57,7 @@ import com.tangem.features.tangempay.components.express.PreviewEmptyExpressTrans
|
||||||
import com.tangem.features.tangempay.components.txHistory.PreviewTangemPayTxHistoryComponent
|
import com.tangem.features.tangempay.components.txHistory.PreviewTangemPayTxHistoryComponent
|
||||||
import com.tangem.features.tangempay.components.txHistory.TangemPayTxHistoryComponent
|
import com.tangem.features.tangempay.components.txHistory.TangemPayTxHistoryComponent
|
||||||
import com.tangem.features.tangempay.details.impl.R
|
import com.tangem.features.tangempay.details.impl.R
|
||||||
import com.tangem.features.tangempay.entity.CardsProgressBannerUM
|
import com.tangem.features.tangempay.entity.*
|
||||||
import com.tangem.features.tangempay.entity.TangemPayCardUiState
|
|
||||||
import com.tangem.features.tangempay.entity.TangemPayDetailsBalanceBlockState
|
|
||||||
import com.tangem.features.tangempay.entity.TangemPayDetailsTopBarConfig
|
|
||||||
import com.tangem.features.tangempay.entity.TangemPayDetailsUM
|
|
||||||
import com.tangem.features.tangempay.entity.TangemPayTxHistoryUM
|
|
||||||
import com.tangem.features.tangempay.ui.components.PayContextMenuBlock
|
import com.tangem.features.tangempay.ui.components.PayContextMenuBlock
|
||||||
import com.tangem.features.tangempay.ui.components.TangemPayActionButton
|
import com.tangem.features.tangempay.ui.components.TangemPayActionButton
|
||||||
import com.tangem.features.tangempay.ui.components.TangemPayAddCardView
|
import com.tangem.features.tangempay.ui.components.TangemPayAddCardView
|
||||||
|
|
@ -152,17 +149,20 @@ private fun LazyListScope.payDetailsBody(state: TangemPayDetailsUM) {
|
||||||
}
|
}
|
||||||
state.balanceBlockState.cardsBlockState?.let { cardsState ->
|
state.balanceBlockState.cardsBlockState?.let { cardsState ->
|
||||||
item("cardsBlock") {
|
item("cardsBlock") {
|
||||||
|
SpacerH12()
|
||||||
CardsBlock(cardsBlockState = cardsState)
|
CardsBlock(cardsBlockState = cardsState)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (state.balanceBlockState.actionButtons.isNotEmpty()) {
|
if (state.balanceBlockState.actionButtons.isNotEmpty()) {
|
||||||
item("actionButtonsBlock") {
|
item("actionButtonsBlock") {
|
||||||
|
SpacerH24()
|
||||||
ActionBlock(actionButtons = state.balanceBlockState.actionButtons)
|
ActionBlock(actionButtons = state.balanceBlockState.actionButtons)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (state.errorNotificationConfig != null) {
|
if (state.errorNotificationConfig != null) {
|
||||||
item("errorSessionBannerBlock") {
|
item("errorSessionBannerBlock") {
|
||||||
|
SpacerH12()
|
||||||
ErrorMessage(
|
ErrorMessage(
|
||||||
config = state.errorNotificationConfig,
|
config = state.errorNotificationConfig,
|
||||||
modifier = Modifier.padding(horizontal = TangemTheme.dimens2.x4),
|
modifier = Modifier.padding(horizontal = TangemTheme.dimens2.x4),
|
||||||
|
|
@ -175,6 +175,7 @@ private fun LazyListScope.payDetailsBody(state: TangemPayDetailsUM) {
|
||||||
when (progressBanner) {
|
when (progressBanner) {
|
||||||
CardsProgressBannerUM.Reissuing -> {
|
CardsProgressBannerUM.Reissuing -> {
|
||||||
item("reissuingBannerBlock") {
|
item("reissuingBannerBlock") {
|
||||||
|
SpacerH12()
|
||||||
TangemMessage(
|
TangemMessage(
|
||||||
modifier = Modifier.padding(horizontal = TangemTheme.dimens2.x4),
|
modifier = Modifier.padding(horizontal = TangemTheme.dimens2.x4),
|
||||||
title = resourceReference(R.string.tangempay_reissue_card_in_progress),
|
title = resourceReference(R.string.tangempay_reissue_card_in_progress),
|
||||||
|
|
@ -184,6 +185,7 @@ private fun LazyListScope.payDetailsBody(state: TangemPayDetailsUM) {
|
||||||
}
|
}
|
||||||
CardsProgressBannerUM.Issuing -> {
|
CardsProgressBannerUM.Issuing -> {
|
||||||
item("issuingBannerBlock") {
|
item("issuingBannerBlock") {
|
||||||
|
SpacerH12()
|
||||||
TangemMessage(
|
TangemMessage(
|
||||||
modifier = Modifier.padding(horizontal = TangemTheme.dimens2.x4),
|
modifier = Modifier.padding(horizontal = TangemTheme.dimens2.x4),
|
||||||
title = resourceReference(R.string.tangempay_issuing_new_digital_card_title),
|
title = resourceReference(R.string.tangempay_issuing_new_digital_card_title),
|
||||||
|
|
@ -203,6 +205,7 @@ private fun LazyListScope.payDetailsBody(state: TangemPayDetailsUM) {
|
||||||
null -> {
|
null -> {
|
||||||
if (state.addToWalletBlockState != null) {
|
if (state.addToWalletBlockState != null) {
|
||||||
item("addToWalletBannerBlock") {
|
item("addToWalletBannerBlock") {
|
||||||
|
SpacerH12()
|
||||||
TangemPayAddToWalletBlock(
|
TangemPayAddToWalletBlock(
|
||||||
state = state.addToWalletBlockState,
|
state = state.addToWalletBlockState,
|
||||||
modifier = Modifier.padding(horizontal = TangemTheme.dimens2.x4),
|
modifier = Modifier.padding(horizontal = TangemTheme.dimens2.x4),
|
||||||
|
|
@ -211,7 +214,11 @@ private fun LazyListScope.payDetailsBody(state: TangemPayDetailsUM) {
|
||||||
}
|
}
|
||||||
if (state.accountDeactivatedNotificationConfig != null) {
|
if (state.accountDeactivatedNotificationConfig != null) {
|
||||||
item("deactivationBannerBlock") {
|
item("deactivationBannerBlock") {
|
||||||
ErrorMessage(state.accountDeactivatedNotificationConfig)
|
SpacerH12()
|
||||||
|
ErrorMessage(
|
||||||
|
config = state.accountDeactivatedNotificationConfig,
|
||||||
|
modifier = Modifier.padding(horizontal = TangemTheme.dimens2.x4),
|
||||||
|
)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
@ -384,7 +391,7 @@ private fun CardsBlock(
|
||||||
state = rememberLazyListState(),
|
state = rememberLazyListState(),
|
||||||
contentPadding = PaddingValues(
|
contentPadding = PaddingValues(
|
||||||
horizontal = TangemTheme.dimens2.x4,
|
horizontal = TangemTheme.dimens2.x4,
|
||||||
vertical = TangemTheme.dimens2.x6,
|
vertical = TangemTheme.dimens2.x3,
|
||||||
),
|
),
|
||||||
horizontalArrangement = Arrangement.Center,
|
horizontalArrangement = Arrangement.Center,
|
||||||
) {
|
) {
|
||||||
|
|
@ -415,7 +422,7 @@ private fun LazyItemScope.ActionBlock(
|
||||||
Row(
|
Row(
|
||||||
modifier = modifier
|
modifier = modifier
|
||||||
.fillMaxWidth()
|
.fillMaxWidth()
|
||||||
.padding(vertical = TangemTheme.dimens2.x6),
|
.padding(vertical = TangemTheme.dimens2.x3),
|
||||||
verticalAlignment = Alignment.CenterVertically,
|
verticalAlignment = Alignment.CenterVertically,
|
||||||
horizontalArrangement = Arrangement.Center,
|
horizontalArrangement = Arrangement.Center,
|
||||||
) {
|
) {
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue