42 lines
902 B
TypeScript
42 lines
902 B
TypeScript
import { Redirect } from 'expo-router';
|
|
import { ActivityIndicator, StyleSheet, Text, View } from 'react-native';
|
|
|
|
import { useAuth } from '@/src/providers/auth-provider';
|
|
|
|
export default function IndexScreen() {
|
|
const { isBootstrapping, token, requiresTenantSelection } = useAuth();
|
|
|
|
if (isBootstrapping) {
|
|
return (
|
|
<View style={styles.centered}>
|
|
<ActivityIndicator size="large" />
|
|
<Text style={styles.copy}>Initialisiere mobile Session...</Text>
|
|
</View>
|
|
);
|
|
}
|
|
|
|
if (!token) {
|
|
return <Redirect href="/login" />;
|
|
}
|
|
|
|
if (requiresTenantSelection) {
|
|
return <Redirect href="/tenant-select" />;
|
|
}
|
|
|
|
return <Redirect href="/(tabs)" />;
|
|
}
|
|
|
|
const styles = StyleSheet.create({
|
|
centered: {
|
|
flex: 1,
|
|
alignItems: 'center',
|
|
justifyContent: 'center',
|
|
gap: 12,
|
|
padding: 24,
|
|
},
|
|
copy: {
|
|
fontSize: 14,
|
|
color: '#4b5563',
|
|
},
|
|
});
|