From d82d219b37f24bfde6b5df27f1b1f7086b5cf5e4 Mon Sep 17 00:00:00 2001 From: Jaehwa Noh Date: Sun, 18 Jan 2026 22:48:33 +0900 Subject: [PATCH] Create :navigation module. Change-Id: I0c3c5ced03d6d26fcdaaaa00f7df75682cec83dc --- navigation/.gitignore | 1 + navigation/build.gradle.kts | 40 +++++++++++++++++++++++++ navigation/consumer-rules.pro | 0 navigation/proguard-rules.pro | 21 +++++++++++++ navigation/src/main/AndroidManifest.xml | 19 ++++++++++++ settings.gradle.kts | 1 + 6 files changed, 82 insertions(+) create mode 100644 navigation/.gitignore create mode 100644 navigation/build.gradle.kts create mode 100644 navigation/consumer-rules.pro create mode 100644 navigation/proguard-rules.pro create mode 100644 navigation/src/main/AndroidManifest.xml diff --git a/navigation/.gitignore b/navigation/.gitignore new file mode 100644 index 000000000..796b96d1c --- /dev/null +++ b/navigation/.gitignore @@ -0,0 +1 @@ +/build diff --git a/navigation/build.gradle.kts b/navigation/build.gradle.kts new file mode 100644 index 000000000..76e0587dd --- /dev/null +++ b/navigation/build.gradle.kts @@ -0,0 +1,40 @@ +/* + * Copyright 2026 The Android Open Source Project + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * https://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +plugins { + alias(libs.plugins.nowinandroid.android.library) + alias(libs.plugins.nowinandroid.android.library.compose) + alias(libs.plugins.nowinandroid.hilt) +} + +android { + namespace = "com.google.samples.apps.nowinandroid.navigation" +} + +dependencies { + implementation(projects.core.designsystem) + implementation(projects.core.model) + implementation(projects.core.navigation) + implementation(projects.feature.bookmarks) + implementation(projects.feature.foryou) + implementation(projects.feature.interests) + implementation(projects.feature.search) + implementation(projects.feature.settings) + implementation(projects.feature.topic) + + implementation(libs.androidx.compose.material3.adaptive.navigation3) + implementation(libs.androidx.navigation3.runtime) + implementation(libs.androidx.hilt.lifecycle.viewModelCompose) +} diff --git a/navigation/consumer-rules.pro b/navigation/consumer-rules.pro new file mode 100644 index 000000000..e69de29bb diff --git a/navigation/proguard-rules.pro b/navigation/proguard-rules.pro new file mode 100644 index 000000000..f1b424510 --- /dev/null +++ b/navigation/proguard-rules.pro @@ -0,0 +1,21 @@ +# Add project specific ProGuard rules here. +# You can control the set of applied configuration files using the +# proguardFiles setting in build.gradle. +# +# For more details, see +# http://developer.android.com/guide/developing/tools/proguard.html + +# If your project uses WebView with JS, uncomment the following +# and specify the fully qualified class name to the JavaScript interface +# class: +#-keepclassmembers class fqcn.of.javascript.interface.for.webview { +# public *; +#} + +# Uncomment this to preserve the line number information for +# debugging stack traces. +#-keepattributes SourceFile,LineNumberTable + +# If you keep the line number information, uncomment this to +# hide the original source file name. +#-renamesourcefileattribute SourceFile diff --git a/navigation/src/main/AndroidManifest.xml b/navigation/src/main/AndroidManifest.xml new file mode 100644 index 000000000..bea660c36 --- /dev/null +++ b/navigation/src/main/AndroidManifest.xml @@ -0,0 +1,19 @@ + + + + + diff --git a/settings.gradle.kts b/settings.gradle.kts index b5c389629..e2a761e14 100644 --- a/settings.gradle.kts +++ b/settings.gradle.kts @@ -48,6 +48,7 @@ enableFeaturePreview("TYPESAFE_PROJECT_ACCESSORS") include(":app") include(":app-nia-catalog") include(":benchmarks") +include(":navigation") include(":core:analytics") include(":core:common") include(":core:data")