mirror of
https://github.com/InsanusMokrassar/TelegramBotAPI.git
synced 2025-11-17 12:30:20 +00:00
Compare commits
16 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 4c08fb7d26 | |||
| d83ff12560 | |||
| 818ef8481d | |||
| f8cd446133 | |||
| 804b991921 | |||
| 817068aa71 | |||
|
|
0cca343612 | ||
| 6532bf255b | |||
| 421d5ae9e3 | |||
| 54f1181a14 | |||
| f616a02f7c | |||
| f1deb93147 | |||
| 2300b44aae | |||
| fe88cf037a | |||
| 89920abe35 | |||
| 4c4aa491cb |
4
.github/workflows/kdocs.yml
vendored
4
.github/workflows/kdocs.yml
vendored
@@ -12,10 +12,10 @@ jobs:
|
||||
with:
|
||||
java-version: 11
|
||||
- name: Build
|
||||
run: ./gradlew dokkaHtml
|
||||
run: ./gradlew dokkaHtmlMultiModule
|
||||
- name: Publish KDocs
|
||||
uses: peaceiris/actions-gh-pages@v3
|
||||
with:
|
||||
github_token: ${{ secrets.GITHUB_TOKEN }}
|
||||
publish_dir: ./docs/build/dokka/html
|
||||
publish_dir: ./build/dokka/htmlMultiModule
|
||||
publish_branch: kdocs
|
||||
|
||||
17
CHANGELOG.md
17
CHANGELOG.md
@@ -1,5 +1,22 @@
|
||||
# TelegramBotAPI changelog
|
||||
|
||||
## 6.1.0
|
||||
|
||||
* `Versions`:
|
||||
* `MicroUtils`: `0.17.2` -> `0.17.3`
|
||||
* `API`:
|
||||
* Fix of [#732](https://github.com/InsanusMokrassar/TelegramBotAPI/issues/732)
|
||||
|
||||
## 6.0.3
|
||||
|
||||
* `Versions`:
|
||||
* `MicroUtils`: `0.17.1` -> `0.17.2`
|
||||
* `Core`:
|
||||
* `User` in `CallbackQuery` now is `CommonUser` as well as in `from`
|
||||
* `User` in `InlineQuery` now is `CommonUser` as well as in `from`
|
||||
* `BehaviourBuilder`:
|
||||
* Fixes in `DeepLink` triggers and waiters
|
||||
|
||||
## 6.0.2
|
||||
|
||||
* `Core`:
|
||||
|
||||
@@ -14,6 +14,10 @@ buildscript {
|
||||
}
|
||||
}
|
||||
|
||||
plugins {
|
||||
alias(libs.plugins.kotlin.dokka)
|
||||
}
|
||||
|
||||
// temporal crutch until legacy tests will be stabled or legacy target will be removed
|
||||
allprojects {
|
||||
repositories {
|
||||
|
||||
@@ -6,4 +6,4 @@ kotlin.incremental=true
|
||||
kotlin.incremental.js=true
|
||||
|
||||
library_group=dev.inmo
|
||||
library_version=6.0.2
|
||||
library_version=6.1.0
|
||||
|
||||
@@ -13,10 +13,10 @@ ktor = "2.2.4"
|
||||
ksp = "1.8.10-1.0.9"
|
||||
kotlin-poet = "1.12.0"
|
||||
|
||||
microutils = "0.17.1"
|
||||
microutils = "0.17.3"
|
||||
|
||||
github-release-plugin = "2.4.1"
|
||||
dokka = "1.7.20"
|
||||
dokka = "1.8.10"
|
||||
|
||||
[libraries]
|
||||
|
||||
@@ -67,3 +67,4 @@ github-release-plugin = { module = "com.github.breadmoirai:github-release", vers
|
||||
kotlin-jvm = { id = "org.jetbrains.kotlin.jvm", version.ref = "kotlin" }
|
||||
kotlin-multiplatform = { id = "org.jetbrains.kotlin.multiplatform", version.ref = "kotlin" }
|
||||
kotlin-serialization = { id = "org.jetbrains.kotlin.plugin.serialization", version.ref = "kotlin" }
|
||||
kotlin-dokka = { id = "org.jetbrains.dokka", version.ref = "dokka" }
|
||||
|
||||
@@ -19,4 +19,3 @@ include ":tgbotapi.behaviour_builder"
|
||||
include ":tgbotapi.behaviour_builder.fsm"
|
||||
include ":tgbotapi"
|
||||
include ":tgbotapi.webapps"
|
||||
include ":docs"
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
plugins {
|
||||
id "org.jetbrains.kotlin.multiplatform"
|
||||
id "org.jetbrains.kotlin.plugin.serialization"
|
||||
id "org.jetbrains.dokka"
|
||||
}
|
||||
|
||||
project.description = "API extensions with \"Telegram Bot API\"-like extensions for TelegramBot and RequestsExecutor"
|
||||
|
||||
@@ -5,7 +5,10 @@ import dev.inmo.tgbotapi.requests.DeleteMessage
|
||||
import dev.inmo.tgbotapi.types.ChatIdentifier
|
||||
import dev.inmo.tgbotapi.types.MessageId
|
||||
import dev.inmo.tgbotapi.types.chat.Chat
|
||||
import dev.inmo.tgbotapi.types.message.abstracts.ContentMessage
|
||||
import dev.inmo.tgbotapi.types.message.abstracts.Message
|
||||
import dev.inmo.tgbotapi.types.message.content.MediaGroupCollectionContent
|
||||
import dev.inmo.tgbotapi.types.message.content.MediaGroupContent
|
||||
|
||||
suspend fun TelegramBot.deleteMessage(
|
||||
chatId: ChatIdentifier,
|
||||
@@ -21,7 +24,16 @@ suspend fun TelegramBot.deleteMessage(
|
||||
|
||||
suspend fun TelegramBot.deleteMessage(
|
||||
message: Message
|
||||
) = deleteMessage(message.chat, message.messageId)
|
||||
): Boolean {
|
||||
val mediaGroupContent = ((message as? ContentMessage<*>) ?.content as? MediaGroupCollectionContent<*>)
|
||||
if (mediaGroupContent == null) {
|
||||
return deleteMessage(message.chat, message.messageId)
|
||||
} else {
|
||||
return mediaGroupContent.group.map {
|
||||
deleteMessage(it.sourceMessage)
|
||||
}.all { it }
|
||||
}
|
||||
}
|
||||
|
||||
suspend fun TelegramBot.delete(
|
||||
chatId: ChatIdentifier,
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
plugins {
|
||||
id "org.jetbrains.kotlin.multiplatform"
|
||||
id "org.jetbrains.kotlin.plugin.serialization"
|
||||
id "org.jetbrains.dokka"
|
||||
}
|
||||
|
||||
project.description = "Behaviour Builder DSL"
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
plugins {
|
||||
id "org.jetbrains.kotlin.multiplatform"
|
||||
id "org.jetbrains.kotlin.plugin.serialization"
|
||||
id "org.jetbrains.dokka"
|
||||
}
|
||||
|
||||
project.description = "Behaviour Builder DSL"
|
||||
|
||||
@@ -38,7 +38,7 @@ suspend fun <BC : BehaviourContext> BC.onDeepLink(
|
||||
scenarioReceiver,
|
||||
) {
|
||||
(it.messageUpdateOrNull()) ?.data ?.commonMessageOrNull() ?.withContentOrNull<TextContent>() ?.let { message ->
|
||||
message to message.content.textSources[1].source.removePrefix(" ").decodeURLQueryComponent()
|
||||
message to (message.content.textSources.getOrNull(1) ?.source ?.removePrefix(" ") ?.decodeURLQueryComponent() ?: return@let null)
|
||||
} ?.let(::listOfNotNull)
|
||||
}.also {
|
||||
triggersHolder.handleableCommandsHolder.registerHandleable(startRegex)
|
||||
|
||||
@@ -2,6 +2,7 @@ plugins {
|
||||
id "org.jetbrains.kotlin.multiplatform"
|
||||
id "org.jetbrains.kotlin.plugin.serialization"
|
||||
id "com.google.devtools.ksp"
|
||||
id "org.jetbrains.dokka"
|
||||
}
|
||||
|
||||
project.description = "Core part of tgbotapi with all (and only) required functionality for working with Telegram Bot API"
|
||||
|
||||
@@ -3,10 +3,11 @@ package dev.inmo.tgbotapi.types.InlineQueries.query
|
||||
import dev.inmo.tgbotapi.types.InlineQueryIdentifier
|
||||
import dev.inmo.tgbotapi.types.chat.User
|
||||
import dev.inmo.tgbotapi.types.chat.ChatType
|
||||
import dev.inmo.tgbotapi.types.chat.CommonUser
|
||||
|
||||
data class BaseInlineQuery(
|
||||
override val id: InlineQueryIdentifier,
|
||||
override val from: User,
|
||||
override val from: CommonUser,
|
||||
override val query: String,
|
||||
override val offset: String,
|
||||
override val chatType: ChatType?
|
||||
|
||||
@@ -3,10 +3,16 @@ package dev.inmo.tgbotapi.types.InlineQueries.query
|
||||
import dev.inmo.tgbotapi.abstracts.FromUser
|
||||
import dev.inmo.tgbotapi.types.InlineQueryIdentifier
|
||||
import dev.inmo.tgbotapi.types.chat.ChatType
|
||||
import dev.inmo.tgbotapi.types.chat.CommonUser
|
||||
import dev.inmo.tgbotapi.types.chat.User
|
||||
|
||||
sealed interface InlineQuery : FromUser {
|
||||
val id: InlineQueryIdentifier
|
||||
val query: String
|
||||
val offset: String
|
||||
val chatType: ChatType?
|
||||
|
||||
override val from: CommonUser
|
||||
override val user: CommonUser
|
||||
get() = from
|
||||
}
|
||||
|
||||
@@ -3,11 +3,12 @@ package dev.inmo.tgbotapi.types.InlineQueries.query
|
||||
import dev.inmo.tgbotapi.types.InlineQueryIdentifier
|
||||
import dev.inmo.tgbotapi.types.chat.User
|
||||
import dev.inmo.tgbotapi.types.chat.ChatType
|
||||
import dev.inmo.tgbotapi.types.chat.CommonUser
|
||||
import dev.inmo.tgbotapi.types.location.Location
|
||||
|
||||
data class LocationInlineQuery(
|
||||
override val id: InlineQueryIdentifier,
|
||||
override val from: User,
|
||||
override val from: CommonUser,
|
||||
override val query: String,
|
||||
override val offset: String,
|
||||
override val chatType: ChatType?,
|
||||
|
||||
@@ -12,7 +12,7 @@ internal data class RawInlineQuery(
|
||||
@SerialName(idField)
|
||||
val id: InlineQueryIdentifier,
|
||||
@SerialName(fromField)
|
||||
val from: User,
|
||||
val from: CommonUser,
|
||||
@SerialName(queryField)
|
||||
val query: String,
|
||||
@SerialName(offsetField)
|
||||
|
||||
@@ -9,6 +9,8 @@ sealed interface CallbackQuery : FromUser {
|
||||
val id: CallbackQueryIdentifier
|
||||
val chatInstance: String
|
||||
override val from: CommonUser
|
||||
override val user: CommonUser
|
||||
get() = from
|
||||
}
|
||||
|
||||
data class UnknownCallbackQueryType(
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
plugins {
|
||||
id "org.jetbrains.kotlin.multiplatform"
|
||||
id "org.jetbrains.kotlin.plugin.serialization"
|
||||
id "org.jetbrains.dokka"
|
||||
}
|
||||
|
||||
project.description = "Additional extensions for core part of tgbotapi"
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
plugins {
|
||||
id "org.jetbrains.kotlin.multiplatform"
|
||||
id "org.jetbrains.kotlin.plugin.serialization"
|
||||
id "org.jetbrains.dokka"
|
||||
}
|
||||
|
||||
project.description = "Web App bindings for the Telegram Web Apps API"
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
plugins {
|
||||
id "org.jetbrains.kotlin.multiplatform"
|
||||
id "org.jetbrains.kotlin.plugin.serialization"
|
||||
id "org.jetbrains.dokka"
|
||||
}
|
||||
|
||||
project.description = "Full collection of all built-in tgbotapi tools"
|
||||
|
||||
Reference in New Issue
Block a user