import { useState, useEffect } from 'react'; import { StyleSheet, Platform, ScrollView, KeyboardAvoidingView } from 'react-native'; import { TextInput, Button, Snackbar } from 'react-native-paper'; import { locations } from '@/data/locations'; import { useLocalSearchParams, useRouter } from 'expo-router'; export default function edit() { const { id } = useLocalSearchParams(); const router = useRouter(); const locationData = locations.find(loc => loc.id == id); const [formData, setFormData] = useState({ name: '', description: '', image: '', area: '', population: '', }); const [message, setMessage] = useState(''); const [visible, setVisible] = useState(false); useEffect(() => { if (locationData) { console.log(locationData); setFormData({ name: locationData.name, description: locationData.description, image: locationData.image, area: locationData.area.toString(), population: locationData.population.toString(), }); } }, [locationData]); const editLocation = () => { if ( formData.name && formData.description && formData.image && formData.area && formData.population ) { const index = locations.findIndex((loc) => loc.id == id); if (index !== -1) { locations[index] = { ...locations[index], ...formData }; setMessage('Lokalizacja została zaktualizowana!'); setVisible(true); }else{ setMessage('Błąd spróbuj ponownie póżniej!'); setVisible(true); } } else{ setMessage('Wypełnij wszystkie pola!'); setVisible(true); } }; return ( setVisible(false)} duration={3000} > {message} setFormData({ ...formData, name: e })} /> setFormData({ ...formData, description: e })} /> setFormData({ ...formData, image: e })} /> setFormData({ ...formData, area: e })} /> setFormData({ ...formData, population: e })} /> ); } const styles = StyleSheet.create({ container: { flex: 1, backgroundColor: '#25292e', justifyContent: 'flex-start', alignItems: 'center', }, text: { color: '#fff', }, });