mirror of
https://github.com/InsanusMokrassar/PlaguPoster.git
synced 2026-07-14 13:34:52 +00:00
add settings template
This commit is contained in:
1
settings/src/commonMain/kotlin/PackageInfo.kt
Normal file
1
settings/src/commonMain/kotlin/PackageInfo.kt
Normal file
@@ -0,0 +1 @@
|
||||
package dev.inmo.plaguposter.settings
|
||||
6
settings/src/commonMain/kotlin/repo/ReadSettingsRepo.kt
Normal file
6
settings/src/commonMain/kotlin/repo/ReadSettingsRepo.kt
Normal file
@@ -0,0 +1,6 @@
|
||||
package dev.inmo.plaguposter.settings.repo
|
||||
|
||||
import dev.inmo.micro_utils.repos.ReadKeyValueRepo
|
||||
import dev.inmo.tgbotapi.types.ChatId
|
||||
|
||||
interface ReadSettingsRepo<T> : ReadKeyValueRepo<ChatId, T>
|
||||
13
settings/src/commonMain/kotlin/repo/Set.kt
Normal file
13
settings/src/commonMain/kotlin/repo/Set.kt
Normal file
@@ -0,0 +1,13 @@
|
||||
package dev.inmo.plaguposter.settings.repo
|
||||
|
||||
import dev.inmo.tgbotapi.types.ChatId
|
||||
import kotlinx.serialization.json.buildJsonObject
|
||||
|
||||
suspend inline fun <reified T : Any> SettingsRepo.set(
|
||||
chatId: ChatId,
|
||||
settings: T
|
||||
) {
|
||||
val oldSettings = get(chatId) ?: buildJsonObject { }
|
||||
|
||||
|
||||
}
|
||||
8
settings/src/commonMain/kotlin/repo/SettingsRepo.kt
Normal file
8
settings/src/commonMain/kotlin/repo/SettingsRepo.kt
Normal file
@@ -0,0 +1,8 @@
|
||||
package dev.inmo.plaguposter.settings.repo
|
||||
|
||||
import dev.inmo.micro_utils.repos.*
|
||||
import dev.inmo.tgbotapi.types.ChatId
|
||||
import kotlinx.serialization.SerializationStrategy
|
||||
import kotlinx.serialization.json.JsonObject
|
||||
|
||||
interface SettingsRepo<T> : KeyValueRepo<ChatId, T>, ReadSettingsRepo<T>, WriteSettingsRepo<T>
|
||||
8
settings/src/commonMain/kotlin/repo/WriteSettingsRepo.kt
Normal file
8
settings/src/commonMain/kotlin/repo/WriteSettingsRepo.kt
Normal file
@@ -0,0 +1,8 @@
|
||||
package dev.inmo.plaguposter.settings.repo
|
||||
|
||||
import dev.inmo.micro_utils.repos.*
|
||||
import dev.inmo.tgbotapi.types.ChatId
|
||||
import dev.inmo.tgbotapi.utils.RiskFeature
|
||||
import kotlinx.serialization.json.JsonObject
|
||||
|
||||
interface WriteSettingsRepo<T> : WriteKeyValueRepo<ChatId, T>
|
||||
Reference in New Issue
Block a user