Files
coco 723ce1af5c a
2026-07-03 15:12:48 +08:00

99 lines
4.8 KiB
TOML

[versions]
agp = "8.4.1"
kotlin = '2.0.0'
ksp = '2.0.0-1.0.21'
compileSdk = '34'
minSdk = '21'
targetSdk = '34'
coroutines = '1.8.1'
material = '1.12.0'
core-ktx = '1.13.1'
navigation = '2.7.7'
appcompat = '1.6.1'
constraintlayout = '2.1.4'
binary-compatibility-validator = '0.14.0'
dokka = '1.9.20'
maven = '0.28.0'
# Compose
compose-bom = "2024.05.00" # https://developer.android.com/jetpack/compose/bom/bom-mapping
compose-compiler = '1.5.14'
# Compose integration with Activities
androidx-activity = '1.9.0'
# Compose integration with ViewModels
androidx-lifecycle = "2.8.0"
# Hilt
hilt = '2.51.1'
hilt-navigation-compose = '1.2.0'
# Koin
koin = '3.5.6'
# Test
junit-version = '4.13.2'
kover = '0.8.0'
robolectric-version = '4.12.2'
espresso = "3.5.1"
testRunner = "1.5.2"
testRules = "1.5.0"
junitKtx = "1.1.5"
[libraries]
# Android libraries
android-material = { module = 'com.google.android.material:material', version.ref = 'material' }
androidx-core-ktx = { module = 'androidx.core:core-ktx', version.ref = 'core-ktx' }
androidx-appcompat = { module = 'androidx.appcompat:appcompat', version.ref = 'appcompat' }
androidx-constraintlayout = { module = 'androidx.constraintlayout:constraintlayout', version.ref = 'constraintlayout' }
androidx-lifecycle-viewmodel-ktx = { module = 'androidx.lifecycle:lifecycle-viewmodel-ktx', version.ref = 'androidx-lifecycle' }
androidx-lifecycle-viewmodel-compose = { module = 'androidx.lifecycle:lifecycle-viewmodel-compose', version.ref = 'androidx-lifecycle' }
androidx-activity-compose = { module = 'androidx.activity:activity-compose', version.ref = 'androidx-activity' }
androidx-navigation-compose = { module = 'androidx.navigation:navigation-compose', version.ref = 'navigation' }
compose-bom = { module = 'androidx.compose:compose-bom', version.ref = 'compose-bom' }
compose-compiler = { module = 'androidx.compose.compiler:compiler', version.ref = 'compose-compiler' }
compose-foundation = { module = 'androidx.compose.foundation:foundation' }
compose-material = { module = 'androidx.compose.material:material' }
compose-runtime = { module = 'androidx.compose.runtime:runtime' }
compose-ui = { module = 'androidx.compose.ui:ui' }
compose-ui-tooling = { module = 'androidx.compose.ui:ui-tooling' }
compose-ui-toolingPreview = { module = 'androidx.compose.ui:ui-tooling-preview' }
compose-ui-test-junit = { module = 'androidx.compose.ui:ui-test-junit4' }
compose-ui-test-manifest = { module = 'androidx.compose.ui:ui-test-manifest' }
coroutines-android = { module = 'org.jetbrains.kotlinx:kotlinx-coroutines-android', version.ref = 'coroutines' }
kotlin-coroutines-test = { module = 'org.jetbrains.kotlinx:kotlinx-coroutines-test', version.ref = 'coroutines' }
# DI libraries
dagger-hilt = { module = 'com.google.dagger:hilt-android', version.ref = 'hilt' }
dagger-hilt-compiler = { module = 'com.google.dagger:hilt-compiler', version.ref = 'hilt' }
dagger-hilt-android-compiler = { module = 'com.google.dagger:hilt-android-compiler', version.ref = 'hilt' }
dagger-hilt-android-testing = { module = 'com.google.dagger:hilt-android-testing', version.ref = 'hilt' }
dagger-hilt-navigation-compose = { module = 'androidx.hilt:hilt-navigation-compose', version.ref = 'hilt-navigation-compose' }
koin-android = { module = 'io.insert-koin:koin-android', version.ref = 'koin' }
koin-android-test = { module = 'io.insert-koin:koin-android-test', version.ref = 'koin' }
# Test libraries
junit = { module = 'junit:junit', version.ref = 'junit-version' }
robolectric = { module = 'org.robolectric:robolectric', version.ref = 'robolectric-version' }
espresso = { module = 'androidx.test.espresso:espresso-core', version.ref = 'espresso' }
test-runner = { module = 'androidx.test:runner', version.ref = 'testRunner' }
test-rules = { module = 'androidx.test:rules', version.ref = 'testRules' }
androidx-junit-ktx = { group = "androidx.test.ext", name = "junit-ktx", version.ref = "junitKtx" }
[bundles]
androidx-lifecycle-viewmodel = ["androidx-lifecycle-viewmodel-ktx", "androidx-lifecycle-viewmodel-compose"]
[plugins]
android-application = { id = 'com.android.application', version.ref = 'agp' }
android-library = { id = 'com.android.library', version.ref = 'agp' }
kotlin-android = { id = 'org.jetbrains.kotlin.android', version.ref = 'kotlin' }
ksp = { id = 'com.google.devtools.ksp', version.ref = 'ksp' }
dagger-hilt-android = { id = 'com.google.dagger.hilt.android', version.ref = 'hilt' }
binary-compatibility-validator = { id = 'org.jetbrains.kotlinx.binary-compatibility-validator', version.ref = 'binary-compatibility-validator' }
kover = { id = 'org.jetbrains.kotlinx.kover', version.ref = 'kover' }
dokka = { id = 'org.jetbrains.dokka', version.ref = 'dokka' }
maven = { id = 'com.vanniktech.maven.publish', version.ref = 'maven' }
compose-compiler = { id = "org.jetbrains.kotlin.plugin.compose", version.ref = "kotlin" }