Compare commits

...

7 Commits

Author SHA1 Message Date
0d27a4f6f7 update dependencies 2024-01-12 20:12:58 +06:00
f9d131866f start 8.0.0 2024-01-12 20:11:29 +06:00
451b2bbc39 Merge pull request #92 from InsanusMokrassar/7.4.2
7.4.2
2023-12-24 23:25:42 +06:00
d51e2d8e7c fix of #90 and #91 2023-12-24 23:24:04 +06:00
6c45a8c848 update dependencies 2023-12-24 23:17:29 +06:00
8a7e05580d start 7.4.2 2023-12-24 23:14:24 +06:00
8b78f2901f Merge pull request #89 from InsanusMokrassar/7.4.1
7.4.1
2023-12-10 14:47:39 +06:00
7 changed files with 43 additions and 14 deletions

View File

@@ -1,5 +1,20 @@
# Changelog
## 8.0.0
* `Versions`:
* `tgbotapi`: `1.0.0`
* `MicroUtils`: `0.20.26`
* `Exposed`: `0.46.0`
## 7.4.2
* `Versions`:
* `Kotlin`: `1.9.22`
* `tgbotapi`: `9.4.3`
* `MicroUtils`: `0.20.23`
* `Koin`: `3.5.7`
## 7.4.1
* `Versions`:

View File

@@ -8,6 +8,7 @@ import dev.inmo.micro_utils.fsm.common.StatesManager
import dev.inmo.micro_utils.fsm.common.managers.*
import dev.inmo.micro_utils.koin.getAllDistinct
import dev.inmo.plagubot.config.*
import dev.inmo.tgbotapi.bot.ktor.KtorRequestsExecutorBuilder
import dev.inmo.tgbotapi.bot.ktor.telegramBot
import dev.inmo.tgbotapi.extensions.api.webhook.deleteWebhook
import dev.inmo.tgbotapi.extensions.behaviour_builder.*
@@ -37,7 +38,20 @@ data class PlaguBot(
private val config: Config
) : Plugin {
@Transient
private val bot = telegramBot(config.botToken)
private val bot = telegramBot(
token = config.botToken,
apiUrl = config.botApiServer
) {
setupBotClient()
}
override fun KtorRequestsExecutorBuilder.setupBotClient() {
config.plugins.forEach {
with(it) {
setupBotClient()
}
}
}
override fun Module.setupDI(database: Database, params: JsonObject) {
single { config }

View File

@@ -2,6 +2,7 @@ package dev.inmo.plagubot.config
import dev.inmo.micro_utils.common.Warning
import dev.inmo.plagubot.Plugin
import dev.inmo.tgbotapi.utils.telegramBotAPIDefaultUrl
import kotlinx.serialization.SerialName
import kotlinx.serialization.Serializable
@@ -12,4 +13,5 @@ data class Config(
val plugins: List<Plugin>,
@SerialName("database")
val databaseConfig: DatabaseConfig = DatabaseConfig(),
val botApiServer: String = telegramBotAPIDefaultUrl
)

View File

@@ -5,4 +5,4 @@ kotlin.js.generate.externals=true
kotlin.incremental=true
group=dev.inmo
version=7.4.1
version=8.0.0

View File

@@ -1,27 +1,22 @@
[versions]
kt = "1.9.21"
kt = "1.9.22"
kt-serialization = "1.6.2"
kt-coroutines = "1.7.3"
microutils = "0.20.19"
tgbotapi = "9.4.2"
microutils = "0.20.26"
tgbotapi = "10.0.0"
ksp = "1.9.21-1.0.15"
ksp = "1.9.22-1.0.16"
jb-exposed = "0.45.0"
jb-exposed = "0.46.0"
jb-dokka = "1.9.10"
sqlite = "3.44.1.0"
klock = "4.0.10"
uuid = "0.8.2"
ktor = "2.3.7"
gh-release = "2.4.1"
koin = "3.5.0"
koin = "3.5.3"
[libraries]

View File

@@ -1,5 +1,5 @@
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-8.4-bin.zip
distributionUrl=https\://services.gradle.org/distributions/gradle-8.5-bin.zip
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists

View File

@@ -1,6 +1,7 @@
package dev.inmo.plagubot
import dev.inmo.micro_utils.fsm.common.State
import dev.inmo.tgbotapi.bot.ktor.KtorRequestsExecutorBuilder
import dev.inmo.tgbotapi.extensions.behaviour_builder.BehaviourContext
import dev.inmo.tgbotapi.extensions.behaviour_builder.BehaviourContextWithFSM
import kotlinx.serialization.Serializable
@@ -18,6 +19,8 @@ import org.koin.core.module.Module
*/
@Serializable(PluginSerializer::class)
interface Plugin {
fun KtorRequestsExecutorBuilder.setupBotClient() {}
/**
* This method will be called when this plugin should configure di module based on the incoming params
*/