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:
+30
-1
@@ -117,5 +117,34 @@
|
||||
}
|
||||
},
|
||||
"noNotesMessage": "No notes attached to this delivery",
|
||||
"close": "Close"
|
||||
"close": "Close",
|
||||
"confirmPhoto": "Confirm Photo",
|
||||
"uploadPhotoConfirmation": "Upload this photo for {name}?",
|
||||
"@uploadPhotoConfirmation": {
|
||||
"placeholders": {
|
||||
"name": {"type": "String"}
|
||||
}
|
||||
},
|
||||
"uploadingPhoto": "Uploading photo...",
|
||||
"photoUploadSuccess": "Photo uploaded successfully",
|
||||
"photoUploadFailed": "Upload failed: {statusCode}",
|
||||
"@photoUploadFailed": {
|
||||
"placeholders": {
|
||||
"statusCode": {"type": "int"}
|
||||
}
|
||||
},
|
||||
"cameraError": "Camera error: {message}",
|
||||
"@cameraError": {
|
||||
"placeholders": {
|
||||
"message": {"type": "String"}
|
||||
}
|
||||
},
|
||||
"uploadError": "Upload error: {message}",
|
||||
"@uploadError": {
|
||||
"placeholders": {
|
||||
"message": {"type": "String"}
|
||||
}
|
||||
},
|
||||
"serverError": "Server error - Please contact support",
|
||||
"retake": "Retake"
|
||||
}
|
||||
|
||||
+30
-1
@@ -117,5 +117,34 @@
|
||||
}
|
||||
},
|
||||
"noNotesMessage": "Aucune note associée à cette livraison",
|
||||
"close": "Fermer"
|
||||
"close": "Fermer",
|
||||
"confirmPhoto": "Confirmer la photo",
|
||||
"uploadPhotoConfirmation": "Telecharger cette photo pour {name}?",
|
||||
"@uploadPhotoConfirmation": {
|
||||
"placeholders": {
|
||||
"name": {"type": "String"}
|
||||
}
|
||||
},
|
||||
"uploadingPhoto": "Telechargement de la photo...",
|
||||
"photoUploadSuccess": "Photo telechargee avec succes",
|
||||
"photoUploadFailed": "Echec du telechargement: {statusCode}",
|
||||
"@photoUploadFailed": {
|
||||
"placeholders": {
|
||||
"statusCode": {"type": "int"}
|
||||
}
|
||||
},
|
||||
"cameraError": "Erreur de camera: {message}",
|
||||
"@cameraError": {
|
||||
"placeholders": {
|
||||
"message": {"type": "String"}
|
||||
}
|
||||
},
|
||||
"uploadError": "Erreur de telechargement: {message}",
|
||||
"@uploadError": {
|
||||
"placeholders": {
|
||||
"message": {"type": "String"}
|
||||
}
|
||||
},
|
||||
"serverError": "Erreur serveur - Veuillez contacter le support",
|
||||
"retake": "Reprendre"
|
||||
}
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -267,4 +267,39 @@ class AppLocalizationsEn extends AppLocalizations {
|
||||
|
||||
@override
|
||||
String get close => 'Close';
|
||||
|
||||
@override
|
||||
String get confirmPhoto => 'Confirm Photo';
|
||||
|
||||
@override
|
||||
String uploadPhotoConfirmation(String name) {
|
||||
return 'Upload this photo for $name?';
|
||||
}
|
||||
|
||||
@override
|
||||
String get uploadingPhoto => 'Uploading photo...';
|
||||
|
||||
@override
|
||||
String get photoUploadSuccess => 'Photo uploaded successfully';
|
||||
|
||||
@override
|
||||
String photoUploadFailed(int statusCode) {
|
||||
return 'Upload failed: $statusCode';
|
||||
}
|
||||
|
||||
@override
|
||||
String cameraError(String message) {
|
||||
return 'Camera error: $message';
|
||||
}
|
||||
|
||||
@override
|
||||
String uploadError(String message) {
|
||||
return 'Upload error: $message';
|
||||
}
|
||||
|
||||
@override
|
||||
String get serverError => 'Server error - Please contact support';
|
||||
|
||||
@override
|
||||
String get retake => 'Retake';
|
||||
}
|
||||
|
||||
@@ -267,4 +267,39 @@ class AppLocalizationsFr extends AppLocalizations {
|
||||
|
||||
@override
|
||||
String get close => 'Fermer';
|
||||
|
||||
@override
|
||||
String get confirmPhoto => 'Confirmer la photo';
|
||||
|
||||
@override
|
||||
String uploadPhotoConfirmation(String name) {
|
||||
return 'Telecharger cette photo pour $name?';
|
||||
}
|
||||
|
||||
@override
|
||||
String get uploadingPhoto => 'Telechargement de la photo...';
|
||||
|
||||
@override
|
||||
String get photoUploadSuccess => 'Photo telechargee avec succes';
|
||||
|
||||
@override
|
||||
String photoUploadFailed(int statusCode) {
|
||||
return 'Echec du telechargement: $statusCode';
|
||||
}
|
||||
|
||||
@override
|
||||
String cameraError(String message) {
|
||||
return 'Erreur de camera: $message';
|
||||
}
|
||||
|
||||
@override
|
||||
String uploadError(String message) {
|
||||
return 'Erreur de telechargement: $message';
|
||||
}
|
||||
|
||||
@override
|
||||
String get serverError => 'Erreur serveur - Veuillez contacter le support';
|
||||
|
||||
@override
|
||||
String get retake => 'Reprendre';
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user