ui-components/build.gradle.kts (80 lines of code) (raw):

@file:OptIn(ExperimentalKotlinGradlePluginApi::class) import org.jetbrains.kotlin.gradle.ExperimentalKotlinGradlePluginApi import org.jetbrains.kotlin.gradle.ExperimentalWasmDsl plugins { alias(libs.plugins.androidLibrary) alias(libs.plugins.composeMultiplatform) alias(libs.plugins.composeCompiler) alias(libs.plugins.kotlinMultiplatform) } kotlin { applyDefaultHierarchyTemplate() androidTarget() jvm() iosX64() iosArm64() iosSimulatorArm64() @OptIn(ExperimentalWasmDsl::class) wasmJs { browser() } js { browser() } sourceSets { commonMain.dependencies { api(libs.compose.runtime) api(libs.compose.foundation) api(libs.compose.animation) implementation(libs.compose.material.ripple) api(libs.compose.components.resources) implementation(libs.compose.ui.tooling.preview) implementation(libs.coil.compose) implementation(libs.coil.network.ktor3) implementation(libs.androidx.lifecycle.runtime.compose) implementation(libs.androidx.lifecycle.viewmodel.compose) implementation(libs.multiplatform.markdown.renderer) } val nonAndroidMain by creating { dependsOn(commonMain.get()) } configure(listOf(iosMain, jvmMain, webMain)) { get().dependsOn(nonAndroidMain) } androidMain.dependencies { implementation(libs.ktor.client.okhttp) } jvmMain.dependencies { implementation(libs.ktor.client.okhttp) } iosMain.dependencies { implementation(libs.ktor.client.darwin) } jsMain.dependencies { implementation(libs.ktor.client.js) } } jvmToolchain(21) compilerOptions { freeCompilerArgs.add("-Xexpect-actual-classes") } } android { namespace = "com.jetbrains.kotlinconf.ui" compileSdk = libs.versions.android.compileSdk.get().toInt() defaultConfig { minSdk = libs.versions.android.minSdk.get().toInt() } compileOptions { sourceCompatibility = JavaVersion.VERSION_11 targetCompatibility = JavaVersion.VERSION_11 } } compose.resources { publicResClass = true nameOfResClass = "UiRes" packageOfResClass = "org.jetbrains.kotlinconf.ui.generated.resources" } // Android preview support dependencies { debugImplementation(libs.compose.ui.tooling) }