commit 0a202c0b93b14247852add3bdc032afb370076d8
parent 8e586b60022e3682d49c4e259917f3b847f1e4cb
Author: Marc Stibane <marc@taler.net>
Date: Sun, 15 Jun 2025 09:41:38 +0200
bankComplianceLanguage
Diffstat:
1 file changed, 24 insertions(+), 0 deletions(-)
diff --git a/TalerWallet1/Model/Model+Exchange.swift b/TalerWallet1/Model/Model+Exchange.swift
@@ -47,6 +47,21 @@ struct ExchangeTransition: Codable { // Notification
var oldExchangeState: ExchangeState
var newExchangeState: ExchangeState
}
+
+enum BankDialect: Codable, Hashable {
+ case gls
+ case unknown(value: String)
+
+ init(from decoder: Decoder) throws {
+ let container = try decoder.singleValueContainer()
+ let status = try? container.decode(String.self)
+ switch status {
+ case "gls": self = .gls
+ default:
+ self = .unknown(value: status ?? "unknown")
+ }
+ }
+}
// MARK: -
/// The result from wallet-core's ListExchanges
struct Exchange: Codable, Hashable, Identifiable {
@@ -73,9 +88,18 @@ struct Exchange: Codable, Hashable, Identifiable {
var peerPaymentsDisabled: Bool?
var noFees: Bool?
var ageRestrictionOptions: [Int]
+ var bankComplianceLanguage: BankDialect?
var lastUpdateTimestamp: Timestamp?
var lastUpdateErrorInfo: ExchangeError?
+// walletKycStatus?: ExchangeWalletKycStatus;
+// walletKycReservePub?: string;
+// walletKycAccessToken?: string;
+// walletKycUrl?: string;
+
+ /** Threshold that we've requested to satisfy. */
+// walletKycRequestedThreshold?: string;
+
var id: String { exchangeBaseUrl + tosStatus.rawValue }
var name: String? {
if let url = URL(string: exchangeBaseUrl) {