You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
83 lines
2.3 KiB
83 lines
2.3 KiB
import org.jetbrains.kotlin.gradle.targets.js.nodejs.NodeJsRootExtension |
|
import org.jetbrains.compose.compose |
|
import org.jetbrains.compose.desktop.application.dsl.TargetFormat |
|
|
|
plugins { |
|
kotlin("multiplatform") version "1.5.21" |
|
id("org.jetbrains.compose") version "1.0.0-alpha1-rc5" |
|
} |
|
|
|
version = "1.0-SNAPSHOT" |
|
|
|
repositories { |
|
mavenCentral() |
|
maven("https://maven.pkg.jetbrains.space/public/p/compose/dev") |
|
google() |
|
} |
|
|
|
kotlin { |
|
jvm() |
|
js(IR) { |
|
browser() |
|
binaries.executable() |
|
} |
|
|
|
sourceSets { |
|
val commonMain by getting { |
|
dependencies { |
|
implementation(kotlin("stdlib-common")) |
|
implementation(compose.web.widgets) |
|
implementation(compose.runtime) |
|
} |
|
} |
|
|
|
val jvmMain by getting { |
|
dependencies { |
|
implementation(compose.desktop.currentOs) |
|
} |
|
} |
|
|
|
|
|
val commonTest by getting { |
|
dependencies { |
|
implementation(kotlin("test-common")) |
|
implementation(kotlin("test-annotations-common")) |
|
} |
|
} |
|
} |
|
} |
|
|
|
compose.desktop { |
|
application { |
|
mainClass = "org.jetbrains.compose.common.demo.AppKt" |
|
|
|
nativeDistributions { |
|
targetFormats(TargetFormat.Dmg, TargetFormat.Msi, TargetFormat.Deb) |
|
packageName = "ImageViewer" |
|
packageVersion = "1.0.0" |
|
|
|
modules("jdk.crypto.ec") |
|
|
|
val iconsRoot = project.file("../common/src/desktopMain/resources/images") |
|
macOS { |
|
iconFile.set(iconsRoot.resolve("icon-mac.icns")) |
|
} |
|
windows { |
|
iconFile.set(iconsRoot.resolve("icon-windows.ico")) |
|
menuGroup = "Compose Examples" |
|
// see https://wixtoolset.org/documentation/manual/v3/howtos/general/generate_guids.html |
|
upgradeUuid = "18159995-d967-4CD2-8885-77BFA97CFA9F" |
|
} |
|
linux { |
|
iconFile.set(iconsRoot.resolve("icon-linux.png")) |
|
} |
|
} |
|
} |
|
} |
|
|
|
// a temporary workaround for a bug in jsRun invocation - see https://youtrack.jetbrains.com/issue/KT-48273 |
|
afterEvaluate { |
|
rootProject.extensions.configure<NodeJsRootExtension> { |
|
versions.webpackDevServer.version = "4.0.0" |
|
} |
|
}
|
|
|