TF-4195 Implement add a Label to an email

This commit is contained in:
dab246
2025-12-12 02:39:59 +07:00
committed by Dat H. Pham
parent 0d247b30d7
commit 78de7de3a6
18 changed files with 528 additions and 22 deletions
@@ -5626,4 +5626,20 @@ class AppLocalizations {
name: 'labelAs',
);
}
String addLabelToEmailSuccessfullyMessage(String labelName) {
return Intl.message(
'Email added to the "$labelName" label',
name: 'addLabelToEmailSuccessfullyMessage',
args: [labelName],
);
}
String addLabelToEmailFailureMessage(String labelName) {
return Intl.message(
'Cannot add email to the "$labelName" label',
name: 'addLabelToEmailFailureMessage',
args: [labelName],
);
}
}
+8
View File
@@ -22,6 +22,7 @@ import 'package:model/mailbox/presentation_mailbox.dart';
import 'package:tmail_ui_user/features/composer/domain/exceptions/set_method_exception.dart';
import 'package:tmail_ui_user/features/email/domain/exceptions/calendar_event_exceptions.dart';
import 'package:tmail_ui_user/features/email/domain/model/move_action.dart';
import 'package:tmail_ui_user/features/email/domain/state/add_a_label_to_an_email_state.dart';
import 'package:tmail_ui_user/features/email/domain/state/calendar_event_reply_state.dart';
import 'package:tmail_ui_user/features/email/domain/state/mark_as_email_star_state.dart';
import 'package:tmail_ui_user/features/download/domain/state/parse_email_by_blob_id_state.dart';
@@ -201,6 +202,9 @@ class ToastManager {
} else if (failure is CreateNewLabelFailure) {
message = message ??
appLocalizations.createNewLabelFailure;
} else if (failure is AddALabelToAnEmailFailure) {
message = message ??
appLocalizations.addLabelToEmailFailureMessage(failure.labelDisplay);
}
log('ToastManager::showMessageFailure: Message: $message');
if (message?.trim().isNotEmpty == true) {
@@ -268,6 +272,10 @@ class ToastManager {
message = appLocalizations.createLabelSuccessfullyMessage(
success.newLabel.safeDisplayName,
);
} else if (success is AddALabelToAnEmailSuccess) {
message = appLocalizations.addLabelToEmailSuccessfullyMessage(
success.labelDisplay,
);
}
log('ToastManager::showMessageSuccess: Message: $message');
if (message?.trim().isNotEmpty == true) {