Implement mouse coordinate-based knob value adjustment. Added `setValueByMouseCoords` to calculate knob values derived from mouse coordinates using angles. Replaced obsolete mouse delta logic with the new approach for better precision and interaction. Upgraded dependencies and project configurations, including the Kotlin version, for enhanced compatibility and stability.
152 lines
4.1 KiB
Kotlin
152 lines
4.1 KiB
Kotlin
@file:OptIn(ExperimentalKotlinGradlePluginApi::class)
|
|
|
|
import org.jetbrains.kotlin.gradle.ExperimentalKotlinGradlePluginApi
|
|
|
|
plugins {
|
|
kotlin("multiplatform") version "2.1.0"
|
|
`maven-publish`
|
|
signing
|
|
}
|
|
|
|
group = "nl.astraeus"
|
|
version = "1.1.3"
|
|
|
|
repositories {
|
|
mavenCentral()
|
|
maven {
|
|
setUrl("https://gitea.astraeus.nl/api/packages/rnentjes/maven")
|
|
}
|
|
maven {
|
|
setUrl("https://gitea.astraeus.nl:8443/api/packages/rnentjes/maven")
|
|
}
|
|
}
|
|
|
|
kotlin {
|
|
js {
|
|
compilerOptions {
|
|
target.set("es2015")
|
|
}
|
|
binaries.library()
|
|
browser {}
|
|
}
|
|
jvm {
|
|
withJava()
|
|
}
|
|
|
|
sourceSets {
|
|
val commonMain by getting {
|
|
dependencies {
|
|
implementation("nl.astraeus:kotlin-css-generator:1.0.10")
|
|
implementation("org.jetbrains.kotlinx:kotlinx-datetime:0.6.0")
|
|
}
|
|
}
|
|
val jsMain by getting {
|
|
dependencies {
|
|
implementation("nl.astraeus:kotlin-komponent:1.2.4")
|
|
}
|
|
}
|
|
val jsTest by getting {
|
|
dependencies {
|
|
implementation(kotlin("test"))
|
|
}
|
|
}
|
|
val jvmMain by getting {
|
|
dependencies {
|
|
//base
|
|
implementation("io.undertow:undertow-core:2.3.14.Final")
|
|
implementation("io.undertow:undertow-websockets-jsr:2.3.14.Final")
|
|
implementation("org.jboss.xnio:xnio-nio:3.8.16.Final")
|
|
|
|
implementation("org.xerial:sqlite-jdbc:3.46.0.0")
|
|
implementation("com.zaxxer:HikariCP:4.0.3")
|
|
implementation("nl.astraeus:simple-jdbc-stats:1.6.1")
|
|
|
|
implementation("org.jetbrains.kotlinx:kotlinx-html-jvm:0.11.0")
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
extra["PUBLISH_GROUP_ID"] = group
|
|
extra["PUBLISH_VERSION"] = version
|
|
extra["PUBLISH_ARTIFACT_ID"] = name
|
|
|
|
// Stub secrets to let the project sync and build without the publication values set up
|
|
val signingKeyId: String? by project
|
|
val signingPassword: String? by project
|
|
val signingSecretKeyRingFile: String? by project
|
|
|
|
extra["signing.keyId"] = signingKeyId
|
|
extra["signing.password"] = signingPassword
|
|
extra["signing.secretKeyRingFile"] = signingSecretKeyRingFile
|
|
|
|
val javadocJar by tasks.registering(Jar::class) {
|
|
archiveClassifier.set("javadoc")
|
|
}
|
|
|
|
publishing {
|
|
repositories {
|
|
maven {
|
|
name = "gitea"
|
|
setUrl("https://gitea.astraeus.nl/api/packages/rnentjes/maven")
|
|
|
|
credentials {
|
|
val giteaUsername: String? by project
|
|
val giteaPassword: String? by project
|
|
|
|
username = giteaUsername
|
|
password = giteaPassword
|
|
}
|
|
}
|
|
maven {
|
|
name = "gitea8443"
|
|
setUrl("https://gitea.astraeus.nl:8443/api/packages/rnentjes/maven")
|
|
|
|
credentials {
|
|
val giteaUsername: String? by project
|
|
val giteaPassword: String? by project
|
|
|
|
username = giteaUsername
|
|
password = giteaPassword
|
|
}
|
|
}
|
|
}
|
|
|
|
// Configure all publications
|
|
publications.withType<MavenPublication> {
|
|
// Stub javadoc.jar artifact
|
|
artifact(javadocJar.get())
|
|
|
|
// Provide artifacts information requited by Maven Central
|
|
pom {
|
|
name.set("vst-ui-base")
|
|
description.set("Vst UI base")
|
|
url.set("https://gitea.astraeus.nl/rnentjes/vst-ui-base")
|
|
|
|
licenses {
|
|
license {
|
|
name.set("MIT")
|
|
url.set("https://opensource.org/licenses/MIT")
|
|
}
|
|
}
|
|
developers {
|
|
developer {
|
|
id.set("rnentjes")
|
|
name.set("Rien Nentjes")
|
|
email.set("info@nentjes.com")
|
|
}
|
|
}
|
|
scm {
|
|
url.set("https://gitea.astraeus.nl/rnentjes/vst-ui-base")
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
signing {
|
|
sign(publishing.publications)
|
|
}
|
|
|
|
tasks.withType<PublishToMavenRepository> {
|
|
dependsOn(tasks.withType<Sign>())
|
|
} |