mirror of
https://github.com/Swiftgram/Telegram-iOS.git
synced 2025-07-06 11:30:40 +00:00
35 lines
911 B
Swift
35 lines
911 B
Swift
import Foundation
|
|
import Postbox
|
|
import TelegramApi
|
|
import SyncCore
|
|
import SwiftSignalKit
|
|
|
|
public struct BankCardInfo {
|
|
public let title: String
|
|
public let url: String?
|
|
public let actionTitle: String?
|
|
}
|
|
|
|
public func getBankCardInfo(account: Account, cardNumber: String) -> Signal<BankCardInfo?, NoError> {
|
|
return account.network.request(Api.functions.payments.getBankCardData(number: cardNumber))
|
|
|> map { result -> BankCardInfo? in
|
|
return BankCardInfo(apiBankCardData: result)
|
|
}
|
|
|> `catch` { _ -> Signal<BankCardInfo?, NoError> in
|
|
return .single(nil)
|
|
}
|
|
}
|
|
|
|
extension BankCardInfo {
|
|
init(apiBankCardData: Api.payments.BankCardData) {
|
|
switch apiBankCardData {
|
|
case let .bankCardData(flags, title, url, urlName):
|
|
self.title = title
|
|
self.url = url
|
|
self.actionTitle = urlName
|
|
}
|
|
}
|
|
}
|
|
|
|
|