12345678910111213141516171819202122232425262728293031323334353637383940414243 |
- package com.fastest.pass.signup.utils
- import androidx.lifecycle.lifecycleScope
- import androidx.navigation.fragment.findNavController
- import androidx.navigation.navOptions
- import com.fastest.pass.R
- import com.fastest.pass.signup.presentation.ui.SignUpFragment
- class SignUpNavigation {
- fun navigate(signUpFragment: SignUpFragment) {
- signUpFragment.lifecycleScope.launchWhenStarted {
- signUpFragment.viewmodel.router.collect { router ->
- when (router) {
- SignUpRoute.GoBack -> {
- signUpFragment.findNavController().popBackStack()
- }
- SignUpRoute.OpenNoneScreen -> {}
- SignUpRoute.OpenMasterSignupScreen -> {
- signUpFragment.findNavController().navigate(R.id.masterSignupFragment)
- }
- SignUpRoute.OpenLoginScreen -> {
- signUpFragment.findNavController().navigate(R.id.loginFragment)
- }
- SignUpRoute.OpenDashBoardScreen -> {
- signUpFragment.findNavController().navigate(
- R.id.dashboardFragment,
- null,
- navOptions {
- popUpTo(signUpFragment.findNavController().graph.id) {
- inclusive = true
- }
- launchSingleTop = true
- }
- )
- }
- }
- signUpFragment.viewmodel.navigateTo(SignUpRoute.OpenNoneScreen)
- }
- }
- }
- }
|