Files
Leeksov 4647310322 GLEGram 12.5 — Initial public release
Based on Swiftgram 12.5 (Telegram iOS 12.5).
All GLEGram features ported and organized in GLEGram/ folder.

Features: Ghost Mode, Saved Deleted Messages, Content Protection Bypass,
Font Replacement, Fake Profile, Chat Export, Plugin System, and more.

See CHANGELOG_12.5.md for full details.
2026-04-06 09:48:12 +03:00

61 lines
2.0 KiB
Swift

import Foundation
import Postbox
import TelegramApi
import MtProtoKit
import SwiftSignalKit
func _internal_getBankCardInfo(account: Account, cardNumber: String) -> Signal<BankCardInfo?, NoError> {
return currentWebDocumentsHostDatacenterId(postbox: account.postbox, isTestingEnvironment: false)
|> mapToSignal { datacenterId in
let signal: Signal<Api.payments.BankCardData, MTRpcError>
if account.network.datacenterId != datacenterId {
signal = account.network.download(datacenterId: Int(datacenterId), isMedia: false, tag: nil)
|> castError(MTRpcError.self)
|> mapToSignal { worker in
return worker.request(Api.functions.payments.getBankCardData(number: cardNumber))
}
} else {
signal = account.network.request(Api.functions.payments.getBankCardData(number: cardNumber))
}
return signal
|> map { result -> BankCardInfo? in
return BankCardInfo(apiBankCardData: result)
}
|> `catch` { _ -> Signal<BankCardInfo?, NoError> in
return .single(nil)
}
}
}
public struct BankCardUrl {
public let title: String
public let url: String
}
public struct BankCardInfo {
public let title: String
public let urls: [BankCardUrl]
}
extension BankCardUrl {
init(apiBankCardOpenUrl: Api.BankCardOpenUrl) {
switch apiBankCardOpenUrl {
case let .bankCardOpenUrl(bankCardOpenUrlData):
let (url, name) = (bankCardOpenUrlData.url, bankCardOpenUrlData.name)
self.title = name
self.url = url
}
}
}
extension BankCardInfo {
init(apiBankCardData: Api.payments.BankCardData) {
switch apiBankCardData {
case let .bankCardData(bankCardDataData):
let (title, urls) = (bankCardDataData.title, bankCardDataData.openUrls)
self.title = title
self.urls = urls.map { BankCardUrl(apiBankCardOpenUrl: $0) }
}
}
}