import { DarkTheme, ThemeProvider } from '@react-navigation/native'; import { createDrawerNavigator } from '@react-navigation/drawer'; import { createNativeStackNavigator } from '@react-navigation/native-stack'; import { useFonts } from 'expo-font'; import { Stack } from 'expo-router'; import { StatusBar } from 'expo-status-bar'; import 'react-native-reanimated'; import { MD3LightTheme as DefaultTheme, PaperProvider } from 'react-native-paper'; import { useColorScheme } from '@/hooks/useColorScheme'; import SettingsScreen from './SettingsScreen'; import { IconSymbol } from '@/components/ui/IconSymbol'; import { TouchableOpacity } from 'react-native'; import { Colors } from '@/constants/Colors'; import NullComponent from '@/components/NullComponent'; const Drawer = createDrawerNavigator(); const RootStack = createNativeStackNavigator(); function TabsNavigator() { return ( ); } function DrawerNavigator() { return ( ({ title: 'Settings', headerShown: false, drawerLabel: 'Settings', drawerIcon: ({ color }) => ( ), })} listeners={({ navigation }) => ({ drawerItemPress: (e) => { e.preventDefault(); // Navigate to the Settings screen in the root stack navigation.getParent()?.navigate('Settings'); navigation.dispatch({ type: 'CLOSE_DRAWER' }); }, })} /> ); } const theme = { ...DefaultTheme, colors: { ...DefaultTheme.colors, primary: Colors.light.tint, background: Colors.light.background, text: Colors.light.text, placeholder: Colors.light.tabIconDefault, icon: Colors.light.icon, }, }; export default function RootLayout() { const colorScheme = useColorScheme(); const [loaded] = useFonts({ SpaceMono: require('../assets/fonts/SpaceMono-Regular.ttf'), }); if (!loaded) { return null; } return ( ({ headerBackVisible: false, gestureEnabled: false, headerTitle: 'Settings', headerLeft: () => ( { navigation.goBack() }} style={{ marginRight: 15, }} > ), })} /> ); }