gnunet-svn
[Top][All Lists]
Advanced

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

[taler-taler-ios] 21/36: amountToTransfer Send


From: gnunet
Subject: [taler-taler-ios] 21/36: amountToTransfer Send
Date: Mon, 13 Nov 2023 21:27:26 +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 e18bc100d5a2d903093585176b0fd5e2136df038
Author: Marc Stibane <marc@taler.net>
AuthorDate: Sun Nov 12 18:16:39 2023 +0100

    amountToTransfer Send
---
 TalerWallet1/Views/HelperViews/CurrencyField.swift |  1 +
 TalerWallet1/Views/Peer2peer/SendAmount.swift      | 22 ++++++++++------------
 TalerWallet1/Views/Peer2peer/SendPurpose.swift     | 18 +++++-------------
 3 files changed, 16 insertions(+), 25 deletions(-)

diff --git a/TalerWallet1/Views/HelperViews/CurrencyField.swift 
b/TalerWallet1/Views/HelperViews/CurrencyField.swift
index b4e05c8..c8bbf09 100644
--- a/TalerWallet1/Views/HelperViews/CurrencyField.swift
+++ b/TalerWallet1/Views/HelperViews/CurrencyField.swift
@@ -21,6 +21,7 @@
  */
 import SwiftUI
 import UIKit
