Files
workavia-mail-front/lib/features/email/domain/extensions/detailed_email_extension.dart
T
dab246 5faab2c306 TF-1923 Add createdTime for DetailedEmail
(cherry picked from commit 817c35849338c483feaa2a68586b162a8a67b9a2)
2023-06-26 22:02:30 +02:00

37 lines
1.4 KiB
Dart

import 'package:model/extensions/email_id_extensions.dart';
import 'package:tmail_ui_user/features/caching/utils/caching_constants.dart';
import 'package:tmail_ui_user/features/email/domain/extensions/list_attachments_extension.dart';
import 'package:tmail_ui_user/features/email/domain/extensions/list_email_header_extension.dart';
import 'package:tmail_ui_user/features/email/domain/model/detailed_email.dart';
import 'package:tmail_ui_user/features/offline_mode/model/detailed_email_hive_cache.dart';
import 'package:tmail_ui_user/features/thread/data/extensions/map_keywords_extension.dart';
extension DetailedEmailExtension on DetailedEmail {
DetailedEmailHiveCache toHiveCache() {
return DetailedEmailHiveCache(
emailId: emailId.asString,
timeSaved: createdTime,
attachments: attachments?.toHiveCache(),
headers: headers?.toList().toHiveCache(),
keywords: keywords?.toMapString(),
emailContentPath: emailContentPath
);
}
String get newEmailFolderPath => CachingConstants.newEmailsContentFolderName;
String get openedEmailFolderPath => CachingConstants.openedEmailContentFolderName;
DetailedEmail fromEmailContentPath(String path) {
return DetailedEmail(
emailId: emailId,
createdTime: createdTime,
attachments: attachments,
headers: headers,
keywords: keywords,
htmlEmailContent: htmlEmailContent,
emailContentPath: path,
);
}
}