Files
jumpstart/app/_layout.tsx
2026-01-03 16:04:07 -05:00

42 lines
1.0 KiB
TypeScript

import { StatusBar } from "expo-status-bar";
import { AuthProvider, useAuth } from "../src/context/AuthContext";
import { useEffect } from "react";
import { Stack, useRouter } from "expo-router";
function RootStack() {
const router = useRouter();
const { isAuthenticated, isLoading } = useAuth();
useEffect(() => {
if (!isLoading) {
if (isAuthenticated) {
router.replace('/(tabs)');
} else {
router.replace('/login');
}
}
}, [isAuthenticated, isLoading, router]);
return (
<Stack>
{isAuthenticated ? (
<Stack.Screen name="(tabs)" options={{ headerShown: false }} />
) : (
<Stack.Screen name="login" options={{ headerShown: false }} />
)}
<Stack.Screen name="add-device" options={{ headerShown: false }} />
<Stack.Screen name="scan-devices" options={{ headerShown: false }} />
<Stack.Screen name="devices/[id]" />
</Stack>
);
}
export default function RootLayout() {
return (
<AuthProvider>
<RootStack />
<StatusBar style="auto" />
</AuthProvider>
);
}