import "../../global.css"; import { DMSans_400Regular, DMSans_500Medium, DMSans_700Bold, useFonts, } from "@expo-google-fonts/dm-sans"; import Stack from "expo-router/stack"; import { StatusBar, useColorScheme } from "react-native"; import { GestureHandlerRootView } from "react-native-gesture-handler"; import { KeyboardProvider } from "react-native-keyboard-controller"; import { SafeAreaProvider } from "react-native-safe-area-context"; import { useCSSVariable, useResolveClassNames } from "uniwind"; import { LoadingScreen } from "../components/LoadingScreen"; import { useRemoteEnvironmentBootstrap, useRemoteEnvironmentState, } from "../state/use-remote-environment-registry"; import { RegistryContext } from "@effect/atom-react"; import { appAtomRegistry } from "../state/atom-registry"; function AppNavigator() { const { isLoadingSavedConnection } = useRemoteEnvironmentState(); const colorScheme = useColorScheme(); const statusBarBg = useCSSVariable("--color-status-bar"); const sheetStyle = useResolveClassNames("bg-sheet"); const newTaskScreenOptions = { contentStyle: sheetStyle, gestureEnabled: true, headerShown: false, presentation: "formSheet" as const, sheetAllowedDetents: [0.92], sheetGrabberVisible: true, }; const connectionSheetScreenOptions = { contentStyle: sheetStyle, gestureEnabled: true, headerShown: false, presentation: "formSheet" as const, sheetAllowedDetents: [0.55, 0.7], sheetGrabberVisible: true, }; if (isLoadingSavedConnection) { return ; } return ( <> ); } export default function RootLayout() { const [fontsLoaded] = useFonts({ DMSans_400Regular, DMSans_500Medium, DMSans_700Bold, }); useRemoteEnvironmentBootstrap(); return ( {fontsLoaded ? : } ); }