Commit 45193e6d by G

renaming, refactoring a good bit the navigation system

parent 9d4c6ff4
import { Entypo } from "@expo/vector-icons"; import { Entypo, FontAwesome, Ionicons } from "@expo/vector-icons";
import { FontAwesome } from "@expo/vector-icons";
import { Ionicons } from "@expo/vector-icons";
import { createBottomTabNavigator } from "@react-navigation/bottom-tabs"; import { createBottomTabNavigator } from "@react-navigation/bottom-tabs";
import { useTheme } from "@shopify/restyle"; import { useTheme } from "@shopify/restyle";
// import palette // import palette
...@@ -10,7 +8,7 @@ import Text from "../components/bases/Text"; ...@@ -10,7 +8,7 @@ import Text from "../components/bases/Text";
import PaymentStackNavigator from "./PaymentStackNavigation"; import PaymentStackNavigator from "./PaymentStackNavigation";
const Tab = createBottomTabNavigator(); const Tab = createBottomTabNavigator();
export const BottomTabs = () => { export const AppBottomTabsNavigator = () => {
const theme = useTheme<Theme>(); const theme = useTheme<Theme>();
return ( return (
......
import { createNativeStackNavigator } from "@react-navigation/native-stack"; import { createNativeStackNavigator } from "@react-navigation/native-stack";
import HomeUserNotLoggedIn from "@screens/HomeUserNotLoggedIn"; import HomeUserNotLoggedIn from "@screens/HomeUserNotLoggedIn";
import UserLoginScreen from "@screens/UserLoginScreen"; import UserLoginScreen from "@screens/UserLoginScreen";
import { BottomTabs } from "./BottomTabs"; import { AppBottomTabsNavigator } from "./AppBottomTabsNavigator";
import type { UnloggedUserStackParamList } from "./Types"; import type { ImainStackNavigator } from "./Types";
const Stack = createNativeStackNavigator<UnloggedUserStackParamList>(); const Stack = createNativeStackNavigator<ImainStackNavigator>();
const UnloggedUserStackNavigation = () => { const AppMainStackNavigator = () => {
return ( return (
<Stack.Navigator <Stack.Navigator
initialRouteName="homeUserNotLoggedIn" initialRouteName="homeUserNotLoggedIn"
...@@ -14,9 +14,9 @@ const UnloggedUserStackNavigation = () => { ...@@ -14,9 +14,9 @@ const UnloggedUserStackNavigation = () => {
> >
<Stack.Screen name="homeUserNotLoggedIn" component={HomeUserNotLoggedIn} /> <Stack.Screen name="homeUserNotLoggedIn" component={HomeUserNotLoggedIn} />
<Stack.Screen name="userLoginScreen" component={UserLoginScreen} /> <Stack.Screen name="userLoginScreen" component={UserLoginScreen} />
<Stack.Screen name="bottomTabs" component={BottomTabs} /> <Stack.Screen name="appBottomTabsNavigator" component={AppBottomTabsNavigator} />
</Stack.Navigator> </Stack.Navigator>
); );
}; };
export default UnloggedUserStackNavigation; export default AppMainStackNavigator;
import { useUserAuthenticationContext } from "@/contexts/UserAuthenticationContext"; import { useUserAuthenticationContext } from "@/contexts/UserAuthenticationContext";
import UnloggedUserStackNavigation from "./UnloggedUserStackNavigation"; import AppMainStackNavigator from "./AppMainStackNavigator";
const InitialNavigationHandler = () => { const InitialNavigationHandler = () => {
const { isAuthenticated } = useUserAuthenticationContext(); const { isAuthenticated } = useUserAuthenticationContext();
console.log("isAuthenticated", isAuthenticated); console.log("isAuthenticated", isAuthenticated);
return <UnloggedUserStackNavigation />; return <AppMainStackNavigator />;
}; };
export default InitialNavigationHandler; export default InitialNavigationHandler;
...@@ -3,9 +3,9 @@ import HomePageWithPaymentOptions from "@screens/HomePageWithPaymentOptions"; ...@@ -3,9 +3,9 @@ import HomePageWithPaymentOptions from "@screens/HomePageWithPaymentOptions";
import NumberAndOtpForPaymentScreen from "@screens/NumberAndOtpForPaymentScreen"; import NumberAndOtpForPaymentScreen from "@screens/NumberAndOtpForPaymentScreen";
import PaymentAmountInputScreen from "@screens/PaymentAmountInputScreen"; import PaymentAmountInputScreen from "@screens/PaymentAmountInputScreen";
import PaymentResultScreen from "@screens/PaymentResultScreen"; import PaymentResultScreen from "@screens/PaymentResultScreen";
import type { PaymentStackParamList } from "./Types"; import type { IpaymentStackNavigator } from "./Types";
const Stack = createNativeStackNavigator<PaymentStackParamList>(); const Stack = createNativeStackNavigator<IpaymentStackNavigator>();
const PaymentStackNavigator = () => { const PaymentStackNavigator = () => {
return ( return (
......
import type { PaymentCode } from "@/utils/requests/Types"; import type { PaymentCode } from "@/utils/requests/Types";
import type { NativeStackScreenProps } from "@react-navigation/native-stack"; import type { NativeStackScreenProps } from "@react-navigation/native-stack";
export type PaymentStackParamList = { export type IpaymentStackNavigator = {
homePageWithPaymentOptions: undefined; homePageWithPaymentOptions: undefined;
numberAndOtpForPaymentScreen: undefined; numberAndOtpForPaymentScreen: undefined;
paymentAmountInputScreen: { paymentAmountInputScreen: {
paymentType: PaymentCode; paymentType: PaymentCode;
}; };
homeUserNotLoggedIn: undefined; // homeUserNotLoggedIn: undefined;
userLoginScreen: undefined; // userLoginScreen: undefined;
paymentResultScreen: undefined; paymentResultScreen: undefined;
}; };
export type PaymentStackScreenProps<T extends keyof PaymentStackParamList> = NativeStackScreenProps< export type PaymentStackScreenProps<T extends keyof IpaymentStackNavigator> =
PaymentStackParamList, NativeStackScreenProps<IpaymentStackNavigator, T, "IpaymentStackNavigator">;
T,
"PaymentStackParamList"
>;
export type PaymentStackScreenComponentProps<T extends keyof PaymentStackParamList> = React.FC< export type PaymentStackScreenComponentProps<T extends keyof IpaymentStackNavigator> = React.FC<
PaymentStackScreenProps<T> PaymentStackScreenProps<T>
>; >;
export type UnloggedUserStackParamList = { export type ImainStackNavigator = {
homeUserNotLoggedIn: undefined; homeUserNotLoggedIn: undefined;
userLoginScreen: undefined; userLoginScreen: undefined;
bottomTabs: undefined; appBottomTabsNavigator: undefined;
}; };
export type UnloggedUserStackScreenProps<T extends keyof UnloggedUserStackParamList> = export type UnloggedUserStackScreenProps<T extends keyof ImainStackNavigator> =
NativeStackScreenProps<UnloggedUserStackParamList, T, "UnloggedUserStackParamList">; NativeStackScreenProps<ImainStackNavigator, T, "ImainStackNavigator">;
export type UnloggedUserStackScreenComponentProps<T extends keyof UnloggedUserStackParamList> = export type UnloggedUserStackScreenComponentProps<T extends keyof ImainStackNavigator> = React.FC<
React.FC<UnloggedUserStackScreenProps<T>>; UnloggedUserStackScreenProps<T>
>;
...@@ -10,7 +10,7 @@ const HomeUserNotLoggedIn: UnloggedUserStackScreenComponentProps<"homeUserNotLog ...@@ -10,7 +10,7 @@ const HomeUserNotLoggedIn: UnloggedUserStackScreenComponentProps<"homeUserNotLog
const { isAuthenticated } = useUserAuthenticationContext(); const { isAuthenticated } = useUserAuthenticationContext();
if (isAuthenticated) { if (isAuthenticated) {
navigation.replace("bottomTabs"); navigation.replace("appBottomTabsNavigator");
} }
return ( return (
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment