package dev.adriankuta.convention import com.android.build.gradle.BaseExtension import org.gradle.api.Project import org.gradle.api.artifacts.VersionCatalog import org.gradle.api.artifacts.VersionCatalogsExtension import org.gradle.kotlin.dsl.assign import org.gradle.kotlin.dsl.configure import org.gradle.kotlin.dsl.dependencies import org.gradle.kotlin.dsl.getByType import org.jetbrains.kotlin.compose.compiler.gradle.ComposeCompilerGradlePluginExtension import kotlin.with @Suppress("UnstableApiUsage") internal fun Project.configureCompose(commonExtension: BaseExtension) { commonExtension.apply { buildFeatures.apply { compose = true } with(pluginManager) { apply("org.jetbrains.kotlin.plugin.compose") } val libs: VersionCatalog = extensions.getByType().named("libs") /*extensions.configure { }*/ composeOptions { kotlinCompilerExtensionVersion = libs.findVersion("composeCompiler").get().toString() } dependencies { add("implementation", platform(libs.findLibrary("androidx.compose.bom").get())) add( "androidTestImplementation", platform(libs.findLibrary("androidx.compose.bom").get()) ) //add("androidTestImplementation", libs.findLibrary("androidx.compose.ui.test.junit4").get()) //add("androidTestImplementation", project(":core:testing")) } } }