TF-2101 Handle restore deleted messages

(cherry picked from commit e675f98a6c85d9c4a90efc686e6ff72d23b4c678)
This commit is contained in:
hieubt
2023-12-21 16:56:06 +07:00
committed by Dat H. Pham
parent 4f6b500fa0
commit 71dc206ccd
30 changed files with 457 additions and 99 deletions
@@ -20,9 +20,11 @@ import 'package:tmail_ui_user/features/email/data/repository/email_repository_im
import 'package:tmail_ui_user/features/email/domain/repository/email_repository.dart';
import 'package:tmail_ui_user/features/email/domain/usecases/delete_email_permanently_interactor.dart';
import 'package:tmail_ui_user/features/email/domain/usecases/delete_multiple_emails_permanently_interactor.dart';
import 'package:tmail_ui_user/features/email/domain/usecases/get_restored_deleted_message_interactor.dart';
import 'package:tmail_ui_user/features/email/domain/usecases/mark_as_email_read_interactor.dart';
import 'package:tmail_ui_user/features/email/domain/usecases/mark_as_star_email_interactor.dart';
import 'package:tmail_ui_user/features/email/domain/usecases/move_to_mailbox_interactor.dart';
import 'package:tmail_ui_user/features/email/domain/usecases/restore_deleted_message_interactor.dart';
import 'package:tmail_ui_user/features/email/domain/usecases/unsubscribe_email_interactor.dart';
import 'package:tmail_ui_user/features/email/presentation/bindings/email_bindings.dart';
import 'package:tmail_ui_user/features/home/domain/repository/session_repository.dart';
@@ -162,6 +164,8 @@ class MailboxDashBoardBindings extends BaseBindings {
Get.find<UpdateEmailDraftsInteractor>(),
Get.find<DeleteSendingEmailInteractor>(),
Get.find<UnsubscribeEmailInteractor>(),
Get.find<RestoredDeletedMessageInteractor>(),
Get.find<GetRestoredDeletedMessageInterator>(),
));
Get.put(AdvancedFilterController());
}
@@ -176,6 +180,8 @@ class MailboxDashBoardBindings extends BaseBindings {
Get.lazyPut<MailboxDataSource>(() => Get.find<MailboxDataSourceImpl>());
Get.lazyPut<SessionStorageComposerDatasource>(() => Get.find<SessionStorageComposerDatasourceImpl>());
Get.lazyPut<SpamReportDataSource>(() => Get.find<SpamReportDataSourceImpl>());
Get.lazyPut<MailboxDataSource>(() => Get.find<MailboxDataSourceImpl>());
Get.lazyPut<MailboxCacheDataSourceImpl>(() => Get.find<MailboxCacheDataSourceImpl>());
}
@override
@@ -307,6 +313,14 @@ class MailboxDashBoardBindings extends BaseBindings {
Get.find<MailboxRepository>()
));
Get.lazyPut(() => UnsubscribeEmailInteractor(Get.find<EmailRepository>()));
Get.lazyPut(() => RestoredDeletedMessageInteractor(
Get.find<EmailRepository>(),
Get.find<MailboxRepository>()
));
Get.lazyPut(() => GetRestoredDeletedMessageInterator(
Get.find<EmailRepository>(),
Get.find<MailboxRepository>()
));
}
@override
@@ -318,6 +332,7 @@ class MailboxDashBoardBindings extends BaseBindings {
Get.lazyPut<MailboxRepository>(() => Get.find<MailboxRepositoryImpl>());
Get.lazyPut<ComposerCacheRepository>(() => Get.find<ComposerCacheRepositoryImpl>());
Get.lazyPut<SpamReportRepository>(() => Get.find<SpamReportRepositoryImpl>());
Get.lazyPut<MailboxRepository>(() => Get.find<MailboxRepositoryImpl>());
}
@override
@@ -353,5 +368,12 @@ class MailboxDashBoardBindings extends BaseBindings {
DataSourceType.hiveCache: Get.find<HiveSpamReportDataSourceImpl>()
},
));
Get.lazyPut(() => MailboxRepositoryImpl(
{
DataSourceType.network: Get.find<MailboxDataSource>(),
DataSourceType.local: Get.find<MailboxCacheDataSourceImpl>()
},
Get.find<StateDataSource>(),
));
}
}