Deleted the unused `compose.hardcoded.yaml` file. Updated Gradle build scripts to resolve issues with Jackson and Resilience4j library bundles by explicitly specifying direct dependencies. Removed the `sqldelight` plugin and related dependencies from `local-db` module. Consolidated `docker-compose.yaml` to standardize restart policies. Adjusted `.env` to include cautions for sensitive data and rechecked Java version comments.
70 lines
1.8 KiB
Plaintext
70 lines
1.8 KiB
Plaintext
@file:OptIn(ExperimentalKotlinGradlePluginApi::class)
|
|
|
|
import org.jetbrains.kotlin.gradle.ExperimentalKotlinGradlePluginApi
|
|
import org.jetbrains.kotlin.gradle.dsl.JvmTarget
|
|
|
|
plugins {
|
|
alias(libs.plugins.kotlinMultiplatform)
|
|
alias(libs.plugins.kotlinSerialization)
|
|
}
|
|
|
|
kotlin {
|
|
// Toolchain is now handled centrally in the root build.gradle.kts
|
|
val enableWasm = providers.gradleProperty("enableWasm").orNull == "true"
|
|
|
|
jvm()
|
|
js {
|
|
browser {
|
|
testTask { enabled = false }
|
|
}
|
|
}
|
|
|
|
if (enableWasm) {
|
|
@OptIn(org.jetbrains.kotlin.gradle.ExperimentalWasmDsl::class)
|
|
wasmJs { browser() }
|
|
}
|
|
|
|
sourceSets {
|
|
commonMain.dependencies {
|
|
// Ktor Client core + JSON and Auth + Logging + Timeouts + Retry
|
|
api(libs.ktor.client.core)
|
|
implementation(libs.ktor.client.contentNegotiation)
|
|
implementation(libs.ktor.client.serialization.kotlinx.json)
|
|
implementation(libs.ktor.client.auth)
|
|
implementation(libs.ktor.client.logging)
|
|
// ktor-client-resources optional; disabled until version is added to catalog
|
|
|
|
// Kotlinx core bundles
|
|
implementation(libs.kotlinx.coroutines.core)
|
|
|
|
// DI (Koin)
|
|
api(libs.koin.core)
|
|
|
|
// Project modules via typesafe accessors
|
|
// (none here; kept for consistency)
|
|
}
|
|
|
|
jvmMain.dependencies {
|
|
implementation(libs.ktor.client.cio)
|
|
}
|
|
|
|
jsMain.dependencies {
|
|
implementation(libs.ktor.client.js)
|
|
}
|
|
|
|
if (enableWasm) {
|
|
val wasmJsMain = getByName("wasmJsMain")
|
|
wasmJsMain.dependencies {
|
|
implementation(libs.ktor.client.js)
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
tasks.withType<org.jetbrains.kotlin.gradle.tasks.KotlinCompile> {
|
|
compilerOptions {
|
|
jvmTarget.set(JvmTarget.JVM_25)
|
|
freeCompilerArgs.addAll("-opt-in=kotlin.RequiresOptIn")
|
|
}
|
|
}
|