mirror of
https://github.com/Swiftgram/Telegram-iOS.git
synced 2025-11-29 03:21:29 +00:00
Fix API
This commit is contained in:
parent
773ed45e7b
commit
d624e5b5a9
@ -313,8 +313,8 @@ fileprivate let parsers: [Int32 : (BufferReader) -> Any?] = {
|
|||||||
dict[-1150621555] = { return Api.ChannelParticipantsFilter.parse_channelParticipantsContacts($0) }
|
dict[-1150621555] = { return Api.ChannelParticipantsFilter.parse_channelParticipantsContacts($0) }
|
||||||
dict[-350980120] = { return Api.WebPage.parse_webPageEmpty($0) }
|
dict[-350980120] = { return Api.WebPage.parse_webPageEmpty($0) }
|
||||||
dict[-981018084] = { return Api.WebPage.parse_webPagePending($0) }
|
dict[-981018084] = { return Api.WebPage.parse_webPagePending($0) }
|
||||||
dict[-2054908813] = { return Api.WebPage.parse_webPageNotModified($0) }
|
|
||||||
dict[-392411726] = { return Api.WebPage.parse_webPage($0) }
|
dict[-392411726] = { return Api.WebPage.parse_webPage($0) }
|
||||||
|
dict[1930545681] = { return Api.WebPage.parse_webPageNotModified($0) }
|
||||||
dict[1036876423] = { return Api.InputBotInlineMessage.parse_inputBotInlineMessageText($0) }
|
dict[1036876423] = { return Api.InputBotInlineMessage.parse_inputBotInlineMessageText($0) }
|
||||||
dict[-190472735] = { return Api.InputBotInlineMessage.parse_inputBotInlineMessageMediaGeo($0) }
|
dict[-190472735] = { return Api.InputBotInlineMessage.parse_inputBotInlineMessageMediaGeo($0) }
|
||||||
dict[1262639204] = { return Api.InputBotInlineMessage.parse_inputBotInlineMessageGame($0) }
|
dict[1262639204] = { return Api.InputBotInlineMessage.parse_inputBotInlineMessageGame($0) }
|
||||||
@ -486,7 +486,7 @@ fileprivate let parsers: [Int32 : (BufferReader) -> Any?] = {
|
|||||||
dict[-1182234929] = { return Api.InputUser.parse_inputUserEmpty($0) }
|
dict[-1182234929] = { return Api.InputUser.parse_inputUserEmpty($0) }
|
||||||
dict[-138301121] = { return Api.InputUser.parse_inputUserSelf($0) }
|
dict[-138301121] = { return Api.InputUser.parse_inputUserSelf($0) }
|
||||||
dict[-668391402] = { return Api.InputUser.parse_inputUser($0) }
|
dict[-668391402] = { return Api.InputUser.parse_inputUser($0) }
|
||||||
dict[-1366746132] = { return Api.Page.parse_page($0) }
|
dict[-1738178803] = { return Api.Page.parse_page($0) }
|
||||||
dict[871426631] = { return Api.SecureCredentialsEncrypted.parse_secureCredentialsEncrypted($0) }
|
dict[871426631] = { return Api.SecureCredentialsEncrypted.parse_secureCredentialsEncrypted($0) }
|
||||||
dict[-875679776] = { return Api.StatsPercentValue.parse_statsPercentValue($0) }
|
dict[-875679776] = { return Api.StatsPercentValue.parse_statsPercentValue($0) }
|
||||||
dict[157948117] = { return Api.upload.File.parse_file($0) }
|
dict[157948117] = { return Api.upload.File.parse_file($0) }
|
||||||
@ -531,7 +531,7 @@ fileprivate let parsers: [Int32 : (BufferReader) -> Any?] = {
|
|||||||
dict[-1991004873] = { return Api.InputChatPhoto.parse_inputChatPhoto($0) }
|
dict[-1991004873] = { return Api.InputChatPhoto.parse_inputChatPhoto($0) }
|
||||||
dict[-368917890] = { return Api.PaymentCharge.parse_paymentCharge($0) }
|
dict[-368917890] = { return Api.PaymentCharge.parse_paymentCharge($0) }
|
||||||
dict[-1387279939] = { return Api.MessageInteractionCounters.parse_messageInteractionCounters($0) }
|
dict[-1387279939] = { return Api.MessageInteractionCounters.parse_messageInteractionCounters($0) }
|
||||||
dict[821185690] = { return Api.stats.BroadcastStats.parse_broadcastStats($0) }
|
dict[-1107852396] = { return Api.stats.BroadcastStats.parse_broadcastStats($0) }
|
||||||
dict[-484987010] = { return Api.Updates.parse_updatesTooLong($0) }
|
dict[-484987010] = { return Api.Updates.parse_updatesTooLong($0) }
|
||||||
dict[-1857044719] = { return Api.Updates.parse_updateShortMessage($0) }
|
dict[-1857044719] = { return Api.Updates.parse_updateShortMessage($0) }
|
||||||
dict[377562760] = { return Api.Updates.parse_updateShortChatMessage($0) }
|
dict[377562760] = { return Api.Updates.parse_updateShortChatMessage($0) }
|
||||||
|
|||||||
@ -9502,8 +9502,8 @@ public extension Api {
|
|||||||
public enum WebPage: TypeConstructorDescription {
|
public enum WebPage: TypeConstructorDescription {
|
||||||
case webPageEmpty(id: Int64)
|
case webPageEmpty(id: Int64)
|
||||||
case webPagePending(id: Int64, date: Int32)
|
case webPagePending(id: Int64, date: Int32)
|
||||||
case webPageNotModified
|
|
||||||
case webPage(flags: Int32, id: Int64, url: String, displayUrl: String, hash: Int32, type: String?, siteName: String?, title: String?, description: String?, photo: Api.Photo?, embedUrl: String?, embedType: String?, embedWidth: Int32?, embedHeight: Int32?, duration: Int32?, author: String?, document: Api.Document?, cachedPage: Api.Page?, attributes: [Api.WebPageAttribute]?)
|
case webPage(flags: Int32, id: Int64, url: String, displayUrl: String, hash: Int32, type: String?, siteName: String?, title: String?, description: String?, photo: Api.Photo?, embedUrl: String?, embedType: String?, embedWidth: Int32?, embedHeight: Int32?, duration: Int32?, author: String?, document: Api.Document?, cachedPage: Api.Page?, attributes: [Api.WebPageAttribute]?)
|
||||||
|
case webPageNotModified(flags: Int32, cachedPageViews: Int32?)
|
||||||
|
|
||||||
public func serialize(_ buffer: Buffer, _ boxed: Swift.Bool) {
|
public func serialize(_ buffer: Buffer, _ boxed: Swift.Bool) {
|
||||||
switch self {
|
switch self {
|
||||||
@ -9519,12 +9519,6 @@ public extension Api {
|
|||||||
}
|
}
|
||||||
serializeInt64(id, buffer: buffer, boxed: false)
|
serializeInt64(id, buffer: buffer, boxed: false)
|
||||||
serializeInt32(date, buffer: buffer, boxed: false)
|
serializeInt32(date, buffer: buffer, boxed: false)
|
||||||
break
|
|
||||||
case .webPageNotModified:
|
|
||||||
if boxed {
|
|
||||||
buffer.appendInt32(-2054908813)
|
|
||||||
}
|
|
||||||
|
|
||||||
break
|
break
|
||||||
case .webPage(let flags, let id, let url, let displayUrl, let hash, let type, let siteName, let title, let description, let photo, let embedUrl, let embedType, let embedWidth, let embedHeight, let duration, let author, let document, let cachedPage, let attributes):
|
case .webPage(let flags, let id, let url, let displayUrl, let hash, let type, let siteName, let title, let description, let photo, let embedUrl, let embedType, let embedWidth, let embedHeight, let duration, let author, let document, let cachedPage, let attributes):
|
||||||
if boxed {
|
if boxed {
|
||||||
@ -9554,6 +9548,13 @@ public extension Api {
|
|||||||
item.serialize(buffer, true)
|
item.serialize(buffer, true)
|
||||||
}}
|
}}
|
||||||
break
|
break
|
||||||
|
case .webPageNotModified(let flags, let cachedPageViews):
|
||||||
|
if boxed {
|
||||||
|
buffer.appendInt32(1930545681)
|
||||||
|
}
|
||||||
|
serializeInt32(flags, buffer: buffer, boxed: false)
|
||||||
|
if Int(flags) & Int(1 << 0) != 0 {serializeInt32(cachedPageViews!, buffer: buffer, boxed: false)}
|
||||||
|
break
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -9563,10 +9564,10 @@ public extension Api {
|
|||||||
return ("webPageEmpty", [("id", id)])
|
return ("webPageEmpty", [("id", id)])
|
||||||
case .webPagePending(let id, let date):
|
case .webPagePending(let id, let date):
|
||||||
return ("webPagePending", [("id", id), ("date", date)])
|
return ("webPagePending", [("id", id), ("date", date)])
|
||||||
case .webPageNotModified:
|
|
||||||
return ("webPageNotModified", [])
|
|
||||||
case .webPage(let flags, let id, let url, let displayUrl, let hash, let type, let siteName, let title, let description, let photo, let embedUrl, let embedType, let embedWidth, let embedHeight, let duration, let author, let document, let cachedPage, let attributes):
|
case .webPage(let flags, let id, let url, let displayUrl, let hash, let type, let siteName, let title, let description, let photo, let embedUrl, let embedType, let embedWidth, let embedHeight, let duration, let author, let document, let cachedPage, let attributes):
|
||||||
return ("webPage", [("flags", flags), ("id", id), ("url", url), ("displayUrl", displayUrl), ("hash", hash), ("type", type), ("siteName", siteName), ("title", title), ("description", description), ("photo", photo), ("embedUrl", embedUrl), ("embedType", embedType), ("embedWidth", embedWidth), ("embedHeight", embedHeight), ("duration", duration), ("author", author), ("document", document), ("cachedPage", cachedPage), ("attributes", attributes)])
|
return ("webPage", [("flags", flags), ("id", id), ("url", url), ("displayUrl", displayUrl), ("hash", hash), ("type", type), ("siteName", siteName), ("title", title), ("description", description), ("photo", photo), ("embedUrl", embedUrl), ("embedType", embedType), ("embedWidth", embedWidth), ("embedHeight", embedHeight), ("duration", duration), ("author", author), ("document", document), ("cachedPage", cachedPage), ("attributes", attributes)])
|
||||||
|
case .webPageNotModified(let flags, let cachedPageViews):
|
||||||
|
return ("webPageNotModified", [("flags", flags), ("cachedPageViews", cachedPageViews)])
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -9595,9 +9596,6 @@ public extension Api {
|
|||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
public static func parse_webPageNotModified(_ reader: BufferReader) -> WebPage? {
|
|
||||||
return Api.WebPage.webPageNotModified
|
|
||||||
}
|
|
||||||
public static func parse_webPage(_ reader: BufferReader) -> WebPage? {
|
public static func parse_webPage(_ reader: BufferReader) -> WebPage? {
|
||||||
var _1: Int32?
|
var _1: Int32?
|
||||||
_1 = reader.readInt32()
|
_1 = reader.readInt32()
|
||||||
@ -9671,6 +9669,20 @@ public extension Api {
|
|||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
public static func parse_webPageNotModified(_ reader: BufferReader) -> WebPage? {
|
||||||
|
var _1: Int32?
|
||||||
|
_1 = reader.readInt32()
|
||||||
|
var _2: Int32?
|
||||||
|
if Int(_1!) & Int(1 << 0) != 0 {_2 = reader.readInt32() }
|
||||||
|
let _c1 = _1 != nil
|
||||||
|
let _c2 = (Int(_1!) & Int(1 << 0) == 0) || _2 != nil
|
||||||
|
if _c1 && _c2 {
|
||||||
|
return Api.WebPage.webPageNotModified(flags: _1!, cachedPageViews: _2)
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
return nil
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
public enum InputBotInlineMessage: TypeConstructorDescription {
|
public enum InputBotInlineMessage: TypeConstructorDescription {
|
||||||
@ -13762,13 +13774,13 @@ public extension Api {
|
|||||||
|
|
||||||
}
|
}
|
||||||
public enum Page: TypeConstructorDescription {
|
public enum Page: TypeConstructorDescription {
|
||||||
case page(flags: Int32, url: String, blocks: [Api.PageBlock], photos: [Api.Photo], documents: [Api.Document])
|
case page(flags: Int32, url: String, blocks: [Api.PageBlock], photos: [Api.Photo], documents: [Api.Document], views: Int32?)
|
||||||
|
|
||||||
public func serialize(_ buffer: Buffer, _ boxed: Swift.Bool) {
|
public func serialize(_ buffer: Buffer, _ boxed: Swift.Bool) {
|
||||||
switch self {
|
switch self {
|
||||||
case .page(let flags, let url, let blocks, let photos, let documents):
|
case .page(let flags, let url, let blocks, let photos, let documents, let views):
|
||||||
if boxed {
|
if boxed {
|
||||||
buffer.appendInt32(-1366746132)
|
buffer.appendInt32(-1738178803)
|
||||||
}
|
}
|
||||||
serializeInt32(flags, buffer: buffer, boxed: false)
|
serializeInt32(flags, buffer: buffer, boxed: false)
|
||||||
serializeString(url, buffer: buffer, boxed: false)
|
serializeString(url, buffer: buffer, boxed: false)
|
||||||
@ -13787,14 +13799,15 @@ public extension Api {
|
|||||||
for item in documents {
|
for item in documents {
|
||||||
item.serialize(buffer, true)
|
item.serialize(buffer, true)
|
||||||
}
|
}
|
||||||
|
if Int(flags) & Int(1 << 3) != 0 {serializeInt32(views!, buffer: buffer, boxed: false)}
|
||||||
break
|
break
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public func descriptionFields() -> (String, [(String, Any)]) {
|
public func descriptionFields() -> (String, [(String, Any)]) {
|
||||||
switch self {
|
switch self {
|
||||||
case .page(let flags, let url, let blocks, let photos, let documents):
|
case .page(let flags, let url, let blocks, let photos, let documents, let views):
|
||||||
return ("page", [("flags", flags), ("url", url), ("blocks", blocks), ("photos", photos), ("documents", documents)])
|
return ("page", [("flags", flags), ("url", url), ("blocks", blocks), ("photos", photos), ("documents", documents), ("views", views)])
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -13815,13 +13828,16 @@ public extension Api {
|
|||||||
if let _ = reader.readInt32() {
|
if let _ = reader.readInt32() {
|
||||||
_5 = Api.parseVector(reader, elementSignature: 0, elementType: Api.Document.self)
|
_5 = Api.parseVector(reader, elementSignature: 0, elementType: Api.Document.self)
|
||||||
}
|
}
|
||||||
|
var _6: Int32?
|
||||||
|
if Int(_1!) & Int(1 << 3) != 0 {_6 = reader.readInt32() }
|
||||||
let _c1 = _1 != nil
|
let _c1 = _1 != nil
|
||||||
let _c2 = _2 != nil
|
let _c2 = _2 != nil
|
||||||
let _c3 = _3 != nil
|
let _c3 = _3 != nil
|
||||||
let _c4 = _4 != nil
|
let _c4 = _4 != nil
|
||||||
let _c5 = _5 != nil
|
let _c5 = _5 != nil
|
||||||
if _c1 && _c2 && _c3 && _c4 && _c5 {
|
let _c6 = (Int(_1!) & Int(1 << 3) == 0) || _6 != nil
|
||||||
return Api.Page.page(flags: _1!, url: _2!, blocks: _3!, photos: _4!, documents: _5!)
|
if _c1 && _c2 && _c3 && _c4 && _c5 && _c6 {
|
||||||
|
return Api.Page.page(flags: _1!, url: _2!, blocks: _3!, photos: _4!, documents: _5!, views: _6)
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
return nil
|
return nil
|
||||||
|
|||||||
@ -539,13 +539,13 @@ public struct payments {
|
|||||||
public extension Api {
|
public extension Api {
|
||||||
public struct stats {
|
public struct stats {
|
||||||
public enum BroadcastStats: TypeConstructorDescription {
|
public enum BroadcastStats: TypeConstructorDescription {
|
||||||
case broadcastStats(period: Api.StatsDateRangeDays, followers: Api.StatsAbsValueAndPrev, viewsPerPost: Api.StatsAbsValueAndPrev, sharesPerPost: Api.StatsAbsValueAndPrev, enabledNotifications: Api.StatsPercentValue, growthGraph: Api.StatsGraph, followersGraph: Api.StatsGraph, muteGraph: Api.StatsGraph, topHoursGraph: Api.StatsGraph, interactionsGraph: Api.StatsGraph, viewsBySourceGraph: Api.StatsGraph, newFollowersBySourceGraph: Api.StatsGraph, languagesGraph: Api.StatsGraph, recentMessageInteractions: [Api.MessageInteractionCounters])
|
case broadcastStats(period: Api.StatsDateRangeDays, followers: Api.StatsAbsValueAndPrev, viewsPerPost: Api.StatsAbsValueAndPrev, sharesPerPost: 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, recentMessageInteractions: [Api.MessageInteractionCounters])
|
||||||
|
|
||||||
public func serialize(_ buffer: Buffer, _ boxed: Swift.Bool) {
|
public func serialize(_ buffer: Buffer, _ boxed: Swift.Bool) {
|
||||||
switch self {
|
switch self {
|
||||||
case .broadcastStats(let period, let followers, let viewsPerPost, let sharesPerPost, let enabledNotifications, let growthGraph, let followersGraph, let muteGraph, let topHoursGraph, let interactionsGraph, let viewsBySourceGraph, let newFollowersBySourceGraph, let languagesGraph, let recentMessageInteractions):
|
case .broadcastStats(let period, let followers, let viewsPerPost, let sharesPerPost, let enabledNotifications, let growthGraph, let followersGraph, let muteGraph, let topHoursGraph, let interactionsGraph, let ivInteractionsGraph, let viewsBySourceGraph, let newFollowersBySourceGraph, let languagesGraph, let recentMessageInteractions):
|
||||||
if boxed {
|
if boxed {
|
||||||
buffer.appendInt32(821185690)
|
buffer.appendInt32(-1107852396)
|
||||||
}
|
}
|
||||||
period.serialize(buffer, true)
|
period.serialize(buffer, true)
|
||||||
followers.serialize(buffer, true)
|
followers.serialize(buffer, true)
|
||||||
@ -557,6 +557,7 @@ public struct stats {
|
|||||||
muteGraph.serialize(buffer, true)
|
muteGraph.serialize(buffer, true)
|
||||||
topHoursGraph.serialize(buffer, true)
|
topHoursGraph.serialize(buffer, true)
|
||||||
interactionsGraph.serialize(buffer, true)
|
interactionsGraph.serialize(buffer, true)
|
||||||
|
ivInteractionsGraph.serialize(buffer, true)
|
||||||
viewsBySourceGraph.serialize(buffer, true)
|
viewsBySourceGraph.serialize(buffer, true)
|
||||||
newFollowersBySourceGraph.serialize(buffer, true)
|
newFollowersBySourceGraph.serialize(buffer, true)
|
||||||
languagesGraph.serialize(buffer, true)
|
languagesGraph.serialize(buffer, true)
|
||||||
@ -571,8 +572,8 @@ public struct stats {
|
|||||||
|
|
||||||
public func descriptionFields() -> (String, [(String, Any)]) {
|
public func descriptionFields() -> (String, [(String, Any)]) {
|
||||||
switch self {
|
switch self {
|
||||||
case .broadcastStats(let period, let followers, let viewsPerPost, let sharesPerPost, let enabledNotifications, let growthGraph, let followersGraph, let muteGraph, let topHoursGraph, let interactionsGraph, let viewsBySourceGraph, let newFollowersBySourceGraph, let languagesGraph, let recentMessageInteractions):
|
case .broadcastStats(let period, let followers, let viewsPerPost, let sharesPerPost, let enabledNotifications, let growthGraph, let followersGraph, let muteGraph, let topHoursGraph, let interactionsGraph, let ivInteractionsGraph, let viewsBySourceGraph, let newFollowersBySourceGraph, let languagesGraph, let recentMessageInteractions):
|
||||||
return ("broadcastStats", [("period", period), ("followers", followers), ("viewsPerPost", viewsPerPost), ("sharesPerPost", sharesPerPost), ("enabledNotifications", enabledNotifications), ("growthGraph", growthGraph), ("followersGraph", followersGraph), ("muteGraph", muteGraph), ("topHoursGraph", topHoursGraph), ("interactionsGraph", interactionsGraph), ("viewsBySourceGraph", viewsBySourceGraph), ("newFollowersBySourceGraph", newFollowersBySourceGraph), ("languagesGraph", languagesGraph), ("recentMessageInteractions", recentMessageInteractions)])
|
return ("broadcastStats", [("period", period), ("followers", followers), ("viewsPerPost", viewsPerPost), ("sharesPerPost", sharesPerPost), ("enabledNotifications", enabledNotifications), ("growthGraph", growthGraph), ("followersGraph", followersGraph), ("muteGraph", muteGraph), ("topHoursGraph", topHoursGraph), ("interactionsGraph", interactionsGraph), ("ivInteractionsGraph", ivInteractionsGraph), ("viewsBySourceGraph", viewsBySourceGraph), ("newFollowersBySourceGraph", newFollowersBySourceGraph), ("languagesGraph", languagesGraph), ("recentMessageInteractions", recentMessageInteractions)])
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -629,9 +630,13 @@ public struct stats {
|
|||||||
if let signature = reader.readInt32() {
|
if let signature = reader.readInt32() {
|
||||||
_13 = Api.parse(reader, signature: signature) as? Api.StatsGraph
|
_13 = Api.parse(reader, signature: signature) as? Api.StatsGraph
|
||||||
}
|
}
|
||||||
var _14: [Api.MessageInteractionCounters]?
|
var _14: Api.StatsGraph?
|
||||||
|
if let signature = reader.readInt32() {
|
||||||
|
_14 = Api.parse(reader, signature: signature) as? Api.StatsGraph
|
||||||
|
}
|
||||||
|
var _15: [Api.MessageInteractionCounters]?
|
||||||
if let _ = reader.readInt32() {
|
if let _ = reader.readInt32() {
|
||||||
_14 = Api.parseVector(reader, elementSignature: 0, elementType: Api.MessageInteractionCounters.self)
|
_15 = Api.parseVector(reader, elementSignature: 0, elementType: Api.MessageInteractionCounters.self)
|
||||||
}
|
}
|
||||||
let _c1 = _1 != nil
|
let _c1 = _1 != nil
|
||||||
let _c2 = _2 != nil
|
let _c2 = _2 != nil
|
||||||
@ -647,8 +652,9 @@ public struct stats {
|
|||||||
let _c12 = _12 != nil
|
let _c12 = _12 != nil
|
||||||
let _c13 = _13 != nil
|
let _c13 = _13 != nil
|
||||||
let _c14 = _14 != nil
|
let _c14 = _14 != nil
|
||||||
if _c1 && _c2 && _c3 && _c4 && _c5 && _c6 && _c7 && _c8 && _c9 && _c10 && _c11 && _c12 && _c13 && _c14 {
|
let _c15 = _15 != nil
|
||||||
return Api.stats.BroadcastStats.broadcastStats(period: _1!, followers: _2!, viewsPerPost: _3!, sharesPerPost: _4!, enabledNotifications: _5!, growthGraph: _6!, followersGraph: _7!, muteGraph: _8!, topHoursGraph: _9!, interactionsGraph: _10!, viewsBySourceGraph: _11!, newFollowersBySourceGraph: _12!, languagesGraph: _13!, recentMessageInteractions: _14!)
|
if _c1 && _c2 && _c3 && _c4 && _c5 && _c6 && _c7 && _c8 && _c9 && _c10 && _c11 && _c12 && _c13 && _c14 && _c15 {
|
||||||
|
return Api.stats.BroadcastStats.broadcastStats(period: _1!, followers: _2!, viewsPerPost: _3!, sharesPerPost: _4!, enabledNotifications: _5!, growthGraph: _6!, followersGraph: _7!, muteGraph: _8!, topHoursGraph: _9!, interactionsGraph: _10!, ivInteractionsGraph: _11!, viewsBySourceGraph: _12!, newFollowersBySourceGraph: _13!, languagesGraph: _14!, recentMessageInteractions: _15!)
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
return nil
|
return nil
|
||||||
|
|||||||
@ -517,7 +517,7 @@ extension ChannelStatsPercentValue {
|
|||||||
extension ChannelStats {
|
extension ChannelStats {
|
||||||
convenience init(apiBroadcastStats: Api.stats.BroadcastStats) {
|
convenience init(apiBroadcastStats: Api.stats.BroadcastStats) {
|
||||||
switch apiBroadcastStats {
|
switch apiBroadcastStats {
|
||||||
case let .broadcastStats(period, followers, viewsPerPost, sharesPerPost, enabledNotifications, growthGraph, followersGraph, muteGraph, topHoursGraph, interactionsGraph, viewsBySourceGraph, newFollowersBySourceGraph, languagesGraph, recentMessageInteractions):
|
case let .broadcastStats(period, followers, viewsPerPost, sharesPerPost, enabledNotifications, growthGraph, followersGraph, muteGraph, topHoursGraph, interactionsGraph, _, viewsBySourceGraph, newFollowersBySourceGraph, languagesGraph, recentMessageInteractions):
|
||||||
self.init(period: ChannelStatsDateRange(apiStatsDateRangeDays: period), followers: ChannelStatsValue(apiStatsAbsValueAndPrev: followers), viewsPerPost: ChannelStatsValue(apiStatsAbsValueAndPrev: viewsPerPost), sharesPerPost: ChannelStatsValue(apiStatsAbsValueAndPrev: sharesPerPost), enabledNotifications: ChannelStatsPercentValue(apiPercentValue: enabledNotifications), growthGraph: ChannelStatsGraph(apiStatsGraph: growthGraph), followersGraph: ChannelStatsGraph(apiStatsGraph: followersGraph), muteGraph: ChannelStatsGraph(apiStatsGraph: muteGraph), topHoursGraph: ChannelStatsGraph(apiStatsGraph: topHoursGraph), interactionsGraph: ChannelStatsGraph(apiStatsGraph: interactionsGraph), viewsBySourceGraph: ChannelStatsGraph(apiStatsGraph: viewsBySourceGraph), newFollowersBySourceGraph: ChannelStatsGraph(apiStatsGraph: newFollowersBySourceGraph), languagesGraph: ChannelStatsGraph(apiStatsGraph: languagesGraph))
|
self.init(period: ChannelStatsDateRange(apiStatsDateRangeDays: period), followers: ChannelStatsValue(apiStatsAbsValueAndPrev: followers), viewsPerPost: ChannelStatsValue(apiStatsAbsValueAndPrev: viewsPerPost), sharesPerPost: ChannelStatsValue(apiStatsAbsValueAndPrev: sharesPerPost), enabledNotifications: ChannelStatsPercentValue(apiPercentValue: enabledNotifications), growthGraph: ChannelStatsGraph(apiStatsGraph: growthGraph), followersGraph: ChannelStatsGraph(apiStatsGraph: followersGraph), muteGraph: ChannelStatsGraph(apiStatsGraph: muteGraph), topHoursGraph: ChannelStatsGraph(apiStatsGraph: topHoursGraph), interactionsGraph: ChannelStatsGraph(apiStatsGraph: interactionsGraph), viewsBySourceGraph: ChannelStatsGraph(apiStatsGraph: viewsBySourceGraph), newFollowersBySourceGraph: ChannelStatsGraph(apiStatsGraph: newFollowersBySourceGraph), languagesGraph: ChannelStatsGraph(apiStatsGraph: languagesGraph))
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -78,11 +78,12 @@ public func webpagePreviewWithProgress(account: Account, url: String, webpageId:
|
|||||||
public func actualizedWebpage(postbox: Postbox, network: Network, webpage: TelegramMediaWebpage) -> Signal<TelegramMediaWebpage, NoError> {
|
public func actualizedWebpage(postbox: Postbox, network: Network, webpage: TelegramMediaWebpage) -> Signal<TelegramMediaWebpage, NoError> {
|
||||||
if case let .Loaded(content) = webpage.content {
|
if case let .Loaded(content) = webpage.content {
|
||||||
return network.request(Api.functions.messages.getWebPage(url: content.url, hash: content.hash))
|
return network.request(Api.functions.messages.getWebPage(url: content.url, hash: content.hash))
|
||||||
|> `catch` { _ -> Signal<Api.WebPage, NoError> in
|
|> map(Optional.init)
|
||||||
return .single(.webPageNotModified)
|
|> `catch` { _ -> Signal<Api.WebPage?, NoError> in
|
||||||
|
return .single(nil)
|
||||||
}
|
}
|
||||||
|> mapToSignal { result -> Signal<TelegramMediaWebpage, NoError> in
|
|> mapToSignal { result -> Signal<TelegramMediaWebpage, NoError> in
|
||||||
if let updatedWebpage = telegramMediaWebpageFromApiWebpage(result, url: nil), case .Loaded = updatedWebpage.content, updatedWebpage.webpageId == webpage.webpageId {
|
if let result = result, let updatedWebpage = telegramMediaWebpageFromApiWebpage(result, url: nil), case .Loaded = updatedWebpage.content, updatedWebpage.webpageId == webpage.webpageId {
|
||||||
return postbox.transaction { transaction -> TelegramMediaWebpage in
|
return postbox.transaction { transaction -> TelegramMediaWebpage in
|
||||||
updateMessageMedia(transaction: transaction, id: webpage.webpageId, media: updatedWebpage)
|
updateMessageMedia(transaction: transaction, id: webpage.webpageId, media: updatedWebpage)
|
||||||
return updatedWebpage
|
return updatedWebpage
|
||||||
@ -99,11 +100,12 @@ public func actualizedWebpage(postbox: Postbox, network: Network, webpage: Teleg
|
|||||||
func updatedRemoteWebpage(postbox: Postbox, network: Network, webPage: WebpageReference) -> Signal<TelegramMediaWebpage?, NoError> {
|
func updatedRemoteWebpage(postbox: Postbox, network: Network, webPage: WebpageReference) -> Signal<TelegramMediaWebpage?, NoError> {
|
||||||
if case let .webPage(id, url) = webPage.content {
|
if case let .webPage(id, url) = webPage.content {
|
||||||
return network.request(Api.functions.messages.getWebPage(url: url, hash: 0))
|
return network.request(Api.functions.messages.getWebPage(url: url, hash: 0))
|
||||||
|> `catch` { _ -> Signal<Api.WebPage, NoError> in
|
|> map(Optional.init)
|
||||||
return .single(.webPageNotModified)
|
|> `catch` { _ -> Signal<Api.WebPage?, NoError> in
|
||||||
|
return .single(nil)
|
||||||
}
|
}
|
||||||
|> mapToSignal { result -> Signal<TelegramMediaWebpage?, NoError> in
|
|> mapToSignal { result -> Signal<TelegramMediaWebpage?, NoError> in
|
||||||
if let updatedWebpage = telegramMediaWebpageFromApiWebpage(result, url: nil), case .Loaded = updatedWebpage.content, updatedWebpage.webpageId.id == id {
|
if let result = result, let updatedWebpage = telegramMediaWebpageFromApiWebpage(result, url: nil), case .Loaded = updatedWebpage.content, updatedWebpage.webpageId.id == id {
|
||||||
return postbox.transaction { transaction -> TelegramMediaWebpage? in
|
return postbox.transaction { transaction -> TelegramMediaWebpage? in
|
||||||
if transaction.getMedia(updatedWebpage.webpageId) != nil {
|
if transaction.getMedia(updatedWebpage.webpageId) != nil {
|
||||||
updateMessageMedia(transaction: transaction, id: updatedWebpage.webpageId, media: updatedWebpage)
|
updateMessageMedia(transaction: transaction, id: updatedWebpage.webpageId, media: updatedWebpage)
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user