Files
workavia-mail-front/lib/features/composer/presentation/model/saved_email_draft.dart
T
dab246 6fa66efce2 TF-3427 Implement print draft
Signed-off-by: dab246 <tdvu@linagora.com>
2025-02-05 03:00:08 -08:00

52 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_address.dart';
import 'package:model/email/attachment.dart';
class SavedEmailDraft with EquatableMixin {
final String content;
final String subject;
final Set<EmailAddress> toRecipients;
final Set<EmailAddress> ccRecipients;
final Set<EmailAddress> bccRecipients;
final List<Attachment> attachments;
final Identity? identity;
final bool hasReadReceipt;
SavedEmailDraft({
required this.content,
required this.subject,
required this.toRecipients,
required this.ccRecipients,
required this.bccRecipients,
required this.attachments,
required this.identity,
required this.hasReadReceipt,
});
factory SavedEmailDraft.empty() {
return SavedEmailDraft(
subject: '',
content: '',
toRecipients: {},
ccRecipients: {},
bccRecipients: {},
attachments: [],
identity: null,
hasReadReceipt: false,
);
}
@override
List<Object?> get props => [
content,
subject,
// Prevent identical Set<EmailAddress>
{0: toRecipients},
{1: ccRecipients},
{2: bccRecipients},
attachments,
identity,
hasReadReceipt
];
}