TF-2667 Add cancel button in progress saving message to drafts dialog

This commit is contained in:
dab246
2024-03-12 13:43:14 +07:00
committed by Dat H. Pham
parent f2b70aec48
commit c013e0306c
14 changed files with 297 additions and 94 deletions
+17 -6
View File
@@ -479,7 +479,12 @@ class EmailAPI with HandleSetErrorMixin {
});
}
Future<Email> saveEmailAsDrafts(Session session, AccountId accountId, Email email) async {
Future<Email> saveEmailAsDrafts(
Session session,
AccountId accountId,
Email email,
{CancelToken? cancelToken}
) async {
final idCreateMethod = Id(_uuid.v1());
final setEmailMethod = SetEmailMethod(accountId)
..addCreate(idCreateMethod, email);
@@ -494,7 +499,7 @@ class EmailAPI with HandleSetErrorMixin {
final response = await (requestBuilder
..usings(capabilities))
.build()
.execute();
.execute(cancelToken: cancelToken);
final setEmailResponse = response.parse<SetEmailResponse>(
setEmailInvocation.methodCallId,
@@ -511,7 +516,12 @@ class EmailAPI with HandleSetErrorMixin {
}
}
Future<bool> removeEmailDrafts(Session session, AccountId accountId, EmailId emailId) async {
Future<bool> removeEmailDrafts(
Session session,
AccountId accountId,
EmailId emailId,
{CancelToken? cancelToken}
) async {
final setEmailMethod = SetEmailMethod(accountId)
..addDestroy({emailId.id});
@@ -525,7 +535,7 @@ class EmailAPI with HandleSetErrorMixin {
final response = await (requestBuilder
..usings(capabilities))
.build()
.execute();
.execute(cancelToken: cancelToken);
final setEmailResponse = response.parse<SetEmailResponse>(
setEmailInvocation.methodCallId,
@@ -542,7 +552,8 @@ class EmailAPI with HandleSetErrorMixin {
Session session,
AccountId accountId,
Email newEmail,
EmailId oldEmailId
EmailId oldEmailId,
{CancelToken? cancelToken}
) async {
final idCreateMethod = Id(_uuid.v1());
final setEmailMethod = SetEmailMethod(accountId)
@@ -559,7 +570,7 @@ class EmailAPI with HandleSetErrorMixin {
final response = await (requestBuilder
..usings(capabilities))
.build()
.execute();
.execute(cancelToken: cancelToken);
final setEmailResponse = response.parse<SetEmailResponse>(
setEmailInvocation.methodCallId,