62 lines
1.7 KiB
Kotlin
62 lines
1.7 KiB
Kotlin
import org.jetbrains.compose.desktop.application.dsl.TargetFormat
|
|
|
|
plugins {
|
|
kotlin("jvm") version "2.3.20"
|
|
id("org.jetbrains.compose") version "1.10.3"
|
|
id("org.jetbrains.kotlin.plugin.compose") version "2.3.20"
|
|
kotlin("plugin.serialization") version "2.3.20"
|
|
}
|
|
|
|
kotlin {
|
|
jvmToolchain(25)
|
|
}
|
|
|
|
repositories {
|
|
mavenCentral()
|
|
google()
|
|
maven("https://maven.pkg.jetbrains.space/public/p/compose/dev")
|
|
}
|
|
|
|
dependencies {
|
|
implementation(compose.desktop.currentOs)
|
|
|
|
// Global hotkeys
|
|
implementation("com.github.kwhat:jnativehook:2.2.2")
|
|
|
|
// AnyType API (HTTP)
|
|
val ktorVersion = "3.0.0"
|
|
implementation("io.ktor:ktor-client-core:$ktorVersion")
|
|
implementation("io.ktor:ktor-client-cio:$ktorVersion")
|
|
implementation("io.ktor:ktor-client-content-negotiation:$ktorVersion")
|
|
implementation("io.ktor:ktor-serialization-kotlinx-json:$ktorVersion")
|
|
|
|
// Coroutines (Swing/AWT dispatcher)
|
|
implementation("org.jetbrains.kotlinx:kotlinx-coroutines-swing:1.9.0")
|
|
|
|
// YAML config
|
|
implementation("com.charleskorn.kaml:kaml:0.67.0")
|
|
|
|
// Logging
|
|
implementation("org.apache.logging.log4j:log4j-api:2.24.3")
|
|
implementation("org.apache.logging.log4j:log4j-core:2.24.3")
|
|
}
|
|
|
|
compose.desktop {
|
|
application {
|
|
mainClass = "ch.ergon.anytask.MainKt"
|
|
|
|
// Allow access to AWT Classes to control the window
|
|
jvmArgs("--add-opens", "java.desktop/com.apple.eawt=ALL-UNNAMED")
|
|
|
|
nativeDistributions {
|
|
targetFormats(TargetFormat.Dmg)
|
|
packageName = "AnyTask"
|
|
packageVersion = "1.0.0"
|
|
|
|
macOS {
|
|
bundleID = "ch.ergon.anytask"
|
|
}
|
|
}
|
|
}
|
|
}
|