build.gradle.kts raw
1 import com.android.build.api.dsl.ApplicationExtension
2 import org.jetbrains.kotlin.gradle.dsl.JvmTarget
3
4 plugins {
5 alias(libs.plugins.agp.application)
6 alias(libs.plugins.kotlin.plugin.compose)
7 }
8
9 val projectMinSdk: String by project
10 val projectTargetSdk: String by project
11 val projectCompileSdk: String by project
12 val projectVersionCode: String by project
13 val projectVersionName: String by project
14
15 kotlin {
16 compilerOptions {
17 jvmTarget.set(JvmTarget.JVM_11)
18 }
19 }
20
21 configure<ApplicationExtension> {
22 namespace = "org.cipherkeys"
23 compileSdk = projectCompileSdk.toInt()
24
25 compileOptions {
26 sourceCompatibility = JavaVersion.VERSION_11
27 targetCompatibility = JavaVersion.VERSION_11
28 }
29
30 defaultConfig {
31 applicationId = "org.cipherkeys"
32 minSdk = projectMinSdk.toInt()
33 targetSdk = projectTargetSdk.toInt()
34 versionCode = projectVersionCode.toInt()
35 versionName = projectVersionName
36 }
37
38 buildFeatures {
39 compose = true
40 }
41
42 buildTypes {
43 named("debug") {
44 applicationIdSuffix = ".debug"
45 isDebuggable = true
46 }
47 named("release") {
48 isMinifyEnabled = true
49 isShrinkResources = true
50 }
51 }
52 }
53
54 dependencies {
55 val composeBom = platform(libs.androidx.compose.bom)
56 implementation(composeBom)
57 implementation(libs.androidx.activity.compose)
58 implementation(libs.androidx.compose.material.icons)
59 implementation(libs.androidx.compose.material3)
60 implementation(libs.androidx.compose.ui)
61 implementation(libs.androidx.core.ktx)
62 implementation(libs.androidx.navigation.compose)
63 implementation("androidx.lifecycle:lifecycle-runtime-android:2.9.4")
64
65 implementation(projects.cipher)
66 }
67