Swiftgram/TelegramUI/ChatEditInterfaceMessageState.swift
2018-08-03 23:23:02 +03:00

33 lines
1.0 KiB
Swift

import Foundation
import Postbox
import TelegramCore
enum ChatEditInterfaceMessageStateContent: Equatable {
case plaintext
case media(mediaOptions: MessageMediaEditingOptions)
}
final class ChatEditInterfaceMessageState: Equatable {
let content: ChatEditInterfaceMessageStateContent
let mediaReference: AnyMediaReference?
init(content: ChatEditInterfaceMessageStateContent, mediaReference: AnyMediaReference?) {
self.content = content
self.mediaReference = mediaReference
}
static func ==(lhs: ChatEditInterfaceMessageState, rhs: ChatEditInterfaceMessageState) -> Bool {
if lhs.content != rhs.content {
return false
}
if let lhsMedia = lhs.mediaReference, let rhsMedia = rhs.mediaReference {
if !lhsMedia.media.isEqual(rhsMedia.media) {
return false
}
} else if (lhs.mediaReference != nil) != (rhs.mediaReference != nil) {
return false
}
return true
}
}