86 lines
		
	
	
	
		
			3 KiB
		
	
	
	
		
			Kotlin
		
	
	
	
	
	
			
		
		
	
	
			86 lines
		
	
	
	
		
			3 KiB
		
	
	
	
		
			Kotlin
		
	
	
	
	
	
import org.jetbrains.compose.desktop.application.dsl.TargetFormat
 | 
						|
 | 
						|
plugins {
 | 
						|
    alias(libs.plugins.composeCompiler)
 | 
						|
    alias(libs.plugins.composeMultiplatform)
 | 
						|
    alias(libs.plugins.kotlinMultiplatform)
 | 
						|
    alias(libs.plugins.kotlinSerialization)
 | 
						|
}
 | 
						|
 | 
						|
kotlin {
 | 
						|
    jvm("desktop")
 | 
						|
 | 
						|
    sourceSets {
 | 
						|
        val desktopMain by getting
 | 
						|
 | 
						|
        commonMain.dependencies {
 | 
						|
            // common
 | 
						|
            implementation(projects.shared)
 | 
						|
            // compose
 | 
						|
            implementation(compose.runtime)
 | 
						|
            implementation(compose.foundation)
 | 
						|
            implementation(compose.material)
 | 
						|
            implementation(compose.ui)
 | 
						|
            implementation(compose.components.resources)
 | 
						|
            implementation(compose.components.uiToolingPreview)
 | 
						|
            implementation(libs.compose.desktop.preview)
 | 
						|
            implementation(libs.androidx.lifecycle.viewmodel)
 | 
						|
            implementation(libs.androidx.lifecycle.runtime.compose)
 | 
						|
            implementation(libs.androidx.navigation.compose)
 | 
						|
            // injection
 | 
						|
            implementation(libs.koin.compose)
 | 
						|
            implementation(libs.koin.compose.viewmodel)
 | 
						|
            // composable component.
 | 
						|
            implementation(libs.coil.compose)
 | 
						|
            implementation(libs.coil.network.ktor)
 | 
						|
//            implementation("com.mikepenz.hypnoticcanvas:hypnoticcanvas:0.3.0")
 | 
						|
//            implementation("com.mikepenz.hypnoticcanvas:hypnoticcanvas-shaders:0.3.0")
 | 
						|
            // network
 | 
						|
            implementation(libs.kotlinx.serialization.json)
 | 
						|
            implementation(libs.ktor.serialization.json)
 | 
						|
            implementation(libs.ktor.client.core)
 | 
						|
            implementation(libs.ktor.client.okhttp)
 | 
						|
            implementation(libs.ktor.client.websockets)
 | 
						|
            implementation(libs.ktor.client.negotiation)
 | 
						|
            // shell
 | 
						|
            implementation(libs.turtle)
 | 
						|
            // log
 | 
						|
            // implementation(libs.logback)
 | 
						|
        }
 | 
						|
 | 
						|
        commonTest.dependencies {
 | 
						|
            implementation(libs.kotlin.test)
 | 
						|
        }
 | 
						|
 | 
						|
        desktopMain.dependencies {
 | 
						|
            implementation(compose.desktop.currentOs)
 | 
						|
            implementation(libs.kotlinx.coroutines.swing)
 | 
						|
        }
 | 
						|
    }
 | 
						|
}
 | 
						|
 | 
						|
// https://github.com/JetBrains/compose-multiplatform/blob/master/tutorials/Native_distributions_and_local_execution/README.md#basic-usage
 | 
						|
compose.desktop {
 | 
						|
    application {
 | 
						|
        mainClass = "com.pixelized.desktop.lwa.MainKt"
 | 
						|
 | 
						|
        nativeDistributions {
 | 
						|
            targetFormats(TargetFormat.Dmg, TargetFormat.Msi, TargetFormat.Deb)
 | 
						|
 | 
						|
            packageName = "Table de Lwa"
 | 
						|
            packageVersion = "1.1.1"
 | 
						|
            description = "Application de support au jeux de rôle dans l'univers de Lwa."
 | 
						|
            copyright = "© 2020 Pixelized. All rights reserved."
 | 
						|
            vendor = "Pixelized"
 | 
						|
 | 
						|
            includeAllModules = true
 | 
						|
 | 
						|
            // Use system theming for the app toolbars.
 | 
						|
            jvmArgs("-Dapple.awt.application.appearance=system")
 | 
						|
        }
 | 
						|
 | 
						|
        buildTypes.release.proguard {
 | 
						|
            configurationFiles.from(project.file("compose-desktop.pro"))
 | 
						|
        }
 | 
						|
    }
 | 
						|
}
 |