Files
workavia-mail-front/lib/features/composer/domain/model/email_request.dart
T
dab246 a6ecaf321d TF-1718 Implement unsubscribeMail on Jmap server
Signed-off-by: dab246 <tdvu@linagora.com>
(cherry picked from commit 0f61a97aab513cda75c65e3c92ebcf8f6290b6ec)
2023-11-21 16:54:33 +07:00

46 lines
1.3 KiB
Dart

import 'package:equatable/equatable.dart';
import 'package:jmap_dart_client/jmap/identities/identity.dart';
import 'package:jmap_dart_client/jmap/mail/email/email.dart';
import 'package:jmap_dart_client/jmap/mail/mailbox/mailbox.dart';
import 'package:model/email/email_action_type.dart';
class EmailRequest with EquatableMixin {
final Email email;
final MailboxId? sentMailboxId;
final EmailId? emailIdDestroyed;
final EmailId? emailIdAnsweredOrForwarded;
final IdentityId? identityId;
final EmailActionType emailActionType;
final String? storedSendingId;
final EmailId? previousEmailId;
EmailRequest({
required this.email,
required this.emailActionType,
this.sentMailboxId,
this.identityId,
this.emailIdDestroyed,
this.emailIdAnsweredOrForwarded,
this.storedSendingId,
this.previousEmailId,
});
@override
List<Object?> get props => [
email,
sentMailboxId,
identityId,
emailIdDestroyed,
emailIdAnsweredOrForwarded,
emailActionType,
storedSendingId,
previousEmailId,
];
bool get isEmailAnswered => emailIdAnsweredOrForwarded != null &&
(emailActionType == EmailActionType.reply || emailActionType == EmailActionType.replyAll);
bool get isEmailForwarded => emailIdAnsweredOrForwarded != null && emailActionType == EmailActionType.forward;
}