TF-851 [iOS] Share image with TMail app

This commit is contained in:
ManhNTX
2022-08-29 05:41:18 +07:00
committed by Dat H. Pham
parent 63e444d1dc
commit f8b5ddc227
7 changed files with 23 additions and 16 deletions
@@ -54,6 +54,7 @@ import 'package:tmail_ui_user/features/upload/data/network/file_uploader.dart';
import 'package:tmail_ui_user/features/upload/domain/usecases/local_file_picker_interactor.dart';
import 'package:tmail_ui_user/features/upload/presentation/controller/upload_controller.dart';
import 'package:tmail_ui_user/main/bindings/network/binding_tag.dart';
import 'package:worker_manager/worker_manager.dart';
class ComposerBindings extends BaseBindings {
@@ -64,7 +65,7 @@ class ComposerBindings extends BaseBindings {
}
void _bindingsUtils() {
Get.lazyPut(() => FileUploader(Get.find<DioClient>(tag: BindingTag.isoLateTag)));
Get.lazyPut(() => FileUploader(Get.find<DioClient>(tag: BindingTag.isoLateTag), Get.find<Executor>()));
}
@override
@@ -29,8 +29,9 @@ class MailboxIsolateWorker {
final ThreadAPI _threadApi;
final EmailAPI _emailApi;
final Executor _isolateExecutor;
MailboxIsolateWorker(this._threadApi, this._emailApi);
MailboxIsolateWorker(this._threadApi, this._emailApi, this._isolateExecutor);
Future<List<Email>> markAsMailboxRead(
AccountId accountId,
@@ -45,7 +46,7 @@ class MailboxIsolateWorker {
totalEmailUnread,
onProgressController);
} else {
final result = await Executor().execute(
final result = await _isolateExecutor.execute(
arg1: MailboxMarkAsReadArguments(
_threadApi,
_emailApi,
@@ -19,8 +19,9 @@ import 'package:worker_manager/worker_manager.dart';
class ThreadIsolateWorker {
final ThreadAPI _threadAPI;
final EmailAPI _emailAPI;
final Executor _isolateExecutor;
ThreadIsolateWorker(this._threadAPI, this._emailAPI);
ThreadIsolateWorker(this._threadAPI, this._emailAPI, this._isolateExecutor);
Future<List<EmailId>> emptyTrashFolder(
AccountId accountId,
@@ -30,7 +31,7 @@ class ThreadIsolateWorker {
if (BuildUtils.isWeb) {
return _emptyTrashFolderOnWeb(accountId, mailboxId, updateDestroyedEmailCache);
} else {
final result = await Executor().execute(
final result = await _isolateExecutor.execute(
arg1: EmptyTrashFolderArguments(_threadAPI, _emailAPI, accountId, mailboxId),
fun1: _emptyTrashFolderAction,
notification: (value) {
@@ -17,8 +17,9 @@ import 'package:worker_manager/worker_manager.dart' as worker;
class FileUploader {
final DioClient _dioClient;
final worker.Executor _isolateExecutor;
FileUploader(this._dioClient);
FileUploader(this._dioClient, this._isolateExecutor);
Future<Attachment?> uploadAttachment(
UploadTaskId uploadId,
@@ -35,7 +36,7 @@ class FileUploader {
uploadUri,
cancelToken: cancelToken);
} else {
final attachmentUploaded = await worker.Executor().execute(
final attachmentUploaded = await _isolateExecutor.execute(
arg1: UploadFileArguments(
_dioClient,
uploadId,