@file:OptIn(ExperimentalWasmDsl::class) import org.jetbrains.kotlin.gradle.targets.js.dsl.ExperimentalWasmDsl plugins { kotlin("multiplatform") } kotlin { jvmToolchain(11) jvm { withJava() testRuns["test"].executionTask.configure { useJUnitPlatform() testLogging { showExceptions = true showStandardStreams = true events("passed", "skipped", "failed") // exceptionFormat = org.gradle.api.tasks.testing.logging.TestExceptionFormat.FULL } } } js { moduleName = "fints4k-banking-client" binaries.executable() browser { testTask { useKarma { // useChromeHeadless() useFirefoxHeadless() } } } nodejs { testTask { useMocha { timeout = "20s" // Mocha times out after 2 s, which is too short for bufferExceeded() test } } } } // wasmJs() // ktor is not available for wasmJs yet linuxX64() mingwX64() iosX64() iosArm64() iosSimulatorArm64() macosX64() macosArm64() watchosArm64() watchosSimulatorArm64() tvosArm64() tvosSimulatorArm64() applyDefaultHierarchyTemplate() val coroutinesVersion: String by project val kotlinxDateTimeVersion: String by project sourceSets { commonMain { dependencies { api(project(":BankingClient")) implementation("net.codinux.banking:fints4k:1.0.0-Alpha-15") api("org.jetbrains.kotlinx:kotlinx-datetime:$kotlinxDateTimeVersion") } } commonTest { dependencies { implementation(kotlin("test")) implementation("org.jetbrains.kotlinx:kotlinx-coroutines-test:$coroutinesVersion") } } jvmMain { dependencies { } } jvmTest { dependencies { implementation(kotlin("test")) } } jsMain { dependencies { } } jsTest { } nativeMain { } nativeTest { } } } ext["customArtifactId"] = "fints4k-banking-client" apply(from = "../gradle/scripts/publish-codinux-repo.gradle.kts")