TF-1718 Implement unsubscribeMail on Jmap server

Signed-off-by: dab246 <tdvu@linagora.com>
(cherry picked from commit 0f61a97aab513cda75c65e3c92ebcf8f6290b6ec)
This commit is contained in:
dab246
2023-11-16 12:48:38 +07:00
committed by Dat Vu
parent 4d8c7dc52e
commit a6ecaf321d
18 changed files with 169 additions and 36 deletions
+3
View File
@@ -13,6 +13,7 @@ import 'package:jmap_dart_client/jmap/mail/email/keyword_identifier.dart';
import 'package:jmap_dart_client/jmap/mail/mailbox/mailbox.dart';
import 'package:model/email/email_content.dart';
import 'package:model/extensions/email_address_extension.dart';
import 'package:model/extensions/keyword_identifier_extension.dart';
import 'package:model/extensions/media_type_nullable_extension.dart';
import 'package:model/mailbox/presentation_mailbox.dart';
import 'package:model/mailbox/select_mode.dart';
@@ -110,6 +111,8 @@ class PresentationEmail with EquatableMixin {
bool get isForwarded => keywords?.containsKey(KeyWordIdentifier.emailForwarded) == true;
bool get isSubscribed => keywords?.containsKey(KeyWordIdentifierExtension.unsubscribeMail) == true;
bool get isAnsweredAndForwarded => isAnswered && isForwarded;
bool get withAttachments => hasAttachment == true;
@@ -25,6 +25,8 @@ extension EmailExtension on Email {
bool get isDraft => keywords?.containsKey(KeyWordIdentifier.emailDraft) == true;
bool get isUnsubscribed => keywords?.containsKey(KeyWordIdentifierExtension.unsubscribeMail) == true;
bool get withAttachments => hasAttachment == true;
String get listUnsubscribe {