import React, { useState } from 'react'; import { View, Text, Pressable, TextInput, ScrollView, Keyboard, } from 'react-native'; import { type TextOverridesOptions } from '../../types'; import { sharedStyles } from './styles'; import ModalHeader from './ModalHeader'; import { logger } from '../../utils'; interface FinalPopoverProps extends React.PropsWithChildren { isOnline: boolean; textOverrides: TextOverridesOptions; onStopRecording: (comment: string) => void; onCancelSession: () => void; onClose: () => void; isSubmitting: boolean; } const FinalPopover: React.FC = ({ isOnline, textOverrides, onStopRecording, onCancelSession, isSubmitting, children, }) => { const [comment, setComment] = useState(''); const handleStopRecording = async () => { try { await onStopRecording(comment); } catch (error) { logger.error('FinalPopover', 'Failed to save session', error); } }; return ( {textOverrides.cancelButtonText} {children} {textOverrides.finalTitle} {textOverrides.finalDescription} Keyboard.dismiss()} /> {isSubmitting ? 'Saving...' : textOverrides.saveButtonText} ); }; export default FinalPopover;