PlaguPoster/posts/src/commonMain/kotlin/models/PostContentInfo.kt

26 lines
780 B
Kotlin

package dev.inmo.plaguposter.posts.models
import dev.inmo.tgbotapi.extensions.utils.mediaGroupMessageOrNull
import dev.inmo.tgbotapi.types.ChatId
import dev.inmo.tgbotapi.types.MessageIdentifier
import dev.inmo.tgbotapi.types.message.abstracts.ContentMessage
import dev.inmo.tgbotapi.types.message.content.MessageContent
import kotlinx.serialization.Serializable
@Serializable
data class PostContentInfo(
val chatId: ChatId,
val messageId: MessageIdentifier,
val group: String?,
val order: Int
) {
companion object {
fun fromMessage(message: ContentMessage<*>, order: Int) = PostContentInfo(
message.chat.id,
message.messageId,
message.mediaGroupMessageOrNull() ?.mediaGroupId,
order
)
}
}