import { useState } from 'react' import { supabase } from '@/lib/supabase' import { Button } from '@/components/ui/button' import { Input } from '@/components/ui/input' import { colors } from '@/lib/colors' import { Mail, CheckCircle } from 'lucide-react' export default function EmailAuth() { const [email, setEmail] = useState('') const [loading, setLoading] = useState(false) const [message, setMessage] = useState('') const [messageType, setMessageType] = useState<'success' | 'error'>('success') const handleSendEmail = async (e: React.FormEvent) => { e.preventDefault() setLoading(true) setMessage('') try { const { error } = await supabase.auth.signInWithOtp({ email, options: { emailRedirectTo: `${window.location.origin}/auth/callback` } }) if (error) { setMessage(`Fehler: ${error.message}`) setMessageType('error') } else { setMessage('E-Mail wurde an deine E-Mail-Adresse gesendet! Bitte prüfe dein Postfach.') setMessageType('success') } } catch (error) { setMessage('Ein unerwarteter Fehler ist aufgetreten.') setMessageType('error') } finally { setLoading(false) } } return (

Anmelden

setEmail(e.target.value)} required className="w-full p-3 rounded-xl border-2 focus:outline-none focus:ring-2" style={{ borderColor: colors.tertiary, backgroundColor: colors.background, color: colors.primary }} />
{message && (

{message}

)}

• Du erhältst eine E-Mail zur Bestätigung

• Klicke auf den Link in der E-Mail, um dich anzumelden

• Kein Passwort erforderlich

) }