TF-1813 Add createTime and change type email property in SendingEmailHiveCache
(cherry picked from commit 3077cc3b414d4894ac13f5636aa5d59b0096c9fb)
This commit is contained in:
@@ -9,6 +9,7 @@ extension EmailRequestExtension on EmailRequest {
|
||||
sendingId: sendingId,
|
||||
email: email,
|
||||
emailActionType: emailActionType,
|
||||
createTime: DateTime.now(),
|
||||
sentMailboxId: sentMailboxId,
|
||||
emailIdDestroyed: emailIdDestroyed,
|
||||
emailIdAnsweredOrForwarded: emailIdAnsweredOrForwarded,
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
|
||||
import 'package:model/extensions/email_extension.dart';
|
||||
import 'package:model/extensions/email_id_extensions.dart';
|
||||
import 'package:model/extensions/identity_id_extension.dart';
|
||||
import 'package:model/extensions/mailbox_id_extension.dart';
|
||||
@@ -9,8 +10,9 @@ extension SendingEmailExtension on SendingEmail {
|
||||
SendingEmailHiveCache toHiveCache() {
|
||||
return SendingEmailHiveCache(
|
||||
sendingId,
|
||||
email.toJson(),
|
||||
email.asString(),
|
||||
emailActionType.name,
|
||||
createTime,
|
||||
sentMailboxId?.asString,
|
||||
emailIdDestroyed?.asString,
|
||||
emailIdAnsweredOrForwarded?.asString,
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
|
||||
import 'package:core/domain/extensions/datetime_extension.dart';
|
||||
import 'package:equatable/equatable.dart';
|
||||
import 'package:flutter_date_range_picker/flutter_date_range_picker.dart';
|
||||
import 'package:jmap_dart_client/http/converter/email_id_nullable_converter.dart';
|
||||
import 'package:jmap_dart_client/http/converter/id_nullable_converter.dart';
|
||||
import 'package:jmap_dart_client/http/converter/identities/identity_id_nullable_converter.dart';
|
||||
@@ -9,6 +11,7 @@ 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';
|
||||
import 'package:model/email/presentation_email.dart';
|
||||
import 'package:model/extensions/email_extension.dart';
|
||||
|
||||
class SendingEmail with EquatableMixin {
|
||||
@@ -21,11 +24,13 @@ class SendingEmail with EquatableMixin {
|
||||
final EmailActionType emailActionType;
|
||||
final MailboxName? mailboxNameRequest;
|
||||
final Id? creationIdRequest;
|
||||
final DateTime createTime;
|
||||
|
||||
SendingEmail({
|
||||
required this.sendingId,
|
||||
required this.email,
|
||||
required this.emailActionType,
|
||||
required this.createTime,
|
||||
this.sentMailboxId,
|
||||
this.emailIdDestroyed,
|
||||
this.emailIdAnsweredOrForwarded,
|
||||
@@ -46,6 +51,7 @@ class SendingEmail with EquatableMixin {
|
||||
writeNotNull('sendingId', sendingId);
|
||||
writeNotNull('email', email.asString());
|
||||
writeNotNull('emailActionType', emailActionType.name);
|
||||
writeNotNull('createTime', createTime.toIso8601String());
|
||||
writeNotNull('sentMailboxId', const MailboxIdNullableConverter().toJson(sentMailboxId));
|
||||
writeNotNull('emailIdDestroyed', const EmailIdNullableConverter().toJson(emailIdDestroyed));
|
||||
writeNotNull('emailIdAnsweredOrForwarded', const EmailIdNullableConverter().toJson(emailIdAnsweredOrForwarded));
|
||||
@@ -56,11 +62,18 @@ class SendingEmail with EquatableMixin {
|
||||
return val;
|
||||
}
|
||||
|
||||
PresentationEmail get presentationEmail => email.toPresentationEmail();
|
||||
|
||||
String getCreateTimeAt(String newLocale) {
|
||||
return DateFormat(createTime.toPattern(), newLocale).format(createTime);
|
||||
}
|
||||
|
||||
@override
|
||||
List<Object?> get props => [
|
||||
sendingId,
|
||||
email,
|
||||
emailActionType,
|
||||
createTime,
|
||||
sentMailboxId,
|
||||
emailIdDestroyed,
|
||||
emailIdAnsweredOrForwarded,
|
||||
|
||||
Reference in New Issue
Block a user