mirror of
https://github.com/Memo-2023/mana-monorepo.git
synced 2026-05-14 20:01:09 +02:00
- Restructure to apps/reader/apps/mobile/ pattern - Rename package to @reader/mobile - Add reader:dev and dev:reader:mobile scripts - Update CLAUDE.md with monorepo commands - Remove standalone .git repository - Convert from npm to pnpm 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
35 lines
849 B
TypeScript
35 lines
849 B
TypeScript
// Polyfill for structuredClone (not available in React Native 0.79.5)
|
|
import '../global.css';
|
|
|
|
import { Stack, router } from 'expo-router';
|
|
import { useAuth } from '~/hooks/useAuth';
|
|
import { useEffect } from 'react';
|
|
|
|
if (typeof globalThis.structuredClone === 'undefined') {
|
|
globalThis.structuredClone = (obj: any) => JSON.parse(JSON.stringify(obj));
|
|
}
|
|
|
|
export const unstable_settings = {
|
|
initialRouteName: '(tabs)',
|
|
};
|
|
|
|
export default function RootLayout() {
|
|
const { user, loading } = useAuth();
|
|
|
|
useEffect(() => {
|
|
if (!loading) {
|
|
if (user) {
|
|
router.replace('/(tabs)');
|
|
} else {
|
|
router.replace('/(auth)/login');
|
|
}
|
|
}
|
|
}, [user, loading]);
|
|
|
|
return (
|
|
<Stack screenOptions={{ headerShown: false }}>
|
|
<Stack.Screen name="(auth)" />
|
|
<Stack.Screen name="(tabs)" />
|
|
</Stack>
|
|
);
|
|
}
|