import React, { useState } from 'react'; import { View, StyleSheet, TextInput, KeyboardAvoidingView, Platform, TouchableOpacity } from 'react-native'; import { SafeAreaView } from 'react-native-safe-area-context'; import { useRouter } from 'expo-router'; import { Ionicons } from '@expo/vector-icons'; import * as Clipboard from 'expo-clipboard'; import Text from '../components/atoms/Text'; import Icon from '../components/atoms/Icon'; import Button from '../components/atoms/Button'; import CommonHeader from '../components/molecules/CommonHeader'; export default function ShareCodeInputScreen() { const router = useRouter(); const [shareCode, setShareCode] = useState(''); const [error, setError] = useState(''); const handleSubmit = () => { const trimmedCode = shareCode.trim().toUpperCase(); if (!trimmedCode) { setError('Bitte gib einen Share-Code ein'); return; } if (trimmedCode.length < 4) { setError('Der Share-Code muss mindestens 4 Zeichen lang sein'); return; } // Navigate to the share code screen with the code router.replace(`/share/${trimmedCode}`); }; const handleCodeChange = (text: string) => { setShareCode(text); if (error) setError(''); }; const handlePaste = async () => { try { const text = await Clipboard.getStringAsync(); if (text) { setShareCode(text); setError(''); } } catch (err) { console.log('Clipboard not available or paste failed'); } }; return ( Charakter-Code eingeben Gib den Share-Code ein, den du von einem Freund erhalten hast, um seinen Charakter zu deiner Sammlung hinzuzufügen. {shareCode.length === 0 && ( Einfügen )} {error ? ( {error} ) : null} Share-Codes sind in der Regel 6-stellig und bestehen aus Buchstaben und Zahlen