TF-2302 Fix move email to mailbox
(cherry picked from commit 639cba6bf9f5631fd36d0f1a65459beb5803a118)
This commit is contained in:
@@ -365,20 +365,14 @@ class EmailAPI with HandleSetErrorMixin {
|
||||
AccountId accountId,
|
||||
MoveToMailboxRequest moveRequest
|
||||
) async {
|
||||
requireCapability(
|
||||
moveRequest.session,
|
||||
accountId,
|
||||
[CapabilityIdentifier.jmapCore, CapabilityIdentifier.jmapMail]
|
||||
);
|
||||
|
||||
final coreCapability = moveRequest.session.getCapabilityProperties<CoreCapability>(
|
||||
final coreCapability = session.getCapabilityProperties<CoreCapability>(
|
||||
accountId,
|
||||
CapabilityIdentifier.jmapCore
|
||||
);
|
||||
final maxMethodCount = coreCapability.maxCallsInRequest?.value.toInt() ?? CapabilityIdentifierExtension.defaultMaxCallsInRequest;
|
||||
|
||||
var start = 0;
|
||||
var end = 0;
|
||||
int maxMethodCount = coreCapability?.maxCallsInRequest?.value.toInt() ?? CapabilityIdentifierExtension.defaultMaxCallsInRequest;
|
||||
log('EmailAPI::moveToMailbox:maxMethodCount: $maxMethodCount');
|
||||
int start = 0;
|
||||
int end = 0;
|
||||
|
||||
final List<EmailId> listEmailIdResult = List.empty(growable: true);
|
||||
final listCurrentMailboxesEntries = moveRequest.currentMailboxes.entries.toList();
|
||||
|
||||
@@ -1,9 +1,8 @@
|
||||
|
||||
import 'package:equatable/equatable.dart';
|
||||
import 'package:jmap_dart_client/jmap/core/session/session.dart';
|
||||
import 'package:jmap_dart_client/jmap/mail/email/email.dart';
|
||||
import 'package:jmap_dart_client/jmap/mail/mailbox/mailbox.dart';
|
||||
import 'package:model/model.dart';
|
||||
import 'package:model/email/email_action_type.dart';
|
||||
import 'package:tmail_ui_user/features/email/domain/model/move_action.dart';
|
||||
|
||||
class MoveToMailboxRequest with EquatableMixin {
|
||||
@@ -13,13 +12,11 @@ class MoveToMailboxRequest with EquatableMixin {
|
||||
final MoveAction moveAction;
|
||||
final EmailActionType emailActionType;
|
||||
final String? destinationPath;
|
||||
final Session session;
|
||||
|
||||
MoveToMailboxRequest(
|
||||
this.currentMailboxes,
|
||||
this.destinationMailboxId,
|
||||
this.moveAction,
|
||||
this.session,
|
||||
this.emailActionType,{
|
||||
this.destinationPath,
|
||||
});
|
||||
|
||||
@@ -788,7 +788,6 @@ class SingleEmailController extends BaseController with AppLoaderMixin {
|
||||
{currentMailbox.id: [emailSelected.id!]},
|
||||
destinationMailbox.id,
|
||||
MoveAction.moving,
|
||||
session,
|
||||
EmailActionType.moveToTrash));
|
||||
} else if (destinationMailbox.isSpam) {
|
||||
_moveToSpamAction(
|
||||
@@ -799,7 +798,6 @@ class SingleEmailController extends BaseController with AppLoaderMixin {
|
||||
{currentMailbox.id: [emailSelected.id!]},
|
||||
destinationMailbox.id,
|
||||
MoveAction.moving,
|
||||
session,
|
||||
EmailActionType.moveToSpam));
|
||||
} else {
|
||||
_moveToMailbox(
|
||||
@@ -810,7 +808,6 @@ class SingleEmailController extends BaseController with AppLoaderMixin {
|
||||
{currentMailbox.id: [emailSelected.id!]},
|
||||
destinationMailbox.id,
|
||||
MoveAction.moving,
|
||||
session,
|
||||
EmailActionType.moveToMailbox,
|
||||
destinationPath: destinationMailbox.mailboxPath));
|
||||
}
|
||||
@@ -833,7 +830,6 @@ class SingleEmailController extends BaseController with AppLoaderMixin {
|
||||
{success.destinationMailboxId: [success.emailId]},
|
||||
success.currentMailboxId,
|
||||
MoveAction.undo,
|
||||
mailboxDashBoardController.sessionCurrent!,
|
||||
success.emailActionType));
|
||||
},
|
||||
leadingSVGIcon: imagePaths.icFolderMailbox,
|
||||
@@ -868,7 +864,6 @@ class SingleEmailController extends BaseController with AppLoaderMixin {
|
||||
{currentMailbox.id: [email.id!]},
|
||||
trashMailboxId,
|
||||
MoveAction.moving,
|
||||
mailboxDashBoardController.sessionCurrent!,
|
||||
EmailActionType.moveToTrash)
|
||||
);
|
||||
}
|
||||
@@ -899,7 +894,6 @@ class SingleEmailController extends BaseController with AppLoaderMixin {
|
||||
{currentMailbox.id: [email.id!]},
|
||||
spamMailboxId,
|
||||
MoveAction.moving,
|
||||
mailboxDashBoardController.sessionCurrent!,
|
||||
EmailActionType.moveToSpam)
|
||||
);
|
||||
}
|
||||
@@ -920,7 +914,6 @@ class SingleEmailController extends BaseController with AppLoaderMixin {
|
||||
{spamMailboxId: [email.id!]},
|
||||
inboxMailboxId,
|
||||
MoveAction.moving,
|
||||
mailboxDashBoardController.sessionCurrent!,
|
||||
EmailActionType.unSpam)
|
||||
);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user