0d77789c5f
(cherry picked from commit ce1d27d893fd406aa812d4e4ea9debe1ec265ddb)
27 lines
1.2 KiB
Dart
27 lines
1.2 KiB
Dart
import 'package:jmap_dart_client/jmap/mail/email/email.dart';
|
|
import 'package:tmail_ui_user/features/thread/data/model/email_cache.dart';
|
|
import 'package:tmail_ui_user/features/thread/data/extensions/map_keywords_extension.dart';
|
|
import 'package:tmail_ui_user/features/thread/data/extensions/email_address_extension.dart';
|
|
import 'package:tmail_ui_user/features/thread/data/extensions/map_mailbox_id_extension.dart';
|
|
|
|
extension EmailExtension on Email {
|
|
|
|
EmailCache toEmailCache() {
|
|
return EmailCache(
|
|
id!.id.value,
|
|
keywords: keywords?.toMapString(),
|
|
size: size?.value.round(),
|
|
receivedAt: receivedAt?.value,
|
|
hasAttachment: hasAttachment,
|
|
preview: preview,
|
|
subject: subject,
|
|
sentAt: sentAt?.value,
|
|
from: from?.map((emailAddress) => emailAddress.toEmailAddressHiveCache()).toList(),
|
|
to: to?.map((emailAddress) => emailAddress.toEmailAddressHiveCache()).toList(),
|
|
cc: cc?.map((emailAddress) => emailAddress.toEmailAddressHiveCache()).toList(),
|
|
bcc: bcc?.map((emailAddress) => emailAddress.toEmailAddressHiveCache()).toList(),
|
|
replyTo: replyTo?.map((emailAddress) => emailAddress.toEmailAddressHiveCache()).toList(),
|
|
mailboxIds: mailboxIds?.toMapString(),
|
|
);
|
|
}
|
|
} |