TF-80 Move multiple email to mailbox from thread view

This commit is contained in:
dab246
2021-09-21 12:52:27 +07:00
committed by Dat H. Pham
parent 24e52dc6a4
commit a12efc8d2b
43 changed files with 1007 additions and 443 deletions
@@ -1,35 +1,33 @@
import 'package:core/core.dart';
import 'package:dartz/dartz.dart';
import 'package:model/email/read_actions.dart';
class MarkAsMultipleEmailReadAllSuccess extends UIState {
final List<Either<Failure, Success>> resultList;
final int countMarkAsReadSuccess;
final ReadActions readActions;
MarkAsMultipleEmailReadAllSuccess(this.resultList, this.readActions);
MarkAsMultipleEmailReadAllSuccess(this.countMarkAsReadSuccess, this.readActions);
@override
List<Object?> get props => [resultList, readActions];
List<Object?> get props => [countMarkAsReadSuccess, readActions];
}
class MarkAsMultipleEmailReadAllFailure extends FeatureFailure {
final List<Either<Failure, Success>> resultList;
final ReadActions readActions;
MarkAsMultipleEmailReadAllFailure(this.resultList, this.readActions);
MarkAsMultipleEmailReadAllFailure(this.readActions);
@override
List<Object> get props => [resultList, readActions];
List<Object> get props => [readActions];
}
class MarkAsMultipleEmailReadHasSomeEmailFailure extends UIState {
final List<Either<Failure, Success>> resultList;
final int countMarkAsReadSuccess;
final ReadActions readActions;
MarkAsMultipleEmailReadHasSomeEmailFailure(this.resultList, this.readActions);
MarkAsMultipleEmailReadHasSomeEmailFailure(this.countMarkAsReadSuccess, this.readActions);
@override
List<Object> get props => [resultList, readActions];
List<Object> get props => [countMarkAsReadSuccess, readActions];
}
class MarkAsMultipleEmailReadFailure extends FeatureFailure {
@@ -0,0 +1,69 @@
import 'package:core/core.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';
class MoveMultipleEmailToMailboxAllSuccess extends UIState {
final List<EmailId> movedListEmailId;
final MailboxId currentMailboxId;
final MailboxId destinationMailboxId;
final MoveAction moveAction;
final String? destinationPath;
MoveMultipleEmailToMailboxAllSuccess(
this.movedListEmailId,
this.currentMailboxId,
this.destinationMailboxId,
this.moveAction,
this.destinationPath);
@override
List<Object?> get props => [
movedListEmailId,
currentMailboxId,
destinationMailboxId,
moveAction,
destinationPath];
}
class MoveMultipleEmailToMailboxAllFailure extends FeatureFailure {
final MoveAction moveAction;
MoveMultipleEmailToMailboxAllFailure(this.moveAction);
@override
List<Object> get props => [moveAction];
}
class MoveMultipleEmailToMailboxHasSomeEmailFailure extends UIState {
final List<EmailId> movedListEmailId;
final MailboxId currentMailboxId;
final MailboxId destinationMailboxId;
final MoveAction moveAction;
final String? destinationPath;
MoveMultipleEmailToMailboxHasSomeEmailFailure(
this.movedListEmailId,
this.currentMailboxId,
this.destinationMailboxId,
this.moveAction,
this.destinationPath);
@override
List<Object?> get props => [
movedListEmailId,
currentMailboxId,
destinationMailboxId,
moveAction,
destinationPath];
}
class MoveMultipleEmailToMailboxFailure extends FeatureFailure {
final exception;
final MoveAction moveAction;
MoveMultipleEmailToMailboxFailure(this.exception, this.moveAction);
@override
List<Object> get props => [exception, moveAction];
}