160 lines
7.4 KiB
TOML
160 lines
7.4 KiB
TOML
|
[versions]
|
||
|
aboutlibraries = "11.2.3"
|
||
|
acra = "5.12.0"
|
||
|
android-compileSdk = "35"
|
||
|
android-desugar = "2.1.4"
|
||
|
android-gradle = "8.7.3"
|
||
|
android-minSdk = "21"
|
||
|
android-targetSdk = "35"
|
||
|
androidx-activity = "1.9.3"
|
||
|
androidx-appcompat = "1.7.0"
|
||
|
androidx-cardview = "1.0.0"
|
||
|
androidx-compose-foundation = "1.7.6"
|
||
|
androidx-compose-ui = "1.7.6"
|
||
|
androidx-constraintlayout = "2.2.0"
|
||
|
androidx-core = "1.15.0"
|
||
|
androidx-fragment = "1.8.5"
|
||
|
androidx-leanback = "1.1.0-rc01"
|
||
|
androidx-lifecycle = "2.8.7"
|
||
|
androidx-media3 = "1.5.1"
|
||
|
androidx-preference = "1.2.1"
|
||
|
androidx-recyclerview = "1.3.2"
|
||
|
androidx-startup = "1.2.0"
|
||
|
androidx-tv = "1.0.0"
|
||
|
androidx-tvprovider = "1.1.0-alpha01"
|
||
|
androidx-window = "1.3.0"
|
||
|
androidx-work = "2.10.0"
|
||
|
coil = "3.0.4"
|
||
|
detekt = "1.23.7"
|
||
|
java-jdk = "21"
|
||
|
jellyfin-androidx-media = "1.5.0+1"
|
||
|
jellyfin-apiclient = "v0.7.10"
|
||
|
jellyfin-sdk = "1.6.3"
|
||
|
koin = "4.0.1"
|
||
|
koin-compose = "4.0.1"
|
||
|
kotest = "5.9.1"
|
||
|
kotlin = "2.0.21"
|
||
|
kotlinx-coroutines = "1.9.0"
|
||
|
kotlinx-serialization = "1.7.3"
|
||
|
markwon = "4.6.2"
|
||
|
mockk = "1.13.14"
|
||
|
slf4j-timber = "0.0.4"
|
||
|
timber = "5.0.1"
|
||
|
|
||
|
[plugins]
|
||
|
aboutlibraries = { id = "com.mikepenz.aboutlibraries.plugin", version.ref = "aboutlibraries" }
|
||
|
detekt = { id = "io.gitlab.arturbosch.detekt", version.ref = "detekt" }
|
||
|
kotlin-serialization = { id = "org.jetbrains.kotlin.plugin.serialization", version.ref = "kotlin" }
|
||
|
kotlin-compose = { id = "org.jetbrains.kotlin.plugin.compose", version.ref = "kotlin" }
|
||
|
|
||
|
[libraries]
|
||
|
# Jellyfin
|
||
|
jellyfin-apiclient = { module = "com.github.jellyfin.jellyfin-sdk-kotlin:android", version.ref = "jellyfin-apiclient" }
|
||
|
jellyfin-sdk = { module = "org.jellyfin.sdk:jellyfin-core", version.ref = "jellyfin-sdk" }
|
||
|
|
||
|
# Kotlin
|
||
|
kotlin-gradle = { module = "org.jetbrains.kotlin:kotlin-gradle-plugin", version.ref = "kotlin" }
|
||
|
kotlinx-coroutines = { module = "org.jetbrains.kotlinx:kotlinx-coroutines-android", version.ref = "kotlinx-coroutines" }
|
||
|
kotlinx-coroutines-guava = { module = "org.jetbrains.kotlinx:kotlinx-coroutines-guava", version.ref = "kotlinx-coroutines" }
|
||
|
kotlinx-serialization-json = { module = "org.jetbrains.kotlinx:kotlinx-serialization-json", version.ref = "kotlinx-serialization" }
|
||
|
|
||
|
# Android(x)
|
||
|
android-gradle = { module = "com.android.tools.build:gradle", version.ref = "android-gradle" }
|
||
|
androidx-activity = { module = "androidx.activity:activity", version.ref = "androidx-activity" }
|
||
|
androidx-appcompat = { module = "androidx.appcompat:appcompat", version.ref = "androidx-appcompat" }
|
||
|
androidx-cardview = { module = "androidx.cardview:cardview", version.ref = "androidx-cardview" }
|
||
|
androidx-compose-foundation = { module = "androidx.compose.foundation:foundation", version.ref = "androidx-compose-foundation" }
|
||
|
androidx-compose-ui-tooling = { module = "androidx.compose.ui:ui-tooling", version.ref = "androidx-compose-ui" }
|
||
|
androidx-constraintlayout = { module = "androidx.constraintlayout:constraintlayout", version.ref = "androidx-constraintlayout" }
|
||
|
androidx-core = { module = "androidx.core:core-ktx", version.ref = "androidx-core" }
|
||
|
androidx-fragment = { module = "androidx.fragment:fragment-ktx", version.ref = "androidx-fragment" }
|
||
|
androidx-fragment-compose = { module = "androidx.fragment:fragment-compose", version.ref = "androidx-fragment" }
|
||
|
androidx-leanback-core = { module = "androidx.leanback:leanback", version.ref = "androidx-leanback" }
|
||
|
androidx-leanback-preference = { module = "androidx.leanback:leanback-preference", version.ref = "androidx-leanback" }
|
||
|
androidx-lifecycle-process = { module = "androidx.lifecycle:lifecycle-process", version.ref = "androidx-lifecycle" }
|
||
|
androidx-lifecycle-runtime = { module = "androidx.lifecycle:lifecycle-runtime", version.ref = "androidx-lifecycle" }
|
||
|
androidx-lifecycle-service = { module = "androidx.lifecycle:lifecycle-service", version.ref = "androidx-lifecycle" }
|
||
|
androidx-lifecycle-viewmodel = { module = "androidx.lifecycle:lifecycle-viewmodel", version.ref = "androidx-lifecycle" }
|
||
|
androidx-media3-session = { module = "androidx.media3:media3-session", version.ref = "androidx-media3" }
|
||
|
androidx-media3-ui = { module = "androidx.media3:media3-ui", version.ref = "androidx-media3" }
|
||
|
androidx-preference = { module = "androidx.preference:preference-ktx", version.ref = "androidx-preference" }
|
||
|
androidx-recyclerview = { module = "androidx.recyclerview:recyclerview", version.ref = "androidx-recyclerview" }
|
||
|
androidx-startup = { module = "androidx.startup:startup-runtime", version.ref = "androidx-startup" }
|
||
|
androidx-tv-material = { module = "androidx.tv:tv-material", version.ref = "androidx-tv" }
|
||
|
androidx-tvprovider = { module = "androidx.tvprovider:tvprovider", version.ref = "androidx-tvprovider" }
|
||
|
androidx-window = { module = "androidx.window:window", version.ref = "androidx-window" }
|
||
|
androidx-work-runtime = { module = "androidx.work:work-runtime", version.ref = "androidx-work" }
|
||
|
|
||
|
# Dependency Injection
|
||
|
koin-android-compat = { module = "io.insert-koin:koin-android-compat", version.ref = "koin" }
|
||
|
koin-android-core = { module = "io.insert-koin:koin-android", version.ref = "koin" }
|
||
|
koin-androidx-compose = { module = "io.insert-koin:koin-androidx-compose", version.ref = "koin-compose" }
|
||
|
koin-androidx-workmanager = { module = "io.insert-koin:koin-androidx-workmanager", version.ref = "koin" }
|
||
|
|
||
|
# Media players
|
||
|
androidx-media3-exoplayer = { module = "androidx.media3:media3-exoplayer", version.ref = "androidx-media3" }
|
||
|
androidx-media3-exoplayer-hls = { module = "androidx.media3:media3-exoplayer-hls", version.ref = "androidx-media3" }
|
||
|
jellyfin-androidx-media3-ffmpeg-decoder = { group = "org.jellyfin.media3", name = "media3-ffmpeg-decoder", version.ref = "jellyfin-androidx-media" }
|
||
|
|
||
|
# Markwon
|
||
|
markwon-core = { module = "io.noties.markwon:core", version.ref = "markwon" }
|
||
|
markwon-html = { module = "io.noties.markwon:html", version.ref = "markwon" }
|
||
|
|
||
|
# Image utility
|
||
|
coil-core = { module = "io.coil-kt.coil3:coil-core", version.ref = "coil" }
|
||
|
coil-network-okhttp = { module = "io.coil-kt.coil3:coil-network-okhttp", version.ref = "coil" }
|
||
|
coil-gif = { module = "io.coil-kt.coil3:coil-gif", version.ref = "coil" }
|
||
|
coil-svg = { module = "io.coil-kt.coil3:coil-svg", version.ref = "coil" }
|
||
|
|
||
|
# Crash Reporting
|
||
|
acra-core = { module = "ch.acra:acra-core", version.ref = "acra" }
|
||
|
acra-toast = { module = "ch.acra:acra-toast", version.ref = "acra" }
|
||
|
|
||
|
# Libraries
|
||
|
aboutlibraries = { module = "com.mikepenz:aboutlibraries-core", version.ref = "aboutlibraries" }
|
||
|
|
||
|
# Logging
|
||
|
slf4j-timber = { module = "io.github.unveloper:slf4j-timber", version.ref = "slf4j-timber" }
|
||
|
timber = { module = "com.jakewharton.timber:timber", version.ref = "timber" }
|
||
|
|
||
|
# Compatibility (desugaring)
|
||
|
android-desugar = { module = "com.android.tools:desugar_jdk_libs", version.ref = "android-desugar" }
|
||
|
|
||
|
# Test utilities
|
||
|
kotest-runner-junit5 = { module = "io.kotest:kotest-runner-junit5", version.ref = "kotest" }
|
||
|
kotest-assertions = { module = "io.kotest:kotest-assertions-core", version.ref = "kotest" }
|
||
|
mockk = { module = "io.mockk:mockk", version.ref = "mockk" }
|
||
|
|
||
|
[bundles]
|
||
|
acra = [
|
||
|
"acra-core",
|
||
|
"acra-toast",
|
||
|
]
|
||
|
androidx-compose = [
|
||
|
"androidx-compose-foundation",
|
||
|
"androidx-compose-ui-tooling",
|
||
|
"androidx-tv-material"
|
||
|
]
|
||
|
androidx-lifecycle = [
|
||
|
"androidx-lifecycle-process",
|
||
|
"androidx-lifecycle-runtime",
|
||
|
"androidx-lifecycle-service",
|
||
|
"androidx-lifecycle-viewmodel",
|
||
|
]
|
||
|
coil = [
|
||
|
"coil-core",
|
||
|
"coil-network-okhttp",
|
||
|
"coil-gif",
|
||
|
"coil-svg",
|
||
|
]
|
||
|
koin = [
|
||
|
"koin-android-compat",
|
||
|
"koin-android-core",
|
||
|
"koin-androidx-workmanager",
|
||
|
"koin-androidx-compose",
|
||
|
]
|
||
|
markwon = [
|
||
|
"markwon-core",
|
||
|
"markwon-html",
|
||
|
]
|