Files
cof-backend/build.gradle.kts
2026-03-17 03:28:37 -05:00

68 lines
1.7 KiB
Kotlin

@file:OptIn(ExperimentalKotlinGradlePluginApi::class, ExperimentalDistributionDsl::class)
import org.jetbrains.kotlin.gradle.ExperimentalKotlinGradlePluginApi
import org.jetbrains.kotlin.gradle.targets.js.dsl.ExperimentalDistributionDsl
plugins {
alias(libs.plugins.kotlin.multiplatform)
alias(libs.plugins.ktor)
alias(libs.plugins.kotlinx.serialization)
}
group = "online.maestoso"
version = "0.1.0"
kotlin {
js {
browser {
distribution {
outputDirectory = file("src/generated/resources/js")
}
}
useEsModules()
binaries.executable()
compilerOptions {
target = "es2015"
optIn.add("kotlin.js.ExperimentalJsExport")
}
generateTypeScriptDefinitions()
}
jvm {
mainRun {
mainClass = "online.maestoso.cofront.CofrontKt"
}
binaries {
executable {
mainClass.set("online.maestoso.cofront.CofrontKt")
}
}
}
sourceSets {
commonMain.dependencies {
implementation(libs.bundles.commonMain)
}
commonTest.dependencies {
implementation(libs.bundles.commonTest)
}
jvmMain {
resources.setSrcDirs(resources.srcDirs + file("src/generated/resources"))
jvmToolchain(21)
dependencies {
implementation(libs.bundles.jvmMain)
}
tasks["jvmProcessResources"].dependsOn += tasks["jsBrowserDistribution"]
}
jvmTest.dependencies {
implementation(libs.bundles.jvmTest)
}
jsMain {
dependencies {
implementation(libs.bundles.jsMain)
}
}
}
}