diff --git a/build-logic/src/main/java/com/yapp/app/ComposeAndroid.kt b/build-logic/src/main/java/com/yapp/app/ComposeAndroid.kt new file mode 100644 index 0000000..455bcb9 --- /dev/null +++ b/build-logic/src/main/java/com/yapp/app/ComposeAndroid.kt @@ -0,0 +1,35 @@ +package com.yapp.app + +import org.gradle.api.Project +import org.gradle.kotlin.dsl.dependencies +import org.gradle.kotlin.dsl.getByType +import org.jetbrains.kotlin.compose.compiler.gradle.ComposeCompilerGradlePluginExtension + +internal fun Project.configureCompose() { + with(plugins) { + apply("org.jetbrains.kotlin.plugin.compose") + } + + val libs = extensions.libs + androidExtension.apply { + dependencies { + val bom = libs.findLibrary("androidx-compose-bom").get() + add("implementation", platform(bom)) + add("androidTestImplementation", platform(bom)) + + add("implementation", libs.findLibrary("androidx.material3").get()) + add("implementation", libs.findLibrary("androidx.ui").get()) + add("implementation", libs.findLibrary("androidx.ui.tooling.preview").get()) + add("androidTestImplementation", libs.findLibrary("androidx.junit").get()) + add("androidTestImplementation", libs.findLibrary("androidx.espresso.core").get()) + add("androidTestImplementation", libs.findLibrary("androidx.ui.test.junit4").get()) + add("debugImplementation", libs.findLibrary("androidx.ui.tooling").get()) + add("debugImplementation", libs.findLibrary("androidx.ui.test.manifest").get()) + } + } + + extensions.getByType().apply { + enableStrongSkippingMode.set(true) + includeSourceInformation.set(true) + } +} diff --git a/build-logic/src/main/java/yapp.android.compose.gradle.kts b/build-logic/src/main/java/yapp.android.compose.gradle.kts new file mode 100644 index 0000000..54799f9 --- /dev/null +++ b/build-logic/src/main/java/yapp.android.compose.gradle.kts @@ -0,0 +1,4 @@ +import com.yapp.app.configureCompose + + +configureCompose() \ No newline at end of file diff --git a/build-logic/src/main/java/yapp.android.feature.gradle.kts b/build-logic/src/main/java/yapp.android.feature.gradle.kts new file mode 100644 index 0000000..8d88cbe --- /dev/null +++ b/build-logic/src/main/java/yapp.android.feature.gradle.kts @@ -0,0 +1,20 @@ +plugins { + id("yapp.android.library") + id("yapp.android.compose") +} + +android { + packaging { + resources { + excludes.add("META-INF/**") + } + } +} + +dependencies { + implementation(project(":core:ui")) + implementation(project(":core:designsystem")) + implementation(project(":core:model")) + implementation(project(":core:domain")) + +} \ No newline at end of file