_layout.tsx 1.3 KB

123456789101112131415161718192021222324252627282930313233
  1. import { DarkTheme, DefaultTheme, ThemeProvider } from '@react-navigation/native';
  2. import { Stack } from 'expo-router';
  3. import { StatusBar } from 'expo-status-bar';
  4. import 'react-native-reanimated';
  5. import { AuthProvider } from '@/contexts/AuthContext';
  6. import { useColorScheme } from '@/hooks/use-color-scheme';
  7. export const unstable_settings = {
  8. anchor: '(tabs)',
  9. };
  10. export default function RootLayout() {
  11. const colorScheme = useColorScheme();
  12. return (
  13. <AuthProvider>
  14. <ThemeProvider value={colorScheme === 'dark' ? DarkTheme : DefaultTheme}>
  15. <Stack>
  16. <Stack.Screen name="(tabs)" options={{ headerShown: false }} />
  17. <Stack.Screen name="login" options={{ headerShown: false }} />
  18. <Stack.Screen name="product/[id]" options={{ headerShown: false }} />
  19. <Stack.Screen name="address/index" options={{ headerShown: false }} />
  20. <Stack.Screen name="address/edit" options={{ headerShown: false }} />
  21. <Stack.Screen name="orders/index" options={{ headerShown: false }} />
  22. <Stack.Screen name="orders/[tradeNo]" options={{ headerShown: false }} />
  23. <Stack.Screen name="modal" options={{ presentation: 'modal', title: 'Modal' }} />
  24. </Stack>
  25. <StatusBar style="auto" />
  26. </ThemeProvider>
  27. </AuthProvider>
  28. );
  29. }