Kotlin/JVM-Pendant zu ManaCore (Swift). Phase 1 des Android-Plans (WORDECK_ANDROID_GREENFIELD.md). - AuthClient: login/refresh/logout gegen /api/v1/auth/*, mit Single- Flight-Refresh, proaktivem Refresh und Soft-Fail-Policy (portiert aus ManaCore v1.16.0) - TokenStore-Interface + InMemoryTokenStore - Jwt: liest exp/sub/tier ohne Signaturprüfung (Verify ist Server-Sache) - AuthenticatedApi: Bearer + einmaliger 401-Refresh-Retry - manaHttpClient/ManaJson; Domain-Models Deck/Card (5 text-only Typen)/Tier - 12 Tests grün; Ziel-Bytecode JVM 17 Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
26 lines
1.3 KiB
TOML
26 lines
1.3 KiB
TOML
[versions]
|
|
kotlin = "2.1.0"
|
|
ktor = "3.0.3"
|
|
coroutines = "1.9.0"
|
|
serialization = "1.7.3"
|
|
datetime = "0.6.1"
|
|
junit = "5.11.3"
|
|
|
|
[libraries]
|
|
kotlinx-coroutines-core = { module = "org.jetbrains.kotlinx:kotlinx-coroutines-core", version.ref = "coroutines" }
|
|
kotlinx-serialization-json = { module = "org.jetbrains.kotlinx:kotlinx-serialization-json", version.ref = "serialization" }
|
|
kotlinx-datetime = { module = "org.jetbrains.kotlinx:kotlinx-datetime", version.ref = "datetime" }
|
|
|
|
ktor-client-core = { module = "io.ktor:ktor-client-core", version.ref = "ktor" }
|
|
ktor-client-content-negotiation = { module = "io.ktor:ktor-client-content-negotiation", version.ref = "ktor" }
|
|
ktor-serialization-kotlinx-json = { module = "io.ktor:ktor-serialization-kotlinx-json", version.ref = "ktor" }
|
|
|
|
# Test
|
|
kotlinx-coroutines-test = { module = "org.jetbrains.kotlinx:kotlinx-coroutines-test", version.ref = "coroutines" }
|
|
ktor-client-mock = { module = "io.ktor:ktor-client-mock", version.ref = "ktor" }
|
|
junit-jupiter = { module = "org.junit.jupiter:junit-jupiter", version.ref = "junit" }
|
|
junit-platform-launcher = { module = "org.junit.platform:junit-platform-launcher", version = "1.11.3" }
|
|
|
|
[plugins]
|
|
kotlin-jvm = { id = "org.jetbrains.kotlin.jvm", version.ref = "kotlin" }
|
|
kotlin-serialization = { id = "org.jetbrains.kotlin.plugin.serialization", version.ref = "kotlin" }
|