diff --git a/build-logic/convention/src/main/kotlin/store/newsbriefing/app/buildlogic/plugin/AndroidFeatureConventionPlugin.kt b/build-logic/convention/src/main/kotlin/store/newsbriefing/app/buildlogic/plugin/AndroidFeatureConventionPlugin.kt index cb3255a..0c40e90 100644 --- a/build-logic/convention/src/main/kotlin/store/newsbriefing/app/buildlogic/plugin/AndroidFeatureConventionPlugin.kt +++ b/build-logic/convention/src/main/kotlin/store/newsbriefing/app/buildlogic/plugin/AndroidFeatureConventionPlugin.kt @@ -19,9 +19,9 @@ class AndroidFeatureConventionPlugin : Plugin { add("implementation", project(":core:ui")) add("implementation", project(":core:designsystem")) -// add("implementation", libs.findLibrary("androidx.hilt.navigation.compose").get()) -// add("implementation", libs.findLibrary("androidx.lifecycle.runtimeCompose").get()) -// add("implementation", libs.findLibrary("androidx.lifecycle.viewModelCompose").get()) + add("implementation", libs.findLibrary("androidx.hilt.navigation.compose").get()) + add("implementation", libs.findLibrary("androidx.lifecycle.runtimeCompose").get()) + add("implementation", libs.findLibrary("androidx.lifecycle.viewModelCompose").get()) } } } diff --git a/feature/bookmark/build.gradle.kts b/feature/bookmark/build.gradle.kts index b0e1b5f..545337e 100644 --- a/feature/bookmark/build.gradle.kts +++ b/feature/bookmark/build.gradle.kts @@ -1,48 +1,14 @@ -@Suppress("DSL_SCOPE_VIOLATION") // TODO: Remove once KTIJ-19369 is fixed plugins { - alias(libs.plugins.androidLibrary) - alias(libs.plugins.kotlinAndroid) + alias(libs.plugins.briefing.android.library) + alias(libs.plugins.briefing.android.feature) } android { namespace = "store.newsbriefing.app.feature.bookmark" - compileSdk = 34 - - defaultConfig { - minSdk = 24 - - testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner" - consumerProguardFiles("consumer-rules.pro") - } - - buildTypes { - release { - isMinifyEnabled = false - proguardFiles( - getDefaultProguardFile("proguard-android-optimize.txt"), - "proguard-rules.pro" - ) - } - } - compileOptions { - sourceCompatibility = JavaVersion.VERSION_1_8 - targetCompatibility = JavaVersion.VERSION_1_8 - } - kotlinOptions { - jvmTarget = "1.8" - } } dependencies { api(projects.core.model) api(projects.core.common) api(projects.core.designsystem) - - implementation(libs.core.ktx) - implementation(libs.androidx.appcompat) - implementation(libs.material) - implementation(libs.hilt.navigation.compose) - testImplementation(libs.junit) - androidTestImplementation(libs.androidx.test.ext.junit) - androidTestImplementation(libs.espresso.core) } \ No newline at end of file diff --git a/feature/home/build.gradle.kts b/feature/home/build.gradle.kts index 7c92e3a..0a025fb 100644 --- a/feature/home/build.gradle.kts +++ b/feature/home/build.gradle.kts @@ -1,49 +1,14 @@ -@Suppress("DSL_SCOPE_VIOLATION") // TODO: Remove once KTIJ-19369 is fixed plugins { - alias(libs.plugins.androidLibrary) - alias(libs.plugins.kotlinAndroid) + alias(libs.plugins.briefing.android.library) + alias(libs.plugins.briefing.android.feature) } android { namespace = "store.newsbriefing.app.feature.home" - compileSdk = 34 - - defaultConfig { - minSdk = 24 - - testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner" - consumerProguardFiles("consumer-rules.pro") - } - - buildTypes { - release { - isMinifyEnabled = false - proguardFiles( - getDefaultProguardFile("proguard-android-optimize.txt"), - "proguard-rules.pro" - ) - } - } - compileOptions { - sourceCompatibility = JavaVersion.VERSION_1_8 - targetCompatibility = JavaVersion.VERSION_1_8 - } - kotlinOptions { - jvmTarget = "1.8" - } } dependencies { api(projects.core.model) api(projects.core.common) api(projects.core.designsystem) - - implementation(libs.core.ktx) - implementation(libs.androidx.appcompat) - implementation(libs.material) - implementation(libs.hilt.navigation.compose) - implementation(libs.androidx.compose.runtime) - testImplementation(libs.junit) - androidTestImplementation(libs.androidx.test.ext.junit) - androidTestImplementation(libs.espresso.core) } \ No newline at end of file diff --git a/feature/home/src/main/java/store/newsbriefing/app/feature/home/HomeScreen.kt b/feature/home/src/main/java/store/newsbriefing/app/feature/home/HomeScreen.kt index f571eb9..32be2f4 100644 --- a/feature/home/src/main/java/store/newsbriefing/app/feature/home/HomeScreen.kt +++ b/feature/home/src/main/java/store/newsbriefing/app/feature/home/HomeScreen.kt @@ -3,8 +3,7 @@ package store.newsbriefing.app.feature.home import androidx.compose.runtime.Composable const val home = "home" - @Composable fun HomeScreen() { -} \ No newline at end of file +} diff --git a/feature/newsdetail/build.gradle.kts b/feature/newsdetail/build.gradle.kts index 1abe6e1..beee9e8 100644 --- a/feature/newsdetail/build.gradle.kts +++ b/feature/newsdetail/build.gradle.kts @@ -1,49 +1,14 @@ -@Suppress("DSL_SCOPE_VIOLATION") // TODO: Remove once KTIJ-19369 is fixed plugins { - alias(libs.plugins.androidLibrary) - alias(libs.plugins.kotlinAndroid) + alias(libs.plugins.briefing.android.library) + alias(libs.plugins.briefing.android.feature) } android { namespace = "store.newsbriefing.app.feature.newsdetail" - compileSdk = 34 - - defaultConfig { - minSdk = 24 - - testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner" - consumerProguardFiles("consumer-rules.pro") - } - - buildTypes { - release { - isMinifyEnabled = false - proguardFiles( - getDefaultProguardFile("proguard-android-optimize.txt"), - "proguard-rules.pro" - ) - } - } - compileOptions { - sourceCompatibility = JavaVersion.VERSION_1_8 - targetCompatibility = JavaVersion.VERSION_1_8 - } - kotlinOptions { - jvmTarget = "1.8" - } } dependencies { api(projects.core.model) api(projects.core.common) api(projects.core.designsystem) - - implementation(libs.core.ktx) - implementation(libs.androidx.appcompat) - implementation(libs.material) - implementation(libs.androidx.compose.navigation) - implementation(libs.hilt.navigation.compose) - testImplementation(libs.junit) - androidTestImplementation(libs.androidx.test.ext.junit) - androidTestImplementation(libs.espresso.core) } \ No newline at end of file diff --git a/feature/setting/build.gradle.kts b/feature/setting/build.gradle.kts index 2e9a52f..1052a23 100644 --- a/feature/setting/build.gradle.kts +++ b/feature/setting/build.gradle.kts @@ -1,48 +1,14 @@ -@Suppress("DSL_SCOPE_VIOLATION") // TODO: Remove once KTIJ-19369 is fixed plugins { - alias(libs.plugins.androidLibrary) - alias(libs.plugins.kotlinAndroid) + alias(libs.plugins.briefing.android.library) + alias(libs.plugins.briefing.android.feature) } android { namespace = "store.newsbriefing.app.feature.setting" - compileSdk = 34 - - defaultConfig { - minSdk = 24 - - testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner" - consumerProguardFiles("consumer-rules.pro") - } - - buildTypes { - release { - isMinifyEnabled = false - proguardFiles( - getDefaultProguardFile("proguard-android-optimize.txt"), - "proguard-rules.pro" - ) - } - } - compileOptions { - sourceCompatibility = JavaVersion.VERSION_1_8 - targetCompatibility = JavaVersion.VERSION_1_8 - } - kotlinOptions { - jvmTarget = "1.8" - } } dependencies { api(projects.core.model) api(projects.core.common) api(projects.core.designsystem) - - implementation(libs.core.ktx) - implementation(libs.androidx.appcompat) - implementation(libs.material) - implementation(libs.hilt.navigation.compose) - testImplementation(libs.junit) - androidTestImplementation(libs.androidx.test.ext.junit) - androidTestImplementation(libs.espresso.core) } \ No newline at end of file diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml index c753c3b..dfa3c6e 100644 --- a/gradle/libs.versions.toml +++ b/gradle/libs.versions.toml @@ -11,6 +11,8 @@ activity-compose = "1.8.2" hilt = "2.50" compose-bom = "2024.02.00" androidxComposeCompiler = "1.5.7" +androidxHiltNavigationCompose = "1.0.0" +androidxLifecycle = "2.6.2" ksp = "1.9.21-1.0.16" androidxAppCompat = "1.6.1" androidxActivity = "1.8.2" @@ -40,6 +42,10 @@ androidx-compose-ui-tooling-preview = { group = "androidx.compose.ui", name = "u androidx-compose-ui-util = { group = "androidx.compose.ui", name = "ui-util" } androidx-compose-navigation = { group = "androidx.navigation", name = "navigation-compose" } +androidx-hilt-navigation-compose = { group = "androidx.hilt", name = "hilt-navigation-compose", version.ref = "androidxHiltNavigationCompose" } +androidx-lifecycle-runtimeCompose = { group = "androidx.lifecycle", name = "lifecycle-runtime-compose", version.ref = "androidxLifecycle" } +androidx-lifecycle-viewModelCompose = { group = "androidx.lifecycle", name = "lifecycle-viewmodel-compose", version.ref = "androidxLifecycle" } + secrets-gradle-plugin = { module = "com.google.android.libraries.mapsplatform.secrets-gradle-plugin:secrets-gradle-plugin", version.ref = "secretsGradlePlugin" } ui = { group = "androidx.compose.ui", name = "ui" } ui-graphics = { group = "androidx.compose.ui", name = "ui-graphics" }