1+ package build.Jetsnack
2+
3+ import mill.*
4+ import androidlib.*
5+ import kotlinlib.*
6+ import build.*
7+ import mill.javalib.Dep
8+
9+ object app extends BaseAndroidModule, AndroidR8AppModule {
10+
11+ override def androidEnableCompose: T[Boolean] = Task { true }
12+
13+ override def kotlinUseEmbeddableCompiler: T[Boolean] = true
14+
15+ def androidProjectProguardFiles = Task.Sources(
16+ "proguard-rules.pro"
17+ )
18+
19+ override def androidApplicationNamespace: String = "com.example.jetsnack"
20+
21+ override def androidApplicationId: String = "com.example.jetsnack"
22+
23+ override def bomMvnDeps: T[Seq[Dep]] = super.bomMvnDeps() ++ Seq(
24+ mvn"androidx.compose:compose-bom:2025.08.00"
25+ )
26+
27+ override def mvnDeps: T[Seq[Dep]] = super.mvnDeps() ++ Seq(
28+ mvn"org.jetbrains.kotlin:kotlin-stdlib-jdk8:${build.Versions.kotlinVersion}",
29+ mvn"org.jetbrains.kotlinx:kotlinx-coroutines-android:1.10.2",
30+ mvn"androidx.core:core-ktx:1.17.0",
31+ mvn"androidx.activity:activity-compose:1.10.1",
32+ mvn"androidx.lifecycle:lifecycle-viewmodel-ktx:2.9.2",
33+ mvn"androidx.lifecycle:lifecycle-viewmodel-compose:2.9.3",
34+ mvn"androidx.lifecycle:lifecycle-runtime-compose:2.9.3",
35+ mvn"androidx.navigation:navigation-compose:2.9.2",
36+ mvn"androidx.constraintlayout:constraintlayout-compose:1.1.1",
37+ mvn"androidx.compose.runtime:runtime",
38+ mvn"androidx.compose.foundation:foundation",
39+ mvn"androidx.compose.foundation:foundation-layout",
40+ mvn"androidx.compose.ui:ui",
41+ mvn"androidx.compose.ui:ui-util",
42+ mvn"androidx.compose.material3:material3",
43+ mvn"androidx.compose.animation:animation",
44+ mvn"androidx.compose.material:material-icons-extended",
45+ mvn"androidx.compose.ui:ui-tooling-preview",
46+ mvn"io.coil-kt:coil-compose:2.7.0",
47+ mvn"androidx.compose.ui:ui-tooling",
48+ mvn"androidx.glance:glance-appwidget:1.2.0-alpha01",
49+ mvn"androidx.glance:glance-preview:1.1.1",
50+ mvn"androidx.savedstate:savedstate-ktx:1.3.1"
51+ )
52+
53+ object androidTest extends AndroidAppKotlinInstrumentedTests, AndroidR8AppModule {
54+
55+ override def androidEnableCompose: T[Boolean] = Task {
56+ true
57+ }
58+
59+ override def kotlinUseEmbeddableCompiler: T[Boolean] = true
60+
61+ override def androidR8Args: T[Seq[String]] = super.androidR8Args() ++ Seq(
62+ "--map-diagnostics", "error", "warning"
63+ )
64+
65+ override def bomMvnDeps: T[Seq[Dep]] = super.bomMvnDeps() ++ Seq(
66+ mvn"androidx.compose:compose-bom:2025.08.00"
67+ )
68+
69+ override def mvnDeps: T[Seq[Dep]] = super.mvnDeps() ++ Seq(
70+ mvn"junit:junit:4.13.2",
71+ mvn"androidx.test:core:1.7.0",
72+ mvn"androidx.test.ext:junit:1.3.0",
73+ mvn"androidx.test:runner:1.7.0",
74+ mvn"androidx.test.espresso:espresso-core:3.7.0",
75+ mvn"androidx.test:rules:1.7.0",
76+ mvn"org.jetbrains.kotlinx:kotlinx-coroutines-test:1.10.2",
77+ mvn"androidx.compose.ui:ui-test",
78+ mvn"androidx.compose.ui:ui-test-junit4",
79+ )
80+
81+ }
82+ }
0 commit comments