mirror of
https://github.com/TelegramMessenger/Telegram-iOS.git
synced 2026-07-06 03:33:41 +02:00
Refactor constructor use sites for types 540-559 to struct pattern
Migrated Api.phone.*, Api.photos.*, Api.stats.*, Api.premium.* constructors to use struct-wrapped enum pattern with --struct-count=560. Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
parent
64d8fe6ba0
commit
bb7e1ae300
11 changed files with 382 additions and 52 deletions
|
|
@ -957,7 +957,13 @@ public extension Api.payments {
|
|||
}
|
||||
public extension Api.phone {
|
||||
enum ExportedGroupCallInvite: TypeConstructorDescription {
|
||||
case exportedGroupCallInvite(link: String)
|
||||
public class Cons_exportedGroupCallInvite {
|
||||
public var link: String
|
||||
public init(link: String) {
|
||||
self.link = link
|
||||
}
|
||||
}
|
||||
case exportedGroupCallInvite(Cons_exportedGroupCallInvite)
|
||||
|
||||
public func serialize(_ buffer: Buffer, _ boxed: Swift.Bool) {
|
||||
#if DEBUG
|
||||
|
|
@ -986,7 +992,21 @@ public extension Api.phone {
|
|||
}
|
||||
public extension Api.phone {
|
||||
enum GroupCall: TypeConstructorDescription {
|
||||
case groupCall(call: Api.GroupCall, participants: [Api.GroupCallParticipant], participantsNextOffset: String, chats: [Api.Chat], users: [Api.User])
|
||||
public class Cons_groupCall {
|
||||
public var call: Api.GroupCall
|
||||
public var participants: [Api.GroupCallParticipant]
|
||||
public var participantsNextOffset: String
|
||||
public var chats: [Api.Chat]
|
||||
public var users: [Api.User]
|
||||
public init(call: Api.GroupCall, participants: [Api.GroupCallParticipant], participantsNextOffset: String, chats: [Api.Chat], users: [Api.User]) {
|
||||
self.call = call
|
||||
self.participants = participants
|
||||
self.participantsNextOffset = participantsNextOffset
|
||||
self.chats = chats
|
||||
self.users = users
|
||||
}
|
||||
}
|
||||
case groupCall(Cons_groupCall)
|
||||
|
||||
public func serialize(_ buffer: Buffer, _ boxed: Swift.Bool) {
|
||||
#if DEBUG
|
||||
|
|
@ -1015,7 +1035,19 @@ public extension Api.phone {
|
|||
}
|
||||
public extension Api.phone {
|
||||
enum GroupCallStars: TypeConstructorDescription {
|
||||
case groupCallStars(totalStars: Int64, topDonors: [Api.GroupCallDonor], chats: [Api.Chat], users: [Api.User])
|
||||
public class Cons_groupCallStars {
|
||||
public var totalStars: Int64
|
||||
public var topDonors: [Api.GroupCallDonor]
|
||||
public var chats: [Api.Chat]
|
||||
public var users: [Api.User]
|
||||
public init(totalStars: Int64, topDonors: [Api.GroupCallDonor], chats: [Api.Chat], users: [Api.User]) {
|
||||
self.totalStars = totalStars
|
||||
self.topDonors = topDonors
|
||||
self.chats = chats
|
||||
self.users = users
|
||||
}
|
||||
}
|
||||
case groupCallStars(Cons_groupCallStars)
|
||||
|
||||
public func serialize(_ buffer: Buffer, _ boxed: Swift.Bool) {
|
||||
#if DEBUG
|
||||
|
|
@ -1044,7 +1076,13 @@ public extension Api.phone {
|
|||
}
|
||||
public extension Api.phone {
|
||||
enum GroupCallStreamChannels: TypeConstructorDescription {
|
||||
case groupCallStreamChannels(channels: [Api.GroupCallStreamChannel])
|
||||
public class Cons_groupCallStreamChannels {
|
||||
public var channels: [Api.GroupCallStreamChannel]
|
||||
public init(channels: [Api.GroupCallStreamChannel]) {
|
||||
self.channels = channels
|
||||
}
|
||||
}
|
||||
case groupCallStreamChannels(Cons_groupCallStreamChannels)
|
||||
|
||||
public func serialize(_ buffer: Buffer, _ boxed: Swift.Bool) {
|
||||
#if DEBUG
|
||||
|
|
@ -1073,7 +1111,15 @@ public extension Api.phone {
|
|||
}
|
||||
public extension Api.phone {
|
||||
enum GroupCallStreamRtmpUrl: TypeConstructorDescription {
|
||||
case groupCallStreamRtmpUrl(url: String, key: String)
|
||||
public class Cons_groupCallStreamRtmpUrl {
|
||||
public var url: String
|
||||
public var key: String
|
||||
public init(url: String, key: String) {
|
||||
self.url = url
|
||||
self.key = key
|
||||
}
|
||||
}
|
||||
case groupCallStreamRtmpUrl(Cons_groupCallStreamRtmpUrl)
|
||||
|
||||
public func serialize(_ buffer: Buffer, _ boxed: Swift.Bool) {
|
||||
#if DEBUG
|
||||
|
|
@ -1102,7 +1148,23 @@ public extension Api.phone {
|
|||
}
|
||||
public extension Api.phone {
|
||||
enum GroupParticipants: TypeConstructorDescription {
|
||||
case groupParticipants(count: Int32, participants: [Api.GroupCallParticipant], nextOffset: String, chats: [Api.Chat], users: [Api.User], version: Int32)
|
||||
public class Cons_groupParticipants {
|
||||
public var count: Int32
|
||||
public var participants: [Api.GroupCallParticipant]
|
||||
public var nextOffset: String
|
||||
public var chats: [Api.Chat]
|
||||
public var users: [Api.User]
|
||||
public var version: Int32
|
||||
public init(count: Int32, participants: [Api.GroupCallParticipant], nextOffset: String, chats: [Api.Chat], users: [Api.User], version: Int32) {
|
||||
self.count = count
|
||||
self.participants = participants
|
||||
self.nextOffset = nextOffset
|
||||
self.chats = chats
|
||||
self.users = users
|
||||
self.version = version
|
||||
}
|
||||
}
|
||||
case groupParticipants(Cons_groupParticipants)
|
||||
|
||||
public func serialize(_ buffer: Buffer, _ boxed: Swift.Bool) {
|
||||
#if DEBUG
|
||||
|
|
|
|||
|
|
@ -1,6 +1,16 @@
|
|||
public extension Api.phone {
|
||||
enum JoinAsPeers: TypeConstructorDescription {
|
||||
case joinAsPeers(peers: [Api.Peer], chats: [Api.Chat], users: [Api.User])
|
||||
public class Cons_joinAsPeers {
|
||||
public var peers: [Api.Peer]
|
||||
public var chats: [Api.Chat]
|
||||
public var users: [Api.User]
|
||||
public init(peers: [Api.Peer], chats: [Api.Chat], users: [Api.User]) {
|
||||
self.peers = peers
|
||||
self.chats = chats
|
||||
self.users = users
|
||||
}
|
||||
}
|
||||
case joinAsPeers(Cons_joinAsPeers)
|
||||
|
||||
public func serialize(_ buffer: Buffer, _ boxed: Swift.Bool) {
|
||||
#if DEBUG
|
||||
|
|
@ -29,7 +39,15 @@ public extension Api.phone {
|
|||
}
|
||||
public extension Api.phone {
|
||||
enum PhoneCall: TypeConstructorDescription {
|
||||
case phoneCall(phoneCall: Api.PhoneCall, users: [Api.User])
|
||||
public class Cons_phoneCall {
|
||||
public var phoneCall: Api.PhoneCall
|
||||
public var users: [Api.User]
|
||||
public init(phoneCall: Api.PhoneCall, users: [Api.User]) {
|
||||
self.phoneCall = phoneCall
|
||||
self.users = users
|
||||
}
|
||||
}
|
||||
case phoneCall(Cons_phoneCall)
|
||||
|
||||
public func serialize(_ buffer: Buffer, _ boxed: Swift.Bool) {
|
||||
#if DEBUG
|
||||
|
|
@ -58,7 +76,15 @@ public extension Api.phone {
|
|||
}
|
||||
public extension Api.photos {
|
||||
enum Photo: TypeConstructorDescription {
|
||||
case photo(photo: Api.Photo, users: [Api.User])
|
||||
public class Cons_photo {
|
||||
public var photo: Api.Photo
|
||||
public var users: [Api.User]
|
||||
public init(photo: Api.Photo, users: [Api.User]) {
|
||||
self.photo = photo
|
||||
self.users = users
|
||||
}
|
||||
}
|
||||
case photo(Cons_photo)
|
||||
|
||||
public func serialize(_ buffer: Buffer, _ boxed: Swift.Bool) {
|
||||
#if DEBUG
|
||||
|
|
@ -87,8 +113,26 @@ public extension Api.photos {
|
|||
}
|
||||
public extension Api.photos {
|
||||
enum Photos: TypeConstructorDescription {
|
||||
case photos(photos: [Api.Photo], users: [Api.User])
|
||||
case photosSlice(count: Int32, photos: [Api.Photo], users: [Api.User])
|
||||
public class Cons_photos {
|
||||
public var photos: [Api.Photo]
|
||||
public var users: [Api.User]
|
||||
public init(photos: [Api.Photo], users: [Api.User]) {
|
||||
self.photos = photos
|
||||
self.users = users
|
||||
}
|
||||
}
|
||||
public class Cons_photosSlice {
|
||||
public var count: Int32
|
||||
public var photos: [Api.Photo]
|
||||
public var users: [Api.User]
|
||||
public init(count: Int32, photos: [Api.Photo], users: [Api.User]) {
|
||||
self.count = count
|
||||
self.photos = photos
|
||||
self.users = users
|
||||
}
|
||||
}
|
||||
case photos(Cons_photos)
|
||||
case photosSlice(Cons_photosSlice)
|
||||
|
||||
public func serialize(_ buffer: Buffer, _ boxed: Swift.Bool) {
|
||||
#if DEBUG
|
||||
|
|
@ -124,7 +168,21 @@ public extension Api.photos {
|
|||
}
|
||||
public extension Api.premium {
|
||||
enum BoostsList: TypeConstructorDescription {
|
||||
case boostsList(flags: Int32, count: Int32, boosts: [Api.Boost], nextOffset: String?, users: [Api.User])
|
||||
public class Cons_boostsList {
|
||||
public var flags: Int32
|
||||
public var count: Int32
|
||||
public var boosts: [Api.Boost]
|
||||
public var nextOffset: String?
|
||||
public var users: [Api.User]
|
||||
public init(flags: Int32, count: Int32, boosts: [Api.Boost], nextOffset: String?, users: [Api.User]) {
|
||||
self.flags = flags
|
||||
self.count = count
|
||||
self.boosts = boosts
|
||||
self.nextOffset = nextOffset
|
||||
self.users = users
|
||||
}
|
||||
}
|
||||
case boostsList(Cons_boostsList)
|
||||
|
||||
public func serialize(_ buffer: Buffer, _ boxed: Swift.Bool) {
|
||||
#if DEBUG
|
||||
|
|
@ -153,7 +211,31 @@ public extension Api.premium {
|
|||
}
|
||||
public extension Api.premium {
|
||||
enum BoostsStatus: TypeConstructorDescription {
|
||||
case boostsStatus(flags: Int32, level: Int32, currentLevelBoosts: Int32, boosts: Int32, giftBoosts: Int32?, nextLevelBoosts: Int32?, premiumAudience: Api.StatsPercentValue?, boostUrl: String, prepaidGiveaways: [Api.PrepaidGiveaway]?, myBoostSlots: [Int32]?)
|
||||
public class Cons_boostsStatus {
|
||||
public var flags: Int32
|
||||
public var level: Int32
|
||||
public var currentLevelBoosts: Int32
|
||||
public var boosts: Int32
|
||||
public var giftBoosts: Int32?
|
||||
public var nextLevelBoosts: Int32?
|
||||
public var premiumAudience: Api.StatsPercentValue?
|
||||
public var boostUrl: String
|
||||
public var prepaidGiveaways: [Api.PrepaidGiveaway]?
|
||||
public var myBoostSlots: [Int32]?
|
||||
public init(flags: Int32, level: Int32, currentLevelBoosts: Int32, boosts: Int32, giftBoosts: Int32?, nextLevelBoosts: Int32?, premiumAudience: Api.StatsPercentValue?, boostUrl: String, prepaidGiveaways: [Api.PrepaidGiveaway]?, myBoostSlots: [Int32]?) {
|
||||
self.flags = flags
|
||||
self.level = level
|
||||
self.currentLevelBoosts = currentLevelBoosts
|
||||
self.boosts = boosts
|
||||
self.giftBoosts = giftBoosts
|
||||
self.nextLevelBoosts = nextLevelBoosts
|
||||
self.premiumAudience = premiumAudience
|
||||
self.boostUrl = boostUrl
|
||||
self.prepaidGiveaways = prepaidGiveaways
|
||||
self.myBoostSlots = myBoostSlots
|
||||
}
|
||||
}
|
||||
case boostsStatus(Cons_boostsStatus)
|
||||
|
||||
public func serialize(_ buffer: Buffer, _ boxed: Swift.Bool) {
|
||||
#if DEBUG
|
||||
|
|
@ -182,7 +264,17 @@ public extension Api.premium {
|
|||
}
|
||||
public extension Api.premium {
|
||||
enum MyBoosts: TypeConstructorDescription {
|
||||
case myBoosts(myBoosts: [Api.MyBoost], chats: [Api.Chat], users: [Api.User])
|
||||
public class Cons_myBoosts {
|
||||
public var myBoosts: [Api.MyBoost]
|
||||
public var chats: [Api.Chat]
|
||||
public var users: [Api.User]
|
||||
public init(myBoosts: [Api.MyBoost], chats: [Api.Chat], users: [Api.User]) {
|
||||
self.myBoosts = myBoosts
|
||||
self.chats = chats
|
||||
self.users = users
|
||||
}
|
||||
}
|
||||
case myBoosts(Cons_myBoosts)
|
||||
|
||||
public func serialize(_ buffer: Buffer, _ boxed: Swift.Bool) {
|
||||
#if DEBUG
|
||||
|
|
@ -211,7 +303,15 @@ public extension Api.premium {
|
|||
}
|
||||
public extension Api.smsjobs {
|
||||
enum EligibilityToJoin: TypeConstructorDescription {
|
||||
case eligibleToJoin(termsUrl: String, monthlySentSms: Int32)
|
||||
public class Cons_eligibleToJoin {
|
||||
public var termsUrl: String
|
||||
public var monthlySentSms: Int32
|
||||
public init(termsUrl: String, monthlySentSms: Int32) {
|
||||
self.termsUrl = termsUrl
|
||||
self.monthlySentSms = monthlySentSms
|
||||
}
|
||||
}
|
||||
case eligibleToJoin(Cons_eligibleToJoin)
|
||||
|
||||
public func serialize(_ buffer: Buffer, _ boxed: Swift.Bool) {
|
||||
#if DEBUG
|
||||
|
|
@ -240,7 +340,27 @@ public extension Api.smsjobs {
|
|||
}
|
||||
public extension Api.smsjobs {
|
||||
enum Status: TypeConstructorDescription {
|
||||
case status(flags: Int32, recentSent: Int32, recentSince: Int32, recentRemains: Int32, totalSent: Int32, totalSince: Int32, lastGiftSlug: String?, termsUrl: String)
|
||||
public class Cons_status {
|
||||
public var flags: Int32
|
||||
public var recentSent: Int32
|
||||
public var recentSince: Int32
|
||||
public var recentRemains: Int32
|
||||
public var totalSent: Int32
|
||||
public var totalSince: Int32
|
||||
public var lastGiftSlug: String?
|
||||
public var termsUrl: String
|
||||
public init(flags: Int32, recentSent: Int32, recentSince: Int32, recentRemains: Int32, totalSent: Int32, totalSince: Int32, lastGiftSlug: String?, termsUrl: String) {
|
||||
self.flags = flags
|
||||
self.recentSent = recentSent
|
||||
self.recentSince = recentSince
|
||||
self.recentRemains = recentRemains
|
||||
self.totalSent = totalSent
|
||||
self.totalSince = totalSince
|
||||
self.lastGiftSlug = lastGiftSlug
|
||||
self.termsUrl = termsUrl
|
||||
}
|
||||
}
|
||||
case status(Cons_status)
|
||||
|
||||
public func serialize(_ buffer: Buffer, _ boxed: Swift.Bool) {
|
||||
#if DEBUG
|
||||
|
|
@ -269,7 +389,55 @@ public extension Api.smsjobs {
|
|||
}
|
||||
public extension Api.stats {
|
||||
enum BroadcastStats: TypeConstructorDescription {
|
||||
case broadcastStats(period: Api.StatsDateRangeDays, followers: Api.StatsAbsValueAndPrev, viewsPerPost: Api.StatsAbsValueAndPrev, sharesPerPost: Api.StatsAbsValueAndPrev, reactionsPerPost: Api.StatsAbsValueAndPrev, viewsPerStory: Api.StatsAbsValueAndPrev, sharesPerStory: Api.StatsAbsValueAndPrev, reactionsPerStory: Api.StatsAbsValueAndPrev, enabledNotifications: Api.StatsPercentValue, growthGraph: Api.StatsGraph, followersGraph: Api.StatsGraph, muteGraph: Api.StatsGraph, topHoursGraph: Api.StatsGraph, interactionsGraph: Api.StatsGraph, ivInteractionsGraph: Api.StatsGraph, viewsBySourceGraph: Api.StatsGraph, newFollowersBySourceGraph: Api.StatsGraph, languagesGraph: Api.StatsGraph, reactionsByEmotionGraph: Api.StatsGraph, storyInteractionsGraph: Api.StatsGraph, storyReactionsByEmotionGraph: Api.StatsGraph, recentPostsInteractions: [Api.PostInteractionCounters])
|
||||
public class Cons_broadcastStats {
|
||||
public var period: Api.StatsDateRangeDays
|
||||
public var followers: Api.StatsAbsValueAndPrev
|
||||
public var viewsPerPost: Api.StatsAbsValueAndPrev
|
||||
public var sharesPerPost: Api.StatsAbsValueAndPrev
|
||||
public var reactionsPerPost: Api.StatsAbsValueAndPrev
|
||||
public var viewsPerStory: Api.StatsAbsValueAndPrev
|
||||
public var sharesPerStory: Api.StatsAbsValueAndPrev
|
||||
public var reactionsPerStory: Api.StatsAbsValueAndPrev
|
||||
public var enabledNotifications: Api.StatsPercentValue
|
||||
public var growthGraph: Api.StatsGraph
|
||||
public var followersGraph: Api.StatsGraph
|
||||
public var muteGraph: Api.StatsGraph
|
||||
public var topHoursGraph: Api.StatsGraph
|
||||
public var interactionsGraph: Api.StatsGraph
|
||||
public var ivInteractionsGraph: Api.StatsGraph
|
||||
public var viewsBySourceGraph: Api.StatsGraph
|
||||
public var newFollowersBySourceGraph: Api.StatsGraph
|
||||
public var languagesGraph: Api.StatsGraph
|
||||
public var reactionsByEmotionGraph: Api.StatsGraph
|
||||
public var storyInteractionsGraph: Api.StatsGraph
|
||||
public var storyReactionsByEmotionGraph: Api.StatsGraph
|
||||
public var recentPostsInteractions: [Api.PostInteractionCounters]
|
||||
public init(period: Api.StatsDateRangeDays, followers: Api.StatsAbsValueAndPrev, viewsPerPost: Api.StatsAbsValueAndPrev, sharesPerPost: Api.StatsAbsValueAndPrev, reactionsPerPost: Api.StatsAbsValueAndPrev, viewsPerStory: Api.StatsAbsValueAndPrev, sharesPerStory: Api.StatsAbsValueAndPrev, reactionsPerStory: Api.StatsAbsValueAndPrev, enabledNotifications: Api.StatsPercentValue, growthGraph: Api.StatsGraph, followersGraph: Api.StatsGraph, muteGraph: Api.StatsGraph, topHoursGraph: Api.StatsGraph, interactionsGraph: Api.StatsGraph, ivInteractionsGraph: Api.StatsGraph, viewsBySourceGraph: Api.StatsGraph, newFollowersBySourceGraph: Api.StatsGraph, languagesGraph: Api.StatsGraph, reactionsByEmotionGraph: Api.StatsGraph, storyInteractionsGraph: Api.StatsGraph, storyReactionsByEmotionGraph: Api.StatsGraph, recentPostsInteractions: [Api.PostInteractionCounters]) {
|
||||
self.period = period
|
||||
self.followers = followers
|
||||
self.viewsPerPost = viewsPerPost
|
||||
self.sharesPerPost = sharesPerPost
|
||||
self.reactionsPerPost = reactionsPerPost
|
||||
self.viewsPerStory = viewsPerStory
|
||||
self.sharesPerStory = sharesPerStory
|
||||
self.reactionsPerStory = reactionsPerStory
|
||||
self.enabledNotifications = enabledNotifications
|
||||
self.growthGraph = growthGraph
|
||||
self.followersGraph = followersGraph
|
||||
self.muteGraph = muteGraph
|
||||
self.topHoursGraph = topHoursGraph
|
||||
self.interactionsGraph = interactionsGraph
|
||||
self.ivInteractionsGraph = ivInteractionsGraph
|
||||
self.viewsBySourceGraph = viewsBySourceGraph
|
||||
self.newFollowersBySourceGraph = newFollowersBySourceGraph
|
||||
self.languagesGraph = languagesGraph
|
||||
self.reactionsByEmotionGraph = reactionsByEmotionGraph
|
||||
self.storyInteractionsGraph = storyInteractionsGraph
|
||||
self.storyReactionsByEmotionGraph = storyReactionsByEmotionGraph
|
||||
self.recentPostsInteractions = recentPostsInteractions
|
||||
}
|
||||
}
|
||||
case broadcastStats(Cons_broadcastStats)
|
||||
|
||||
public func serialize(_ buffer: Buffer, _ boxed: Swift.Bool) {
|
||||
#if DEBUG
|
||||
|
|
@ -298,7 +466,45 @@ public extension Api.stats {
|
|||
}
|
||||
public extension Api.stats {
|
||||
enum MegagroupStats: TypeConstructorDescription {
|
||||
case megagroupStats(period: Api.StatsDateRangeDays, members: Api.StatsAbsValueAndPrev, messages: Api.StatsAbsValueAndPrev, viewers: Api.StatsAbsValueAndPrev, posters: Api.StatsAbsValueAndPrev, growthGraph: Api.StatsGraph, membersGraph: Api.StatsGraph, newMembersBySourceGraph: Api.StatsGraph, languagesGraph: Api.StatsGraph, messagesGraph: Api.StatsGraph, actionsGraph: Api.StatsGraph, topHoursGraph: Api.StatsGraph, weekdaysGraph: Api.StatsGraph, topPosters: [Api.StatsGroupTopPoster], topAdmins: [Api.StatsGroupTopAdmin], topInviters: [Api.StatsGroupTopInviter], users: [Api.User])
|
||||
public class Cons_megagroupStats {
|
||||
public var period: Api.StatsDateRangeDays
|
||||
public var members: Api.StatsAbsValueAndPrev
|
||||
public var messages: Api.StatsAbsValueAndPrev
|
||||
public var viewers: Api.StatsAbsValueAndPrev
|
||||
public var posters: Api.StatsAbsValueAndPrev
|
||||
public var growthGraph: Api.StatsGraph
|
||||
public var membersGraph: Api.StatsGraph
|
||||
public var newMembersBySourceGraph: Api.StatsGraph
|
||||
public var languagesGraph: Api.StatsGraph
|
||||
public var messagesGraph: Api.StatsGraph
|
||||
public var actionsGraph: Api.StatsGraph
|
||||
public var topHoursGraph: Api.StatsGraph
|
||||
public var weekdaysGraph: Api.StatsGraph
|
||||
public var topPosters: [Api.StatsGroupTopPoster]
|
||||
public var topAdmins: [Api.StatsGroupTopAdmin]
|
||||
public var topInviters: [Api.StatsGroupTopInviter]
|
||||
public var users: [Api.User]
|
||||
public init(period: Api.StatsDateRangeDays, members: Api.StatsAbsValueAndPrev, messages: Api.StatsAbsValueAndPrev, viewers: Api.StatsAbsValueAndPrev, posters: Api.StatsAbsValueAndPrev, growthGraph: Api.StatsGraph, membersGraph: Api.StatsGraph, newMembersBySourceGraph: Api.StatsGraph, languagesGraph: Api.StatsGraph, messagesGraph: Api.StatsGraph, actionsGraph: Api.StatsGraph, topHoursGraph: Api.StatsGraph, weekdaysGraph: Api.StatsGraph, topPosters: [Api.StatsGroupTopPoster], topAdmins: [Api.StatsGroupTopAdmin], topInviters: [Api.StatsGroupTopInviter], users: [Api.User]) {
|
||||
self.period = period
|
||||
self.members = members
|
||||
self.messages = messages
|
||||
self.viewers = viewers
|
||||
self.posters = posters
|
||||
self.growthGraph = growthGraph
|
||||
self.membersGraph = membersGraph
|
||||
self.newMembersBySourceGraph = newMembersBySourceGraph
|
||||
self.languagesGraph = languagesGraph
|
||||
self.messagesGraph = messagesGraph
|
||||
self.actionsGraph = actionsGraph
|
||||
self.topHoursGraph = topHoursGraph
|
||||
self.weekdaysGraph = weekdaysGraph
|
||||
self.topPosters = topPosters
|
||||
self.topAdmins = topAdmins
|
||||
self.topInviters = topInviters
|
||||
self.users = users
|
||||
}
|
||||
}
|
||||
case megagroupStats(Cons_megagroupStats)
|
||||
|
||||
public func serialize(_ buffer: Buffer, _ boxed: Swift.Bool) {
|
||||
#if DEBUG
|
||||
|
|
@ -327,7 +533,15 @@ public extension Api.stats {
|
|||
}
|
||||
public extension Api.stats {
|
||||
enum MessageStats: TypeConstructorDescription {
|
||||
case messageStats(viewsGraph: Api.StatsGraph, reactionsByEmotionGraph: Api.StatsGraph)
|
||||
public class Cons_messageStats {
|
||||
public var viewsGraph: Api.StatsGraph
|
||||
public var reactionsByEmotionGraph: Api.StatsGraph
|
||||
public init(viewsGraph: Api.StatsGraph, reactionsByEmotionGraph: Api.StatsGraph) {
|
||||
self.viewsGraph = viewsGraph
|
||||
self.reactionsByEmotionGraph = reactionsByEmotionGraph
|
||||
}
|
||||
}
|
||||
case messageStats(Cons_messageStats)
|
||||
|
||||
public func serialize(_ buffer: Buffer, _ boxed: Swift.Bool) {
|
||||
#if DEBUG
|
||||
|
|
@ -356,7 +570,23 @@ public extension Api.stats {
|
|||
}
|
||||
public extension Api.stats {
|
||||
enum PublicForwards: TypeConstructorDescription {
|
||||
case publicForwards(flags: Int32, count: Int32, forwards: [Api.PublicForward], nextOffset: String?, chats: [Api.Chat], users: [Api.User])
|
||||
public class Cons_publicForwards {
|
||||
public var flags: Int32
|
||||
public var count: Int32
|
||||
public var forwards: [Api.PublicForward]
|
||||
public var nextOffset: String?
|
||||
public var chats: [Api.Chat]
|
||||
public var users: [Api.User]
|
||||
public init(flags: Int32, count: Int32, forwards: [Api.PublicForward], nextOffset: String?, chats: [Api.Chat], users: [Api.User]) {
|
||||
self.flags = flags
|
||||
self.count = count
|
||||
self.forwards = forwards
|
||||
self.nextOffset = nextOffset
|
||||
self.chats = chats
|
||||
self.users = users
|
||||
}
|
||||
}
|
||||
case publicForwards(Cons_publicForwards)
|
||||
|
||||
public func serialize(_ buffer: Buffer, _ boxed: Swift.Bool) {
|
||||
#if DEBUG
|
||||
|
|
@ -385,7 +615,15 @@ public extension Api.stats {
|
|||
}
|
||||
public extension Api.stats {
|
||||
enum StoryStats: TypeConstructorDescription {
|
||||
case storyStats(viewsGraph: Api.StatsGraph, reactionsByEmotionGraph: Api.StatsGraph)
|
||||
public class Cons_storyStats {
|
||||
public var viewsGraph: Api.StatsGraph
|
||||
public var reactionsByEmotionGraph: Api.StatsGraph
|
||||
public init(viewsGraph: Api.StatsGraph, reactionsByEmotionGraph: Api.StatsGraph) {
|
||||
self.viewsGraph = viewsGraph
|
||||
self.reactionsByEmotionGraph = reactionsByEmotionGraph
|
||||
}
|
||||
}
|
||||
case storyStats(Cons_storyStats)
|
||||
|
||||
public func serialize(_ buffer: Buffer, _ boxed: Swift.Bool) {
|
||||
#if DEBUG
|
||||
|
|
|
|||
|
|
@ -1622,7 +1622,8 @@ private func acceptCallSession(accountPeerId: PeerId, postbox: Postbox, network:
|
|||
if let call = call {
|
||||
return postbox.transaction { transaction -> AcceptCallResult in
|
||||
switch call {
|
||||
case let .phoneCall(phoneCall, users):
|
||||
case let .phoneCall(phoneCallData):
|
||||
let (phoneCall, users) = (phoneCallData.phoneCall, phoneCallData.users)
|
||||
updatePeers(transaction: transaction, accountPeerId: accountPeerId, peers: AccumulatedPeers(users: users))
|
||||
|
||||
switch phoneCall {
|
||||
|
|
@ -1693,7 +1694,8 @@ private func requestCallSession(postbox: Postbox, network: Network, peerId: Peer
|
|||
return network.request(Api.functions.phone.requestCall(flags: callFlags, userId: inputUser, randomId: Int32(bitPattern: arc4random()), gAHash: Buffer(data: gAHash), protocol: .phoneCallProtocol(.init(flags: (1 << 0) | (1 << 1), minLayer: minLayer, maxLayer: maxLayer, libraryVersions: versions))))
|
||||
|> map { result -> RequestCallSessionResult in
|
||||
switch result {
|
||||
case let .phoneCall(phoneCall, _):
|
||||
case let .phoneCall(phoneCallData):
|
||||
let (phoneCall, _) = (phoneCallData.phoneCall, phoneCallData.users)
|
||||
switch phoneCall {
|
||||
case let .phoneCallRequested(phoneCallRequestedData):
|
||||
let (id, accessHash) = (phoneCallRequestedData.id, phoneCallRequestedData.accessHash)
|
||||
|
|
@ -1737,7 +1739,8 @@ private func confirmCallSession(network: Network, stableId: CallSessionStableId,
|
|||
|> map { result -> Api.PhoneCall? in
|
||||
if let result = result {
|
||||
switch result {
|
||||
case let .phoneCall(phoneCall, _):
|
||||
case let .phoneCall(phoneCallData):
|
||||
let (phoneCall, _) = (phoneCallData.phoneCall, phoneCallData.users)
|
||||
return phoneCall
|
||||
}
|
||||
} else {
|
||||
|
|
|
|||
|
|
@ -100,7 +100,8 @@ func _internal_getChannelBoostStatus(account: Account, peerId: PeerId) -> Signal
|
|||
return nil
|
||||
}
|
||||
switch result {
|
||||
case let .boostsStatus(flags, level, currentLevelBoosts, boosts, giftBoosts, nextLevelBoosts, premiumAudience, boostUrl, prepaidGiveaways, myBoostSlots):
|
||||
case let .boostsStatus(boostsStatusData):
|
||||
let (flags, level, currentLevelBoosts, boosts, giftBoosts, nextLevelBoosts, premiumAudience, boostUrl, prepaidGiveaways, myBoostSlots) = (boostsStatusData.flags, boostsStatusData.level, boostsStatusData.currentLevelBoosts, boostsStatusData.boosts, boostsStatusData.giftBoosts, boostsStatusData.nextLevelBoosts, boostsStatusData.premiumAudience, boostsStatusData.boostUrl, boostsStatusData.prepaidGiveaways, boostsStatusData.myBoostSlots)
|
||||
let _ = myBoostSlots
|
||||
return ChannelBoostStatus(level: Int(level), boosts: Int(boosts), giftBoosts: giftBoosts.flatMap(Int.init), currentLevelBoosts: Int(currentLevelBoosts), nextLevelBoosts: nextLevelBoosts.flatMap(Int.init), premiumAudience: premiumAudience.flatMap({ StatsPercentValue(apiPercentValue: $0) }), url: boostUrl, prepaidGiveaways: prepaidGiveaways?.map({ PrepaidGiveaway(apiPrepaidGiveaway: $0) }) ?? [], boostedByMe: (flags & (1 << 2)) != 0)
|
||||
}
|
||||
|
|
@ -274,7 +275,8 @@ private final class ChannelBoostersContextImpl {
|
|||
return ([], 0, nil)
|
||||
}
|
||||
switch result {
|
||||
case let .boostsList(_, count, boosts, nextOffset, users):
|
||||
case let .boostsList(boostsListData):
|
||||
let (_, count, boosts, nextOffset, users) = (boostsListData.flags, boostsListData.count, boostsListData.boosts, boostsListData.nextOffset, boostsListData.users)
|
||||
updatePeers(transaction: transaction, accountPeerId: accountPeerId, peers: AccumulatedPeers(users: users))
|
||||
var resultBoosts: [ChannelBoostersContext.State.Boost] = []
|
||||
for boost in boosts {
|
||||
|
|
@ -547,7 +549,8 @@ extension MyBoostStatus {
|
|||
init(apiMyBoostStatus: Api.premium.MyBoosts, accountPeerId: PeerId, transaction: Transaction) {
|
||||
var boostsResult: [MyBoostStatus.Boost] = []
|
||||
switch apiMyBoostStatus {
|
||||
case let .myBoosts(myBoosts, chats, users):
|
||||
case let .myBoosts(myBoostsData):
|
||||
let (myBoosts, chats, users) = (myBoostsData.myBoosts, myBoostsData.chats, myBoostsData.users)
|
||||
let parsedPeers = AccumulatedPeers(transaction: transaction, chats: chats, users: users)
|
||||
updatePeers(transaction: transaction, accountPeerId: accountPeerId, peers: parsedPeers)
|
||||
for boost in myBoosts {
|
||||
|
|
|
|||
|
|
@ -98,7 +98,8 @@ private func requestMessageStats(postbox: Postbox, network: Network, messageId:
|
|||
|
||||
return signal
|
||||
|> mapToSignal { result -> Signal<MessageStats?, MTRpcError> in
|
||||
if case let .messageStats(apiInteractionsGraph, apiReactionsGraph) = result {
|
||||
if case let .messageStats(messageStatsData) = result {
|
||||
let (apiInteractionsGraph, apiReactionsGraph) = (messageStatsData.viewsGraph, messageStatsData.reactionsByEmotionGraph)
|
||||
let interactionsGraph = StatsGraph(apiStatsGraph: apiInteractionsGraph)
|
||||
var interactionsGraphDelta: Int64 = 86400
|
||||
if case let .Loaded(_, data) = interactionsGraph {
|
||||
|
|
|
|||
|
|
@ -836,7 +836,8 @@ private func requestGroupStats(accountPeerId: PeerId, postbox: Postbox, network:
|
|||
return signal
|
||||
|> mapToSignal { result -> Signal<GroupStats?, MTRpcError> in
|
||||
return postbox.transaction { transaction -> GroupStats? in
|
||||
if case let .megagroupStats(_, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, users) = result {
|
||||
if case let .megagroupStats(megagroupStatsData) = result {
|
||||
let users = megagroupStatsData.users
|
||||
updatePeers(transaction: transaction, accountPeerId: accountPeerId, peers: AccumulatedPeers(users: users))
|
||||
}
|
||||
return GroupStats(apiMegagroupStats: result)
|
||||
|
|
@ -1203,7 +1204,8 @@ extension ChannelStatsPostInteractions {
|
|||
extension ChannelStats {
|
||||
init(apiBroadcastStats: Api.stats.BroadcastStats, peerId: PeerId) {
|
||||
switch apiBroadcastStats {
|
||||
case let .broadcastStats(period, followers, viewsPerPost, sharesPerPost, reactionsPerPost, viewsPerStory, sharesPerStory, reactionsPerStory, enabledNotifications, apiGrowthGraph, apiFollowersGraph, apiMuteGraph, apiTopHoursGraph, apiInteractionsGraph, apiInstantViewInteractionsGraph, apiViewsBySourceGraph, apiNewFollowersBySourceGraph, apiLanguagesGraph, apiReactionsByEmotionGraph, apiStoryInteractionsGraph, apiStoryReactionsByEmotionGraph, recentPostInteractions):
|
||||
case let .broadcastStats(broadcastStatsData):
|
||||
let (period, followers, viewsPerPost, sharesPerPost, reactionsPerPost, viewsPerStory, sharesPerStory, reactionsPerStory, enabledNotifications, apiGrowthGraph, apiFollowersGraph, apiMuteGraph, apiTopHoursGraph, apiInteractionsGraph, apiInstantViewInteractionsGraph, apiViewsBySourceGraph, apiNewFollowersBySourceGraph, apiLanguagesGraph, apiReactionsByEmotionGraph, apiStoryInteractionsGraph, apiStoryReactionsByEmotionGraph, recentPostInteractions) = (broadcastStatsData.period, broadcastStatsData.followers, broadcastStatsData.viewsPerPost, broadcastStatsData.sharesPerPost, broadcastStatsData.reactionsPerPost, broadcastStatsData.viewsPerStory, broadcastStatsData.sharesPerStory, broadcastStatsData.reactionsPerStory, broadcastStatsData.enabledNotifications, broadcastStatsData.growthGraph, broadcastStatsData.followersGraph, broadcastStatsData.muteGraph, broadcastStatsData.topHoursGraph, broadcastStatsData.interactionsGraph, broadcastStatsData.ivInteractionsGraph, broadcastStatsData.viewsBySourceGraph, broadcastStatsData.newFollowersBySourceGraph, broadcastStatsData.languagesGraph, broadcastStatsData.reactionsByEmotionGraph, broadcastStatsData.storyInteractionsGraph, broadcastStatsData.storyReactionsByEmotionGraph, broadcastStatsData.recentPostsInteractions)
|
||||
let growthGraph = StatsGraph(apiStatsGraph: apiGrowthGraph)
|
||||
let isEmpty = growthGraph.isEmpty
|
||||
|
||||
|
|
@ -1267,9 +1269,10 @@ extension GroupStatsTopInviter {
|
|||
extension GroupStats {
|
||||
init(apiMegagroupStats: Api.stats.MegagroupStats) {
|
||||
switch apiMegagroupStats {
|
||||
case let .megagroupStats(period, members, messages, viewers, posters, apiGrowthGraph, apiMembersGraph, apiNewMembersBySourceGraph, apiLanguagesGraph, apiMessagesGraph, apiActionsGraph, apiTopHoursGraph, apiTopWeekdaysGraph, topPosters, topAdmins, topInviters, _):
|
||||
case let .megagroupStats(megagroupStatsData):
|
||||
let (period, members, messages, viewers, posters, apiGrowthGraph, apiMembersGraph, apiNewMembersBySourceGraph, apiLanguagesGraph, apiMessagesGraph, apiActionsGraph, apiTopHoursGraph, apiTopWeekdaysGraph, topPosters, topAdmins, topInviters) = (megagroupStatsData.period, megagroupStatsData.members, megagroupStatsData.messages, megagroupStatsData.viewers, megagroupStatsData.posters, megagroupStatsData.growthGraph, megagroupStatsData.membersGraph, megagroupStatsData.newMembersBySourceGraph, megagroupStatsData.languagesGraph, megagroupStatsData.messagesGraph, megagroupStatsData.actionsGraph, megagroupStatsData.topHoursGraph, megagroupStatsData.weekdaysGraph, megagroupStatsData.topPosters, megagroupStatsData.topAdmins, megagroupStatsData.topInviters)
|
||||
let growthGraph = StatsGraph(apiStatsGraph: apiGrowthGraph)
|
||||
|
||||
|
||||
self.init(period: StatsDateRange(apiStatsDateRangeDays: period), members: StatsValue(apiStatsAbsValueAndPrev: members), messages: StatsValue(apiStatsAbsValueAndPrev: messages), viewers: StatsValue(apiStatsAbsValueAndPrev: viewers), posters: StatsValue(apiStatsAbsValueAndPrev: posters), growthGraph: growthGraph, membersGraph: StatsGraph(apiStatsGraph: apiMembersGraph), newMembersBySourceGraph: StatsGraph(apiStatsGraph: apiNewMembersBySourceGraph), languagesGraph: StatsGraph(apiStatsGraph: apiLanguagesGraph), messagesGraph: StatsGraph(apiStatsGraph: apiMessagesGraph), actionsGraph: StatsGraph(apiStatsGraph: apiActionsGraph), topHoursGraph: StatsGraph(apiStatsGraph: apiTopHoursGraph), topWeekdaysGraph: StatsGraph(apiStatsGraph: apiTopWeekdaysGraph), topPosters: topPosters.map { GroupStatsTopPoster(apiStatsGroupTopPoster: $0) }, topAdmins: topAdmins.map { GroupStatsTopAdmin(apiStatsGroupTopAdmin: $0) }, topInviters: topInviters.map { GroupStatsTopInviter(apiStatsGroupTopInviter: $0) })
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -68,7 +68,8 @@ private func requestStoryStats(accountPeerId: PeerId, postbox: Postbox, network:
|
|||
|
||||
return signal
|
||||
|> mapToSignal { result -> Signal<StoryStats?, MTRpcError> in
|
||||
if case let .storyStats(apiInteractionsGraph, apiReactionsGraph) = result {
|
||||
if case let .storyStats(storyStatsData) = result {
|
||||
let (apiInteractionsGraph, apiReactionsGraph) = (storyStatsData.viewsGraph, storyStatsData.reactionsByEmotionGraph)
|
||||
let interactionsGraph = StatsGraph(apiStatsGraph: apiInteractionsGraph)
|
||||
var interactionsGraphDelta: Int64 = 86400
|
||||
if case let .Loaded(_, data) = interactionsGraph {
|
||||
|
|
@ -294,7 +295,8 @@ private final class StoryStatsPublicForwardsContextImpl {
|
|||
return ([], 0, nil)
|
||||
}
|
||||
switch result {
|
||||
case let .publicForwards(_, count, forwards, nextOffset, chats, users):
|
||||
case let .publicForwards(publicForwardsData):
|
||||
let (count, forwards, nextOffset, chats, users) = (publicForwardsData.count, publicForwardsData.forwards, publicForwardsData.nextOffset, publicForwardsData.chats, publicForwardsData.users)
|
||||
var peers: [PeerId: Peer] = [:]
|
||||
for user in users {
|
||||
if let user = TelegramUser.merge(transaction.getPeer(user.peerId) as? TelegramUser, rhs: user) {
|
||||
|
|
|
|||
|
|
@ -218,7 +218,8 @@ func _internal_getCurrentGroupCall(account: Account, reference: InternalGroupCal
|
|||
}
|
||||
|> mapToSignal { result -> Signal<GroupCallSummary?, GetCurrentGroupCallError> in
|
||||
switch result {
|
||||
case let .groupCall(call, participants, _, chats, users):
|
||||
case let .groupCall(groupCallData):
|
||||
let (call, participants, chats, users) = (groupCallData.call, groupCallData.participants, groupCallData.chats, groupCallData.users)
|
||||
return account.postbox.transaction { transaction -> GroupCallSummary? in
|
||||
guard let info = GroupCallInfo(call) else {
|
||||
return nil
|
||||
|
|
@ -278,7 +279,8 @@ func _internal_getCurrentGroupCallInfo(account: Account, reference: InternalGrou
|
|||
return .single(nil)
|
||||
}
|
||||
switch result {
|
||||
case let .groupCall(call, participants, _, chats, users):
|
||||
case let .groupCall(groupCallData):
|
||||
let (call, participants, chats, users) = (groupCallData.call, groupCallData.participants, groupCallData.chats, groupCallData.users)
|
||||
return account.postbox.transaction { transaction -> (participants: [PeerId], duration: Int32?)? in
|
||||
if case let .groupCallDiscarded(groupCallDiscardedData) = call {
|
||||
let (_, _, duration) = (groupCallDiscardedData.id, groupCallDiscardedData.accessHash, groupCallDiscardedData.duration)
|
||||
|
|
@ -557,7 +559,8 @@ func _internal_getGroupCallParticipants(account: Account, reference: InternalGro
|
|||
|
||||
if let result {
|
||||
switch result {
|
||||
case let .groupParticipants(count, participants, nextOffset, chats, users, apiVersion):
|
||||
case let .groupParticipants(groupParticipantsData):
|
||||
let (count, participants, nextOffset, chats, users, apiVersion) = (groupParticipantsData.count, groupParticipantsData.participants, groupParticipantsData.nextOffset, groupParticipantsData.chats, groupParticipantsData.users, groupParticipantsData.version)
|
||||
totalCount = Int(count)
|
||||
version = apiVersion
|
||||
|
||||
|
|
@ -2850,7 +2853,8 @@ func _internal_groupCallInviteLinks(account: Account, reference: InternalGroupCa
|
|||
return .single(nil)
|
||||
}
|
||||
|> mapToSignal { result -> Signal<String?, NoError> in
|
||||
if let result = result, case let .exportedGroupCallInvite(link) = result {
|
||||
if let result = result, case let .exportedGroupCallInvite(exportedGroupCallInviteData) = result {
|
||||
let link = exportedGroupCallInviteData.link
|
||||
return .single(link)
|
||||
}
|
||||
return .single(nil)
|
||||
|
|
@ -2862,7 +2866,8 @@ func _internal_groupCallInviteLinks(account: Account, reference: InternalGroupCa
|
|||
return .single(nil)
|
||||
}
|
||||
|> mapToSignal { result -> Signal<String?, NoError> in
|
||||
if let result = result, case let .exportedGroupCallInvite(link) = result {
|
||||
if let result = result, case let .exportedGroupCallInvite(exportedGroupCallInviteData) = result {
|
||||
let link = exportedGroupCallInviteData.link
|
||||
return .single(link)
|
||||
}
|
||||
return .single(nil)
|
||||
|
|
@ -2921,7 +2926,8 @@ func _internal_groupCallDisplayAsAvailablePeers(accountPeerId: PeerId, network:
|
|||
return .single([])
|
||||
}
|
||||
switch result {
|
||||
case let .joinAsPeers(_, chats, users):
|
||||
case let .joinAsPeers(joinAsPeersData):
|
||||
let (chats, users) = (joinAsPeersData.chats, joinAsPeersData.users)
|
||||
return postbox.transaction { transaction -> [FoundPeer] in
|
||||
var subscribers: [PeerId: Int32] = [:]
|
||||
let parsedPeers = AccumulatedPeers(transaction: transaction, chats: chats, users: users)
|
||||
|
|
@ -3080,7 +3086,8 @@ func _internal_getAudioBroadcastDataSource(account: Account, callId: Int64, acce
|
|||
return .single(nil)
|
||||
}
|
||||
switch result {
|
||||
case let .groupCall(call, _, _, _, _):
|
||||
case let .groupCall(groupCallData):
|
||||
let call = groupCallData.call
|
||||
if let datacenterId = GroupCallInfo(call)?.streamDcId.flatMap(Int.init) {
|
||||
return account.network.download(datacenterId: datacenterId, isMedia: true, tag: nil)
|
||||
|> map { download -> AudioBroadcastDataSource? in
|
||||
|
|
@ -3311,7 +3318,8 @@ func _internal_getGroupCallStreamCredentials(account: Account, peerId: PeerId, i
|
|||
}
|
||||
|> map { result -> GroupCallStreamCredentials in
|
||||
switch result {
|
||||
case let .groupCallStreamRtmpUrl(url, key):
|
||||
case let .groupCallStreamRtmpUrl(groupCallStreamRtmpUrlData):
|
||||
let (url, key) = (groupCallStreamRtmpUrlData.url, groupCallStreamRtmpUrlData.key)
|
||||
return GroupCallStreamCredentials(url: url, streamKey: key)
|
||||
}
|
||||
}
|
||||
|
|
@ -3359,7 +3367,8 @@ func _internal_createConferenceCall(postbox: Postbox, network: Network, accountP
|
|||
}
|
||||
|> castError(CreateConferenceCallError.self)
|
||||
|> mapToSignal { result -> Signal<EngineCreatedGroupCall, CreateConferenceCallError> in
|
||||
if let result, case let .exportedGroupCallInvite(link) = result {
|
||||
if let result, case let .exportedGroupCallInvite(exportedGroupCallInviteData) = result {
|
||||
let link = exportedGroupCallInviteData.link
|
||||
let slug = link.components(separatedBy: "/").last ?? link
|
||||
return .single(EngineCreatedGroupCall(
|
||||
slug: slug,
|
||||
|
|
@ -4124,7 +4133,8 @@ public final class GroupCallMessagesContext {
|
|||
return postbox.transaction { transaction -> (Api.phone.GroupCallStars, [PeerId: Peer])? in
|
||||
var peers: [PeerId: Peer] = [:]
|
||||
switch result {
|
||||
case let .groupCallStars(_, topDonors, chats, users):
|
||||
case let .groupCallStars(groupCallStarsData):
|
||||
let (topDonors, chats, users) = (groupCallStarsData.topDonors, groupCallStarsData.chats, groupCallStarsData.users)
|
||||
updatePeers(transaction: transaction, accountPeerId: accountPeerId, peers: AccumulatedPeers(chats: chats, users: users))
|
||||
for topDonor in topDonors {
|
||||
switch topDonor {
|
||||
|
|
@ -4147,7 +4157,8 @@ public final class GroupCallMessagesContext {
|
|||
}
|
||||
if let (result, _) = result {
|
||||
switch result {
|
||||
case let .groupCallStars(totalStars, topDonors, _, _):
|
||||
case let .groupCallStars(groupCallStarsData):
|
||||
let (totalStars, topDonors) = (groupCallStarsData.totalStars, groupCallStarsData.topDonors)
|
||||
var state = self.state
|
||||
state.topStars = topDonors.map { topDonor in
|
||||
switch topDonor {
|
||||
|
|
|
|||
|
|
@ -161,7 +161,8 @@ public extension TelegramEngine {
|
|||
return dataSource.download.request(Api.functions.phone.getGroupCallStreamChannels(call: .inputGroupCall(.init(id: callId, accessHash: accessHash))))
|
||||
|> mapToSignal { result -> Signal<EngineCallStreamState?, MTRpcError> in
|
||||
switch result {
|
||||
case let .groupCallStreamChannels(channels):
|
||||
case let .groupCallStreamChannels(groupCallStreamChannelsData):
|
||||
let channels = groupCallStreamChannelsData.channels
|
||||
let state = EngineCallStreamState(channels: channels.map { channel -> EngineCallStreamState.Channel in
|
||||
switch channel {
|
||||
case let .groupCallStreamChannel(groupCallStreamChannelData):
|
||||
|
|
|
|||
|
|
@ -235,7 +235,8 @@ func _internal_updatePeerPhotoInternal(postbox: Postbox, network: Network, state
|
|||
var videoRepresentations: [TelegramMediaImage.VideoRepresentation] = []
|
||||
var image: TelegramMediaImage?
|
||||
switch photo {
|
||||
case let .photo(apiPhoto, _):
|
||||
case let .photo(photoData):
|
||||
let (apiPhoto, _) = (photoData.photo, photoData.users)
|
||||
image = telegramMediaImageFromApiPhoto(apiPhoto)
|
||||
switch apiPhoto {
|
||||
case .photoEmpty:
|
||||
|
|
@ -451,7 +452,8 @@ func _internal_updatePeerPhotoInternal(postbox: Postbox, network: Network, state
|
|||
var updatedImage: TelegramMediaImage?
|
||||
var representations: [TelegramMediaImageRepresentation] = []
|
||||
switch photo {
|
||||
case let .photo(apiPhoto, _):
|
||||
case let .photo(photoData):
|
||||
let (apiPhoto, _) = (photoData.photo, photoData.users)
|
||||
updatedImage = telegramMediaImageFromApiPhoto(apiPhoto)
|
||||
switch apiPhoto {
|
||||
case .photoEmpty:
|
||||
|
|
@ -502,7 +504,8 @@ func _internal_updatePeerPhotoInternal(postbox: Postbox, network: Network, state
|
|||
} else {
|
||||
var updatedUsers: [TelegramUser] = []
|
||||
switch photo {
|
||||
case let .photo(_, apiUsers):
|
||||
case let .photo(photoData):
|
||||
let (_, apiUsers) = (photoData.photo, photoData.users)
|
||||
updatedUsers = apiUsers.map { TelegramUser(user: $0) }
|
||||
}
|
||||
return postbox.transaction { transaction -> UpdatePeerPhotoStatus in
|
||||
|
|
@ -585,7 +588,8 @@ func _internal_updatePeerPhotoExisting(network: Network, reference: TelegramMedi
|
|||
return .complete()
|
||||
}
|
||||
|> mapToSignal { photo -> Signal<TelegramMediaImage?, NoError> in
|
||||
if case let .photo(photo, _) = photo {
|
||||
if case let .photo(photoData) = photo {
|
||||
let (photo, _) = (photoData.photo, photoData.users)
|
||||
return .single(telegramMediaImageFromApiPhoto(photo))
|
||||
} else {
|
||||
return .complete()
|
||||
|
|
|
|||
|
|
@ -40,10 +40,12 @@ func _internal_requestPeerPhotos(accountPeerId: PeerId, postbox: Postbox, networ
|
|||
let totalCount:Int
|
||||
let photos: [Api.Photo]
|
||||
switch result {
|
||||
case let .photos(photosValue, _):
|
||||
case let .photos(photosData):
|
||||
let (photosValue, _) = (photosData.photos, photosData.users)
|
||||
photos = photosValue
|
||||
totalCount = photos.count
|
||||
case let .photosSlice(count, photosValue, _):
|
||||
case let .photosSlice(photosSliceData):
|
||||
let (count, photosValue, _) = (photosSliceData.count, photosSliceData.photos, photosSliceData.users)
|
||||
photos = photosValue
|
||||
totalCount = Int(count)
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue