TF-2681 Integrate get always read receipt setting interactor with composer controller
This commit is contained in:
@@ -51,6 +51,12 @@ import 'package:tmail_ui_user/features/offline_mode/manager/new_email_cache_work
|
|||||||
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_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/manager/opened_email_cache_worker_queue.dart';
|
||||||
import 'package:tmail_ui_user/features/offline_mode/manager/sending_email_cache_manager.dart';
|
import 'package:tmail_ui_user/features/offline_mode/manager/sending_email_cache_manager.dart';
|
||||||
|
import 'package:tmail_ui_user/features/server_settings/data/datasource/server_settings_data_source.dart';
|
||||||
|
import 'package:tmail_ui_user/features/server_settings/data/datasource_impl/remote_server_settings_data_source_impl.dart';
|
||||||
|
import 'package:tmail_ui_user/features/server_settings/data/network/server_settings_api.dart';
|
||||||
|
import 'package:tmail_ui_user/features/server_settings/data/repository/server_settings_repository_impl.dart';
|
||||||
|
import 'package:tmail_ui_user/features/server_settings/domain/repository/server_settings_repository.dart';
|
||||||
|
import 'package:tmail_ui_user/features/server_settings/domain/usecases/get_always_read_receipt_setting_interactor.dart';
|
||||||
import 'package:tmail_ui_user/features/thread/data/local/email_cache_manager.dart';
|
import 'package:tmail_ui_user/features/thread/data/local/email_cache_manager.dart';
|
||||||
import 'package:tmail_ui_user/features/upload/data/datasource/attachment_upload_datasource.dart';
|
import 'package:tmail_ui_user/features/upload/data/datasource/attachment_upload_datasource.dart';
|
||||||
import 'package:tmail_ui_user/features/upload/data/datasource_impl/attachment_upload_datasource_impl.dart';
|
import 'package:tmail_ui_user/features/upload/data/datasource_impl/attachment_upload_datasource_impl.dart';
|
||||||
@@ -118,6 +124,9 @@ class ComposerBindings extends BaseBindings {
|
|||||||
Get.find<SendingEmailCacheManager>(),
|
Get.find<SendingEmailCacheManager>(),
|
||||||
Get.find<FileUtils>(),
|
Get.find<FileUtils>(),
|
||||||
Get.find<CacheExceptionThrower>()));
|
Get.find<CacheExceptionThrower>()));
|
||||||
|
Get.lazyPut(() => RemoteServerSettingsDataSourceImpl(
|
||||||
|
Get.find<ServerSettingsAPI>(),
|
||||||
|
Get.find<RemoteExceptionThrower>()));
|
||||||
}
|
}
|
||||||
|
|
||||||
@override
|
@override
|
||||||
@@ -130,6 +139,8 @@ class ComposerBindings extends BaseBindings {
|
|||||||
Get.lazyPut<HtmlDataSource>(() => Get.find<HtmlDataSourceImpl>());
|
Get.lazyPut<HtmlDataSource>(() => Get.find<HtmlDataSourceImpl>());
|
||||||
Get.lazyPut<StateDataSource>(() => Get.find<StateDataSourceImpl>());
|
Get.lazyPut<StateDataSource>(() => Get.find<StateDataSourceImpl>());
|
||||||
Get.lazyPut<PrintFileDataSource>(() => Get.find<PrintFileDataSourceImpl>());
|
Get.lazyPut<PrintFileDataSource>(() => Get.find<PrintFileDataSourceImpl>());
|
||||||
|
Get.lazyPut<ServerSettingsDataSource>(
|
||||||
|
() => Get.find<RemoteServerSettingsDataSourceImpl>());
|
||||||
}
|
}
|
||||||
|
|
||||||
@override
|
@override
|
||||||
@@ -154,6 +165,9 @@ class ComposerBindings extends BaseBindings {
|
|||||||
Get.find<StateDataSource>(),
|
Get.find<StateDataSource>(),
|
||||||
Get.find<PrintFileDataSource>(),
|
Get.find<PrintFileDataSource>(),
|
||||||
));
|
));
|
||||||
|
Get.lazyPut(() => ServerSettingsRepositoryImpl(
|
||||||
|
Get.find<ServerSettingsDataSource>(),
|
||||||
|
));
|
||||||
}
|
}
|
||||||
|
|
||||||
@override
|
@override
|
||||||
@@ -162,6 +176,7 @@ class ComposerBindings extends BaseBindings {
|
|||||||
Get.lazyPut<ContactRepository>(() => Get.find<ContactRepositoryImpl>());
|
Get.lazyPut<ContactRepository>(() => Get.find<ContactRepositoryImpl>());
|
||||||
Get.lazyPut<MailboxRepository>(() => Get.find<MailboxRepositoryImpl>());
|
Get.lazyPut<MailboxRepository>(() => Get.find<MailboxRepositoryImpl>());
|
||||||
Get.lazyPut<EmailRepository>(() => Get.find<EmailRepositoryImpl>());
|
Get.lazyPut<EmailRepository>(() => Get.find<EmailRepositoryImpl>());
|
||||||
|
Get.lazyPut<ServerSettingsRepository>(() => Get.find<ServerSettingsRepositoryImpl>());
|
||||||
}
|
}
|
||||||
|
|
||||||
@override
|
@override
|
||||||
@@ -179,6 +194,7 @@ class ComposerBindings extends BaseBindings {
|
|||||||
Get.lazyPut(() => SaveComposerCacheOnWebInteractor(Get.find<ComposerCacheRepository>()));
|
Get.lazyPut(() => SaveComposerCacheOnWebInteractor(Get.find<ComposerCacheRepository>()));
|
||||||
Get.lazyPut(() => DownloadImageAsBase64Interactor(Get.find<ComposerRepository>()));
|
Get.lazyPut(() => DownloadImageAsBase64Interactor(Get.find<ComposerRepository>()));
|
||||||
Get.lazyPut(() => TransformHtmlEmailContentInteractor(Get.find<EmailRepository>()));
|
Get.lazyPut(() => TransformHtmlEmailContentInteractor(Get.find<EmailRepository>()));
|
||||||
|
Get.lazyPut(() => GetAlwaysReadReceiptSettingInteractor(Get.find<ServerSettingsRepository>()));
|
||||||
|
|
||||||
IdentityInteractorsBindings().dependencies();
|
IdentityInteractorsBindings().dependencies();
|
||||||
}
|
}
|
||||||
@@ -199,6 +215,7 @@ class ComposerBindings extends BaseBindings {
|
|||||||
Get.find<RichTextWebController>(),
|
Get.find<RichTextWebController>(),
|
||||||
Get.find<DownloadImageAsBase64Interactor>(),
|
Get.find<DownloadImageAsBase64Interactor>(),
|
||||||
Get.find<TransformHtmlEmailContentInteractor>(),
|
Get.find<TransformHtmlEmailContentInteractor>(),
|
||||||
|
Get.find<GetAlwaysReadReceiptSettingInteractor>(),
|
||||||
));
|
));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -76,6 +76,8 @@ import 'package:tmail_ui_user/features/network_connection/presentation/network_c
|
|||||||
import 'package:tmail_ui_user/features/sending_queue/domain/extensions/sending_email_extension.dart';
|
import 'package:tmail_ui_user/features/sending_queue/domain/extensions/sending_email_extension.dart';
|
||||||
import 'package:tmail_ui_user/features/sending_queue/domain/model/sending_email.dart';
|
import 'package:tmail_ui_user/features/sending_queue/domain/model/sending_email.dart';
|
||||||
import 'package:tmail_ui_user/features/sending_queue/presentation/model/sending_email_arguments.dart';
|
import 'package:tmail_ui_user/features/sending_queue/presentation/model/sending_email_arguments.dart';
|
||||||
|
import 'package:tmail_ui_user/features/server_settings/domain/state/get_always_read_receipt_setting_state.dart';
|
||||||
|
import 'package:tmail_ui_user/features/server_settings/domain/usecases/get_always_read_receipt_setting_interactor.dart';
|
||||||
import 'package:tmail_ui_user/features/upload/domain/model/upload_task_id.dart';
|
import 'package:tmail_ui_user/features/upload/domain/model/upload_task_id.dart';
|
||||||
import 'package:tmail_ui_user/features/upload/domain/state/attachment_upload_state.dart';
|
import 'package:tmail_ui_user/features/upload/domain/state/attachment_upload_state.dart';
|
||||||
import 'package:tmail_ui_user/features/upload/domain/state/local_file_picker_state.dart';
|
import 'package:tmail_ui_user/features/upload/domain/state/local_file_picker_state.dart';
|
||||||
@@ -120,6 +122,7 @@ class ComposerController extends BaseController {
|
|||||||
final RichTextWebController richTextWebController;
|
final RichTextWebController richTextWebController;
|
||||||
final DownloadImageAsBase64Interactor _downloadImageAsBase64Interactor;
|
final DownloadImageAsBase64Interactor _downloadImageAsBase64Interactor;
|
||||||
final TransformHtmlEmailContentInteractor _transformHtmlEmailContentInteractor;
|
final TransformHtmlEmailContentInteractor _transformHtmlEmailContentInteractor;
|
||||||
|
final GetAlwaysReadReceiptSettingInteractor _getAlwaysReadReceiptSettingInteractor;
|
||||||
|
|
||||||
GetAllAutoCompleteInteractor? _getAllAutoCompleteInteractor;
|
GetAllAutoCompleteInteractor? _getAllAutoCompleteInteractor;
|
||||||
GetAutoCompleteInteractor? _getAutoCompleteInteractor;
|
GetAutoCompleteInteractor? _getAutoCompleteInteractor;
|
||||||
@@ -180,6 +183,7 @@ class ComposerController extends BaseController {
|
|||||||
this.richTextWebController,
|
this.richTextWebController,
|
||||||
this._downloadImageAsBase64Interactor,
|
this._downloadImageAsBase64Interactor,
|
||||||
this._transformHtmlEmailContentInteractor,
|
this._transformHtmlEmailContentInteractor,
|
||||||
|
this._getAlwaysReadReceiptSettingInteractor,
|
||||||
);
|
);
|
||||||
|
|
||||||
@override
|
@override
|
||||||
@@ -197,6 +201,7 @@ class ComposerController extends BaseController {
|
|||||||
_listenBrowserTabRefresh();
|
_listenBrowserTabRefresh();
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
_getAlwaysReadReceiptSetting();
|
||||||
}
|
}
|
||||||
|
|
||||||
@override
|
@override
|
||||||
@@ -279,6 +284,8 @@ class ComposerController extends BaseController {
|
|||||||
);
|
);
|
||||||
}
|
}
|
||||||
maxWithEditor = null;
|
maxWithEditor = null;
|
||||||
|
} else if (success is GetAlwaysReadReceiptSettingSuccess) {
|
||||||
|
hasRequestReadReceipt.value = success.alwaysReadReceiptEnabled;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -297,6 +304,8 @@ class ComposerController extends BaseController {
|
|||||||
if (identitySelected.value == null) {
|
if (identitySelected.value == null) {
|
||||||
_autoFocusFieldWhenLauncher();
|
_autoFocusFieldWhenLauncher();
|
||||||
}
|
}
|
||||||
|
} else if (failure is GetAlwaysReadReceiptSettingFailure) {
|
||||||
|
hasRequestReadReceipt.value = true;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -2157,4 +2166,11 @@ class ComposerController extends BaseController {
|
|||||||
_closeComposerAction(result: draftArgs);
|
_closeComposerAction(result: draftArgs);
|
||||||
_closeComposerButtonState = ButtonState.enabled;
|
_closeComposerButtonState = ButtonState.enabled;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void _getAlwaysReadReceiptSetting() {
|
||||||
|
final accountId = mailboxDashBoardController.accountId.value;
|
||||||
|
if (accountId != null) {
|
||||||
|
consumeState(_getAlwaysReadReceiptSettingInteractor.execute(accountId));
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
Reference in New Issue
Block a user