plugins { kotlin("multiplatform") version "1.7.21" kotlin("plugin.serialization") version "1.7.21" `maven-publish` } val ktor_version="2.1.1" val logback_version="1.2.10" group = "net.sergeych" version = "0.2.1-SNAPSHOT" repositories { mavenCentral() mavenLocal() maven("https://maven.universablockchain.com") } //configurations.all { // resolutionStrategy.cacheChangingModulesFor(30, "seconds") //} kotlin { jvm { compilations.all { kotlinOptions.jvmTarget = "1.8" } withJava() testRuns["test"].executionTask.configure { useJUnitPlatform() } } js(IR) { browser { commonWebpackConfig { cssSupport.enabled = true } testTask { useMocha { timeout = "30000" } } } } sourceSets { val commonMain by getting { dependencies { implementation("org.jetbrains.kotlinx:kotlinx-coroutines-core:1.6.3") api("net.sergeych:unikrypto:1.2.2-SNAPSHOT") api("net.sergeych:parsec3:0.4.1-SNAPSHOT") api("net.sergeych:boss-serialization-mp:0.2.4-SNAPSHOT") api("net.sergeych:unikrypto:1.2.2-SNAPSHOT") } } val commonTest by getting { dependencies { implementation(kotlin("test")) implementation("org.jetbrains.kotlinx:kotlinx-coroutines-test:1.6.4") } } val jvmMain by getting { dependencies { implementation("io.ktor:ktor-server-core:$ktor_version") implementation("io.ktor:ktor-server-websockets-jvm:$ktor_version") } } val jvmTest by getting { dependencies { implementation("io.ktor:ktor-server-core:$ktor_version") implementation("io.ktor:ktor-server-netty:$ktor_version") implementation("ch.qos.logback:logback-classic:$logback_version") } } val jsMain by getting val jsTest by getting } publishing { repositories { maven { url = uri("https://maven.universablockchain.com/") credentials { username = System.getenv("maven_user") password = System.getenv("maven_password") } } } } }