• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 import com.vanniktech.maven.publish.JavadocJar.Dokka
2 import com.vanniktech.maven.publish.KotlinMultiplatform
3 import com.vanniktech.maven.publish.MavenPublishBaseExtension
4 
<lambda>null5 plugins {
6   kotlin("multiplatform")
7   id("org.jetbrains.dokka")
8   id("com.vanniktech.maven.publish.base")
9   id("binary-compatibility-validator")
10 }
11 
<lambda>null12 kotlin {
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>null58 configure<MavenPublishBaseExtension> {
59   configure(
60     KotlinMultiplatform(javadocJar = Dokka("dokkaGfm"))
61   )
62 }
63