diff --git a/app/build.gradle.kts b/app/build.gradle.kts index a7818cc9..7f87eda8 100644 --- a/app/build.gradle.kts +++ b/app/build.gradle.kts @@ -26,8 +26,6 @@ dependencies { implementation(project(":database")) implementation(compose.foundation) implementation(compose.material) - implementation(compose.runtime) - implementation(compose.ui) implementation(Dependencies.AndroidX.appCompat) implementation(Dependencies.AndroidX.browser) implementation(Dependencies.AndroidX.datastore) diff --git a/common/build.gradle.kts b/common/build.gradle.kts index 7aaf52ea..336c120c 100644 --- a/common/build.gradle.kts +++ b/common/build.gradle.kts @@ -24,24 +24,24 @@ kotlin { android() sourceSets { - val androidMain by getting { + named("androidMain") { dependencies { implementation(Dependencies.AndroidX.browser) } } - val commonMain by getting { + named("commonMain") { dependencies { - implementation(compose.runtime) - implementation(compose.ui) + api(compose.runtime) + api(compose.ui) } } - val androidTest by getting { dependencies { implementation(kotlin("test-junit")) } } + named("androidTest") { dependencies { implementation(kotlin("test-junit")) } } - val jvmTest by getting { dependencies { implementation(kotlin("test-junit")) } } + named("jvmTest") { dependencies { implementation(kotlin("test-junit")) } } - val commonTest by getting { + named("commonTest") { dependencies { implementation(kotlin("test-common")) implementation(kotlin("test-annotations-common")) diff --git a/desktop/build.gradle.kts b/desktop/build.gradle.kts index 05a04de4..5d071aa5 100644 --- a/desktop/build.gradle.kts +++ b/desktop/build.gradle.kts @@ -1,23 +1,41 @@ import org.jetbrains.compose.compose +import org.jetbrains.compose.desktop.application.dsl.TargetFormat plugins { - kotlin("jvm") + kotlin("multiplatform") id("org.jetbrains.compose") version Dependencies.JB_COMPOSE_VERSION `lobsters-plugin` } repositories { maven("https://maven.pkg.jetbrains.space/public/p/compose/dev") } -dependencies { - implementation(project(":api")) - implementation(project(":common")) - implementation(project(":database")) - implementation(compose.desktop.currentOs) - implementation(compose.runtime) - implementation(compose.material) - implementation(Dependencies.Kotlin.Coroutines.jvmCore) - implementation(Dependencies.ThirdParty.kamel) - implementation(Dependencies.ThirdParty.Retrofit.moshi) +kotlin { + jvm { + withJava() + } + sourceSets { + named("jvmMain") { + dependencies { + implementation(compose.desktop.currentOs) + implementation(project(":api")) + implementation(project(":common")) + implementation(project(":database")) + implementation(compose.material) + implementation(Dependencies.Kotlin.Coroutines.jvmCore) + implementation(Dependencies.ThirdParty.kamel) + implementation(Dependencies.ThirdParty.Retrofit.moshi) + } + } + } } -compose.desktop { application { mainClass = "dev.msfjarvis.lobsters.ui.Main" } } +compose.desktop { + application { + mainClass = "dev.msfjarvis.lobsters.ui.Main" + nativeDistributions { + targetFormats(TargetFormat.Dmg, TargetFormat.Msi, TargetFormat.Deb) + packageName = "Claw" + packageVersion = "1.0.0" + } + } +} diff --git a/desktop/src/main/kotlin/dev/msfjarvis/lobsters/data/ApiRepository.kt b/desktop/src/jvmMain/kotlin/dev/msfjarvis/lobsters/data/ApiRepository.kt similarity index 100% rename from desktop/src/main/kotlin/dev/msfjarvis/lobsters/data/ApiRepository.kt rename to desktop/src/jvmMain/kotlin/dev/msfjarvis/lobsters/data/ApiRepository.kt diff --git a/desktop/src/main/kotlin/dev/msfjarvis/lobsters/ui/LobstersItem.kt b/desktop/src/jvmMain/kotlin/dev/msfjarvis/lobsters/ui/LobstersItem.kt similarity index 100% rename from desktop/src/main/kotlin/dev/msfjarvis/lobsters/ui/LobstersItem.kt rename to desktop/src/jvmMain/kotlin/dev/msfjarvis/lobsters/ui/LobstersItem.kt diff --git a/desktop/src/main/kotlin/dev/msfjarvis/lobsters/ui/Main.kt b/desktop/src/jvmMain/kotlin/dev/msfjarvis/lobsters/ui/Main.kt similarity index 100% rename from desktop/src/main/kotlin/dev/msfjarvis/lobsters/ui/Main.kt rename to desktop/src/jvmMain/kotlin/dev/msfjarvis/lobsters/ui/Main.kt diff --git a/desktop/src/main/kotlin/dev/msfjarvis/lobsters/ui/Theme.kt b/desktop/src/jvmMain/kotlin/dev/msfjarvis/lobsters/ui/Theme.kt similarity index 100% rename from desktop/src/main/kotlin/dev/msfjarvis/lobsters/ui/Theme.kt rename to desktop/src/jvmMain/kotlin/dev/msfjarvis/lobsters/ui/Theme.kt diff --git a/desktop/src/main/kotlin/dev/msfjarvis/lobsters/util/UrlLauncher.kt b/desktop/src/jvmMain/kotlin/dev/msfjarvis/lobsters/util/UrlLauncher.kt similarity index 100% rename from desktop/src/main/kotlin/dev/msfjarvis/lobsters/util/UrlLauncher.kt rename to desktop/src/jvmMain/kotlin/dev/msfjarvis/lobsters/util/UrlLauncher.kt