summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMarc Stibane <marc@taler.net>2023-10-20 08:46:58 +0200
committerMarc Stibane <marc@taler.net>2023-10-20 09:29:10 +0200
commit0ebc3a84249e00a44d9fe4cdc4cc836211e83cf0 (patch)
tree216b44bb9823c2d94b91aa46b560d7d4653e33c5
parent49524f0959365952fc1797908e6c42649668b519 (diff)
downloadtaler-ios-0ebc3a84249e00a44d9fe4cdc4cc836211e83cf0.tar.gz
taler-ios-0ebc3a84249e00a44d9fe4cdc4cc836211e83cf0.tar.bz2
taler-ios-0ebc3a84249e00a44d9fe4cdc4cc836211e83cf0.zip
ExchangeListItem
-rw-r--r--TalerWallet1/Model/Model+Exchange.swift16
-rw-r--r--TalerWallet1/Model/Model+Withdraw.swift17
2 files changed, 16 insertions, 17 deletions
diff --git a/TalerWallet1/Model/Model+Exchange.swift b/TalerWallet1/Model/Model+Exchange.swift
index 1ab91f4..56af21d 100644
--- a/TalerWallet1/Model/Model+Exchange.swift
+++ b/TalerWallet1/Model/Model+Exchange.swift
@@ -59,7 +59,23 @@ struct Exchange: Codable, Hashable, Identifiable {
struct ExchangeError: Codable, Hashable {
var error: HTTPError
}
+struct ExchangeListItem: Codable, Hashable {
+ var exchangeBaseUrl: String
+ var currency: String
+ var paytoUris: [String]
+
+ public static func == (lhs: ExchangeListItem, rhs: ExchangeListItem) -> Bool {
+ return lhs.exchangeBaseUrl == rhs.exchangeBaseUrl &&
+ lhs.currency == rhs.currency &&
+ lhs.paytoUris == rhs.paytoUris
+ }
+ public func hash(into hasher: inout Hasher) {
+ hasher.combine(exchangeBaseUrl)
+ hasher.combine(currency)
+ hasher.combine(paytoUris)
+ }
+}
// MARK: -
/// A request to list exchanges.
fileprivate struct ListExchanges: WalletBackendFormattedRequest {
diff --git a/TalerWallet1/Model/Model+Withdraw.swift b/TalerWallet1/Model/Model+Withdraw.swift
index f0084eb..5afeea4 100644
--- a/TalerWallet1/Model/Model+Withdraw.swift
+++ b/TalerWallet1/Model/Model+Withdraw.swift
@@ -14,23 +14,6 @@ struct WithdrawUriInfoResponse: Decodable {
var defaultExchangeBaseUrl: String? // TODO: might be nil ❗️Yikes
var possibleExchanges: [ExchangeListItem] // TODO: query these for fees?
}
-struct ExchangeListItem: Codable, Hashable {
- var exchangeBaseUrl: String
- var currency: String
- var paytoUris: [String]
-
- public static func == (lhs: ExchangeListItem, rhs: ExchangeListItem) -> Bool {
- return lhs.exchangeBaseUrl == rhs.exchangeBaseUrl &&
- lhs.currency == rhs.currency &&
- lhs.paytoUris == rhs.paytoUris
- }
-
- public func hash(into hasher: inout Hasher) {
- hasher.combine(exchangeBaseUrl)
- hasher.combine(currency)
- hasher.combine(paytoUris)
- }
-}
/// A request to get an exchange's withdrawal details.
fileprivate struct GetWithdrawalDetailsForURI: WalletBackendFormattedRequest {
typealias Response = WithdrawUriInfoResponse