+import taler_swift
 
 @MainActor
 public struct CurrencyField: View {
diff --git a/TalerWallet1/Views/Peer2peer/SendAmount.swift 
b/TalerWallet1/Views/Peer2peer/SendAmount.swift
index 5fa6693..f03f850 100644
--- a/TalerWallet1/Views/Peer2peer/SendAmount.swift
+++ b/TalerWallet1/Views/Peer2peer/SendAmount.swift
@@ -12,7 +12,7 @@ struct SendAmount: View {
     let stack: CallStack
 
     let amountAvailable: Amount // TODO: GetMaxPeerPushAmount
-    @Binding var centsToTransfer: UInt64
+    @Binding var amountToTransfer: Amount
     @Binding var summary: String
 
     @EnvironmentObject private var model: WalletModel
@@ -38,12 +38,11 @@ struct SendAmount: View {
 #endif
         let currency = amountAvailable.currencyStr
         let navTitle = String(localized: "Send \(currency)", comment: "Send 
currency, Dialog Title")
-        let currencyField = CurrencyField(value: $centsToTransfer, currency: 
currency)
-
+        let currencyField = CurrencyField(amount: $amountToTransfer)
         let fee = fee(ppCheck: peerPushCheck)
         ScrollView {
             VStack(alignment: .trailing) {
-                let available = amountAvailable.readableDescription
+                let available = amountAvailable.readableDescription // TODO: 
formatter
                 Text("Available: \(available)")
                     .accessibilityFont(.title3)
                     .padding(.bottom, 2)
@@ -54,12 +53,12 @@ struct SendAmount: View {
                     .foregroundColor(.red)
                     .padding(4)
 
-                let disabled = centsToTransfer == 0    // TODO: check 
amountAvailable
+                let disabled = amountToTransfer.isZero    // TODO: check 
amountAvailable
 
                 NavigationLink(destination: LazyView {
                     SendPurpose(stack: stack.push(),
                       amountAvailable: amountAvailable,
-                      centsToTransfer: centsToTransfer,
+                     amountToTransfer: amountToTransfer,
                                   fee: fee,
                               summary: $summary,
                            expireDays: $expireDays)
@@ -81,11 +80,10 @@ struct SendAmount: View {
         .onDisappear {
             symLog.log("❗️Yikes SendAmount onDisappear")
         }
-        .task(id: centsToTransfer) {
-            if centsToTransfer > 0 {
-                let amount = Amount.amountFromCents(currency, centsToTransfer)
+        .task(id: amountToTransfer.value) {
+            if !amountToTransfer.isZero {
                 do {
-                    let ppCheck = try await model.checkPeerPushDebitM(amount)
+                    let ppCheck = try await 
model.checkPeerPushDebitM(amountToTransfer)
                     peerPushCheck = ppCheck
                 // TODO: set from exchange
 //                agePicker.setAges(ages: peerPushCheck?.ageRestrictionOptions)
@@ -100,14 +98,14 @@ struct SendAmount: View {
 // MARK: -
 #if DEBUG
 struct SendAmount_Container : View {
-    @State private var centsToTransfer: UInt64 = 510
+    @State private var amountToTransfer = Amount(currency: DEMOCURRENCY, cent: 
510)
     @State private var summary: String = ""
 
     var body: some View {
         let amount = Amount(currency: LONGCURRENCY, integer: 10, fraction: 0)
         SendAmount(stack: CallStack("Preview"),
          amountAvailable: amount,
-         centsToTransfer: $centsToTransfer,
+        amountToTransfer: $amountToTransfer,
                  summary: $summary)
     }
 }
diff --git a/TalerWallet1/Views/Peer2peer/SendPurpose.swift 
b/TalerWallet1/Views/Peer2peer/SendPurpose.swift
index b1a3dc5..a06f25b 100644
--- a/TalerWallet1/Views/Peer2peer/SendPurpose.swift
+++ b/TalerWallet1/Views/Peer2peer/SendPurpose.swift
@@ -11,7 +11,7 @@ struct SendPurpose: View {
     let stack: CallStack
 
     let amountAvailable: Amount
-    let centsToTransfer: UInt64
+    let amountToTransfer: Amount
     let fee: String
     @Binding var summary: String
     @Binding var expireDays: UInt
@@ -19,19 +19,11 @@ struct SendPurpose: View {
     let navTitle = String(localized: "NavTitle_Send_Subject", defaultValue: 
"Subject", comment: "NavTitle for entering the subject for Send-Money")
 
     @State private var transactionStarted: Bool = false
-
-    private var value: String {
-//        let mag = pow(10, formatter.maximumFractionDigits)
-//        return formatter.string(for: Decimal(centsToTransfer) / mag) ?? ""
-        return String(centsToTransfer / 100)    // TODO: based on currency
-    }
     @FocusState private var isFocused: Bool
 
     var body: some View {
-        let amount = Amount.amountFromCents(amountAvailable.currencyStr, 
centsToTransfer)
-
         VStack (spacing: 6) {
-            Text(amount.readableDescription)
+            Text(amountToTransfer.readableDescription)              // TODO: 
curreny formatter
             Text("+ \(fee) payment fee")
                 .accessibilityFont(.body)
                 .foregroundColor(.red)
@@ -84,13 +76,13 @@ struct SendPurpose: View {
                 let disabled = (expireDays == 0) || (summary.count < 1)    // 
TODO: check amountAvailable
                 NavigationLink(destination: LazyView {
                     SendDoneV(stack: stack.push(),
-                       amountToSend: amount,
+                       amountToSend: amountToTransfer,
                     amountToReceive: nil,
                             summary: summary,
                          expireDays: expireDays,
                  transactionStarted: $transactionStarted)
                 }) {
-                    Text("Send \(value) \(amountAvailable.currencyStr) now", 
comment: "first is value, second currencyString")  // TODO: currency formatter
+                    Text("Send \(amountToTransfer.readableDescription) now", 
comment: "amountToTransfer")  // TODO: currency formatter
                 }
                 .buttonStyle(TalerButtonStyle(type: .prominent))
                 .disabled(disabled)
@@ -130,7 +122,7 @@ struct SendPurpose: View {
 //        @State var expireDays: UInt = 0
 //        let amount = Amount(currency: LONGCURRENCY, integer: 10, fraction: 0)
 //        SendPurpose(amountAvailable: amount,
-//                    centsToTransfer: 543,
+//                   amountToTransfer: 543,
 //                                fee: "0,43",
 //                            summary: $summary,
 //                         expireDays: $expireDays)

-- 
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]