fun DependencyHandlerScope.addUiLayerDependencies(project: Project) {
"implementation"(project(":core:presentation:ui"))
"implementation"(project(":core:presentation:designsystem"))
"implementation"(project.libs.findBundle("koin.compose").get())
"implementation"(project.libs.findBundle("compose").get())
"debugImplementation"(project.libs.findBundle("compose.debug").get())
"androidTestImplementation"(project.libs.findLibrary("androidx.compose.ui.test.junit4").get())
}
- apply it from a single place
class AndroidFeatureUiConventionPlugin: Plugin<Project> {
override fun apply(target: Project) {
target.run {
pluginManager.run {
apply("runtracer.android.library.compose")
}
dependencies {
addUiLayerDependencies(target)
}
}
}
}
- Finally register it and apply in feature of presentation modules