TF-524 Apply quick search for mobile and tablet

This commit is contained in:
dab246
2022-05-24 11:56:50 +07:00
committed by Dat H. Pham
parent 9a142a0e23
commit 11c9a8713a
30 changed files with 647 additions and 2429 deletions
-17
View File
@@ -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;
}
}
}
-2
View File
@@ -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';