lnlink

iOS app for connecting to lightning nodes
git clone git://jb55.com/lnlink
Log | Files | Refs | Submodules | README | LICENSE

commit b848912eecb9771960fad8a044f638da7ac94335
parent 5ba01a1186b9bc13cfb5f014c335388e89f8eeec
Author: William Casarin <jb55@jb55.com>
Date:   Wed, 30 Mar 2022 19:05:59 -0700

fix exchange rate for receive view

Signed-off-by: William Casarin <jb55@jb55.com>

Diffstat:
Mlightninglink/Views/AmountInputView.swift | 8+++++---
Mlightninglink/Views/ContentView.swift | 19+++++++++++++++----
Mlightninglink/Views/PayView.swift | 2+-
Mlightninglink/Views/ReceiveView.swift | 4++--
4 files changed, 23 insertions(+), 10 deletions(-)

diff --git a/lightninglink/Views/AmountInputView.swift b/lightninglink/Views/AmountInputView.swift @@ -76,11 +76,13 @@ struct AmountInput: View { } - -func sats_to_fiat(msats: Int64, xr: ExchangeRate) -> String { +func msats_to_fiat(msats: Int64, xr: ExchangeRate) -> String { let btc = Double(msats) / Double(100_000_000_000) let rate = xr.rate * btc - return String(format: "%.2f \(xr.currency)", rate) + let num_fmt = NumberFormatter() + num_fmt.numberStyle = .decimal + let fmt = num_fmt.string(from: NSNumber(value: round(rate * 100) / 100.0))! + return "$\(fmt)" } diff --git a/lightninglink/Views/ContentView.swift b/lightninglink/Views/ContentView.swift @@ -163,9 +163,20 @@ struct ContentView: View { Text("\(format_last_pay())") .foregroundColor(Color.red) - Text("\(self.funds.channel_sats) sats") - .font(.title) - .padding() + HStack { + Text("\(self.funds.channel_sats)") + .font(.largeTitle) + .fontWeight(.bold) + + Text("sats") + .font(.subheadline) + } + + if let rate = self.rate { + Text("\(msats_to_fiat(msats: self.funds.channel_sats * 1000, xr: rate))") + .font(.footnote) + .foregroundColor(.gray) + } if self.funds.onchain_sats != 0 { Text("\(self.funds.onchain_sats) onchain") @@ -219,7 +230,7 @@ struct ContentView: View { } case .receive: - ReceiveView(lnlink: lnlink, rate: self.rate) + ReceiveView(rate: $rate, lnlink: lnlink) case .pay(let decode): PayView(decode: decode, lnlink: self.lnlink, rate: self.rate) diff --git a/lightninglink/Views/PayView.swift b/lightninglink/Views/PayView.swift @@ -365,7 +365,7 @@ struct PayView: View { if self.custom_amount_input != "", let msats = self.custom_amount_msats { if let rate = self.rate { - Text("\(sats_to_fiat(msats: msats, xr: rate))") + Text("\(msats_to_fiat(msats: msats, xr: rate))") .foregroundColor(.gray) } } diff --git a/lightninglink/Views/ReceiveView.swift b/lightninglink/Views/ReceiveView.swift @@ -23,9 +23,9 @@ struct ReceiveView: View { @State private var amount_str: String = "" @State private var making: Bool = false @FocusState private var is_kb_focused: Bool + @Binding var rate: ExchangeRate? let lnlink: LNLink - let rate: ExchangeRate? @Environment(\.presentationMode) var presentationMode @@ -71,7 +71,7 @@ struct ReceiveView: View { if self.amount_str != "", let msats = self.amount { if let rate = self.rate { - Text("\(sats_to_fiat(msats: msats, xr: rate))") + Text("\(msats_to_fiat(msats: msats, xr: rate))") .foregroundColor(.gray) } }