Initial commit

This commit is contained in:
2025-09-22 17:37:06 -03:00
parent 91a6202e26
commit c4708cbcab
2 changed files with 26 additions and 27 deletions

View File

@@ -2,43 +2,41 @@ import dev.carlosmartino.plugins.libs
import org.gradle.api.Plugin
import org.gradle.api.Project
import org.gradle.kotlin.dsl.configure
import org.gradle.kotlin.dsl.dependencies
import org.gradle.kotlin.dsl.getByType
import org.jetbrains.compose.ComposeExtension
import org.jetbrains.kotlin.gradle.dsl.KotlinMultiplatformExtension
class ComposeMultiplatformConventionPlugin : Plugin<Project> {
override fun apply(target: Project) =
with(target) {
with(pluginManager) {
apply(libs.findPlugin("composeCompiler").get().get().pluginId)
apply(libs.findPlugin("composeMultiplatform").get().get().pluginId)
}
override fun apply(target: Project) = with(target) {
with(pluginManager) {
apply(libs.findPlugin("composeCompiler").get().get().pluginId)
apply(libs.findPlugin("composeMultiplatform").get().get().pluginId)
}
val composeDeps = extensions.getByType<ComposeExtension>().dependencies
val composeDeps = extensions.getByType<ComposeExtension>().dependencies
extensions.configure<KotlinMultiplatformExtension> {
sourceSets.apply {
androidMain {
dependencies {
implementation(composeDeps.preview)
implementation(libs.findLibrary("libs.androidx.activity.compose").get())
}
extensions.configure<KotlinMultiplatformExtension> {
sourceSets.apply {
androidMain {
dependencies {
implementation(composeDeps.preview)
implementation(libs.findLibrary("libs.androidx.activity.compose").get())
}
commonMain {
dependencies {
implementation(composeDeps.runtime)
implementation(composeDeps.foundation)
implementation(composeDeps.material3)
implementation(composeDeps.ui)
implementation(composeDeps.uiUtil)
implementation(composeDeps.animation)
implementation(composeDeps.animationGraphics)
implementation(composeDeps.components.resources)
implementation(composeDeps.components.uiToolingPreview)
}
}
commonMain {
dependencies {
implementation(composeDeps.runtime)
implementation(composeDeps.foundation)
implementation(composeDeps.material3)
implementation(composeDeps.ui)
implementation(composeDeps.uiUtil)
implementation(composeDeps.animation)
implementation(composeDeps.animationGraphics)
implementation(composeDeps.components.resources)
implementation(composeDeps.components.uiToolingPreview)
}
}
}
}
}
}