plugins { id("com.android.library") kotlin("android") id("com.google.devtools.ksp") version libs.versions.ksp.get() kotlin("plugin.serialization") alias(libs.plugins.compose.compiler) } android { namespace = "com.ramcosta.playground.featurez" compileSdk = libs.versions.compileSdk.get().toIntOrNull() defaultConfig { minSdk = libs.versions.minSdk.get().toIntOrNull() targetSdk = libs.versions.targetSdk.get().toIntOrNull() testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner" consumerProguardFiles.add(File("consumer-rules.pro")) } buildTypes { release { isMinifyEnabled = false proguardFiles(getDefaultProguardFile("proguard-android-optimize.txt"), "proguard-rules.pro") } } compileOptions { sourceCompatibility = JavaVersion.VERSION_1_8 targetCompatibility = JavaVersion.VERSION_1_8 } kotlinOptions { jvmTarget = JavaVersion.VERSION_1_8.toString() } buildFeatures { compose = true } ksp { // arg("compose-destinations.debugMode", "$rootDir") arg("compose-destinations.moduleName", "featureZ") } } kotlin { explicitApi() jvmToolchain(8) } tasks.withType().configureEach { kotlinOptions.freeCompilerArgs += "-opt-in=kotlin.RequiresOptIn" } dependencies { implementation(project(mapOf("path" to ":compose-destinations"))) ksp(project(":compose-destinations-ksp")) implementation(libs.androidMaterial) implementation(libs.compose.ui) implementation(libs.compose.material) implementation(libs.compose.viewModel) implementation(libs.androidx.lifecycleRuntimeKtx) implementation(libs.androidx.activityCompose) implementation(libs.ktxSerializationJson) testImplementation(libs.test.junit) testImplementation(libs.test.mockk) testImplementation(project(":compose-destinations-ksp")) testImplementation(libs.test.kotlinCompile) testImplementation(libs.test.kotlinCompileKsp) }