Files
2025-11-09 16:23:27 +00:00

62 lines
2.8 KiB
TypeScript

import React, { useEffect } from 'react';
import { StatusBar } from 'expo-status-bar';
import { NavigationContainer } from '@react-navigation/native';
import { createNativeStackNavigator } from '@react-navigation/native-stack';
import { AuthProvider } from './src/contexts/AuthContext';
import { ThemeProvider, useTheme } from './src/contexts/ThemeContext';
import { LanguageProvider } from './src/contexts/LanguageContext';
import LanguageScreen from './src/screens/LanguageScreen';
import HumanVerificationScreen from './src/screens/HumanVerificationScreen';
import AuthScreen from './src/screens/AuthScreen';
import HomeScreen from './src/screens/HomeScreen';
import NotificationsScreen from './src/screens/NotificationsScreen';
import SettingsScreen from './src/screens/SettingsScreen';
import QRScannerScreen from './src/screens/QRScannerScreen';
import EditProfileScreen from './src/screens/EditProfileScreen';
import ChangePasswordScreen from './src/screens/ChangePasswordScreen';
import TermsScreen from './src/screens/TermsScreen';
import PrivacyScreen from './src/screens/PrivacyScreen';
import HelpScreen from './src/screens/HelpScreen';
import WalletAddressScreen from './src/screens/WalletAddressScreen';
import LanguageSettingsScreen from './src/screens/LanguageSettingsScreen';
const Stack = createNativeStackNavigator();
function AppContent() {
const { isDarkMode } = useTheme();
return (
<AuthProvider>
<NavigationContainer>
<StatusBar style={isDarkMode ? 'light' : 'dark'} />
<Stack.Navigator screenOptions={{ headerShown: false }}>
<Stack.Screen name="Language" component={LanguageScreen} />
<Stack.Screen name="HumanVerification" component={HumanVerificationScreen} />
<Stack.Screen name="Auth" component={AuthScreen} />
<Stack.Screen name="Home" component={HomeScreen} />
<Stack.Screen name="Notifications" component={NotificationsScreen} />
<Stack.Screen name="Settings" component={SettingsScreen} />
<Stack.Screen name="QRScanner" component={QRScannerScreen} />
<Stack.Screen name="EditProfile" component={EditProfileScreen} />
<Stack.Screen name="ChangePassword" component={ChangePasswordScreen} />
<Stack.Screen name="Terms" component={TermsScreen} />
<Stack.Screen name="Privacy" component={PrivacyScreen} />
<Stack.Screen name="Help" component={HelpScreen} />
<Stack.Screen name="WalletAddress" component={WalletAddressScreen} />
<Stack.Screen name="LanguageSettings" component={LanguageSettingsScreen} />
</Stack.Navigator>
</NavigationContainer>
</AuthProvider>
);
}
export default function App() {
return (
<LanguageProvider>
<ThemeProvider>
<AppContent />
</ThemeProvider>
</LanguageProvider>
);
}