Files
coco 723ce1af5c a
2026-07-03 15:12:48 +08:00

81 lines
2.2 KiB
Kotlin

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.sub.featurey"
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", "subFeatureY")
arg("compose-destinations.htmlMermaidGraph", "$rootDir/playground/docs")
arg("compose-destinations.mermaidGraph", "$rootDir/playground/docs")
}
}
kotlin {
jvmToolchain(8)
}
tasks.withType<org.jetbrains.kotlin.gradle.tasks.KotlinCompile>().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)
}