import { View, Text, FlatList, TouchableOpacity, RefreshControl, } from 'react-native' import { SafeAreaView } from 'react-native-safe-area-context' import { useRouter } from 'expo-router' import { trpc } from '@/lib/trpc' import { StelleCard } from '@/components/stellen/StelleCard' import { EmptyState } from '@/components/ui/EmptyState' import { LoadingSpinner } from '@/components/ui/LoadingSpinner' import { useAuth } from '@/hooks/useAuth' export default function StellenScreen() { const router = useRouter() const { isAuthenticated } = useAuth() const { data, isLoading, refetch, isRefetching } = trpc.stellen.listPublic.useQuery({}) return ( {/* Header */} Lehrlingsbörse {data?.length ?? 0} Angebote {isAuthenticated && ( router.push('/(app)/stellen/neu')} className="bg-brand-500 px-4 py-2 rounded-xl" > + Stelle anbieten )} {isLoading ? ( ) : ( item.id} contentContainerStyle={{ padding: 12, gap: 8 }} refreshControl={ } renderItem={({ item }) => ( router.push(`/(app)/stellen/${item.id}`)} /> )} ListEmptyComponent={ } /> )} ) }