diff --git a/app/build.gradle b/app/build.gradle index ff48341..42bde49 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -1,8 +1,9 @@ import org.jetbrains.kotlin.gradle.tasks.KotlinCompile plugins { - id 'com.android.application' - id 'org.jetbrains.kotlin.android' + alias libs.plugins.android.application + alias libs.plugins.kotlin.android + alias libs.plugins.compose.compiler } android { @@ -55,22 +56,21 @@ android { } dependencies { - implementation "com.google.android.material:material:$material_version" + implementation libs.android.material - implementation "androidx.core:core-ktx:$core_ktx_version" - implementation 'androidx.lifecycle:lifecycle-runtime-ktx:2.7.0' - implementation 'androidx.activity:activity-compose:1.8.2' - implementation "androidx.compose.ui:ui:$compose_version" - implementation "androidx.compose.ui:ui-tooling-preview:$compose_version" - implementation 'androidx.compose.material3:material3:1.2.1' + implementation libs.androidx.ktx + implementation libs.androidx.lifecycle + implementation libs.androidx.activity.compose + implementation libs.androidx.compose.ui + implementation libs.androidx.compose.preview + implementation libs.androidx.compose.material3 implementation project(path: ':checkout-android') -// implementation "com.khalti:checkout-android:$khaltiVersionName" - testImplementation "junit:junit:$junit_version" - androidTestImplementation "androidx.test.ext:junit:$junit_ext_version" - androidTestImplementation "androidx.test.espresso:espresso-core:$espresso_version" - androidTestImplementation "androidx.compose.ui:ui-test-junit4:$compose_version" - debugImplementation "androidx.compose.ui:ui-tooling:$compose_version" - debugImplementation "androidx.compose.ui:ui-test-manifest:$compose_version" + testImplementation libs.junit + androidTestImplementation libs.junit.ext + androidTestImplementation libs.expresso + androidTestImplementation libs.androix.compose.test + debugImplementation libs.androix.compose.tooling + debugImplementation libs.androix.compose.manifest } \ No newline at end of file diff --git a/build.gradle b/build.gradle index e450e87..30711fa 100644 --- a/build.gradle +++ b/build.gradle @@ -1,10 +1,10 @@ plugins { - id 'com.android.application' version '8.4.0' apply false - id 'com.android.library' version '8.4.0' apply false - id 'org.jetbrains.kotlin.android' version '1.9.22' apply false - id 'io.github.gradle-nexus.publish-plugin' version '1.1.0' + alias libs.plugins.android.application apply false + alias libs.plugins.android.library apply false + alias libs.plugins.kotlin.android apply false + alias libs.plugins.nexus.plugin + alias libs.plugins.compose.compiler apply false } apply from: "${rootDir}/scripts/publish-root.gradle" -apply from: 'metadata.gradle' -apply from: 'dependencies.gradle' +apply from: 'metadata.gradle' \ No newline at end of file diff --git a/checkout-android/build.gradle b/checkout-android/build.gradle index a576d38..3576525 100644 --- a/checkout-android/build.gradle +++ b/checkout-android/build.gradle @@ -1,7 +1,8 @@ plugins { - id 'com.android.library' - id 'org.jetbrains.kotlin.android' + alias libs.plugins.android.library + alias libs.plugins.kotlin.android id 'kotlin-parcelize' + alias libs.plugins.compose.compiler } android { @@ -48,28 +49,24 @@ android { dependencies { // ---------- Api ---------- - implementation 'com.squareup.retrofit2:retrofit:2.9.0' - implementation 'com.squareup.retrofit2:converter-gson:2.9.0' - implementation 'com.squareup.okhttp3:logging-interceptor:4.12.0' + implementation libs.retrofit + implementation libs.converter.gson + implementation libs.logging.interceptor // ---------- Compose ---------- - def composeBom = platform('androidx.compose:compose-bom:2024.02.02') - implementation platform('androidx.compose:compose-bom:2024.02.02') - androidTestImplementation platform('androidx.compose:compose-bom:2024.02.02') - - implementation 'androidx.compose.material3:material3' - implementation 'androidx.activity:activity-compose:1.8.2' - implementation "androidx.compose.material:material-icons-extended:$compose_version" + implementation libs.androidx.compose.material3 + implementation libs.androidx.activity.compose + implementation libs.androidx.material.icons.extended // Compose preview support - implementation 'androidx.compose.ui:ui-tooling-preview' - debugImplementation 'androidx.compose.ui:ui-tooling' + implementation libs.androidx.ui.tooling.preview + debugImplementation libs.androidx.ui.tooling // ---------- Test ---------- - testImplementation "junit:junit:$junit_version" + testImplementation libs.junit - androidTestImplementation "androidx.test.ext:junit:$junit_ext_version" - androidTestImplementation "androidx.test.espresso:espresso-core:$espresso_version" + androidTestImplementation libs.junit.ext + androidTestImplementation libs.expresso } ext { diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml new file mode 100644 index 0000000..53d9559 --- /dev/null +++ b/gradle/libs.versions.toml @@ -0,0 +1,45 @@ +[versions] +ktx="1.16.0" +lifecycle = "2.9.2" +activityCompose = '1.10.1' +compose = "1.8.3" +loggingInterceptor="4.12.0" +material = "1.12.0" +material3 = '1.3.2' +junit = '4.13.2' +junitExt = '1.2.1' +expresso = '3.6.1' +androidGradlePlugin = '8.10.1' +kotlinGradlePlugin = '2.1.0' +materialIconsExtended="1.7.8" +nexusPublishPlugin = '1.1.0' +retrofit="2.9.0" +kotlin = "2.0.0" + +[libraries] +android-material = {group = "com.google.android.material", name = "material", version.ref = "material"} +androidx-ktx = {group = "androidx.core", name = "core-ktx", version.ref = "ktx"} +androidx-lifecycle = {group = "androidx.lifecycle", name = "lifecycle-runtime-ktx", version.ref = "lifecycle"} +androidx-activity-compose = {group = "androidx.activity", name = "activity-compose", version.ref = "activityCompose"} +androidx-compose-ui = {group = "androidx.compose.ui", name = "ui", version.ref = "compose"} +androidx-compose-preview = {group = "androidx.compose.ui", name = "ui-tooling-preview", version.ref = "compose"} +androidx-compose-material3 = {group = "androidx.compose.material3", name = "material3", version.ref = "material3"} +androidx-material-icons-extended = { module = "androidx.compose.material:material-icons-extended", version.ref = "materialIconsExtended" } +androidx-ui-tooling = { module = "androidx.compose.ui:ui-tooling" } +androidx-ui-tooling-preview = { module = "androidx.compose.ui:ui-tooling-preview" } +converter-gson = { module = "com.squareup.retrofit2:converter-gson", version.ref = "retrofit" } +junit = {group = "junit", name = "junit", version.ref = "junit"} +junit-ext = {group="androidx.test.ext", name="junit", version.ref="junitExt"} +expresso = {group="androidx.test.espresso", name="espresso-core", version.ref="expresso"} +androix-compose-test = {group = "androidx.compose.ui", name = "ui-test-junit4", version.ref = "compose"} +androix-compose-tooling = {group = "androidx.compose.ui", name = "ui-tooling", version.ref = "compose"} +androix-compose-manifest = {group = "androidx.compose.ui", name = "ui-test-manifest", version.ref = "compose"} +logging-interceptor = { module = "com.squareup.okhttp3:logging-interceptor", version.ref = "loggingInterceptor" } +retrofit = { module = "com.squareup.retrofit2:retrofit", version.ref = "retrofit" } + +[plugins] +android-application = {id = "com.android.application", version.ref = "androidGradlePlugin"} +android-library = {id = "com.android.library", version.ref = "androidGradlePlugin"} +kotlin-android = {id = "org.jetbrains.kotlin.android", version.ref = "kotlinGradlePlugin"} +nexus-plugin = {id = "io.github.gradle-nexus.publish-plugin", version.ref = "nexusPublishPlugin"} +compose-compiler = { id = "org.jetbrains.kotlin.plugin.compose", version.ref = "kotlin" } diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties index 274e802..665aa55 100644 --- a/gradle/wrapper/gradle-wrapper.properties +++ b/gradle/wrapper/gradle-wrapper.properties @@ -1,6 +1,6 @@ #Mon Oct 31 20:08:12 NPT 2022 distributionBase=GRADLE_USER_HOME -distributionUrl=https\://services.gradle.org/distributions/gradle-8.6-bin.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-8.11.1-bin.zip distributionPath=wrapper/dists zipStorePath=wrapper/dists zipStoreBase=GRADLE_USER_HOME diff --git a/metadata.gradle b/metadata.gradle index 6aa77f6..1652c85 100644 --- a/metadata.gradle +++ b/metadata.gradle @@ -3,6 +3,6 @@ ext { khaltiVersionName = '0.07.00' libraryMinSdk = 21 - libraryCompileSdk = 34 - libraryTargetSdk = 34 + libraryCompileSdk = 35 + libraryTargetSdk = 35 } \ No newline at end of file