import React from "react"; import { Alert, ScrollView, StyleSheet, Text, TouchableOpacity, View, } from "react-native"; import { useColorScheme } from "../../hooks/use-color-scheme"; import { useAuth } from "../../src/context/AuthContext"; import { useRouter } from "expo-router"; export default function SettingsScreen() { const { user, serverAddress, logout } = useAuth(); const router = useRouter(); const colorScheme = useColorScheme() ?? "light"; const isDark = colorScheme === "dark"; const bgColor = isDark ? "#0b0b0d" : "#f5f5f5"; const sectionBg = isDark ? "#1c1c1e" : "#fff"; const sectionTitleBg = isDark ? "#111111" : "#f9f9f9"; const textColor = isDark ? "#fff" : "#333"; const subTextColor = isDark ? "#c6c6c8" : "#666"; const primary = isDark ? "#0A84FF" : "#007AFF"; const destructiveColor = "#f44336"; const handleLogout = () => { Alert.alert("Logout", "Are you sure you want to logout?", [ { text: "Cancel", style: "cancel" }, { text: "Logout", style: "destructive", onPress: async () => { router.replace("/login"); await logout(); }, }, ]); }; const SettingItem = ({ label, value, onPress, }: { label: string; value?: string; onPress?: () => void; }) => ( {label} {value} ); const ActionButton = ({ title, onPress, destructive = false, }: { title: string; onPress: () => void; destructive?: boolean; }) => ( {title} ); return ( User Information App Info Actions UpSnap Mobile App Connect to your UpSnap server ); } const styles = StyleSheet.create({ container: { flex: 1, backgroundColor: "#f5f5f5", }, content: { padding: 20, }, section: { backgroundColor: "#fff", borderRadius: 12, marginBottom: 20, overflow: "hidden", shadowColor: "#000", shadowOffset: { width: 0, height: 2 }, shadowOpacity: 0.1, shadowRadius: 4, elevation: 3, }, sectionTitle: { fontSize: 14, fontWeight: "bold", color: "#666", paddingHorizontal: 15, paddingTop: 15, paddingBottom: 10, backgroundColor: "#f9f9f9", borderTopLeftRadius: 12, borderTopRightRadius: 12, }, settingItem: { flexDirection: "row", justifyContent: "space-between", alignItems: "center", paddingHorizontal: 15, paddingVertical: 15, borderBottomWidth: 1, borderBottomColor: "#f0f0f0", }, settingLabel: { fontSize: 16, color: "#333", flex: 1, }, settingValueContainer: { flex: 1, alignItems: "flex-end", }, settingValue: { fontSize: 14, color: "#666", maxWidth: 200, }, actionButton: { backgroundColor: "#007AFF", margin: 15, padding: 15, borderRadius: 8, alignItems: "center", }, actionButtonDestructive: { backgroundColor: "#f44336", }, actionButtonText: { color: "#fff", fontSize: 16, fontWeight: "bold", }, actionButtonTextDestructive: { color: "#fff", }, footer: { alignItems: "center", paddingVertical: 30, }, footerText: { fontSize: 14, color: "#999", marginBottom: 5, }, });