Files
workavia-mail-front/lib/features/email/domain/extensions/detailed_email_extension.dart
T
dab246 d357358341 TF-1810 Implement store detailed email to cache
(cherry picked from commit 6be6d69ad8e5fb05d839e2649b1f444613eea6d1)
2023-06-05 11:02:20 +07:00

31 lines
1.1 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';
extension DetailedEmailExtension on DetailedEmail {
DetailedEmailHiveCache toHiveCache() {
return DetailedEmailHiveCache(
emailId: emailId.asString,
timeSaved: DateTime.now(),
attachments: attachments?.toHiveCache(),
headers: headers?.toHiveCache(),
emailContentPath: emailContentPath
);
}
String get folderPath => CachingConstants.emailContentFolderName;
DetailedEmail fromEmailContentPath(String path) {
return DetailedEmail(
emailId: emailId,
attachments: attachments,
headers: headers,
htmlEmailContent: htmlEmailContent,
emailContentPath: path,
);
}
}