1 import com.vanniktech.maven.publish.JavadocJar.Dokka 2 import com.vanniktech.maven.publish.KotlinMultiplatform 3 import com.vanniktech.maven.publish.MavenPublishBaseExtension 4 <lambda>null5plugins { 6 kotlin("multiplatform") 7 id("org.jetbrains.dokka") 8 id("com.vanniktech.maven.publish.base") 9 id("binary-compatibility-validator") 10 } 11 <lambda>null12kotlin { 13 js { 14 configure(listOf(compilations.getByName("main"), compilations.getByName("test"))) { 15 tasks.getByName(compileKotlinTaskName) { 16 kotlinOptions { 17 moduleKind = "umd" 18 sourceMap = true 19 } 20 } 21 } 22 nodejs { 23 testTask { 24 useMocha { 25 timeout = "30s" 26 } 27 } 28 } 29 } 30 sourceSets { 31 all { 32 languageSettings.optIn("kotlin.RequiresOptIn") 33 } 34 matching { it.name.endsWith("Test") }.all { 35 languageSettings { 36 optIn("kotlin.time.ExperimentalTime") 37 } 38 } 39 commonMain { 40 dependencies { 41 implementation(projects.okio) 42 // Uncomment this to generate fs.fs.module_node.kt. Use it when updating fs.kt. 43 // implementation(npm("@types/node", "14.14.16", true)) 44 } 45 } 46 commonTest { 47 dependencies { 48 implementation(libs.kotlin.test) 49 implementation(libs.kotlin.time) 50 51 implementation(projects.okioFakefilesystem) 52 implementation(projects.okioTestingSupport) 53 } 54 } 55 } 56 } 57 <lambda>null58configure<MavenPublishBaseExtension> { 59 configure( 60 KotlinMultiplatform(javadocJar = Dokka("dokkaGfm")) 61 ) 62 } 63