plugins { alias(libs.plugins.kotlinMultiplatform) alias(libs.plugins.androidApplication) alias(libs.plugins.composeMultiplatform) alias(libs.plugins.composeCompiler) alias(libs.plugins.kotlinSerialization) alias(libs.plugins.ksp) alias(libs.plugins.room) } kotlin { jvmToolchain(17) androidTarget() sourceSets { androidMain.dependencies { implementation(libs.compose.ui.tooling.preview) implementation(libs.androidx.activity.compose) implementation(libs.koin.android) implementation(libs.ktor.client.okhttp) } commonMain.dependencies { implementation(libs.compose.runtime) implementation(libs.compose.foundation) implementation(compose.material3) implementation(compose.materialIconsExtended) implementation(compose.components.resources) implementation(libs.compose.ui) implementation(libs.compose.ui.tooling.preview) api(libs.koin.core) implementation(libs.koin.compose) implementation(libs.koin.compose.viewmodel) implementation(libs.androidx.lifecycle.runtime.compose) implementation(libs.androidx.lifecycle.viewmodel.compose) implementation(libs.androidx.navigation.compose) implementation(libs.room.runtime) implementation(libs.sqlite.bundled) implementation(libs.kotlinx.coroutines.core) implementation(libs.coil.compose) implementation(libs.coil.network.ktor3) } commonTest.dependencies { implementation(libs.kotlin.test) } } } android { namespace = "io.assessment.contacts" compileSdk = libs.versions.android.compileSdk.get().toInt() buildFeatures { buildConfig = true } lint { abortOnError = false } defaultConfig { applicationId = "io.assessment.contacts" minSdk = libs.versions.android.minSdk.get().toInt() targetSdk = libs.versions.android.targetSdk.get().toInt() versionCode = 1 versionName = "1.0.0" } packaging { resources { excludes += "/META-INF/{AL2.0,LGPL2.1}" } } buildTypes { getByName("debug") { isDebuggable = true } getByName("release") { isMinifyEnabled = false } } } dependencies { add("kspAndroid", libs.room.compiler) debugImplementation(libs.compose.ui.tooling) } room { schemaDirectory("$projectDir/schemas") } tasks.withType().configureEach { compilerOptions { freeCompilerArgs.add("-Xexpect-actual-classes") } }