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

40 lines
1.6 KiB
Swift

import Foundation
import Postbox
import SwiftSignalKit
import TelegramApi
import MtProtoKit
func _internal_setMainProfileTab(account: Account, peerId: PeerId, tab: TelegramProfileTab) -> Signal<Never, NoError> {
return account.postbox.loadedPeerWithId(peerId)
|> mapToSignal { peer in
return account.postbox.transaction { transaction -> Signal<Never, NoError> in
transaction.updatePeerCachedData(peerIds: Set([peerId]), update: { _, current in
if let current = current as? CachedUserData {
return current.withUpdatedMainProfileTab(tab)
} else if let current = current as? CachedChannelData {
return current.withUpdatedMainProfileTab(tab)
} else {
return current
}
})
if let inputChannel = apiInputChannel(peer) {
return account.network.request(Api.functions.channels.setMainProfileTab(channel: inputChannel, tab: tab.apiTab))
|> `catch` { error in
return .complete()
}
|> mapToSignal { _ -> Signal<Never, NoError> in
return .complete()
}
} else {
return account.network.request(Api.functions.account.setMainProfileTab(tab: tab.apiTab))
|> `catch` { error in
return .complete()
}
|> mapToSignal { _ -> Signal<Never, NoError> in
return .complete()
}
}
} |> switchToLatest
}
}