feat: make PaymentRecord immutable and add keys to HistoryScreen
This commit is contained in:
@@ -1,5 +1,6 @@
|
||||
package com.bitcointxoko.gudariwallet.api
|
||||
|
||||
import androidx.compose.runtime.Immutable
|
||||
import com.google.gson.TypeAdapter
|
||||
import com.google.gson.annotations.JsonAdapter
|
||||
import com.google.gson.annotations.SerializedName
|
||||
@@ -156,6 +157,7 @@ data class LnurlpLink(
|
||||
|
||||
|
||||
// ── Payment history ───────────────────────────────────────────────────────────
|
||||
@Immutable
|
||||
data class PaymentRecord(
|
||||
@SerializedName("payment_hash") val paymentHash: String,
|
||||
@SerializedName("checking_id") val checkingId: String,
|
||||
@@ -204,6 +206,8 @@ data class PaymentRecord(
|
||||
}
|
||||
}
|
||||
|
||||
@Immutable
|
||||
|
||||
data class PaymentExtra(
|
||||
@SerializedName("tag") val tag: String?,
|
||||
@JsonAdapter(FlexibleStringAdapter::class)
|
||||
@@ -214,6 +218,7 @@ data class PaymentExtra(
|
||||
@SerializedName("expires_at") val expiresAt: String?
|
||||
)
|
||||
|
||||
@Immutable
|
||||
data class SuccessAction(
|
||||
@SerializedName("tag") val tag: String?,
|
||||
@SerializedName("message") val message: String?,
|
||||
|
||||
@@ -226,7 +226,8 @@ fun HistoryScreen(
|
||||
) {
|
||||
items(
|
||||
items = s.payments,
|
||||
key = { it.paymentHash }
|
||||
key = { it.paymentHash },
|
||||
contentType = { "payment" }
|
||||
) { payment ->
|
||||
PaymentRow(
|
||||
payment = payment,
|
||||
@@ -240,7 +241,7 @@ fun HistoryScreen(
|
||||
)
|
||||
}
|
||||
if (s.canLoadMore) {
|
||||
item {
|
||||
item(contentType = "loader") {
|
||||
Box(
|
||||
modifier = Modifier
|
||||
.fillMaxWidth()
|
||||
|
||||
Reference in New Issue
Block a user