40 lines
1.4 KiB
TypeScript
40 lines
1.4 KiB
TypeScript
/*
|
|
* File: AppNavigator.tsx
|
|
* Description: Root navigator switching between Auth and App stacks
|
|
* Design & Developed by Tech4Biz Solutions
|
|
* Copyright (c) Spurrin Innovations. All rights reserved.
|
|
*/
|
|
|
|
import React from 'react';
|
|
import { NavigationContainer } from '@react-navigation/native';
|
|
import { useSelector } from 'react-redux';
|
|
import { selectIsAuthenticated, selectUser } from '../modules/Auth/redux/authSelectors';
|
|
import AuthNavigator from './AuthNavigator';
|
|
import TabNavigator from './TabNavigator';
|
|
import { LoginScreen, SetupBiometricScreen } from '../modules/Auth/screens';
|
|
import { DashboardScreen } from '../modules/Dashboard/screens';
|
|
import ResetPasswordScreen from '../modules/Auth/screens/ResetPasswordScreen';
|
|
|
|
/**
|
|
* AppNavigator - root navigator for the app
|
|
* Shows Auth stack if not authenticated, TabNavigator if authenticated
|
|
*/
|
|
const AppNavigator: React.FC = () => {
|
|
const isAuthenticated = useSelector(selectIsAuthenticated);
|
|
const user=useSelector(selectUser);
|
|
|
|
return (
|
|
<NavigationContainer >
|
|
{isAuthenticated ? user?.onboarded?<TabNavigator />: <ResetPasswordScreen/> : <AuthNavigator />}
|
|
{/* <ResetPasswordScreen/> */}
|
|
</NavigationContainer>
|
|
);
|
|
};
|
|
|
|
export default AppNavigator;
|
|
|
|
/*
|
|
* End of File: AppNavigator.tsx
|
|
* Design & Developed by Tech4Biz Solutions
|
|
* Copyright (c) Spurrin Innovations. All rights reserved.
|
|
*/
|