TF-524 Apply quick search for mobile and tablet
This commit is contained in:
@@ -1,17 +0,0 @@
|
||||
|
||||
import 'package:equatable/equatable.dart';
|
||||
import 'package:jmap_dart_client/jmap/core/filter/filter.dart';
|
||||
import 'package:jmap_dart_client/jmap/mail/mailbox/mailbox.dart';
|
||||
import 'package:model/email/filter_message_option.dart';
|
||||
|
||||
class EmailFilter with EquatableMixin {
|
||||
|
||||
final Filter? filter;
|
||||
final FilterMessageOption? filterOption;
|
||||
final MailboxId? mailboxId;
|
||||
|
||||
EmailFilter({this.filter, this.filterOption, this.mailboxId});
|
||||
|
||||
@override
|
||||
List<Object?> get props => [filter, filterOption, mailboxId];
|
||||
}
|
||||
@@ -1,40 +0,0 @@
|
||||
|
||||
import 'package:jmap_dart_client/jmap/mail/email/email.dart';
|
||||
import 'package:model/email/presentation_email.dart';
|
||||
import 'package:model/extensions/email_extension.dart';
|
||||
|
||||
enum FilterMessageOption {
|
||||
all,
|
||||
unread,
|
||||
attachments,
|
||||
starred,
|
||||
}
|
||||
|
||||
extension FilterMessageOptionExtension on FilterMessageOption {
|
||||
|
||||
bool filterPresentationEmail(PresentationEmail email) {
|
||||
switch(this) {
|
||||
case FilterMessageOption.all:
|
||||
return true;
|
||||
case FilterMessageOption.unread:
|
||||
return !email.hasRead;
|
||||
case FilterMessageOption.attachments:
|
||||
return email.withAttachments;
|
||||
case FilterMessageOption.starred:
|
||||
return email.hasStarred;
|
||||
}
|
||||
}
|
||||
|
||||
bool filterEmail(Email email) {
|
||||
switch(this) {
|
||||
case FilterMessageOption.all:
|
||||
return true;
|
||||
case FilterMessageOption.unread:
|
||||
return !email.hasRead;
|
||||
case FilterMessageOption.attachments:
|
||||
return email.withAttachments;
|
||||
case FilterMessageOption.starred:
|
||||
return email.hasStarred;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -27,9 +27,7 @@ export 'email/read_actions.dart';
|
||||
export 'email/attachment.dart';
|
||||
export 'email/mark_star_action.dart';
|
||||
export 'email/email_property.dart';
|
||||
export 'email/email_filter.dart';
|
||||
export 'email/email_content_type.dart';
|
||||
export 'email/filter_message_option.dart';
|
||||
|
||||
// Extensions
|
||||
export 'extensions/email_address_extension.dart';
|
||||
|
||||
Reference in New Issue
Block a user