{selectedBird.scientificName}
++ {selectedBird.scientificName} +
diff --git a/src/screens/SettingsScreen.tsx b/src/screens/SettingsScreen.tsx index fc6e219..860537e 100644 --- a/src/screens/SettingsScreen.tsx +++ b/src/screens/SettingsScreen.tsx @@ -1,39 +1,41 @@ -import { useState } from 'react'; -import { useAppContext } from '../AppContext'; -import { db } from '../database'; -import { Download, Upload, Globe, Moon, Sun, Monitor } from 'lucide-react'; +import { useState } from "react"; +import { useAppContext } from "../AppContext"; +import { db } from "../database"; +import { Download, Upload, Globe, Moon, Sun, Monitor } from "lucide-react"; export function SettingsScreen() { const { language, setLanguage, themeMode, setThemeMode } = useAppContext(); - const [backupStatus, setBackupStatus] = useState(''); + const [backupStatus, setBackupStatus] = useState(""); const handleExport = async () => { try { const spottings = await db.spottings.toArray(); const places = await db.customPlaces.toArray(); - + const backup = { version: 1, timestamp: new Date().toISOString(), spottings, - places + places, }; - const blob = new Blob([JSON.stringify(backup, null, 2)], { type: 'application/json' }); + const blob = new Blob([JSON.stringify(backup, null, 2)], { + type: "application/json", + }); const url = URL.createObjectURL(blob); - const a = document.createElement('a'); + const a = document.createElement("a"); a.href = url; - a.download = `birdspotter_backup_${new Date().toISOString().split('T')[0]}.json`; + a.download = `birdspotter_backup_${new Date().toISOString().split("T")[0]}.json`; document.body.appendChild(a); a.click(); document.body.removeChild(a); URL.revokeObjectURL(url); - - setBackupStatus('Export successful!'); - setTimeout(() => setBackupStatus(''), 3000); + + setBackupStatus("Export successful!"); + setTimeout(() => setBackupStatus(""), 3000); } catch (error) { console.error(error); - setBackupStatus('Export failed.'); + setBackupStatus("Export failed."); } }; @@ -54,27 +56,31 @@ export function SettingsScreen() { await db.customPlaces.bulkAdd(backup.places); } - setBackupStatus('Import successful!'); - setTimeout(() => setBackupStatus(''), 3000); + setBackupStatus("Import successful!"); + setTimeout(() => setBackupStatus(""), 3000); } catch (error) { console.error(error); - setBackupStatus('Import failed. Invalid file format.'); + setBackupStatus("Import failed. Invalid file format."); } }; return (