import React, { useEffect } from "react"; import { Restart } from "fiction-expo-restart"; import { I18nManager } from "react-native"; import * as Linking from "expo-linking"; import Svg, { G, Path } from "react-native-svg"; import { NavigationContainer } from "@react-navigation/native"; import { createNativeStackNavigator } from "@react-navigation/native-stack"; import { createBottomTabNavigator } from "@react-navigation/bottom-tabs"; import { connect } from "react-redux"; import { user, publicApi } from "../src/redux/actions"; //components import OrderDetails from "../src/screens/OrderDetails"; import OrdersFollowUp from "../src/screens/OrdersFollowUp"; import Splash from "../src/screens/Splash"; import Home from "../src/screens/Home"; import Products from "../src/screens/Products"; import Login from "../src/screens/Login"; import Otp from "../src/screens/Otp"; import Product from "../src/screens/Product"; import AR from "../src/screens/AR"; import QR from "../src/screens/QR"; import QRContent from "../src/screens/QRContent"; import Faq from "../src/screens/Faq"; import Activation from "../src/screens/Activation"; import Videos from "../src/screens/Videos"; import Video from "../src/screens/Video"; import VideoDisplay from "../src/screens/VideoDisplay"; import Contact from "../src/screens/Contact"; import Tests from "../src/screens/Tests"; import ShoppingCart from "../src/screens/ShoppingCart"; import DeliveryForm from "../src/screens/DeliveryForm"; import Address from "../src/screens/Address"; import Profile from "../src/screens/Profile"; import ProfileBookmark from "../src/screens/Profile/components/ProfileBookmark"; import ProfileAddress from "../src/screens/Profile/components/ProfileAddress"; import Blogs from "../src/screens/Blogs"; import Blog from "../src/screens/Blog"; import Sample from "../src/screens/Product/components/Sample"; import Info from "../src/screens/Product/components/Info"; import Rules from "../src/screens/Rules/index"; import MyCourses from "../src/screens/Profile/components/MyCourses"; import Ticket from "../src/screens/Contact/layouts/Ticket"; import Tickets from "../src/screens/Contact/layouts/Tickets"; //style import Colors from "../src/constants/Colors"; const Tab = createBottomTabNavigator(); const BottomTabNavigator = ({}) => { const [headerShown, setHeaderShown] = React.useState(true); React.useEffect(() => { setTimeout(() => { setHeaderShown(false); }, 600); }, []); return ( focused ? ( ) : ( ), }} /> focused ? ( ) : ( ), }} /> focused ? ( ) : ( ), }} /> focused ? ( ) : ( ), }} /> focused ? ( ) : ( ), contentStyle: { backgroundColor: "white", }, }} /> ); }; const HomeStack = createNativeStackNavigator(); const HomeStackScreen = () => { return ( ); }; const ProductsStack = createNativeStackNavigator(); const ProductsStackScreen = () => { return ( ); }; const VODStack = createNativeStackNavigator(); const VODStackScreen = () => { return ( ); }; const CARTStack = createNativeStackNavigator(); const CARTStackScreen = () => { return ( ); }; const PROFILEStack = createNativeStackNavigator(); const PROFILEStackScreen = () => { return ( ); }; const prefix = Linking.createURL("/"); const Stack = createNativeStackNavigator(); const Navigation = ({ getStatus, isLogin, userProducts, ltr, setLTR }) => { const linking = { prefixes: [prefix], }; const setDirection = async () => { setLTR(); await I18nManager.allowRTL(false); }; useEffect(() => { if (I18nManager.isRTL && !ltr) { setDirection(); Restart(); } getStatus(); }, []); return ( ); }; const mapStateToProps = (state) => ({ isLogin: state.user.status, userProducts: state.userProduct.list, theme: state.publicApi.theme, ltr: state.publicApi.ltr, }); const mapDispatchToProps = { getStatus: user.getStatus, setLTR: publicApi.setLTR, }; export default connect(mapStateToProps, mapDispatchToProps)(Navigation);