diff --git a/CHANGELOG.md b/CHANGELOG.md index da3402c380..e301b4e153 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -41,6 +41,8 @@ * `LocationContent#createResend` now can create `LiveLocation` * Support of `ProximityAlertTriggered`. It is `CommonEvent` * Property `pollQuestionTextLength` now have maximum up to `300` + * Anonymous Admins: + * New field `AdministratorChatMember#isAnonymous` * `API`: * Extensions `TelegramBot#pinChatMessage` now support any `Chat` and `Message`s from any `Chat` * New extensions `TelegramBot#unpinAllChatMessages` diff --git a/tgbotapi.core/src/commonMain/kotlin/dev/inmo/tgbotapi/types/ChatMember/AdministratorChatMemberImpl.kt b/tgbotapi.core/src/commonMain/kotlin/dev/inmo/tgbotapi/types/ChatMember/AdministratorChatMemberImpl.kt index d4f9727948..3b734ef904 100644 --- a/tgbotapi.core/src/commonMain/kotlin/dev/inmo/tgbotapi/types/ChatMember/AdministratorChatMemberImpl.kt +++ b/tgbotapi.core/src/commonMain/kotlin/dev/inmo/tgbotapi/types/ChatMember/AdministratorChatMemberImpl.kt @@ -14,5 +14,6 @@ data class AdministratorChatMemberImpl( override val canRestrictMembers: Boolean, override val canPinMessages: Boolean, override val canPromoteMembers: Boolean, + override val isAnonymous: Boolean, override val customTitle: String? ) : AdministratorChatMember diff --git a/tgbotapi.core/src/commonMain/kotlin/dev/inmo/tgbotapi/types/ChatMember/CreatorChatMember.kt b/tgbotapi.core/src/commonMain/kotlin/dev/inmo/tgbotapi/types/ChatMember/CreatorChatMember.kt index 153679d274..af981b2312 100644 --- a/tgbotapi.core/src/commonMain/kotlin/dev/inmo/tgbotapi/types/ChatMember/CreatorChatMember.kt +++ b/tgbotapi.core/src/commonMain/kotlin/dev/inmo/tgbotapi/types/ChatMember/CreatorChatMember.kt @@ -5,6 +5,7 @@ import dev.inmo.tgbotapi.types.User data class CreatorChatMember( override val user: User, + override val isAnonymous: Boolean, override val customTitle: String? ) : AdministratorChatMember { override val canBeEdited: Boolean = true diff --git a/tgbotapi.core/src/commonMain/kotlin/dev/inmo/tgbotapi/types/ChatMember/RawChatMember.kt b/tgbotapi.core/src/commonMain/kotlin/dev/inmo/tgbotapi/types/ChatMember/RawChatMember.kt index 5e7e9875a7..4f8bd51b66 100644 --- a/tgbotapi.core/src/commonMain/kotlin/dev/inmo/tgbotapi/types/ChatMember/RawChatMember.kt +++ b/tgbotapi.core/src/commonMain/kotlin/dev/inmo/tgbotapi/types/ChatMember/RawChatMember.kt @@ -40,12 +40,14 @@ internal data class RawChatMember( private val canSendOtherMessages: Boolean = false, @SerialName(canAddWebPagePreviewsField) private val canAddWebPagePreviews: Boolean = false, + @SerialName(isAnonymousField) + private val isAnonymous: Boolean = false, @SerialName(customTitleField) private val customTitle: String? = null ) { val asChatMember: ChatMember by lazy { when (status) { - "creator" -> CreatorChatMember(user, customTitle) + "creator" -> CreatorChatMember(user, isAnonymous, customTitle) "administrator" -> AdministratorChatMemberImpl( user, canBeEdited, @@ -57,6 +59,7 @@ internal data class RawChatMember( canRestrictMembers, canPinMessages, canPromoteMembers, + isAnonymous, customTitle ) "member" -> MemberChatMember(user) diff --git a/tgbotapi.core/src/commonMain/kotlin/dev/inmo/tgbotapi/types/ChatMember/abstracts/AdministratorChatMember.kt b/tgbotapi.core/src/commonMain/kotlin/dev/inmo/tgbotapi/types/ChatMember/abstracts/AdministratorChatMember.kt index 8b7e7cc18e..ba3bb2ac00 100644 --- a/tgbotapi.core/src/commonMain/kotlin/dev/inmo/tgbotapi/types/ChatMember/abstracts/AdministratorChatMember.kt +++ b/tgbotapi.core/src/commonMain/kotlin/dev/inmo/tgbotapi/types/ChatMember/abstracts/AdministratorChatMember.kt @@ -7,5 +7,6 @@ interface AdministratorChatMember : SpecialRightsChatMember { val canRemoveMessages: Boolean val canRestrictMembers: Boolean val canPromoteMembers: Boolean + val isAnonymous: Boolean val customTitle: String? } \ No newline at end of file