meldestelle/frontend/core/sync/build.gradle.kts

57 lines
1.3 KiB
Plaintext

@file:OptIn(ExperimentalWasmDsl::class)
import org.jetbrains.kotlin.gradle.ExperimentalWasmDsl
plugins {
alias(libs.plugins.kotlinMultiplatform)
alias(libs.plugins.kotlinSerialization)
}
group = "at.mocode.frontend.core"
version = "1.0.0"
kotlin {
jvm()
wasmJs {
binaries.library()
browser {
testTask {
enabled = false
}
}
}
sourceSets {
commonMain.dependencies {
// Correct dependency: Syncable interface is in shared core domain
implementation(projects.core.coreDomain)
// Also include frontend domain if needed (e.g., for frontend-specific models)
implementation(projects.frontend.core.domain)
// Networking
implementation(libs.ktor.client.core)
implementation(libs.ktor.client.contentNegotiation)
implementation(libs.ktor.client.serialization.kotlinx.json)
// Serialization
implementation(libs.kotlinx.serialization.json)
// DI
implementation(libs.koin.core)
}
jvmMain.dependencies {
// Reserviert für Plattform-spezifische Sync-Logik (z.B. Dateisystem-basierter Cache)
}
wasmJsMain.dependencies {
implementation(libs.kotlin.stdlib.wasm.js)
}
commonTest.dependencies {
implementation(libs.kotlin.test)
}
}
}