Grapevine_Disease_Detection/VinEye/App.tsx
Yanis 28d4fc176e chore(i18n,ui): keys for home/map/scan-detail + minor polish
i18n FR + EN :
- home.recentScans : 'Mes plantes récentes' / 'My recent plants'
- map.preview.{title,tapHint}
- myPlants.detail.rename{Title,Subtitle,Placeholder,Save}
- myPlants.toasts.renamed

App.tsx : retire NavigationBar.setBackgroundColorAsync + setPositionAsync
(navigation bar déjà bien gérée par expo-navigation-bar par défaut).

BottomTabNavigator + SettingsScreen : petits ajustements layout.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-01 00:03:55 +02:00

37 lines
1.2 KiB
TypeScript

import 'react-native-gesture-handler';
import './global.css';
import { useEffect } from 'react';
import { Platform } from 'react-native';
import { StatusBar } from 'expo-status-bar';
import * as NavigationBar from 'expo-navigation-bar';
import { GestureHandlerRootView } from 'react-native-gesture-handler';
import { SafeAreaProvider } from 'react-native-safe-area-context';
import { Toaster } from 'sonner-native';
import { PortalHost } from '@rn-primitives/portal';
import { NetworkProvider } from '@/contexts/NetworkContext';
import { NetworkToastWatcher } from '@/contexts/ToastContext';
import RootNavigator from '@/navigation/RootNavigator';
export default function App() {
useEffect(() => {
if (Platform.OS === 'android') {
NavigationBar.setButtonStyleAsync('dark');
}
}, []);
return (
<GestureHandlerRootView style={{ flex: 1 }}>
<SafeAreaProvider>
<NetworkProvider>
<NetworkToastWatcher>
<StatusBar style="dark" translucent backgroundColor="transparent" />
<RootNavigator />
<PortalHost />
<Toaster position="bottom-center" offset={120} />
</NetworkToastWatcher>
</NetworkProvider>
</SafeAreaProvider>
</GestureHandlerRootView>
);
}