import React from 'react'; import { View, TextInput, TouchableOpacity, Text, ActivityIndicator } from 'react-native'; import { Ionicons } from '@expo/vector-icons'; import useChatInput from '../hooks/useChatInput'; import ModelDropdown from './ModelDropdown'; interface ChatInputProps { onSend: (message: string) => void; isLoading?: boolean; placeholder?: string; showModelSelection?: boolean; selectedModelId?: string; onSelectModel?: (id: string) => void; showAttachments?: boolean; showSearch?: boolean; } export default function ChatInput({ onSend, isLoading = false, placeholder = 'Nachricht eingeben...', showModelSelection = false, selectedModelId = '550e8400-e29b-41d4-a716-446655440000', onSelectModel = () => {}, showAttachments = false, showSearch = false, }: ChatInputProps) { const { text, setText, handleSend, canSend, isDarkMode, } = useChatInput({ onSend, isLoading, placeholder, }); return ( {showModelSelection && ( Modell: )} {(showAttachments || showSearch) && ( {showAttachments && ( Attach )} {showSearch && ( Search )} )} {isLoading ? ( Wird gesendet... ) : ( <> Senden )} ); }