Initial commit
This commit is contained in:
@@ -0,0 +1,36 @@
|
||||
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.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("compose.plugin").get().get().pluginId)
|
||||
apply(libs.findPlugin("compose.multiplatform").get().get().pluginId)
|
||||
}
|
||||
|
||||
val composeDeps = extensions.getByType<ComposeExtension>().dependencies
|
||||
|
||||
extensions.configure<KotlinMultiplatformExtension> {
|
||||
sourceSets.apply {
|
||||
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)
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user