Updated on 2026-08-14

This commit is contained in:
Tangem 2025-10-27 16:56:39 +03:00
parent cde13c66d3
commit 52925902c2
12 changed files with 477 additions and 16 deletions

View file

@ -11,6 +11,7 @@ import androidx.compose.runtime.Composable
import androidx.compose.ui.Alignment
import androidx.compose.ui.Modifier
import androidx.compose.ui.draw.clip
import androidx.compose.ui.platform.testTag
import androidx.compose.ui.tooling.preview.Preview
import androidx.compose.ui.tooling.preview.PreviewParameter
import androidx.compose.ui.tooling.preview.PreviewParameterProvider
@ -20,6 +21,7 @@ import com.tangem.core.ui.extensions.resourceReference
import com.tangem.core.ui.extensions.stringResourceSafe
import com.tangem.core.ui.res.TangemTheme
import com.tangem.core.ui.res.TangemThemePreview
import com.tangem.core.ui.test.SendConfirmScreenTestTags
import com.tangem.features.send.v2.impl.R
import com.tangem.features.send.v2.api.subcomponents.destination.entity.DestinationRecipientListUM
import com.tangem.features.send.v2.api.subcomponents.destination.entity.DestinationTextFieldUM
@ -70,6 +72,7 @@ private fun AddressWithMemoBlock(
text = address.value,
style = TangemTheme.typography.body1,
color = TangemTheme.colors.text.primary1,
modifier = Modifier.testTag(SendConfirmScreenTestTags.RECIPIENT_ADDRESS),
)
val blockchainAddress = address.briefBlockchainAddress
if (!blockchainAddress.isNullOrBlank()) {
@ -77,6 +80,7 @@ private fun AddressWithMemoBlock(
text = blockchainAddress,
style = TangemTheme.typography.caption2,
color = TangemTheme.colors.text.tertiary,
modifier = Modifier.testTag(SendConfirmScreenTestTags.BLOCKCHAIN_ADDRESS),
)
}
}
@ -85,7 +89,8 @@ private fun AddressWithMemoBlock(
modifier = Modifier
.size(TangemTheme.dimens.size36)
.clip(RoundedCornerShape(TangemTheme.dimens.radius18))
.background(TangemTheme.colors.background.tertiary),
.background(TangemTheme.colors.background.tertiary)
.testTag(SendConfirmScreenTestTags.RECIPIENT_ADDRESS_ICON),
)
}

View file

@ -17,6 +17,7 @@ import androidx.compose.runtime.remember
import androidx.compose.ui.Alignment
import androidx.compose.ui.Modifier
import androidx.compose.ui.draw.clip
import androidx.compose.ui.platform.testTag
import androidx.compose.ui.res.painterResource
import androidx.compose.ui.text.style.TextAlign
import androidx.compose.ui.tooling.preview.Preview
@ -36,6 +37,7 @@ import com.tangem.core.ui.extensions.rememberHapticFeedback
import com.tangem.core.ui.extensions.stringReference
import com.tangem.core.ui.res.TangemTheme
import com.tangem.core.ui.res.TangemThemePreview
import com.tangem.core.ui.test.SendAddressScreenTestTags
import com.tangem.domain.models.account.CryptoPortfolioIcon
import com.tangem.features.send.v2.impl.R
import com.tangem.utils.StringsSigns
@ -85,6 +87,7 @@ fun ListItemWithIcon(
}
}
@Suppress("LongMethod")
@Composable
private fun ListItemWithIcon(
title: String,
@ -109,7 +112,8 @@ private fun ListItemWithIcon(
modifier = Modifier
.padding(vertical = 8.dp)
.size(40.dp)
.clip(RoundedCornerShape(20.dp)),
.clip(RoundedCornerShape(20.dp))
.testTag(SendAddressScreenTestTags.RECENT_ADDRESS_ICON),
)
Column(
modifier = Modifier
@ -123,7 +127,7 @@ private fun ListItemWithIcon(
color = TangemTheme.colors.text.primary1,
textAlign = TextAlign.Justify,
ellipsis = TextEllipsis.Middle,
modifier = Modifier,
modifier = Modifier.testTag(SendAddressScreenTestTags.RECENT_ADDRESS_TITLE),
)
Row(verticalAlignment = Alignment.CenterVertically) {
if (subtitleIconRes != null) {
@ -151,6 +155,7 @@ private fun ListItemWithIcon(
style = TangemTheme.typography.caption2,
color = TangemTheme.colors.text.tertiary,
ellipsis = TextEllipsis.OffsetEnd(offsetEnd = offset),
modifier = Modifier.testTag(SendAddressScreenTestTags.RECENT_ADDRESS_TEXT),
)
if (accountTitleUM != null) {
AccountTitle(

View file

@ -10,6 +10,7 @@ import androidx.compose.runtime.Composable
import androidx.compose.ui.Alignment.Companion.CenterEnd
import androidx.compose.ui.Alignment.Companion.CenterVertically
import androidx.compose.ui.Modifier
import androidx.compose.ui.platform.testTag
import androidx.compose.ui.text.TextStyle
import androidx.compose.ui.unit.dp
import com.tangem.core.ui.components.fields.SimpleTextField
@ -19,6 +20,7 @@ import com.tangem.core.ui.extensions.TextReference
import com.tangem.core.ui.extensions.resolveReference
import com.tangem.core.ui.res.TangemTheme
import com.tangem.core.ui.components.containers.FooterContainer
import com.tangem.core.ui.test.SendAddressScreenTestTags
@Suppress("LongMethod", "LongParameterList")
@Composable
@ -61,6 +63,7 @@ internal fun TextFieldWithPaste(
text = title.resolveReference(),
style = labelStyle,
color = color,
modifier = Modifier.testTag(SendAddressScreenTestTags.DESTINATION_TAG_TEXT_FIELD_TITLE),
)
SimpleTextField(
value = value,
@ -71,7 +74,8 @@ internal fun TextFieldWithPaste(
isValuePasted = isValuePasted,
modifier = Modifier
.fillMaxWidth()
.padding(top = 8.dp),
.padding(top = 8.dp)
.testTag(SendAddressScreenTestTags.DESTINATION_TAG_TEXT_FIELD),
)
}
AnimatedVisibility(
@ -84,6 +88,7 @@ internal fun TextFieldWithPaste(
) {
CrossIcon(
onClick = onPasteClick,
modifier = Modifier.testTag(SendAddressScreenTestTags.DESTINATION_TAG_CLEAR_TEXT_FIELD_BUTTON),
)
}
}
@ -100,7 +105,8 @@ internal fun TextFieldWithPaste(
backgroundColorEnabled = TangemTheme.colors.button.secondary,
textColor = TangemTheme.colors.text.primary1,
modifier = Modifier
.padding(start = TangemTheme.dimens.spacing8),
.padding(start = TangemTheme.dimens.spacing8)
.testTag(SendAddressScreenTestTags.DESTINATION_TAG_PASTE_BUTTON),
)
}
}