mirror of
https://github.com/msfjarvis/compose-lobsters
synced 2025-08-14 11:47:04 +05:30
64 lines
1.9 KiB
Kotlin
64 lines
1.9 KiB
Kotlin
@file:OptIn(org.jetbrains.compose.ExperimentalComposeLibrary::class)
|
|
@file:Suppress("DSL_SCOPE_VIOLATION", "UnstableApiUsage")
|
|
|
|
import org.jetbrains.compose.compose
|
|
import org.jetbrains.kotlin.gradle.tasks.KotlinCompile
|
|
import org.pushingpixels.aurora.tools.svgtranscoder.gradle.TranscodeTask
|
|
|
|
plugins {
|
|
kotlin("multiplatform")
|
|
alias(libs.plugins.compose)
|
|
id("dev.msfjarvis.claw.kotlin-common")
|
|
id("dev.msfjarvis.claw.android-library")
|
|
id("org.pushing-pixels.aurora.tools.svgtranscoder.gradle")
|
|
}
|
|
|
|
val transcodeTask =
|
|
tasks.register<TranscodeTask>("transcodeSvgs") {
|
|
inputDirectory = file("src/commonMain/svgs/")
|
|
outputDirectory = file("src/gen/kotlin/dev/msfjarvis/claw/common/res/clawicons")
|
|
outputPackageName = "dev.msfjarvis.claw.common.res.clawicons"
|
|
transcode()
|
|
}
|
|
|
|
tasks.withType<KotlinCompile>().configureEach { dependsOn(transcodeTask) }
|
|
|
|
kotlin {
|
|
android()
|
|
jvm("desktop")
|
|
sourceSets["commonMain"].apply {
|
|
dependencies {
|
|
api(compose.runtime)
|
|
api(compose.foundation)
|
|
api(compose.material)
|
|
api(compose.material3)
|
|
api(projects.database)
|
|
api(projects.model)
|
|
api(libs.napier)
|
|
implementation(libs.kotlin.coroutines.core)
|
|
implementation(libs.compose.richtext.markdown)
|
|
implementation(libs.compose.richtext.material)
|
|
implementation(libs.compose.richtext.ui)
|
|
}
|
|
kotlin.srcDir("src/gen/kotlin/")
|
|
}
|
|
sourceSets["androidMain"].apply {
|
|
dependencies {
|
|
implementation(libs.androidx.browser)
|
|
implementation(libs.coil.compose)
|
|
}
|
|
dependsOn(sourceSets["androidAndroidTestRelease"])
|
|
}
|
|
sourceSets["desktopMain"].apply {
|
|
resources.srcDir("src/androidMain/res/drawable/")
|
|
dependencies { implementation(libs.kamel.image) }
|
|
}
|
|
}
|
|
|
|
android {
|
|
buildFeatures { androidResources = true }
|
|
sourceSets["main"].apply {
|
|
manifest.srcFile("src/androidMain/AndroidManifest.xml")
|
|
res.srcDirs("src/commonMain/resources")
|
|
}
|
|
}
|