auto-claude: subtask-2-3 - Create PhotoCaptureDialog component for photo confirmation

Add PhotoCaptureDialog widget component that:
- Shows captured photo preview with proper constraints
- Displays confirmation message using delivery name
- Provides Cancel and Upload action buttons
- Uses theme-aware styling with colorScheme
- Handles image loading errors gracefully
- Includes proper i18n support (EN/FR)

Added localization keys:
- confirmPhoto
- uploadPhotoConfirmation (with name placeholder)
- uploadingPhoto
- photoUploadSuccess
- photoUploadFailed
- cameraError
- uploadError
- serverError
- retake

Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
2026-01-20 11:30:49 -05:00
parent bcc938fde1
commit e5f267b4f7
6 changed files with 317 additions and 2 deletions
+54
View File
@@ -577,6 +577,60 @@ abstract class AppLocalizations {
/// In en, this message translates to:
/// **'Close'**
String get close;
/// No description provided for @confirmPhoto.
///
/// In en, this message translates to:
/// **'Confirm Photo'**
String get confirmPhoto;
/// No description provided for @uploadPhotoConfirmation.
///
/// In en, this message translates to:
/// **'Upload this photo for {name}?'**
String uploadPhotoConfirmation(String name);
/// No description provided for @uploadingPhoto.
///
/// In en, this message translates to:
/// **'Uploading photo...'**
String get uploadingPhoto;
/// No description provided for @photoUploadSuccess.
///
/// In en, this message translates to:
/// **'Photo uploaded successfully'**
String get photoUploadSuccess;
/// No description provided for @photoUploadFailed.
///
/// In en, this message translates to:
/// **'Upload failed: {statusCode}'**
String photoUploadFailed(int statusCode);
/// No description provided for @cameraError.
///
/// In en, this message translates to:
/// **'Camera error: {message}'**
String cameraError(String message);
/// No description provided for @uploadError.
///
/// In en, this message translates to:
/// **'Upload error: {message}'**
String uploadError(String message);
/// No description provided for @serverError.
///
/// In en, this message translates to:
/// **'Server error - Please contact support'**
String get serverError;
/// No description provided for @retake.
///
/// In en, this message translates to:
/// **'Retake'**
String get retake;
}
class _AppLocalizationsDelegate