TF-1812 Handle add sending email to queue in work manager

(cherry picked from commit c5d89665f525550949bf4e694133ce5ea2777846)
This commit is contained in:
dab246
2023-05-26 08:51:16 +07:00
committed by Dat Vu
parent c98be4cfc5
commit fc94e0aa04
14 changed files with 122 additions and 34 deletions
@@ -35,7 +35,6 @@ import 'package:tmail_ui_user/features/offline_mode/manager/detailed_email_cache
import 'package:tmail_ui_user/features/offline_mode/manager/detailed_email_cache_worker_queue.dart';
import 'package:tmail_ui_user/features/offline_mode/manager/opened_email_cache_manager.dart';
import 'package:tmail_ui_user/features/offline_mode/manager/opened_email_cache_worker_queue.dart';
import 'package:tmail_ui_user/features/offline_mode/worker/hive_task.dart';
import 'package:tmail_ui_user/features/thread/data/extensions/email_cache_extension.dart';
import 'package:tmail_ui_user/features/offline_mode/manager/sending_email_cache_manager.dart';
import 'package:tmail_ui_user/features/thread/data/extensions/email_extension.dart';
@@ -1,10 +1,19 @@
import 'package:core/presentation/state/failure.dart';
import 'package:core/presentation/state/success.dart';
import 'package:tmail_ui_user/features/composer/domain/model/sending_email.dart';
class StoreSendingEmailLoading extends UIState {}
class StoreSendingEmailSuccess extends UIState {}
class StoreSendingEmailSuccess extends UIState {
final SendingEmail sendingEmail;
StoreSendingEmailSuccess(this.sendingEmail);
@override
List<Object?> get props => [sendingEmail];
}
class StoreSendingEmailFailure extends FeatureFailure {
StoreSendingEmailFailure(dynamic exception) : super(exception: exception);
@@ -16,7 +16,7 @@ class StoreSendingEmailInteractor {
try {
yield Right<Failure, Success>(StoreSendingEmailLoading());
await _emailRepository.storeSendingEmail(accountId, userName, sendingEmail);
yield Right<Failure, Success>(StoreSendingEmailSuccess());
yield Right<Failure, Success>(StoreSendingEmailSuccess(sendingEmail));
} catch (e) {
yield Left<Failure, Success>(StoreSendingEmailFailure(e));
}