import org.jetbrains.kotlin.gradle.dsl.JvmTarget plugins { alias(libs.plugins.kotlinMultiplatform) alias(libs.plugins.androidKotlinMultiplatformLibrary) kotlin("plugin.serialization") version libs.versions.kotlin.get() } kotlin { compilerOptions { jvmToolchain(libs.versions.jvm.toolchain.get().toInt()) optIn.add("kotlin.time.ExperimentalTime") } android { compileSdk = libs.versions.android.compileSdk.get().toInt() namespace = "${rootProject.group}.datalayer.repository" minSdk = libs.versions.android.minSdk.get().toInt() } jvm() /* * This module MUST NOT depend on any other module within this project to avoid circular * dependencies. It provides utility functions that may be used in any other module. */ sourceSets { commonMain.dependencies { implementation(projects.libUtil) api(libs.uri.kmp) api(libs.ktor.client.core) implementation(libs.kotlinx.date.time) implementation(libs.kotlinx.serialization.json) implementation(project.dependencies.platform(libs.koin.bom)) implementation(libs.koin.core) implementation(kotlin("test")) implementation(libs.kotlin.test.junit) implementation(projects.libPrimarykeygen) implementation(projects.libXxhash) implementation(libs.turbine) implementation(projects.libDatalayerHttpClient) implementation(projects.libDatalayerDb) implementation(libs.androidx.room.runtime) implementation(libs.androidx.sqlite.bundled) implementation(libs.okhttp) implementation(libs.ktor.client.okhttp) implementation(libs.ktor.serialization.kotlinx.json) implementation(libs.ktor.client.json) implementation(libs.ktor.client.content.negotiation) implementation(project.dependencies.platform(libs.koin.bom)) implementation(libs.mockito.kotlin) } jvmMain.dependencies { implementation(projects.appServer) implementation(projects.libShared) implementation(projects.libDatalayerRepository) implementation(projects.libDatalayerDb) implementation(projects.libDatalayerHttpClient) implementation(libs.koin.ktor) implementation(libs.ktor.server.core) implementation(libs.ktor.server.netty) implementation(libs.ktor.server.content.negotiation) implementation(libs.ktor.server.conditional.headers) implementation(libs.ktor.server.call.logging) implementation(libs.logback) } jvmTest.dependencies { } commonTest.dependencies { implementation(kotlin("test")) } } }