TF-3514 Show explicit error when transfer base64 to cid

Signed-off-by: dab246 <tdvu@linagora.com>
This commit is contained in:
dab246
2025-03-05 19:00:36 +07:00
committed by Dat H. Pham
parent 4765921a35
commit 915a4b26b8
4 changed files with 75 additions and 13 deletions
@@ -2413,9 +2413,13 @@ class MailboxDashBoardController extends ReloadableController
for (var error in listErrors) {
if (error.type == SetError.tooLarge || error.type == SetError.overQuota) {
if (isDrafts) {
_showToastSendMessageFailure(error.toastMessageForSaveEmailAsDraftFailure(currentContext!));
_showToastSendMessageFailure(error.toastMessageForSaveEmailAsDraftFailure(
appLocalizations: AppLocalizations.of(currentContext!),
));
} else {
_showToastSendMessageFailure(error.toastMessageForSendEmailFailure(currentContext!));
_showToastSendMessageFailure(error.toastMessageForSendEmailFailure(
appLocalizations: AppLocalizations.of(currentContext!),
));
}
return true;
}
@@ -1,27 +1,32 @@
import 'package:flutter/widgets.dart';
import 'package:jmap_dart_client/jmap/core/error/set_error.dart';
import 'package:tmail_ui_user/main/localizations/app_localizations.dart';
extension SetErrorExtension on SetError {
String toastMessageForSendEmailFailure(BuildContext context) {
String toastMessageForSendEmailFailure({
required AppLocalizations appLocalizations,
String? defaultMessage,
}) {
if (type == SetError.tooLarge) {
return AppLocalizations.of(context).sendMessageFailureWithSetErrorTypeTooLarge;
return appLocalizations.sendMessageFailureWithSetErrorTypeTooLarge;
} else if (type == SetError.overQuota) {
return AppLocalizations.of(context).sendMessageFailureWithSetErrorTypeOverQuota;
return appLocalizations.sendMessageFailureWithSetErrorTypeOverQuota;
} else {
return AppLocalizations.of(context).sendMessageFailure;
return defaultMessage ?? appLocalizations.sendMessageFailure;
}
}
String toastMessageForSaveEmailAsDraftFailure(BuildContext context) {
String toastMessageForSaveEmailAsDraftFailure({
required AppLocalizations appLocalizations,
String? defaultMessage,
}) {
if (type == SetError.tooLarge) {
return AppLocalizations.of(context).saveEmailAsDraftFailureWithSetErrorTypeTooLarge;
return appLocalizations.saveEmailAsDraftFailureWithSetErrorTypeTooLarge;
} else if (type == SetError.overQuota) {
return AppLocalizations.of(context).saveEmailAsDraftFailureWithSetErrorTypeOverQuota;
return appLocalizations.saveEmailAsDraftFailureWithSetErrorTypeOverQuota;
} else {
return AppLocalizations.of(context).saveEmailAsDraftFailure;
return defaultMessage ?? appLocalizations.saveEmailAsDraftFailure;
}
}
}