59 lines
2.4 KiB
TypeScript
59 lines
2.4 KiB
TypeScript
import { View, ScrollView, Pressable } from 'react-native';
|
|
import { router } from 'expo-router';
|
|
import { Text } from '@/components/ui/text';
|
|
import { Button } from '@/components/ui/button';
|
|
import { Card, CardContent, CardHeader, CardTitle } from '@/components/ui/card';
|
|
import { MOCK_USER } from '@/lib/mock-data';
|
|
|
|
export default function ProfileScreen() {
|
|
return (
|
|
<ScrollView className="flex-1 bg-background" contentContainerStyle={{ padding: 16, paddingBottom: 32 }}>
|
|
<View className="mb-6 items-center">
|
|
<View className="mb-3 h-20 w-20 items-center justify-center rounded-full bg-primary">
|
|
<Text className="text-3xl font-bold text-primary-foreground">{MOCK_USER.name[0]}</Text>
|
|
</View>
|
|
<Text className="text-xl font-semibold text-gray-900">{MOCK_USER.name}</Text>
|
|
<Text className="text-muted-foreground text-sm">{MOCK_USER.email}</Text>
|
|
</View>
|
|
|
|
<Card className="mb-4">
|
|
<CardHeader>
|
|
<CardTitle>Account</CardTitle>
|
|
</CardHeader>
|
|
<CardContent className="gap-2">
|
|
<View className="flex-row justify-between py-2">
|
|
<Text className="text-muted-foreground">Email</Text>
|
|
<Text className="text-gray-900">{MOCK_USER.email}</Text>
|
|
</View>
|
|
<View className="flex-row justify-between py-2">
|
|
<Text className="text-muted-foreground">Language</Text>
|
|
<Text className="text-gray-900">English</Text>
|
|
</View>
|
|
<Pressable onPress={() => router.push('/notifications')} className="flex-row justify-between py-2">
|
|
<Text className="text-muted-foreground">Notifications</Text>
|
|
<Text className="text-primary font-medium">Manage</Text>
|
|
</Pressable>
|
|
</CardContent>
|
|
</Card>
|
|
|
|
<Card className="mb-4">
|
|
<CardHeader>
|
|
<CardTitle>About</CardTitle>
|
|
</CardHeader>
|
|
<CardContent>
|
|
<Text className="text-muted-foreground text-sm">
|
|
Yaltopia Tickets App — Scan. Send. Reconcile. Companion to the Yaltopia Tickets web app.
|
|
</Text>
|
|
</CardContent>
|
|
</Card>
|
|
|
|
<Button variant="outline" className="mt-2" onPress={() => router.push('/login')}>
|
|
<Text className="font-medium">Sign in (different account)</Text>
|
|
</Button>
|
|
<Button variant="destructive" className="mt-2">
|
|
<Text className="font-medium">Log out</Text>
|
|
</Button>
|
|
</ScrollView>
|
|
);
|
|
}
|