TF--2102 Add restore_deleted_message to EmailRepository and EmailDataSource

(cherry picked from commit dca003cdce9301e2d3e5b85c965cc1894a776535)
This commit is contained in:
hieubt
2023-12-20 11:24:31 +07:00
committed by Dat H. Pham
parent 409742e6ab
commit 42a84b497c
6 changed files with 73 additions and 0 deletions
@@ -0,0 +1,16 @@
import 'package:email_recovery/email_recovery/email_recovery_action.dart';
import 'package:equatable/equatable.dart';
import 'package:jmap_dart_client/jmap/core/id.dart';
class RestoredDeletedMessageRequest with EquatableMixin {
final Id createRequestId;
final EmailRecoveryAction emailRecoveryAction;
RestoredDeletedMessageRequest(this.createRequestId, this.emailRecoveryAction);
@override
List<Object?> get props => [
createRequestId,
emailRecoveryAction
];
}
@@ -7,6 +7,8 @@ import 'package:core/presentation/state/success.dart';
import 'package:core/presentation/utils/html_transformer/transform_configuration.dart';
import 'package:dartz/dartz.dart';
import 'package:dio/dio.dart';
import 'package:email_recovery/email_recovery/email_recovery_action.dart';
import 'package:email_recovery/email_recovery/email_recovery_action_id.dart';
import 'package:jmap_dart_client/jmap/account_id.dart';
import 'package:jmap_dart_client/jmap/core/session/session.dart';
import 'package:jmap_dart_client/jmap/core/sort/comparator.dart';
@@ -21,6 +23,7 @@ import 'package:model/email/read_actions.dart';
import 'package:tmail_ui_user/features/composer/domain/model/email_request.dart';
import 'package:tmail_ui_user/features/email/domain/model/detailed_email.dart';
import 'package:tmail_ui_user/features/email/domain/model/move_to_mailbox_request.dart';
import 'package:tmail_ui_user/features/email/domain/model/restore_deleted_message_request.dart';
import 'package:tmail_ui_user/features/mailbox/domain/model/create_new_mailbox_request.dart';
abstract class EmailRepository {
@@ -106,4 +109,8 @@ abstract class EmailRepository {
);
Future<Email> unsubscribeMail(Session session, AccountId accountId, EmailId emailId);
Future<EmailRecoveryAction> restoreDeletedMessage(RestoredDeletedMessageRequest restoredDeletedMessageRequest);
Future<EmailRecoveryAction> getRestoredDeletedMessage(EmailRecoveryActionId emailRecoveryActionId);
}