// Generated by GitHub Copilot import React, { useState } from 'react'; import { View, Text, ScrollView, StyleSheet, Alert } from 'react-native'; import { useNavigation, useRoute } from '@react-navigation/native'; import AISuggestionCard from '../components/AISuggestionCard'; import Button from '../components/Button'; import { AiSuggestion } from '../services/api'; import { Colors } from '../theme/colors'; import { Spacing } from '../theme/spacing'; /** * AI result screen — shows detected items with confidence scores. * NEVER auto-saves. User must confirm or edit first. (REQ-AI-002) * REQ-MOB-004, REQ-INT-001 */ export default function AIResultScreen() { const navigation = useNavigation(); const route = useRoute(); const { analysisId, suggestions: initialSuggestions } = route.params as { analysisId: string; suggestions: AiSuggestion[]; }; const [suggestions, setSuggestions] = useState(initialSuggestions); const handleGramsChange = (index: number, grams: number) => { setSuggestions(prev => prev.map((s, i) => i === index ? { ...s, grams, estimatedCalories: grams * 2, confidenceLow: Math.max(0, grams * 2 * (1 - (1 - s.confidence) * 0.4)), confidenceHigh: grams * 2 * (1 + (1 - s.confidence) * 0.4), } : s )); }; const confirmAndNavigate = () => { // Pass adjusted suggestions to EditMeal for final save navigation.navigate('EditMeal', { items: suggestions, analysisId }); }; if (suggestions.length === 0) { return ( No food items detected. Try Search instead.