diff --git a/CHANGELOG.md b/CHANGELOG.md index e6a74ebeb3..bc75606fdb 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -10,6 +10,9 @@ * `Core`: * Add opportunity to create command text source and add command in entities builder via `BotCommamd` (thanks to [d1shin](https://github.com/InsanusMokrassar/TelegramBotAPI/pull/664)) +* `API`: + * New extensions `TelegramBot#getStickerSetOrNull` and `TelegramBot#getStickerSetOrThrow` + * Old `TelegramBot#getStickerSet` has been deprecated * `Behaviour Builder`: * Add opportunity to use triggers and waiters with `BotCommand` (thanks to [d1shin](https://github.com/InsanusMokrassar/TelegramBotAPI/pull/664)) diff --git a/tgbotapi.api/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/api/get/GetStickerSet.kt b/tgbotapi.api/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/api/get/GetStickerSet.kt index 94400fa7a9..6b73341d94 100644 --- a/tgbotapi.api/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/api/get/GetStickerSet.kt +++ b/tgbotapi.api/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/api/get/GetStickerSet.kt @@ -10,8 +10,21 @@ suspend fun TelegramBot.getStickerSet( GetStickerSet(name) ) +@Deprecated("Renamed", ReplaceWith("getStickerSetOrThrow(sticker)", "dev.inmo.tgbotapi.extensions.api.get.getStickerSetOrThrow")) suspend fun TelegramBot.getStickerSet( sticker: Sticker ) = getStickerSet( sticker.stickerSetName ?: error("Sticker must contains stickerSetName to be correctly used in getStickerSet method") ) + +suspend fun TelegramBot.getStickerSetOrNull( + sticker: Sticker +) = sticker.stickerSetName ?.let { + getStickerSet(it) +} + +suspend fun TelegramBot.getStickerSetOrThrow( + sticker: Sticker +) = getStickerSet( + sticker.stickerSetName ?: error("Sticker must contains stickerSetName to be correctly used in getStickerSet method") +)