Kafkatorio/modules/web-map/build.gradle.kts
2021-12-08 17:43:08 +01:00

73 lines
2 KiB
Kotlin

import org.jetbrains.kotlin.gradle.targets.js.webpack.KotlinWebpackConfig
plugins {
id("dev.adamko.kafkatorio.base")
kotlin("plugin.serialization")
kotlin("js") // version kotlinVersion
id("io.kvision") version "5.6.1"
}
kotlin {
js(IR) {
// nodejs()
browser {
runTask {
outputFileName = "main.bundle.js"
sourceMaps = false
devServer = KotlinWebpackConfig.DevServer(
open = false,
port = 3000,
proxy = mutableMapOf(
"/kv/*" to "http://localhost:8080",
"/kvws/*" to mapOf("target" to "ws://localhost:8080", "ws" to true)
),
static = mutableListOf("$buildDir/processedResources/js/main")
)
}
webpackTask {
outputFileName = "main.bundle.js"
}
testTask {
useKarma {
useChromeHeadless()
}
}
}
binaries.executable()
}
sourceSets {
val kvisionVersion: String = libs.versions.kvision.get()
main {
dependencies {
implementation("org.jetbrains.kotlinx:kotlinx-nodejs:0.0.7")
implementation("io.kvision:kvision:$kvisionVersion")
implementation("io.kvision:kvision-bootstrap:$kvisionVersion")
implementation("io.kvision:kvision-bootstrap-css:$kvisionVersion")
implementation("io.kvision:kvision-bootstrap-icons:$kvisionVersion")
implementation("io.kvision:kvision-fontawesome:$kvisionVersion")
implementation("io.kvision:kvision-state:$kvisionVersion")
implementation("io.kvision:kvision-chart:$kvisionVersion")
val kotlinWrappersVersion = "0.0.1-pre.270-kotlin-1.6.0"
implementation(
project.dependencies.enforcedPlatform(
"org.jetbrains.kotlin-wrappers:kotlin-wrappers-bom:${kotlinWrappersVersion}"
)
)
}
val webDir = file("src/main/web")
resources.srcDir(webDir)
}
test {
dependencies {
implementation(kotlin("test-js"))
implementation("io.kvision:kvision-testutils:$kvisionVersion")
}
}
}
}