diff --git a/submodules/TelegramApi/Sources/Api30.swift b/submodules/TelegramApi/Sources/Api30.swift index 99519a50b7..0286a80df7 100644 --- a/submodules/TelegramApi/Sources/Api30.swift +++ b/submodules/TelegramApi/Sources/Api30.swift @@ -525,8 +525,22 @@ public extension Api.account { } public extension Api.account { enum EmailVerified: TypeConstructorDescription { - case emailVerified(email: String) - case emailVerifiedLogin(email: String, sentCode: Api.auth.SentCode) + public class Cons_emailVerified { + public var email: String + public init(email: String) { + self.email = email + } + } + public class Cons_emailVerifiedLogin { + public var email: String + public var sentCode: Api.auth.SentCode + public init(email: String, sentCode: Api.auth.SentCode) { + self.email = email + self.sentCode = sentCode + } + } + case emailVerified(Cons_emailVerified) + case emailVerifiedLogin(Cons_emailVerifiedLogin) public func serialize(_ buffer: Buffer, _ boxed: Swift.Bool) { #if DEBUG @@ -562,7 +576,15 @@ public extension Api.account { } public extension Api.account { enum EmojiStatuses: TypeConstructorDescription { - case emojiStatuses(hash: Int64, statuses: [Api.EmojiStatus]) + public class Cons_emojiStatuses { + public var hash: Int64 + public var statuses: [Api.EmojiStatus] + public init(hash: Int64, statuses: [Api.EmojiStatus]) { + self.hash = hash + self.statuses = statuses + } + } + case emojiStatuses(Cons_emojiStatuses) case emojiStatusesNotModified public func serialize(_ buffer: Buffer, _ boxed: Swift.Bool) { @@ -599,7 +621,13 @@ public extension Api.account { } public extension Api.account { enum PaidMessagesRevenue: TypeConstructorDescription { - case paidMessagesRevenue(starsAmount: Int64) + public class Cons_paidMessagesRevenue { + public var starsAmount: Int64 + public init(starsAmount: Int64) { + self.starsAmount = starsAmount + } + } + case paidMessagesRevenue(Cons_paidMessagesRevenue) public func serialize(_ buffer: Buffer, _ boxed: Swift.Bool) { #if DEBUG @@ -628,7 +656,13 @@ public extension Api.account { } public extension Api.account { enum PasskeyRegistrationOptions: TypeConstructorDescription { - case passkeyRegistrationOptions(options: Api.DataJSON) + public class Cons_passkeyRegistrationOptions { + public var options: Api.DataJSON + public init(options: Api.DataJSON) { + self.options = options + } + } + case passkeyRegistrationOptions(Cons_passkeyRegistrationOptions) public func serialize(_ buffer: Buffer, _ boxed: Swift.Bool) { #if DEBUG @@ -657,7 +691,13 @@ public extension Api.account { } public extension Api.account { enum Passkeys: TypeConstructorDescription { - case passkeys(passkeys: [Api.Passkey]) + public class Cons_passkeys { + public var passkeys: [Api.Passkey] + public init(passkeys: [Api.Passkey]) { + self.passkeys = passkeys + } + } + case passkeys(Cons_passkeys) public func serialize(_ buffer: Buffer, _ boxed: Swift.Bool) { #if DEBUG @@ -686,7 +726,33 @@ public extension Api.account { } public extension Api.account { enum Password: TypeConstructorDescription { - case password(flags: Int32, currentAlgo: Api.PasswordKdfAlgo?, srpB: Buffer?, srpId: Int64?, hint: String?, emailUnconfirmedPattern: String?, newAlgo: Api.PasswordKdfAlgo, newSecureAlgo: Api.SecurePasswordKdfAlgo, secureRandom: Buffer, pendingResetDate: Int32?, loginEmailPattern: String?) + public class Cons_password { + public var flags: Int32 + public var currentAlgo: Api.PasswordKdfAlgo? + public var srpB: Buffer? + public var srpId: Int64? + public var hint: String? + public var emailUnconfirmedPattern: String? + public var newAlgo: Api.PasswordKdfAlgo + public var newSecureAlgo: Api.SecurePasswordKdfAlgo + public var secureRandom: Buffer + public var pendingResetDate: Int32? + public var loginEmailPattern: String? + public init(flags: Int32, currentAlgo: Api.PasswordKdfAlgo?, srpB: Buffer?, srpId: Int64?, hint: String?, emailUnconfirmedPattern: String?, newAlgo: Api.PasswordKdfAlgo, newSecureAlgo: Api.SecurePasswordKdfAlgo, secureRandom: Buffer, pendingResetDate: Int32?, loginEmailPattern: String?) { + self.flags = flags + self.currentAlgo = currentAlgo + self.srpB = srpB + self.srpId = srpId + self.hint = hint + self.emailUnconfirmedPattern = emailUnconfirmedPattern + self.newAlgo = newAlgo + self.newSecureAlgo = newSecureAlgo + self.secureRandom = secureRandom + self.pendingResetDate = pendingResetDate + self.loginEmailPattern = loginEmailPattern + } + } + case password(Cons_password) public func serialize(_ buffer: Buffer, _ boxed: Swift.Bool) { #if DEBUG @@ -715,7 +781,23 @@ public extension Api.account { } public extension Api.account { enum PasswordInputSettings: TypeConstructorDescription { - case passwordInputSettings(flags: Int32, newAlgo: Api.PasswordKdfAlgo?, newPasswordHash: Buffer?, hint: String?, email: String?, newSecureSettings: Api.SecureSecretSettings?) + public class Cons_passwordInputSettings { + public var flags: Int32 + public var newAlgo: Api.PasswordKdfAlgo? + public var newPasswordHash: Buffer? + public var hint: String? + public var email: String? + public var newSecureSettings: Api.SecureSecretSettings? + public init(flags: Int32, newAlgo: Api.PasswordKdfAlgo?, newPasswordHash: Buffer?, hint: String?, email: String?, newSecureSettings: Api.SecureSecretSettings?) { + self.flags = flags + self.newAlgo = newAlgo + self.newPasswordHash = newPasswordHash + self.hint = hint + self.email = email + self.newSecureSettings = newSecureSettings + } + } + case passwordInputSettings(Cons_passwordInputSettings) public func serialize(_ buffer: Buffer, _ boxed: Swift.Bool) { #if DEBUG @@ -744,7 +826,17 @@ public extension Api.account { } public extension Api.account { enum PasswordSettings: TypeConstructorDescription { - case passwordSettings(flags: Int32, email: String?, secureSettings: Api.SecureSecretSettings?) + public class Cons_passwordSettings { + public var flags: Int32 + public var email: String? + public var secureSettings: Api.SecureSecretSettings? + public init(flags: Int32, email: String?, secureSettings: Api.SecureSecretSettings?) { + self.flags = flags + self.email = email + self.secureSettings = secureSettings + } + } + case passwordSettings(Cons_passwordSettings) public func serialize(_ buffer: Buffer, _ boxed: Swift.Bool) { #if DEBUG @@ -773,7 +865,17 @@ public extension Api.account { } public extension Api.account { enum PrivacyRules: TypeConstructorDescription { - case privacyRules(rules: [Api.PrivacyRule], chats: [Api.Chat], users: [Api.User]) + public class Cons_privacyRules { + public var rules: [Api.PrivacyRule] + public var chats: [Api.Chat] + public var users: [Api.User] + public init(rules: [Api.PrivacyRule], chats: [Api.Chat], users: [Api.User]) { + self.rules = rules + self.chats = chats + self.users = users + } + } + case privacyRules(Cons_privacyRules) public func serialize(_ buffer: Buffer, _ boxed: Swift.Bool) { #if DEBUG @@ -802,9 +904,21 @@ public extension Api.account { } public extension Api.account { enum ResetPasswordResult: TypeConstructorDescription { - case resetPasswordFailedWait(retryDate: Int32) + public class Cons_resetPasswordFailedWait { + public var retryDate: Int32 + public init(retryDate: Int32) { + self.retryDate = retryDate + } + } + public class Cons_resetPasswordRequestedWait { + public var untilDate: Int32 + public init(untilDate: Int32) { + self.untilDate = untilDate + } + } + case resetPasswordFailedWait(Cons_resetPasswordFailedWait) case resetPasswordOk - case resetPasswordRequestedWait(untilDate: Int32) + case resetPasswordRequestedWait(Cons_resetPasswordRequestedWait) public func serialize(_ buffer: Buffer, _ boxed: Swift.Bool) { #if DEBUG @@ -847,7 +961,23 @@ public extension Api.account { } public extension Api.account { enum ResolvedBusinessChatLinks: TypeConstructorDescription { - case resolvedBusinessChatLinks(flags: Int32, peer: Api.Peer, message: String, entities: [Api.MessageEntity]?, chats: [Api.Chat], users: [Api.User]) + public class Cons_resolvedBusinessChatLinks { + public var flags: Int32 + public var peer: Api.Peer + public var message: String + public var entities: [Api.MessageEntity]? + public var chats: [Api.Chat] + public var users: [Api.User] + public init(flags: Int32, peer: Api.Peer, message: String, entities: [Api.MessageEntity]?, chats: [Api.Chat], users: [Api.User]) { + self.flags = flags + self.peer = peer + self.message = message + self.entities = entities + self.chats = chats + self.users = users + } + } + case resolvedBusinessChatLinks(Cons_resolvedBusinessChatLinks) public func serialize(_ buffer: Buffer, _ boxed: Swift.Bool) { #if DEBUG diff --git a/submodules/TelegramApi/Sources/Api31.swift b/submodules/TelegramApi/Sources/Api31.swift index 276755288a..a816a593f5 100644 --- a/submodules/TelegramApi/Sources/Api31.swift +++ b/submodules/TelegramApi/Sources/Api31.swift @@ -1,6 +1,12 @@ public extension Api.account { enum SavedMusicIds: TypeConstructorDescription { - case savedMusicIds(ids: [Int64]) + public class Cons_savedMusicIds { + public var ids: [Int64] + public init(ids: [Int64]) { + self.ids = ids + } + } + case savedMusicIds(Cons_savedMusicIds) case savedMusicIdsNotModified public func serialize(_ buffer: Buffer, _ boxed: Swift.Bool) { @@ -37,8 +43,14 @@ public extension Api.account { } public extension Api.account { enum SavedRingtone: TypeConstructorDescription { + public class Cons_savedRingtoneConverted { + public var document: Api.Document + public init(document: Api.Document) { + self.document = document + } + } case savedRingtone - case savedRingtoneConverted(document: Api.Document) + case savedRingtoneConverted(Cons_savedRingtoneConverted) public func serialize(_ buffer: Buffer, _ boxed: Swift.Bool) { #if DEBUG @@ -74,7 +86,15 @@ public extension Api.account { } public extension Api.account { enum SavedRingtones: TypeConstructorDescription { - case savedRingtones(hash: Int64, ringtones: [Api.Document]) + public class Cons_savedRingtones { + public var hash: Int64 + public var ringtones: [Api.Document] + public init(hash: Int64, ringtones: [Api.Document]) { + self.hash = hash + self.ringtones = ringtones + } + } + case savedRingtones(Cons_savedRingtones) case savedRingtonesNotModified public func serialize(_ buffer: Buffer, _ boxed: Swift.Bool) { @@ -111,7 +131,15 @@ public extension Api.account { } public extension Api.account { enum SentEmailCode: TypeConstructorDescription { - case sentEmailCode(emailPattern: String, length: Int32) + public class Cons_sentEmailCode { + public var emailPattern: String + public var length: Int32 + public init(emailPattern: String, length: Int32) { + self.emailPattern = emailPattern + self.length = length + } + } + case sentEmailCode(Cons_sentEmailCode) public func serialize(_ buffer: Buffer, _ boxed: Swift.Bool) { #if DEBUG @@ -140,7 +168,13 @@ public extension Api.account { } public extension Api.account { enum Takeout: TypeConstructorDescription { - case takeout(id: Int64) + public class Cons_takeout { + public var id: Int64 + public init(id: Int64) { + self.id = id + } + } + case takeout(Cons_takeout) public func serialize(_ buffer: Buffer, _ boxed: Swift.Bool) { #if DEBUG @@ -169,7 +203,15 @@ public extension Api.account { } public extension Api.account { enum Themes: TypeConstructorDescription { - case themes(hash: Int64, themes: [Api.Theme]) + public class Cons_themes { + public var hash: Int64 + public var themes: [Api.Theme] + public init(hash: Int64, themes: [Api.Theme]) { + self.hash = hash + self.themes = themes + } + } + case themes(Cons_themes) case themesNotModified public func serialize(_ buffer: Buffer, _ boxed: Swift.Bool) { @@ -206,7 +248,15 @@ public extension Api.account { } public extension Api.account { enum TmpPassword: TypeConstructorDescription { - case tmpPassword(tmpPassword: Buffer, validUntil: Int32) + public class Cons_tmpPassword { + public var tmpPassword: Buffer + public var validUntil: Int32 + public init(tmpPassword: Buffer, validUntil: Int32) { + self.tmpPassword = tmpPassword + self.validUntil = validUntil + } + } + case tmpPassword(Cons_tmpPassword) public func serialize(_ buffer: Buffer, _ boxed: Swift.Bool) { #if DEBUG @@ -235,7 +285,15 @@ public extension Api.account { } public extension Api.account { enum WallPapers: TypeConstructorDescription { - case wallPapers(hash: Int64, wallpapers: [Api.WallPaper]) + public class Cons_wallPapers { + public var hash: Int64 + public var wallpapers: [Api.WallPaper] + public init(hash: Int64, wallpapers: [Api.WallPaper]) { + self.hash = hash + self.wallpapers = wallpapers + } + } + case wallPapers(Cons_wallPapers) case wallPapersNotModified public func serialize(_ buffer: Buffer, _ boxed: Swift.Bool) { @@ -272,7 +330,15 @@ public extension Api.account { } public extension Api.account { enum WebAuthorizations: TypeConstructorDescription { - case webAuthorizations(authorizations: [Api.WebAuthorization], users: [Api.User]) + public class Cons_webAuthorizations { + public var authorizations: [Api.WebAuthorization] + public var users: [Api.User] + public init(authorizations: [Api.WebAuthorization], users: [Api.User]) { + self.authorizations = authorizations + self.users = users + } + } + case webAuthorizations(Cons_webAuthorizations) public func serialize(_ buffer: Buffer, _ boxed: Swift.Bool) { #if DEBUG diff --git a/submodules/TelegramCore/Sources/Account/Account.swift b/submodules/TelegramCore/Sources/Account/Account.swift index 4c8541ed81..b7fb147048 100644 --- a/submodules/TelegramCore/Sources/Account/Account.swift +++ b/submodules/TelegramCore/Sources/Account/Account.swift @@ -435,7 +435,8 @@ func _internal_twoStepAuthData(_ network: Network) -> Signal map { config -> TwoStepAuthData in switch config { - case let .password(flags, currentAlgo, srpB, srpId, hint, emailUnconfirmedPattern, newAlgo, newSecureAlgo, secureRandom, pendingResetDate, loginEmailPattern): + case let .password(passwordData): + let (flags, currentAlgo, srpB, srpId, hint, emailUnconfirmedPattern, newAlgo, newSecureAlgo, secureRandom, pendingResetDate, loginEmailPattern) = (passwordData.flags, passwordData.currentAlgo, passwordData.srpB, passwordData.srpId, passwordData.hint, passwordData.emailUnconfirmedPattern, passwordData.newAlgo, passwordData.newSecureAlgo, passwordData.secureRandom, passwordData.pendingResetDate, passwordData.loginEmailPattern) let hasRecovery = (flags & (1 << 0)) != 0 let hasSecureValues = (flags & (1 << 1)) != 0 @@ -518,7 +519,8 @@ func _internal_passkeysData(network: Network) -> Signal<[TelegramPasskey], NoErr return [] } switch passkeys { - case let .passkeys(passkeys): + case let .passkeys(passkeysData): + let passkeys = passkeysData.passkeys return passkeys.map { passkey in return TelegramPasskey(apiPasskey: passkey) } @@ -537,7 +539,8 @@ func _internal_requestPasskeyRegistration(network: Network) -> Signal mapToSignal { result -> Signal<(SendCodeResult, UnauthorizedAccount), MTRpcError> in switch result { - case let .password(_, _, _, _, hint, _, _, _, _, _, _): + case let .password(passwordData): + let hint = passwordData.hint return .single((.password(hint: hint), updatedAccount)) } } @@ -248,7 +249,8 @@ public func sendAuthorizationCode(accountManager: AccountManager mapToSignal { result -> Signal<(SendCodeResult, UnauthorizedAccount), AuthorizationCodeRequestError> in switch result { - case let .password(_, _, _, _, hint, _, _, _, _, _, _): + case let .password(passwordData): + let hint = passwordData.hint return .single((.password(hint: hint), account)) } } @@ -776,7 +778,8 @@ public func sendLoginEmailChangeCode(account: Account, email: String) -> Signal< } |> map { result -> ChangeLoginEmailData in switch result { - case let .sentEmailCode(_, length): + case let .sentEmailCode(sentEmailCodeData): + let length = sentEmailCodeData.length return ChangeLoginEmailData(email: email, length: length) } } @@ -805,7 +808,8 @@ public func sendLoginEmailCode(account: UnauthorizedAccount, email: String) -> S |> mapToSignal { result -> Signal in return account.postbox.transaction { transaction -> Signal in switch result { - case let .sentEmailCode(emailPattern, length): + case let .sentEmailCode(sentEmailCodeData): + let (emailPattern, length) = (sentEmailCodeData.emailPattern, sentEmailCodeData.length) transaction.setState(UnauthorizedAccountState(isTestingEnvironment: account.testingEnvironment, masterDatacenterId: account.masterDatacenterId, contents: .confirmationCodeEntry(number: phoneNumber, type: .email(emailPattern: emailPattern, length: length, resetAvailablePeriod: nil, resetPendingDate: nil, appleSignInAllowed: false, setup: true), hash: phoneCodeHash, timeout: nil, nextType: nil, syncContacts: syncContacts, previousCodeEntry: nil, usePrevious: false))) } return .complete() @@ -896,7 +900,8 @@ public func verifyLoginEmailSetup(account: UnauthorizedAccount, code: Authorizat |> mapToSignal { result -> Signal in return account.postbox.transaction { transaction -> Signal in switch result { - case let .emailVerifiedLogin(_, sentCode): + case let .emailVerifiedLogin(emailVerifiedLoginData): + let sentCode = emailVerifiedLoginData.sentCode switch sentCode { case let .sentCode(_, type, phoneCodeHash, nextType, timeout): var parsedNextType: AuthorizationCodeNextType? @@ -1037,7 +1042,8 @@ public func authorizeWithCode(accountManager: AccountManager mapToSignal { result -> Signal in switch result { - case let .password(_, _, _, _, hint, _, _, _, _, _, _): + case let .password(passwordData): + let hint = passwordData.hint return .single(.password(hint: hint ?? "")) } } @@ -1232,7 +1238,8 @@ public func authorizeWithPasskey(accountManager: AccountManager mapToSignal { result -> Signal in switch result { - case let .password(_, _, _, _, hint, _, _, _, _, _, _): + case let .password(passwordData): + let hint = passwordData.hint return .single(.password(hint: hint ?? "")) } } @@ -1385,7 +1392,7 @@ func _internal_performPasswordRecovery(network: Network, code: String, updatedPa return .fail(.invalidCode) } - newSettings = Api.account.PasswordInputSettings.passwordInputSettings(flags: flags, newAlgo: updatedPasswordDerivation.apiAlgo, newPasswordHash: Buffer(data: updatedPasswordHash), hint: hint, email: email, newSecureSettings: nil) + newSettings = Api.account.PasswordInputSettings.passwordInputSettings(.init(flags: flags, newAlgo: updatedPasswordDerivation.apiAlgo, newPasswordHash: Buffer(data: updatedPasswordHash), hint: hint, email: email, newSecureSettings: nil)) } var flags: Int32 = 0 diff --git a/submodules/TelegramCore/Sources/State/ManagedRecentStickers.swift b/submodules/TelegramCore/Sources/State/ManagedRecentStickers.swift index 83968f0881..47dee2da0b 100644 --- a/submodules/TelegramCore/Sources/State/ManagedRecentStickers.swift +++ b/submodules/TelegramCore/Sources/State/ManagedRecentStickers.swift @@ -232,9 +232,10 @@ func managedRecentStatusEmoji(postbox: Postbox, network: Network) -> Signal map { files -> [OrderedItemListEntry] in var items: [OrderedItemListEntry] = [] @@ -265,9 +266,10 @@ func managedFeaturedStatusEmoji(postbox: Postbox, network: Network) -> Signal map { files -> [OrderedItemListEntry] in var items: [OrderedItemListEntry] = [] @@ -298,9 +300,10 @@ func managedFeaturedChannelStatusEmoji(postbox: Postbox, network: Network) -> Si switch result { case .emojiStatusesNotModified: return .single(nil) - case let .emojiStatuses(_, statuses): + case let .emojiStatuses(emojiStatusesData): + let statuses = emojiStatusesData.statuses let parsedStatuses = statuses.compactMap(PeerEmojiStatus.init(apiStatus:)) - + return _internal_resolveInlineStickers(postbox: postbox, network: network, fileIds: parsedStatuses.compactMap(\.emojiFileId)) |> map { files -> [OrderedItemListEntry] in var items: [OrderedItemListEntry] = [] @@ -331,9 +334,10 @@ func managedUniqueStarGifts(accountPeerId: PeerId, postbox: Postbox, network: Ne switch result { case .emojiStatusesNotModified: return .single(nil) - case let .emojiStatuses(_, statuses): + case let .emojiStatuses(emojiStatusesData): + let statuses = emojiStatusesData.statuses let parsedStatuses = statuses.compactMap(PeerEmojiStatus.init(apiStatus:)) - + return _internal_resolveInlineStickers(postbox: postbox, network: network, fileIds: parsedStatuses.flatMap(\.associatedFileIds)) |> map { files -> [OrderedItemListEntry] in var items: [OrderedItemListEntry] = [] diff --git a/submodules/TelegramCore/Sources/State/PaidMessages.swift b/submodules/TelegramCore/Sources/State/PaidMessages.swift index 035dcf363c..fc41251860 100644 --- a/submodules/TelegramCore/Sources/State/PaidMessages.swift +++ b/submodules/TelegramCore/Sources/State/PaidMessages.swift @@ -32,7 +32,8 @@ func _internal_getPaidMessagesRevenue(account: Account, scopePeerId: PeerId, pee return nil } switch result { - case let .paidMessagesRevenue(amount): + case let .paidMessagesRevenue(paidMessagesRevenueData): + let amount = paidMessagesRevenueData.starsAmount return StarsAmount(value: amount, nanos: 0) } } diff --git a/submodules/TelegramCore/Sources/TelegramEngine/Auth/AuthTransfer.swift b/submodules/TelegramCore/Sources/TelegramEngine/Auth/AuthTransfer.swift index e37ce0cb01..d58a34258c 100644 --- a/submodules/TelegramCore/Sources/TelegramEngine/Auth/AuthTransfer.swift +++ b/submodules/TelegramCore/Sources/TelegramEngine/Auth/AuthTransfer.swift @@ -35,7 +35,8 @@ func _internal_exportAuthTransferToken(accountManager: AccountManager mapToSignal { result -> Signal in switch result { - case let .password(_, _, _, _, hint, _, _, _, _, _, _): + case let .password(passwordData): + let hint = passwordData.hint return account.postbox.transaction { transaction -> Api.auth.LoginToken? in transaction.setState(UnauthorizedAccountState(isTestingEnvironment: account.testingEnvironment, masterDatacenterId: account.masterDatacenterId, contents: .passwordEntry(hint: hint ?? "", number: nil, code: nil, suggestReset: false, syncContacts: syncContacts))) return nil @@ -73,7 +74,8 @@ func _internal_exportAuthTransferToken(accountManager: AccountManager mapToSignal { result -> Signal in switch result { - case let .password(_, _, _, _, hint, _, _, _, _, _, _): + case let .password(passwordData): + let hint = passwordData.hint return updatedAccount.postbox.transaction { transaction -> Api.auth.LoginToken? in transaction.setState(UnauthorizedAccountState(isTestingEnvironment: updatedAccount.testingEnvironment, masterDatacenterId: updatedAccount.masterDatacenterId, contents: .passwordEntry(hint: hint ?? "", number: nil, code: nil, suggestReset: false, syncContacts: syncContacts))) return nil diff --git a/submodules/TelegramCore/Sources/TelegramEngine/Auth/TwoStepVerification.swift b/submodules/TelegramCore/Sources/TelegramEngine/Auth/TwoStepVerification.swift index 63810b95da..30d31b5600 100644 --- a/submodules/TelegramCore/Sources/TelegramEngine/Auth/TwoStepVerification.swift +++ b/submodules/TelegramCore/Sources/TelegramEngine/Auth/TwoStepVerification.swift @@ -15,7 +15,8 @@ func _internal_twoStepVerificationConfiguration(account: Account) -> Signal retryRequest |> map { result -> TwoStepVerificationConfiguration in switch result { - case let .password(flags, currentAlgo, _, _, hint, emailUnconfirmedPattern, _, _, _, pendingResetDate, _): + case let .password(passwordData): + let (flags, currentAlgo, hint, emailUnconfirmedPattern, pendingResetDate) = (passwordData.flags, passwordData.currentAlgo, passwordData.hint, passwordData.emailUnconfirmedPattern, passwordData.pendingResetDate) if currentAlgo != nil { return .set(hint: hint ?? "", hasRecoveryEmail: (flags & (1 << 0)) != 0, pendingEmail: emailUnconfirmedPattern.flatMap({ TwoStepVerificationPendingEmail(pattern: $0, codeLength: nil) }), hasSecureValues: (flags & (1 << 1)) != 0, pendingResetTimestamp: pendingResetDate) } else { @@ -68,7 +69,8 @@ func _internal_requestTwoStepVerifiationSettings(network: Network, password: Str } |> mapToSignal { result -> Signal in switch result { - case let .passwordSettings(_, email, secureSettings): + case let .passwordSettings(passwordSettingsData): + let (email, secureSettings) = (passwordSettingsData.email, passwordSettingsData.secureSettings) var parsedSecureSecret: TwoStepVerificationSecureSecret? if let secureSettings = secureSettings { switch secureSettings { @@ -157,7 +159,7 @@ func _internal_updateTwoStepVerificationPassword(network: Network, currentPasswo flags |= (1 << 0) } - return network.request(Api.functions.account.updatePasswordSettings(password: checkPassword, newSettings: .passwordInputSettings(flags: flags, newAlgo: .passwordKdfAlgoUnknown, newPasswordHash: Buffer(data: Data()), hint: "", email: "", newSecureSettings: nil)), automaticFloodWait: true) + return network.request(Api.functions.account.updatePasswordSettings(password: checkPassword, newSettings: .passwordInputSettings(.init(flags: flags, newAlgo: .passwordKdfAlgoUnknown, newPasswordHash: Buffer(data: Data()), hint: "", email: "", newSecureSettings: nil))), automaticFloodWait: true) |> mapError { _ -> UpdateTwoStepVerificationPasswordError in return .generic } @@ -193,7 +195,7 @@ func _internal_updateTwoStepVerificationPassword(network: Network, currentPasswo updatedSecureSettings = .secureSecretSettings(.init(secureAlgo: updatedSecureSecret.derivation.apiAlgo, secureSecret: Buffer(data: updatedSecureSecret.data), secureSecretId: updatedSecureSecret.id)) } - return network.request(Api.functions.account.updatePasswordSettings(password: checkPassword, newSettings: Api.account.PasswordInputSettings.passwordInputSettings(flags: flags, newAlgo: updatedPasswordDerivation.apiAlgo, newPasswordHash: Buffer(data: updatedPasswordHash), hint: hint, email: email, newSecureSettings: updatedSecureSettings)), automaticFloodWait: false) + return network.request(Api.functions.account.updatePasswordSettings(password: checkPassword, newSettings: Api.account.PasswordInputSettings.passwordInputSettings(.init(flags: flags, newAlgo: updatedPasswordDerivation.apiAlgo, newPasswordHash: Buffer(data: updatedPasswordHash), hint: hint, email: email, newSecureSettings: updatedSecureSettings))), automaticFloodWait: false) |> map { _ -> UpdateTwoStepVerificationPasswordResult in return .password(password: password, pendingEmail: nil) } @@ -253,7 +255,7 @@ func updateTwoStepVerificationSecureSecret(network: Network, password: String, s } let flags: Int32 = (1 << 2) - return network.request(Api.functions.account.updatePasswordSettings(password: checkPassword, newSettings: .passwordInputSettings(flags: flags, newAlgo: nil, newPasswordHash: nil, hint: "", email: "", newSecureSettings: .secureSecretSettings(.init(secureAlgo: secretDerivation.apiAlgo, secureSecret: Buffer(data: encryptedSecret), secureSecretId: secretId)))), automaticFloodWait: true) + return network.request(Api.functions.account.updatePasswordSettings(password: checkPassword, newSettings: .passwordInputSettings(.init(flags: flags, newAlgo: nil, newPasswordHash: nil, hint: "", email: "", newSecureSettings: .secureSecretSettings(.init(secureAlgo: secretDerivation.apiAlgo, secureSecret: Buffer(data: encryptedSecret), secureSecretId: secretId))))), automaticFloodWait: true) |> mapError { _ -> UpdateTwoStepVerificationSecureSecretError in return .generic } @@ -280,7 +282,7 @@ func _internal_updateTwoStepVerificationEmail(network: Network, currentPassword: } let flags: Int32 = 1 << 1 - return network.request(Api.functions.account.updatePasswordSettings(password: checkPassword, newSettings: Api.account.PasswordInputSettings.passwordInputSettings(flags: flags, newAlgo: nil, newPasswordHash: nil, hint: nil, email: updatedEmail, newSecureSettings: nil)), automaticFloodWait: false) + return network.request(Api.functions.account.updatePasswordSettings(password: checkPassword, newSettings: Api.account.PasswordInputSettings.passwordInputSettings(.init(flags: flags, newAlgo: nil, newPasswordHash: nil, hint: nil, email: updatedEmail, newSecureSettings: nil))), automaticFloodWait: false) |> map { _ -> UpdateTwoStepVerificationPasswordResult in return .password(password: currentPassword, pendingEmail: nil) } @@ -376,7 +378,8 @@ func _internal_requestTemporaryTwoStepPasswordToken(account: Account, password: return account.network.request(Api.functions.account.getTmpPassword(password: checkPassword, period: period), automaticFloodWait: false) |> map { result -> TemporaryTwoStepPasswordToken in switch result { - case let .tmpPassword(tmpPassword, validUntil): + case let .tmpPassword(tmpPasswordData): + let (tmpPassword, validUntil) = (tmpPasswordData.tmpPassword, tmpPasswordData.validUntil) return TemporaryTwoStepPasswordToken(token: tmpPassword.makeData(), validUntilDate: validUntil, requiresBiometrics: requiresBiometrics) } } @@ -408,11 +411,13 @@ func _internal_requestTwoStepPasswordReset(network: Network) -> Signal map { result -> RequestTwoStepPasswordResetResult in switch result { - case let .resetPasswordFailedWait(retryDate): + case let .resetPasswordFailedWait(resetPasswordFailedWaitData): + let retryDate = resetPasswordFailedWaitData.retryDate return .error(reason: .limitExceeded(retryAtTimestamp: retryDate)) case .resetPasswordOk: return .done - case let .resetPasswordRequestedWait(untilDate): + case let .resetPasswordRequestedWait(resetPasswordRequestedWaitData): + let untilDate = resetPasswordRequestedWaitData.untilDate return .waitingForReset(resetAtTimestamp: untilDate) } } diff --git a/submodules/TelegramCore/Sources/TelegramEngine/Peers/NotificationSoundList.swift b/submodules/TelegramCore/Sources/TelegramEngine/Peers/NotificationSoundList.swift index ba133f7eba..1dd9c607bc 100644 --- a/submodules/TelegramCore/Sources/TelegramEngine/Peers/NotificationSoundList.swift +++ b/submodules/TelegramCore/Sources/TelegramEngine/Peers/NotificationSoundList.swift @@ -180,7 +180,8 @@ func requestNotificationSoundList(network: Network, hash: Int64) -> Signal Si return .complete() } switch result { - case let .savedRingtones(hash, ringtones): + case let .savedRingtones(savedRingtonesData): + let (hash, ringtones) = (savedRingtonesData.hash, savedRingtonesData.ringtones) let notificationSoundList = NotificationSoundList( hash: hash, sounds: ringtones.compactMap(NotificationSoundList.NotificationSound.init(apiDocument:)) diff --git a/submodules/TelegramCore/Sources/TelegramEngine/Peers/SavedMusic.swift b/submodules/TelegramCore/Sources/TelegramEngine/Peers/SavedMusic.swift index 14a74ed87b..edd63193a3 100644 --- a/submodules/TelegramCore/Sources/TelegramEngine/Peers/SavedMusic.swift +++ b/submodules/TelegramCore/Sources/TelegramEngine/Peers/SavedMusic.swift @@ -104,7 +104,8 @@ func _internal_keepSavedMusicIdsUpdated(postbox: Postbox, network: Network, acco } return postbox.transaction { transaction in switch result { - case let .savedMusicIds(ids): + case let .savedMusicIds(savedMusicIdsData): + let ids = savedMusicIdsData.ids let savedMusicIdsList = SavedMusicIdsList(items: ids) transaction.setPreferencesEntry(key: PreferencesKeys.savedMusicIds(), value: PreferencesEntry(savedMusicIdsList)) case .savedMusicIdsNotModified: diff --git a/submodules/TelegramCore/Sources/TelegramEngine/Peers/TelegramEnginePeers.swift b/submodules/TelegramCore/Sources/TelegramEngine/Peers/TelegramEnginePeers.swift index cdcf400640..3c0b032ccf 100644 --- a/submodules/TelegramCore/Sources/TelegramEngine/Peers/TelegramEnginePeers.swift +++ b/submodules/TelegramCore/Sources/TelegramEngine/Peers/TelegramEnginePeers.swift @@ -1741,7 +1741,8 @@ public extension TelegramEngine { } return self.account.postbox.transaction { transaction -> TelegramResolvedMessageLink? in switch result { - case let .resolvedBusinessChatLinks(_, peer, message, entities, chats, users): + case let .resolvedBusinessChatLinks(resolvedBusinessChatLinksData): + let (peer, message, entities, chats, users) = (resolvedBusinessChatLinksData.peer, resolvedBusinessChatLinksData.message, resolvedBusinessChatLinksData.entities, resolvedBusinessChatLinksData.chats, resolvedBusinessChatLinksData.users) updatePeers(transaction: transaction, accountPeerId: self.account.peerId, peers: AccumulatedPeers(transaction: transaction, chats: chats, users: users)) guard let peer = transaction.getPeer(peer.peerId) else { diff --git a/submodules/TelegramCore/Sources/TelegramEngine/Privacy/RecentWebSessions.swift b/submodules/TelegramCore/Sources/TelegramEngine/Privacy/RecentWebSessions.swift index 61277beae3..e0910f0569 100644 --- a/submodules/TelegramCore/Sources/TelegramEngine/Privacy/RecentWebSessions.swift +++ b/submodules/TelegramCore/Sources/TelegramEngine/Privacy/RecentWebSessions.swift @@ -30,7 +30,8 @@ func webSessions(network: Network) -> Signal<([WebAuthorization], [PeerId: Peer] var sessions: [WebAuthorization] = [] var peers:[PeerId : Peer] = [:] switch result { - case let .webAuthorizations(authorizations, users): + case let .webAuthorizations(webAuthorizationsData): + let (authorizations, users) = (webAuthorizationsData.authorizations, webAuthorizationsData.users) for authorization in authorizations { switch authorization { case let .webAuthorization(webAuthorizationData): diff --git a/submodules/TelegramCore/Sources/TelegramEngine/Privacy/UpdatedAccountPrivacySettings.swift b/submodules/TelegramCore/Sources/TelegramEngine/Privacy/UpdatedAccountPrivacySettings.swift index 09e668f5cc..abf8a38174 100644 --- a/submodules/TelegramCore/Sources/TelegramEngine/Privacy/UpdatedAccountPrivacySettings.swift +++ b/submodules/TelegramCore/Sources/TelegramEngine/Privacy/UpdatedAccountPrivacySettings.swift @@ -113,49 +113,56 @@ func _internal_requestAccountPrivacySettings(account: Account) -> Signal Signal Signal Signal map { _ in } |> mapError { _ in return AuthorizationPasswordVerificationError.generic diff --git a/submodules/TelegramCore/Sources/TelegramEngine/SecureId/VerifySecureIdValue.swift b/submodules/TelegramCore/Sources/TelegramEngine/SecureId/VerifySecureIdValue.swift index abad96e8d2..9d75d853f4 100644 --- a/submodules/TelegramCore/Sources/TelegramEngine/SecureId/VerifySecureIdValue.swift +++ b/submodules/TelegramCore/Sources/TelegramEngine/SecureId/VerifySecureIdValue.swift @@ -84,7 +84,8 @@ public func secureIdPrepareEmailVerification(network: Network, value: SecureIdEm } |> map { sentCode -> SecureIdPrepareEmailVerificationPayload in switch sentCode { - case .sentEmailCode(_, let length): + case let .sentEmailCode(sentEmailCodeData): + let length = sentEmailCodeData.length return SecureIdPrepareEmailVerificationPayload(email: value.email, length: length) } } diff --git a/submodules/TelegramCore/Sources/TelegramEngine/Themes/ChatThemes.swift b/submodules/TelegramCore/Sources/TelegramEngine/Themes/ChatThemes.swift index 46f8624896..8f5a805780 100644 --- a/submodules/TelegramCore/Sources/TelegramEngine/Themes/ChatThemes.swift +++ b/submodules/TelegramCore/Sources/TelegramEngine/Themes/ChatThemes.swift @@ -203,7 +203,8 @@ func _internal_getChatThemes(accountManager: AccountManager retryRequest |> mapToSignal { result -> Signal<([TelegramTheme], Int64), NoError> in switch result { - case let .themes(hash, themes): + case let .themes(themesData): + let (hash, themes) = (themesData.hash, themesData.themes) let result = themes.compactMap { TelegramTheme(apiTheme: $0) } if result == current { return .complete() diff --git a/submodules/TelegramCore/Sources/Wallpapers.swift b/submodules/TelegramCore/Sources/Wallpapers.swift index 1fc93da09f..84985dc5dd 100644 --- a/submodules/TelegramCore/Sources/Wallpapers.swift +++ b/submodules/TelegramCore/Sources/Wallpapers.swift @@ -13,7 +13,8 @@ public func telegramWallpapers(postbox: Postbox, network: Network, forceUpdate: return .single(([], -1)) } switch result { - case let .wallPapers(hash, wallpapers): + case let .wallPapers(wallPapersData): + let (hash, wallpapers) = (wallPapersData.hash, wallPapersData.wallpapers) var items: [TelegramWallpaper] = [] var addedBuiltin = false for apiWallpaper in wallpapers {