TF-3707 Handle empty spam folder with clear mailbox method
Signed-off-by: dab246 <tdvu@linagora.com>
This commit is contained in:
@@ -8,14 +8,16 @@ class ClearingMailbox extends LoadingState {}
|
||||
class ClearMailboxSuccess extends UIState {
|
||||
final UnsignedInt totalDeletedMessages;
|
||||
final MailboxId mailboxId;
|
||||
final Role mailboxRole;
|
||||
|
||||
ClearMailboxSuccess(this.mailboxId, this.totalDeletedMessages);
|
||||
ClearMailboxSuccess(this.mailboxId, this.mailboxRole, this.totalDeletedMessages);
|
||||
|
||||
@override
|
||||
List<Object> get props => [mailboxId, totalDeletedMessages];
|
||||
List<Object> get props => [mailboxId, mailboxRole, totalDeletedMessages];
|
||||
}
|
||||
|
||||
class ClearMailboxFailure extends FeatureFailure {
|
||||
final Role mailboxRole;
|
||||
|
||||
ClearMailboxFailure(dynamic exception) : super(exception: exception);
|
||||
ClearMailboxFailure(this.mailboxRole, {dynamic exception}) : super(exception: exception);
|
||||
}
|
||||
@@ -16,6 +16,7 @@ class ClearMailboxInteractor {
|
||||
Session session,
|
||||
AccountId accountId,
|
||||
MailboxId mailboxId,
|
||||
Role mailboxRole,
|
||||
) async* {
|
||||
try {
|
||||
yield Right<Failure, Success>(ClearingMailbox());
|
||||
@@ -24,9 +25,13 @@ class ClearMailboxInteractor {
|
||||
accountId,
|
||||
mailboxId,
|
||||
);
|
||||
yield Right<Failure, Success>(ClearMailboxSuccess(mailboxId, totalDeletedMessages));
|
||||
yield Right<Failure, Success>(ClearMailboxSuccess(
|
||||
mailboxId,
|
||||
mailboxRole,
|
||||
totalDeletedMessages,
|
||||
));
|
||||
} catch (e) {
|
||||
yield Left<Failure, Success>(ClearMailboxFailure(e));
|
||||
yield Left<Failure, Success>(ClearMailboxFailure(mailboxRole, exception: e));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user