Updated on 2026-08-14

This commit is contained in:
Tangem 2023-08-25 17:36:54 +05:00
parent 20c2f57407
commit 23256d93db
10 changed files with 77 additions and 42 deletions

View file

@ -23,6 +23,8 @@ import com.tangem.core.ui.R
import com.tangem.core.ui.components.CircleShimmer
import com.tangem.core.ui.components.RectangleShimmer
import com.tangem.core.ui.components.transactions.state.TransactionState
import com.tangem.core.ui.extensions.TextReference
import com.tangem.core.ui.extensions.resolveReference
import com.tangem.core.ui.res.TangemTheme
import java.util.UUID
@ -237,7 +239,7 @@ private fun Subtitle(state: TransactionState, modifier: Modifier = Modifier) {
is TransactionState.Send,
-> stringResource(
id = R.string.transaction_history_transaction_to_address,
state.address,
state.address.resolveReference(),
)
is TransactionState.Receiving,
is TransactionState.Receive,
@ -245,13 +247,13 @@ private fun Subtitle(state: TransactionState, modifier: Modifier = Modifier) {
is TransactionState.Approved,
-> stringResource(
id = R.string.transaction_history_transaction_from_address,
state.address,
state.address.resolveReference(),
)
is TransactionState.Swapping,
is TransactionState.Swapped,
-> stringResource(
id = R.string.transaction_history_contract_address,
state.address,
state.address.resolveReference(),
)
},
modifier = modifier,
@ -357,49 +359,49 @@ private class TransactionItemStateProvider : CollectionPreviewParameterProvider<
collection = listOf(
TransactionState.Sending(
txHash = UUID.randomUUID().toString(),
address = "33BddS...ga2B",
address = TextReference.Str("33BddS...ga2B"),
amount = "-0.500913 BTC",
timestamp = "8:41",
),
TransactionState.Receiving(
txHash = UUID.randomUUID().toString(),
address = "33BddS...ga2B",
address = TextReference.Str("33BddS...ga2B"),
amount = "+0.500913 BTC",
timestamp = "8:41",
),
TransactionState.Approving(
txHash = UUID.randomUUID().toString(),
address = "33BddS...ga2B",
address = TextReference.Str("33BddS...ga2B"),
amount = "+0.500913 BTC",
timestamp = "8:41",
),
TransactionState.Swapping(
txHash = UUID.randomUUID().toString(),
address = "33BddS...ga2B",
address = TextReference.Str("33BddS...ga2B"),
amount = "+0.500913 BTC",
timestamp = "8:41",
),
TransactionState.Send(
txHash = UUID.randomUUID().toString(),
address = "33BddS...ga2B",
address = TextReference.Str("33BddS...ga2B"),
amount = "-0.500913 BTC",
timestamp = "8:41",
),
TransactionState.Receive(
txHash = UUID.randomUUID().toString(),
address = "33BddS...ga2B",
address = TextReference.Str("33BddS...ga2B"),
amount = "+0.500913 BTC",
timestamp = "8:41",
),
TransactionState.Approved(
txHash = UUID.randomUUID().toString(),
address = "33BddS...ga2B",
address = TextReference.Str("33BddS...ga2B"),
amount = "+0.500913 BTC",
timestamp = "8:41",
),
TransactionState.Swapped(
txHash = UUID.randomUUID().toString(),
address = "33BddS...ga2B",
address = TextReference.Str("33BddS...ga2B"),
amount = "+0.500913 BTC",
timestamp = "8:41",
),

View file

@ -1,5 +1,7 @@
package com.tangem.core.ui.components.transactions.state
import com.tangem.core.ui.extensions.TextReference
/**
* Transaction component state
*
@ -20,14 +22,14 @@ sealed interface TransactionState {
*/
sealed class Content(
override val txHash: String,
open val address: String,
open val address: TextReference,
open val amount: String,
open val timestamp: String,
) : TransactionState {
fun copySealed(
txHash: String = this.txHash,
address: String = this.address,
address: TextReference = this.address,
amount: String = this.amount,
timestamp: String = this.timestamp,
): Content {
@ -54,7 +56,7 @@ sealed interface TransactionState {
*/
sealed class ProcessedTransactionContent(
override val txHash: String,
override val address: String,
override val address: TextReference,
override val amount: String,
override val timestamp: String,
) : Content(txHash, address, amount, timestamp)
@ -69,7 +71,7 @@ sealed interface TransactionState {
*/
sealed class CompletedTransactionContent(
override val txHash: String,
override val address: String,
override val address: TextReference,
override val amount: String,
override val timestamp: String,
) : Content(txHash, address, amount, timestamp)
@ -84,7 +86,7 @@ sealed interface TransactionState {
*/
data class Sending(
override val txHash: String,
override val address: String,
override val address: TextReference,
override val amount: String,
override val timestamp: String,
) : ProcessedTransactionContent(txHash, address, amount, timestamp)
@ -99,7 +101,7 @@ sealed interface TransactionState {
*/
data class Receiving(
override val txHash: String,
override val address: String,
override val address: TextReference,
override val amount: String,
override val timestamp: String,
) : ProcessedTransactionContent(txHash, address, amount, timestamp)
@ -114,7 +116,7 @@ sealed interface TransactionState {
*/
data class Approving(
override val txHash: String,
override val address: String,
override val address: TextReference,
override val amount: String,
override val timestamp: String,
) : ProcessedTransactionContent(txHash, address, amount, timestamp)
@ -129,7 +131,7 @@ sealed interface TransactionState {
*/
data class Swapping(
override val txHash: String,
override val address: String,
override val address: TextReference,
override val amount: String,
override val timestamp: String,
) : ProcessedTransactionContent(txHash, address, amount, timestamp)
@ -144,7 +146,7 @@ sealed interface TransactionState {
*/
data class Send(
override val txHash: String,
override val address: String,
override val address: TextReference,
override val amount: String,
override val timestamp: String,
) : CompletedTransactionContent(txHash, address, amount, timestamp)
@ -159,7 +161,7 @@ sealed interface TransactionState {
*/
data class Receive(
override val txHash: String,
override val address: String,
override val address: TextReference,
override val amount: String,
override val timestamp: String,
) : CompletedTransactionContent(txHash, address, amount, timestamp)
@ -174,7 +176,7 @@ sealed interface TransactionState {
*/
data class Approved(
override val txHash: String,
override val address: String,
override val address: TextReference,
override val amount: String,
override val timestamp: String,
) : CompletedTransactionContent(txHash, address, amount, timestamp)
@ -189,7 +191,7 @@ sealed interface TransactionState {
*/
data class Swapped(
override val txHash: String,
override val address: String,
override val address: TextReference,
override val amount: String,
override val timestamp: String,
) : CompletedTransactionContent(txHash, address, amount, timestamp)