mirror of
https://github.com/InsanusMokrassar/TelegramBotAPI.git
synced 2024-12-22 16:47:13 +00:00
add MessageContent.Companion#serializationModule
This commit is contained in:
parent
d3d5f7f2e6
commit
36f22579b2
@ -2,6 +2,9 @@
|
||||
|
||||
## 0.38.9
|
||||
|
||||
* `Core`:
|
||||
* New function `MessageContent.Companion#serializationModule`
|
||||
|
||||
## 0.38.8
|
||||
|
||||
* `Common`:
|
||||
|
@ -1,3 +1,39 @@
|
||||
package dev.inmo.tgbotapi.types.message.content.abstracts
|
||||
|
||||
interface MessageContent: ResendableContent
|
||||
import dev.inmo.tgbotapi.types.message.content.*
|
||||
import dev.inmo.tgbotapi.types.message.content.media.*
|
||||
import dev.inmo.tgbotapi.types.message.payments.InvoiceContent
|
||||
import kotlinx.serialization.modules.*
|
||||
|
||||
interface MessageContent: ResendableContent {
|
||||
companion object {
|
||||
fun serializationModule(
|
||||
additionalBuilder: PolymorphicModuleBuilder<MessageContent>.() -> Unit = {}
|
||||
) = SerializersModule {
|
||||
polymorphic(MessageContent::class) {
|
||||
|
||||
subclass(ContactContent::class)
|
||||
subclass(VenueContent::class)
|
||||
subclass(PollContent::class)
|
||||
subclass(DiceContent::class)
|
||||
subclass(TextContent::class)
|
||||
|
||||
subclass(LiveLocationContent::class)
|
||||
subclass(StaticLocationContent::class)
|
||||
|
||||
subclass(PhotoContent::class)
|
||||
subclass(VideoContent::class)
|
||||
subclass(AudioContent::class)
|
||||
subclass(DocumentContent::class)
|
||||
|
||||
subclass(VoiceContent::class)
|
||||
subclass(VideoNoteContent::class)
|
||||
subclass(AnimationContent::class)
|
||||
subclass(StickerContent::class)
|
||||
subclass(InvoiceContent::class)
|
||||
|
||||
additionalBuilder()
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user