mirror of
https://github.com/Swiftgram/Telegram-iOS.git
synced 2025-06-15 21:45:19 +00:00
27 lines
1.0 KiB
Swift
27 lines
1.0 KiB
Swift
import Foundation
|
|
import Postbox
|
|
import TelegramApi
|
|
|
|
extension TelegramExtendedMedia {
|
|
init?(apiExtendedMedia: Api.MessageExtendedMedia, peerId: PeerId) {
|
|
switch apiExtendedMedia {
|
|
case let .messageExtendedMediaPreview(_, width, height, thumb, videoDuration):
|
|
var dimensions: PixelDimensions?
|
|
if let width = width, let height = height {
|
|
dimensions = PixelDimensions(width: width, height: height)
|
|
}
|
|
var immediateThumbnailData: Data?
|
|
if let thumb = thumb, case let .photoStrippedSize(_, bytes) = thumb {
|
|
immediateThumbnailData = bytes.makeData()
|
|
}
|
|
self = .preview(dimensions: dimensions, immediateThumbnailData: immediateThumbnailData, videoDuration: videoDuration)
|
|
case let .messageExtendedMedia(apiMedia):
|
|
if let media = textMediaAndExpirationTimerFromApiMedia(apiMedia, peerId).media {
|
|
self = .full(media: media)
|
|
} else {
|
|
return nil
|
|
}
|
|
}
|
|
}
|
|
}
|