import FontAwesome from "@expo/vector-icons/FontAwesome";
import {DarkTheme, DefaultTheme, ThemeProvider} from "@react-navigation/native";
import {useFonts} from "expo-font";
import {Stack} from "expo-router";
import * as SplashScreen from "expo-splash-screen";
import {useEffect} from "react";
import "react-native-reanimated";
import {baseUrl, useSelectCurrentUserId} from "@terreno/rtk";
import {TerrenoProvider} from "@terreno/ui";
import {Provider} from "react-redux";
import {PersistGate} from "redux-persist/integration/react";
import {useColorScheme} from "@/components/useColorScheme";
import store, {persistor} from "@/store/index";
export {ErrorBoundary} from "expo-router";
export const unstable_settings = {
initialRouteName: "(tabs)",
};
SplashScreen.preventAutoHideAsync();
export default function RootLayout(): React.ReactElement | null {
const [loaded, error] = useFonts({
SpaceMono: require("../assets/fonts/SpaceMono-Regular.ttf"),
...FontAwesome.font,
});
useEffect(() => {
if (error) {
throw error;
}
}, [error]);
useEffect(() => {
if (loaded) {
SplashScreen.hideAsync();
}
}, [loaded]);
if (!loaded) {
return null;
}
return (
);
}
function RootLayoutNav(): React.ReactElement {
const colorScheme = useColorScheme();
const userId = useSelectCurrentUserId();
return (
{!userId ? (
) : (
)}
);
}