gnunet-svn
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[taler-taler-ios] 09/32: Deposit


From: gnunet
Subject: [taler-taler-ios] 09/32: Deposit
Date: Sat, 10 Feb 2024 15:04:35 +0100

This is an automated email from the git hooks/post-receive script.

marc-stibane pushed a commit to branch master
in repository taler-ios.

commit 6d808db07f6268e5097711d4acc97b56663bbf4b
Author: Marc Stibane <marc@taler.net>
AuthorDate: Sun Feb 4 14:23:04 2024 +0100

    Deposit
---
 TalerWallet1/Model/Transaction.swift               | 28 ++++++++++++++++++++++
 .../Views/Transactions/TransactionSummaryV.swift   |  7 ++++++
 2 files changed, 35 insertions(+)

diff --git a/TalerWallet1/Model/Transaction.swift 
b/TalerWallet1/Model/Transaction.swift
index a2956f8..c9da797 100644
--- a/TalerWallet1/Model/Transaction.swift
+++ b/TalerWallet1/Model/Transaction.swift
@@ -318,6 +318,27 @@ struct WithdrawalTransaction : Sendable{
     var details: WithdrawalTransactionDetails
 }
 
+struct TrackingState : Decodable {
+    var wireTransferId: String
+    var timestampExecuted: Timestamp
+    var amountRaw: Amount
+    var wireFee: Amount
+}
+
+struct DepositTransactionDetails: Decodable {
+    var depositGroupId: String
+    var targetPaytoUri: String
+    var wireTransferProgress: Int
+    var wireTransferDeadline: Timestamp
+    var deposited: Bool
+    var trackingState: [TrackingState]?
+}
+
+struct DepositTransaction : Sendable {
+    var common: TransactionCommon
+    var details: DepositTransactionDetails
+}
+
 struct RefundInfo: Decodable {
     var amountEffective: Amount
     var amountRaw: Amount
@@ -421,6 +442,7 @@ struct DummyTransaction : Sendable{
 enum Transaction: Decodable, Hashable, Identifiable, Sendable {
     case dummy (DummyTransaction)
     case withdrawal (WithdrawalTransaction)
+    case deposit (DepositTransaction)
     case payment (PaymentTransaction)
     case refund (RefundTransaction)
     case reward (RewardTransaction)
@@ -434,6 +456,9 @@ enum Transaction: Decodable, Hashable, Identifiable, 
Sendable {
                 case .withdrawal:
                     let details = try WithdrawalTransactionDetails.init(from: 
decoder)
                     self = .withdrawal(WithdrawalTransaction(common: common, 
details: details))
+                case .deposit:
+                    let details = try DepositTransactionDetails.init(from: 
decoder)
+                    self = .deposit(DepositTransaction(common: common, 
details: details))
                 case .payment:
                     let details = try PaymentTransactionDetails.init(from: 
decoder)
                     self = .payment(PaymentTransaction(common: common, 
details: details))
@@ -544,6 +569,7 @@ enum Transaction: Decodable, Hashable, Identifiable, 
Sendable {
         return switch self {
             case .dummy(let dummyTransaction):           
dummyTransaction.common
             case .withdrawal(let withdrawalTransaction): 
withdrawalTransaction.common
+            case .deposit(let depositTransaction):       
depositTransaction.common
             case .payment(let paymentTransaction):       
paymentTransaction.common
             case .refund(let refundTransaction):         
refundTransaction.common
             case .reward(let rewardTransaction):         
rewardTransaction.common
@@ -559,6 +585,8 @@ enum Transaction: Decodable, Hashable, Identifiable, 
Sendable {
                 break
             case .withdrawal(let withdrawalTransaction):
                 result[EXCHANGEBASEURL] = 
withdrawalTransaction.details.exchangeBaseUrl
+            case .deposit(let depositTransaction):
+                result[EXCHANGEBASEURL] = 
depositTransaction.details.depositGroupId
             case .payment(let paymentTransaction):
                 result["summary"] = paymentTransaction.details.info.summary
             case .refund(let refundTransaction):
diff --git a/TalerWallet1/Views/Transactions/TransactionSummaryV.swift 
b/TalerWallet1/Views/Transactions/TransactionSummaryV.swift
index 8ad761d..8223ea7 100644
--- a/TalerWallet1/Views/Transactions/TransactionSummaryV.swift
+++ b/TalerWallet1/Views/Transactions/TransactionSummaryV.swift
@@ -275,6 +275,13 @@ struct TransactionSummaryV: View {
                                         topTitle: String(localized: "Chosen 
amount to withdraw:"),
                                          baseURL: details.exchangeBaseUrl, 
large: false, summary: nil)
                     }
+                    case .deposit(let depositTransaction): Group {
+                        let details = depositTransaction.details
+                        ThreeAmountsSheet(common: common, topAbbrev: 
String(localized: "Deposit:", comment: "mini"),
+                                          topTitle: String(localized: "Amount 
to deposit:"),
+                                          baseURL: nil, large: true,           
 // TODO: baseURL
+                                          summary: nil)
+                    }
                     case .payment(let paymentTransaction): Group {
                         let details = paymentTransaction.details
                         NavigationLink(destination: LazyView {

-- 
To stop receiving notification emails like this one, please contact
gnunet@gnunet.org.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]