TF-3416 Handle open EML attachment in EML previewer

This commit is contained in:
dab246
2025-01-13 15:53:58 +07:00
committed by Dat H. Pham
parent 0ce99c745c
commit aa7fded1ff
28 changed files with 473 additions and 99 deletions
@@ -4307,4 +4307,11 @@ class AppLocalizations {
name: 'previewEmailFromEMLFileFailed',
);
}
String get cannotOpenNewWindow {
return Intl.message(
'Cannot open new window',
name: 'cannotOpenNewWindow',
);
}
}
+3
View File
@@ -252,4 +252,7 @@ abstract class RouteUtils {
|| navigationRouter.subject?.isNotEmpty == true
|| navigationRouter.body?.isNotEmpty == true;
}
static String get emailEMLPreviewerRoutePath =>
_createEmailEMLPreviewerServicePath('$baseOriginUrl${AppRoutes.emailEMLPreviewer}').path;
}
+6 -1
View File
@@ -1,3 +1,4 @@
import 'package:core/domain/exceptions/web_session_exception.dart';
import 'package:core/presentation/state/failure.dart';
import 'package:core/presentation/utils/app_toast.dart';
import 'package:core/utils/app_logger.dart';
@@ -89,7 +90,11 @@ class ToastManager {
} else if (failure is ParseEmailByBlobIdFailure) {
message = AppLocalizations.of(currentContext!).parseEmailByBlobIdFailed;
} else if (failure is PreviewEmailFromEmlFileFailure) {
message = AppLocalizations.of(currentContext!).previewEmailFromEMLFileFailed;
if (failure.exception is CannotOpenNewWindowException) {
message = AppLocalizations.of(currentContext!).cannotOpenNewWindow;
} else {
message = AppLocalizations.of(currentContext!).previewEmailFromEMLFileFailed;
}
}
if (message?.isNotEmpty == true) {