From e4447129c1294271a127cd1899ff7d6597023eab Mon Sep 17 00:00:00 2001 From: joshua-livefront <139182194+joshua-livefront@users.noreply.github.com> Date: Wed, 4 Oct 2023 14:51:49 -0400 Subject: [PATCH] BIT-730: Refactor Generator Screen Navigation (#94) --- .../VaultUnlockedNavBarScreen.kt | 33 ++----------------- .../feature/generator/GeneratorNavigation.kt | 27 +++++++++++++++ 2 files changed, 30 insertions(+), 30 deletions(-) create mode 100644 app/src/main/java/com/x8bit/bitwarden/ui/tools/feature/generator/GeneratorNavigation.kt diff --git a/app/src/main/java/com/x8bit/bitwarden/ui/platform/feature/vaultunlockednavbar/VaultUnlockedNavBarScreen.kt b/app/src/main/java/com/x8bit/bitwarden/ui/platform/feature/vaultunlockednavbar/VaultUnlockedNavBarScreen.kt index 6d6d01edde..76b90920d8 100644 --- a/app/src/main/java/com/x8bit/bitwarden/ui/platform/feature/vaultunlockednavbar/VaultUnlockedNavBarScreen.kt +++ b/app/src/main/java/com/x8bit/bitwarden/ui/platform/feature/vaultunlockednavbar/VaultUnlockedNavBarScreen.kt @@ -28,7 +28,9 @@ import androidx.navigation.navOptions import com.x8bit.bitwarden.R import com.x8bit.bitwarden.ui.platform.base.util.EventsEffect import com.x8bit.bitwarden.ui.platform.components.PlaceholderComposable -import com.x8bit.bitwarden.ui.tools.feature.generator.GeneratorScreen +import com.x8bit.bitwarden.ui.tools.feature.generator.GENERATOR_ROUTE +import com.x8bit.bitwarden.ui.tools.feature.generator.generatorDestination +import com.x8bit.bitwarden.ui.tools.feature.generator.navigateToGenerator import com.x8bit.bitwarden.ui.vault.feature.vault.VAULT_ROUTE import com.x8bit.bitwarden.ui.vault.feature.vault.navigateToVault import com.x8bit.bitwarden.ui.vault.feature.vault.vaultDestination @@ -271,35 +273,6 @@ private fun NavController.vaultUnlockedNavBarScreenNavOptions(): NavOptions = * For an example of how to setup these nav extensions, see NIA project. */ -// #region Generator -/** - * TODO: move to generator package (BIT-148) - */ -private const val GENERATOR_ROUTE = "generator" - -/** - * Add generator destination to the nav graph. - * - * TODO: move to generator package (BIT-148) - */ -private fun NavGraphBuilder.generatorDestination() { - composable(GENERATOR_ROUTE) { - GeneratorScreen() - } -} - -/** - * Navigate to the generator screen. Note this will only work if generator screen was added - * via [generatorDestination]. - * - * TODO: move to generator package (BIT-148) - * - */ -private fun NavController.navigateToGenerator(navOptions: NavOptions? = null) { - navigate(GENERATOR_ROUTE, navOptions) -} -// #endregion Generator - // #region Send /** * TODO: move to send package (BIT-149) diff --git a/app/src/main/java/com/x8bit/bitwarden/ui/tools/feature/generator/GeneratorNavigation.kt b/app/src/main/java/com/x8bit/bitwarden/ui/tools/feature/generator/GeneratorNavigation.kt new file mode 100644 index 0000000000..123d769bd6 --- /dev/null +++ b/app/src/main/java/com/x8bit/bitwarden/ui/tools/feature/generator/GeneratorNavigation.kt @@ -0,0 +1,27 @@ +package com.x8bit.bitwarden.ui.tools.feature.generator + +import androidx.navigation.NavController +import androidx.navigation.NavGraphBuilder +import androidx.navigation.NavOptions +import androidx.navigation.compose.composable + +/** + * The functions below pertain to entry into the [GeneratorScreen]. + */ +const val GENERATOR_ROUTE: String = "generator" + +/** + * Navigate to the [GeneratorScreen]. + */ +fun NavController.navigateToGenerator(navOptions: NavOptions? = null) { + navigate(GENERATOR_ROUTE, navOptions) +} + +/** + * Add generator destination to the root nav graph. + */ +fun NavGraphBuilder.generatorDestination() { + composable(GENERATOR_ROUTE) { + GeneratorScreen() + } +}