import { crypto } from '@chat-app/shared'; import { Stack } from 'expo-router'; import { StatusBar } from 'expo-status-bar'; import { GestureHandlerRootView } from 'react-native-gesture-handler'; import { SafeAreaProvider } from 'react-native-safe-area-context'; import { ErrorBoundary } from '../components/ErrorBoundary'; import { AuthProvider } from '../lib/authContext'; import { createLibsodiumBackend } from '../lib/cryptoBackend'; // Register the crypto backend exactly once, before any code that calls // crypto.getCryptoBackend(). Doing it at module load (not inside the // component) avoids a race where a child component renders before the // effect fires. crypto.setCryptoBackend(createLibsodiumBackend()); export default function RootLayout() { return ( ); }