Swap XMR and XRP through kyc.rip without leaving the app
This commit is contained in:
@@ -81,6 +81,31 @@ enum WalletStore {
|
||||
defaults.set(data, forKey: cacheKey(chain))
|
||||
}
|
||||
|
||||
// MARK: - Swap orders (kyc.rip)
|
||||
|
||||
private static let swapOrdersKey = "koins.swapOrders"
|
||||
|
||||
static func swapOrders() -> [SwapOrder] {
|
||||
guard let data = defaults.data(forKey: swapOrdersKey),
|
||||
let orders = try? JSONDecoder().decode([SwapOrder].self, from: data) else { return [] }
|
||||
return orders
|
||||
}
|
||||
|
||||
static func saveSwapOrder(_ order: SwapOrder) {
|
||||
var orders = swapOrders()
|
||||
orders.removeAll { $0.id == order.id }
|
||||
orders.insert(order, at: 0)
|
||||
guard let data = try? JSONEncoder().encode(orders) else { return }
|
||||
defaults.set(data, forKey: swapOrdersKey)
|
||||
}
|
||||
|
||||
static func removeSwapOrder(id: String) {
|
||||
var orders = swapOrders()
|
||||
orders.removeAll { $0.id == id }
|
||||
guard let data = try? JSONEncoder().encode(orders) else { return }
|
||||
defaults.set(data, forKey: swapOrdersKey)
|
||||
}
|
||||
|
||||
static func secret(_ chain: Chain) -> String? {
|
||||
Keychain.get(secretKey(chain))
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user