import { useState } from 'react' import { Link, Stack } from 'expo-router' import { Keyboard, KeyboardAvoidingView, Platform, Pressable, ScrollView, Text, TextInput, View } from 'react-native' import { supabase } from '@/libs/supabase' import { useAppTheme } from '@/src/theme/AppThemeProvider' import { loginScreenStyles as styles } from '@/src/styles/app-styles' export default function LoginScreen() { const [email, setEmail] = useState('') const [password, setPassword] = useState('') const [errorMessage, setErrorMessage] = useState(null) const [isSubmitting, setIsSubmitting] = useState(false) const { colorScheme, palette } = useAppTheme() const onLogin = async () => { if (!email.trim() || !password) { setErrorMessage('Log in with email and password') return } setIsSubmitting(true) setErrorMessage(null) const { error } = await supabase.auth.signInWithPassword({ email: email.trim(), password, }) if (error) { setErrorMessage(error.message) } setIsSubmitting(false) } return ( <> Login E-mail Password {errorMessage ? ( {errorMessage} ) : null} [ styles.loginButton, pressed && !isSubmitting ? styles.loginButtonPressed : null, isSubmitting ? styles.loginButtonDisabled : null, ]} > {isSubmitting ? 'Logging in...' : 'Log in'} Create a new account ) }