diff --git a/app/build.gradle.kts b/app/build.gradle.kts index 03564e3..378c185 100644 --- a/app/build.gradle.kts +++ b/app/build.gradle.kts @@ -19,10 +19,10 @@ */ plugins { - id("com.android.application") - id("org.jetbrains.kotlin.android") - id("org.jetbrains.kotlin.plugin.compose") - id("kotlin-parcelize") + alias(libs.plugins.android.application) + alias(libs.plugins.kotlin.android) + alias(libs.plugins.compose.plugin) + alias(libs.plugins.kotlin.parcelize) } private val appId = "io.github.yamin8000.dooz" @@ -78,23 +78,19 @@ android { dependencies { //core android - implementation("androidx.core:core-ktx:1.13.1") + implementation(libs.androidx.core.ktx) //compose core - val composeLibsVersion = "1.6.8" - val composeUiLibsVersion = "1.6.8" - debugImplementation("androidx.compose.ui:ui-tooling:$composeUiLibsVersion") - implementation("androidx.compose.ui:ui:$composeUiLibsVersion") - implementation("androidx.compose.ui:ui-tooling-preview:$composeUiLibsVersion") - implementation("androidx.activity:activity-compose:1.9.1") - //compose material3 - implementation("androidx.compose.material:material:$composeLibsVersion") - implementation("androidx.compose.material:material-icons-extended:$composeLibsVersion") + debugImplementation(libs.androidx.compose.ui.tooling) + implementation(libs.androidx.compose.ui) + implementation(libs.androidx.compose.ui.tooling.preview) + implementation(libs.androidx.activity.compose) + implementation(libs.androidx.compose.material) + implementation(libs.androidx.compose.material.icons.extended) //material3 - val material3Version = "1.2.1" - implementation("androidx.compose.material3:material3:$material3Version") - implementation("androidx.compose.material3:material3-window-size-class:$material3Version") + implementation(libs.androidx.compose.material3) + implementation(libs.androidx.compose.material3.window.size) //compose navigation - implementation("androidx.navigation:navigation-compose:2.7.7") + implementation(libs.androidx.navigation.compose) //datastore - implementation("androidx.datastore:datastore-preferences:1.1.1") + implementation(libs.androidx.datastore.preferences) } \ No newline at end of file diff --git a/build.gradle.kts b/build.gradle.kts index ae5efe2..bf7cb41 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -19,9 +19,8 @@ */ plugins { - val kotlinVersion = "2.0.0" - id("com.android.application") version "8.5.2" apply false - id("com.android.library") version "8.5.2" apply false - id("org.jetbrains.kotlin.android") version kotlinVersion apply false - id("org.jetbrains.kotlin.plugin.compose") version kotlinVersion apply false + alias(libs.plugins.android.application) apply false + alias(libs.plugins.android.library) apply false + alias(libs.plugins.kotlin.android) apply false + alias(libs.plugins.compose.plugin) apply false } \ No newline at end of file diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml new file mode 100644 index 0000000..4895a7e --- /dev/null +++ b/gradle/libs.versions.toml @@ -0,0 +1,29 @@ +[versions] +activityCompose = "1.9.1" +composeLibs = "1.6.8" +coreKtx = "1.13.1" +datastorePreferences = "1.1.1" +material3 = "1.2.1" +navigationCompose = "2.7.7" +kotlin = "2.0.10" +android-application = "8.5.2" + +[libraries] +androidx-activity-compose = { module = "androidx.activity:activity-compose", version.ref = "activityCompose" } +androidx-core-ktx = { module = "androidx.core:core-ktx", version.ref = "coreKtx" } +androidx-compose-ui-tooling = { module = "androidx.compose.ui:ui-tooling", version.ref = "composeLibs" } +androidx-compose-ui = { module = "androidx.compose.ui:ui", version.ref = "composeLibs" } +androidx-compose-ui-tooling-preview = { module = "androidx.compose.ui:ui-tooling-preview", version.ref = "composeLibs" } +androidx-compose-material = { module = "androidx.compose.material:material", version.ref = "composeLibs" } +androidx-compose-material-icons-extended = { module = "androidx.compose.material:material-icons-extended", version.ref = "composeLibs" } +androidx-compose-material3 = { module = "androidx.compose.material3:material3", version.ref = "material3" } +androidx-datastore-preferences = { module = "androidx.datastore:datastore-preferences", version.ref = "datastorePreferences" } +androidx-compose-material3-window-size = { module = "androidx.compose.material3:material3-window-size-class", version.ref = "material3" } +androidx-navigation-compose = { module = "androidx.navigation:navigation-compose", version.ref = "navigationCompose" } + +[plugins] +android-application = { id = "com.android.application", version.ref = "android-application" } +android-library = { id = "com.android.library", version.ref = "android-application" } +compose-plugin = { id = "org.jetbrains.kotlin.plugin.compose", version.ref = "kotlin" } +kotlin-android = { id = "org.jetbrains.kotlin.android", version.ref = "kotlin" } +kotlin-parcelize = { id = "kotlin-parcelize" } \ No newline at end of file