import { View, StyleSheet, FlatList, ActivityIndicator, RefreshControl } from 'react-native'; import { useTheme, Card, Text, Button } from 'react-native-paper'; import { Link } from 'expo-router'; import { useState, useEffect } from 'react'; import { listLocations } from '@/api/locations'; export default function Index() { const theme = useTheme(); const [locations, setLocations] = useState([]); const [loading, setLoading] = useState(true); const [refreshing, setRefreshing] = useState(false); const fetchLocations = async () => { try { const data = await listLocations(); setLocations(data); } catch (error) { console.error("Error fetching locations:", error); } finally { setLoading(false); } }; const onRefresh = async () => { setRefreshing(true); await fetchLocations(); setRefreshing(false); }; useEffect(() => { fetchLocations(); }, []); if (loading) { return ( ); } return ( item.id.toString()} renderItem={({ item }) => ( {item.name} {item.description && item.description.split('.')[0]}... )} refreshControl={ } /> ); } const styles = StyleSheet.create({ container: { flex: 1, backgroundColor: '#25292e', justifyContent: 'center', alignItems: 'center', }, });