mirror of
https://github.com/Swiftgram/Telegram-iOS.git
synced 2025-12-24 07:05:35 +00:00
Gift improvements
This commit is contained in:
@@ -114,7 +114,7 @@ public enum TelegramMediaActionType: PostboxCoding, Equatable {
|
||||
case setChatTheme(emoji: String)
|
||||
case joinedByRequest
|
||||
case webViewData(String)
|
||||
case giftPremium(currency: String, amount: Int64, months: Int32, cryptoCurrency: String?, cryptoAmount: Int64?)
|
||||
case giftPremium(currency: String, amount: Int64, months: Int32, cryptoCurrency: String?, cryptoAmount: Int64?, text: String?, entities: [MessageTextEntity]?)
|
||||
case topicCreated(title: String, iconColor: Int32, iconFileId: Int64?)
|
||||
case topicEdited(components: [ForumTopicEditComponent])
|
||||
case suggestedProfilePhoto(image: TelegramMediaImage?)
|
||||
@@ -122,7 +122,7 @@ public enum TelegramMediaActionType: PostboxCoding, Equatable {
|
||||
case requestedPeer(buttonId: Int32, peerIds: [PeerId])
|
||||
case setChatWallpaper(wallpaper: TelegramWallpaper, forBoth: Bool)
|
||||
case setSameChatWallpaper(wallpaper: TelegramWallpaper)
|
||||
case giftCode(slug: String, fromGiveaway: Bool, isUnclaimed: Bool, boostPeerId: PeerId?, months: Int32, currency: String?, amount: Int64?, cryptoCurrency: String?, cryptoAmount: Int64?)
|
||||
case giftCode(slug: String, fromGiveaway: Bool, isUnclaimed: Bool, boostPeerId: PeerId?, months: Int32, currency: String?, amount: Int64?, cryptoCurrency: String?, cryptoAmount: Int64?, text: String?, entities: [MessageTextEntity]?)
|
||||
case giveawayLaunched(stars: Int64?)
|
||||
case joinedChannel
|
||||
case giveawayResults(winners: Int32, unclaimed: Int32, stars: Bool)
|
||||
@@ -200,7 +200,7 @@ public enum TelegramMediaActionType: PostboxCoding, Equatable {
|
||||
case 26:
|
||||
self = .webViewData(decoder.decodeStringForKey("t", orElse: ""))
|
||||
case 27:
|
||||
self = .giftPremium(currency: decoder.decodeStringForKey("currency", orElse: ""), amount: decoder.decodeInt64ForKey("amount", orElse: 0), months: decoder.decodeInt32ForKey("months", orElse: 0), cryptoCurrency: decoder.decodeOptionalStringForKey("cryptoCurrency"), cryptoAmount: decoder.decodeOptionalInt64ForKey("cryptoAmount"))
|
||||
self = .giftPremium(currency: decoder.decodeStringForKey("currency", orElse: ""), amount: decoder.decodeInt64ForKey("amount", orElse: 0), months: decoder.decodeInt32ForKey("months", orElse: 0), cryptoCurrency: decoder.decodeOptionalStringForKey("cryptoCurrency"), cryptoAmount: decoder.decodeOptionalInt64ForKey("cryptoAmount"), text: decoder.decodeOptionalStringForKey("text"), entities: decoder.decodeOptionalObjectArrayWithDecoderForKey("entities"))
|
||||
case 28:
|
||||
self = .topicCreated(title: decoder.decodeStringForKey("title", orElse: ""), iconColor: decoder.decodeInt32ForKey("iconColor", orElse: 0), iconFileId: decoder.decodeOptionalInt64ForKey("iconFileId"))
|
||||
case 29:
|
||||
@@ -230,7 +230,7 @@ public enum TelegramMediaActionType: PostboxCoding, Equatable {
|
||||
case 35:
|
||||
self = .botAppAccessGranted(appName: decoder.decodeOptionalStringForKey("app"), type: decoder.decodeOptionalInt32ForKey("atp").flatMap { BotSendMessageAccessGrantedType(rawValue: $0) })
|
||||
case 36:
|
||||
self = .giftCode(slug: decoder.decodeStringForKey("slug", orElse: ""), fromGiveaway: decoder.decodeBoolForKey("give", orElse: false), isUnclaimed: decoder.decodeBoolForKey("unclaimed", orElse: false), boostPeerId: decoder.decodeOptionalInt64ForKey("pi").flatMap { PeerId($0) }, months: decoder.decodeInt32ForKey("months", orElse: 0), currency: decoder.decodeOptionalStringForKey("currency"), amount: decoder.decodeOptionalInt64ForKey("amount"), cryptoCurrency: decoder.decodeOptionalStringForKey("cryptoCurrency"), cryptoAmount: decoder.decodeOptionalInt64ForKey("cryptoAmount"))
|
||||
self = .giftCode(slug: decoder.decodeStringForKey("slug", orElse: ""), fromGiveaway: decoder.decodeBoolForKey("give", orElse: false), isUnclaimed: decoder.decodeBoolForKey("unclaimed", orElse: false), boostPeerId: decoder.decodeOptionalInt64ForKey("pi").flatMap { PeerId($0) }, months: decoder.decodeInt32ForKey("months", orElse: 0), currency: decoder.decodeOptionalStringForKey("currency"), amount: decoder.decodeOptionalInt64ForKey("amount"), cryptoCurrency: decoder.decodeOptionalStringForKey("cryptoCurrency"), cryptoAmount: decoder.decodeOptionalInt64ForKey("cryptoAmount"), text: decoder.decodeOptionalStringForKey("text"), entities: decoder.decodeOptionalObjectArrayWithDecoderForKey("entities"))
|
||||
case 37:
|
||||
self = .giveawayLaunched(stars: decoder.decodeOptionalInt64ForKey("stars"))
|
||||
case 38:
|
||||
@@ -382,7 +382,7 @@ public enum TelegramMediaActionType: PostboxCoding, Equatable {
|
||||
case let .webViewData(text):
|
||||
encoder.encodeInt32(26, forKey: "_rawValue")
|
||||
encoder.encodeString(text, forKey: "t")
|
||||
case let .giftPremium(currency, amount, months, cryptoCurrency, cryptoAmount):
|
||||
case let .giftPremium(currency, amount, months, cryptoCurrency, cryptoAmount, text, entities):
|
||||
encoder.encodeInt32(27, forKey: "_rawValue")
|
||||
encoder.encodeString(currency, forKey: "currency")
|
||||
encoder.encodeInt64(amount, forKey: "amount")
|
||||
@@ -390,6 +390,16 @@ public enum TelegramMediaActionType: PostboxCoding, Equatable {
|
||||
if let cryptoCurrency = cryptoCurrency, let cryptoAmount = cryptoAmount {
|
||||
encoder.encodeString(cryptoCurrency, forKey: "cryptoCurrency")
|
||||
encoder.encodeInt64(cryptoAmount, forKey: "cryptoAmount")
|
||||
} else {
|
||||
encoder.encodeNil(forKey: "cryptoCurrency")
|
||||
encoder.encodeNil(forKey: "cryptoAmount")
|
||||
}
|
||||
if let text, let entities {
|
||||
encoder.encodeString(text, forKey: "text")
|
||||
encoder.encodeObjectArray(entities, forKey: "entities")
|
||||
} else {
|
||||
encoder.encodeNil(forKey: "text")
|
||||
encoder.encodeNil(forKey: "entities")
|
||||
}
|
||||
case let .topicCreated(title, iconColor, iconFileId):
|
||||
encoder.encodeInt32(28, forKey: "_rawValue")
|
||||
@@ -433,7 +443,7 @@ public enum TelegramMediaActionType: PostboxCoding, Equatable {
|
||||
} else {
|
||||
encoder.encodeNil(forKey: "atp")
|
||||
}
|
||||
case let .giftCode(slug, fromGiveaway, unclaimed, boostPeerId, months, currency, amount, cryptoCurrency, cryptoAmount):
|
||||
case let .giftCode(slug, fromGiveaway, unclaimed, boostPeerId, months, currency, amount, cryptoCurrency, cryptoAmount, text, entities):
|
||||
encoder.encodeInt32(36, forKey: "_rawValue")
|
||||
encoder.encodeString(slug, forKey: "slug")
|
||||
encoder.encodeBool(fromGiveaway, forKey: "give")
|
||||
@@ -464,6 +474,13 @@ public enum TelegramMediaActionType: PostboxCoding, Equatable {
|
||||
} else {
|
||||
encoder.encodeNil(forKey: "cryptoAmount")
|
||||
}
|
||||
if let text, let entities {
|
||||
encoder.encodeString(text, forKey: "text")
|
||||
encoder.encodeObjectArray(entities, forKey: "entities")
|
||||
} else {
|
||||
encoder.encodeNil(forKey: "text")
|
||||
encoder.encodeNil(forKey: "entities")
|
||||
}
|
||||
case let .giveawayLaunched(stars):
|
||||
encoder.encodeInt32(37, forKey: "_rawValue")
|
||||
if let stars = stars {
|
||||
@@ -563,7 +580,7 @@ public enum TelegramMediaActionType: PostboxCoding, Equatable {
|
||||
return peerIds
|
||||
case let .requestedPeer(_, peerIds):
|
||||
return peerIds
|
||||
case let .giftCode(_, _, _, boostPeerId, _, _, _, _, _):
|
||||
case let .giftCode(_, _, _, boostPeerId, _, _, _, _, _, _, _):
|
||||
return boostPeerId.flatMap { [$0] } ?? []
|
||||
case let .paymentRefunded(peerId, _, _, _, _):
|
||||
return [peerId]
|
||||
|
||||
Reference in New Issue
Block a user