diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml index 4c1812ca..1d5bf3d3 100644 --- a/gradle/libs.versions.toml +++ b/gradle/libs.versions.toml @@ -1,91 +1,93 @@ [versions] grapes-version = '1.22.0' +androidGradlePlugin = "8.3.2" + +# [ANDROID] +androidCompileSdk = "34" androidMinSdk = "23" androidTargetSdk = "34" -androidCompileSdk = "34" -kotlin = "1.9.21" -gradle = "8.3.2" -firebase-app-distrib = "4.0.1" -ksp = "1.9.21-1.0.16" +# [PLUGINS] + +## Firebase +firebaseAppdistributionPlugin = "4.0.1" + +# [LIBRARIES] detekt = "1.23.6" detektFormatting = "1.23.6" +glide = "4.16.0" -# Dagger -hilt = "2.50" - -# Androidx -androidx-lifecycle-ktx = "2.6.2" -androidx-fragment-ktx = "1.6.2" -androidx-core-ktx = "1.12.0" -androidx-constraintlayout = "2.1.4" -androidx-appcompat = "1.6.1" -android-material-version = '1.9.0' -androidx-test-junit = "1.1.5" +## AndroidX +androidxAppcompat = "1.6.1" +androidxComposeBom = "2024.02.00" +androidxComposeCompiler = "1.5.7" +androidxConstraintlayout = "2.1.4" +androidxCore = "1.12.0" +androidxEspresso = "3.5.1" +androidxFragment = "1.6.2" +androidxLifecycle = "2.7.0" +androidxTestJunit = "1.1.5" -# Compose -compose-bom = "2024.02.00" -compose-kotlin-compiler = "1.5.7" +## Google +hilt = "2.50" +ksp = "1.9.21-1.0.16" +material = '1.11.0' -# Image -glide = "4.16.0" +## Jetbrains +kotlin = "1.9.21" -# Tests +## Tests junit4 = "4.13.2" -espresso-core = "3.5.1" [libraries] -# Androidx -androidx-lifecycle-ktx = { group = "androidx.lifecycle", name = "lifecycle-runtime-ktx", version.ref = "androidx-lifecycle-ktx" } -androidx-core-ktx = { group = "androidx.core", name = "core-ktx", version.ref = "androidx-core-ktx" } -androidx-appcompat = { group = "androidx.appcompat", name = "appcompat", version.ref = "androidx-appcompat" } -material = { group = "com.google.android.material", name = "material", version.ref = "android-material-version" } -androidx-constraintlayout = { group = "androidx.constraintlayout", name = "constraintlayout", version.ref = "androidx-constraintlayout" } -androidx-fragment-ktx = { group = "androidx.fragment", name = "fragment-ktx", version.ref = "androidx-fragment-ktx" } - -# Hilt -hilt-android = { group = "com.google.dagger", name = "hilt-android", version.ref = "hilt" } -hilt-compiler = { group = "com.google.dagger", name = "hilt-compiler", version.ref = "hilt" } -# Compose -compose-bom = { group = "androidx.compose", name = "compose-bom", version.ref = "compose-bom" } -compose-ui = { group = "androidx.compose.ui", name = "ui" } -compose-ui-tooling = { group = "androidx.compose.ui", name = "ui-tooling" } -compose-ui-util = { module = "androidx.compose.ui:ui-util" } -compose-runtime = { group = "androidx.compose.runtime", name = "runtime" } -compose-foundation = { group = "androidx.compose.foundation", name = "foundation" } -compose-material = { group = "androidx.compose.material", name = "material" } -compose-material-icons-core = { group = "androidx.compose.material", name = "material-icons-core" } -compose-material-icons-extended = { group = "androidx.compose.material", name = "material-icons-extended" } -compose-material3 = { group = "androidx.compose.material3", name = "material3" } -compose-tests-ui = { group = "androidx.compose.ui", name = "ui-test-junit4" } - -# Image -glide = { group = "com.github.bumptech.glide", name = "glide", version.ref = "glide" } -glide-compiler = { group = "com.github.bumptech.glide", name = "ksp", version.ref = "glide" } +# [ANDROIDX] +androidx-appcompat = { group = "androidx.appcompat", name = "appcompat", version.ref = "androidxAppcompat" } +androidx-compose-bom = { group = "androidx.compose", name = "compose-bom", version.ref = "androidxComposeBom" } +androidx-compose-foundation = { group = "androidx.compose.foundation", name = "foundation" } +androidx-compose-material = { group = "androidx.compose.material", name = "material" } +androidx-compose-material-icons-core = { group = "androidx.compose.material", name = "material-icons-core" } +androidx-compose-material-icons-extended = { group = "androidx.compose.material", name = "material-icons-extended" } +androidx-compose-material3 = { group = "androidx.compose.material3", name = "material3" } +androidx-compose-runtime = { group = "androidx.compose.runtime", name = "runtime" } +androidx-compose-ui = { group = "androidx.compose.ui", name = "ui" } +androidx-compose-ui-test = { group = "androidx.compose.ui", name = "ui-test-junit4" } +androidx-compose-ui-tooling = { group = "androidx.compose.ui", name = "ui-tooling" } +androidx-compose-ui-util = { group = "androidx.compose.ui", name = "ui-util" } +androidx-constraintlayout = { group = "androidx.constraintlayout", name = "constraintlayout", version.ref = "androidxConstraintlayout" } +androidx-core-ktx = { group = "androidx.core", name = "core-ktx", version.ref = "androidxCore" } +androidx-espresso-core = { group = "androidx.test.espresso", name = "espresso-core", version.ref = "androidxEspresso" } +androidx-fragment-ktx = { group = "androidx.fragment", name = "fragment-ktx", version.ref = "androidxFragment" } +androidx-lifecycle-ktx = { group = "androidx.lifecycle", name = "lifecycle-runtime-ktx", version.ref = "androidxLifecycle" } +androidx-test-junit = { group = "androidx.test.ext", name = "junit", version.ref = "androidxTestJunit" } -# Misc -reflection = { group = "org.jetbrains.kotlin", name = "kotlin-reflect", version.ref = "kotlin" } +# [GOOGLE] +google-material = { group = "com.google.android.material", name = "material", version.ref = "material" } +hilt-android = { group = "com.google.dagger", name = "hilt-android", version.ref = "hilt" } +hilt-compiler = { group = "com.google.dagger", name = "hilt-compiler", version.ref = "hilt" } -# Tests +# [TESTS] junit4 = { group = "junit", name = "junit", version.ref = "junit4" } -junit-android = { group = "androidx.test.ext", name = "junit", version.ref = "androidx-test-junit" } -espresso-core = { group = "androidx.test.espresso", name = "espresso-core", version.ref = "espresso-core" } -# Detekt +# [TOOLS] +kotlinx-reflect = { group = "org.jetbrains.kotlin", name = "kotlin-reflect", version.ref = "kotlin" } + +# [OTHERS] detekt-formatting = { module = "io.gitlab.arturbosch.detekt:detekt-formatting", version.ref = "detektFormatting" } +glide = { group = "com.github.bumptech.glide", name = "glide", version.ref = "glide" } +glide-compiler = { group = "com.github.bumptech.glide", name = "ksp", version.ref = "glide" } [bundles] -compose = ["compose-ui", "compose-ui-tooling", "compose-ui-util", "compose-runtime", "compose-foundation", "compose-material", "compose-material-icons-core", "compose-material-icons-extended", "compose-material3"] +androidxcompose = ["androidx-compose-ui", "androidx-compose-ui-tooling", "androidx-compose-ui-util", "androidx-compose-runtime", "androidx-compose-foundation", "androidx-compose-material", "androidx-compose-material-icons-core", "androidx-compose-material-icons-extended", "androidx-compose-material3"] [plugins] -android-application = { id = "com.android.application", version.ref = "gradle" } -android-library = { id = "com.android.library", version.ref = "gradle" } +android-application = { id = "com.android.application", version.ref = "androidGradlePlugin" } +android-library = { id = "com.android.library", version.ref = "androidGradlePlugin" } +detekt = { id = "io.gitlab.arturbosch.detekt", version.ref = "detekt" } +firebase-appdistribution = { id = "com.google.firebase.appdistribution", version.ref = "firebaseAppdistributionPlugin" } +hilt = { id = "com.google.dagger.hilt.android", version.ref = "hilt" } kotlin-android = { id = "org.jetbrains.kotlin.android", version.ref = "kotlin" } -kotlin-kapt = { id = "org.jetbrains.kotlin.kapt", version.ref = "kotlin" } kotlin-jvm = { id = "org.jetbrains.kotlin.jvm", version.ref = "kotlin" } +kotlin-kapt = { id = "org.jetbrains.kotlin.kapt", version.ref = "kotlin" } kotlin-parcelize = { id = "org.jetbrains.kotlin.plugin.parcelize", version.ref = "kotlin" } -hilt = { id = "com.google.dagger.hilt.android", version.ref = "hilt" } -firebase-appdistribution = { id = "com.google.firebase.appdistribution", version.ref = "firebase-app-distrib" } ksp = { id = "com.google.devtools.ksp", version.ref = "ksp" } -detekt = { id = "io.gitlab.arturbosch.detekt", version.ref = "detekt" } diff --git a/library-compose/build.gradle.kts b/library-compose/build.gradle.kts index 16b594b4..bda21434 100644 --- a/library-compose/build.gradle.kts +++ b/library-compose/build.gradle.kts @@ -24,7 +24,7 @@ android { } composeOptions { - kotlinCompilerExtensionVersion = grapesLibs.versions.compose.kotlin.compiler.get() + kotlinCompilerExtensionVersion = grapesLibs.versions.androidxComposeCompiler.get() } compileOptions { @@ -81,17 +81,17 @@ tasks.withType().configureEach { dependencies { testImplementation(grapesLibs.junit4) - androidTestImplementation(grapesLibs.junit.android) - androidTestImplementation(grapesLibs.espresso.core) + androidTestImplementation(grapesLibs.androidx.test.junit) + androidTestImplementation(grapesLibs.androidx.espresso.core) api(grapesLibs.androidx.lifecycle.ktx) // Compose - api(platform(grapesLibs.compose.bom)) - api(grapesLibs.bundles.compose) + api(platform(grapesLibs.androidx.compose.bom)) + api(grapesLibs.bundles.androidxcompose) // UI Tests - androidTestImplementation(grapesLibs.compose.tests.ui) + androidTestImplementation(grapesLibs.androidx.compose.ui.test) } afterEvaluate { diff --git a/library/build.gradle.kts b/library/build.gradle.kts index b9986f28..387d65ce 100644 --- a/library/build.gradle.kts +++ b/library/build.gradle.kts @@ -53,7 +53,7 @@ dependencies { implementation(grapesLibs.androidx.core.ktx) implementation(grapesLibs.androidx.appcompat) - implementation(grapesLibs.material) + implementation(grapesLibs.google.material) implementation(grapesLibs.androidx.constraintlayout) implementation(grapesLibs.glide) diff --git a/sample/build.gradle.kts b/sample/build.gradle.kts index b6651593..f6e4cf62 100644 --- a/sample/build.gradle.kts +++ b/sample/build.gradle.kts @@ -38,7 +38,7 @@ android { } composeOptions { - kotlinCompilerExtensionVersion = grapesLibs.versions.compose.kotlin.compiler.get() + kotlinCompilerExtensionVersion = grapesLibs.versions.androidxComposeCompiler.get() } signingConfigs { @@ -91,17 +91,17 @@ dependencies { implementation(grapesLibs.androidx.core.ktx) implementation(grapesLibs.androidx.fragment.ktx) - implementation(grapesLibs.material) + implementation(grapesLibs.google.material) // JUNIT testImplementation(grapesLibs.junit4) - androidTestImplementation(grapesLibs.junit.android) - androidTestImplementation(grapesLibs.espresso.core) + androidTestImplementation(grapesLibs.androidx.test.junit) + androidTestImplementation(grapesLibs.androidx.espresso.core) // HILT implementation(grapesLibs.hilt.android) ksp(grapesLibs.hilt.compiler) // REFLECTION - implementation(grapesLibs.reflection) + implementation(grapesLibs.kotlinx.reflect) }