From e485506d4a18a9074ab97dbf92c3f34992fb8943 Mon Sep 17 00:00:00 2001 From: hieubt Date: Sat, 11 Nov 2023 00:38:47 +0700 Subject: [PATCH] TF-1709 Add sortOrder property to search_email_filter (cherry picked from commit 8b1f98a57085d6efbbe0b0ede4c99a6965e7a6b3) --- .../model/search/search_email_filter.dart | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/lib/features/mailbox_dashboard/presentation/model/search/search_email_filter.dart b/lib/features/mailbox_dashboard/presentation/model/search/search_email_filter.dart index 8a3e90bda..79c69979d 100644 --- a/lib/features/mailbox_dashboard/presentation/model/search/search_email_filter.dart +++ b/lib/features/mailbox_dashboard/presentation/model/search/search_email_filter.dart @@ -10,6 +10,7 @@ import 'package:model/extensions/presentation_mailbox_extension.dart'; import 'package:model/mailbox/presentation_mailbox.dart'; import 'package:tmail_ui_user/features/mailbox_dashboard/presentation/model/search/email_receive_time_type.dart'; import 'package:tmail_ui_user/features/thread/domain/model/search_query.dart'; +import 'package:jmap_dart_client/jmap/core/sort/comparator.dart'; class SearchEmailFilter with EquatableMixin { final Set from; @@ -23,6 +24,7 @@ class SearchEmailFilter with EquatableMixin { final UTCDate? before; final UTCDate? startDate; final UTCDate? endDate; + final Set? sortOrder; factory SearchEmailFilter.initial() => SearchEmailFilter(); @@ -38,12 +40,14 @@ class SearchEmailFilter with EquatableMixin { this.before, this.startDate, this.endDate, + Set? sortOrder, }) : from = from ?? {}, to = to ?? {}, notKeyword = notKeyword ?? {}, hasAttachment = hasAttachment ?? false, emailReceiveTimeType = - emailReceiveTimeType ?? EmailReceiveTimeType.allTime; + emailReceiveTimeType ?? EmailReceiveTimeType.allTime, + sortOrder = sortOrder ?? {}; SearchEmailFilter copyWith({ Option>? fromOption, @@ -57,6 +61,7 @@ class SearchEmailFilter with EquatableMixin { Option? beforeOption, Option? startDateOption, Option? endDateOption, + Set? sortOrder, }) { return SearchEmailFilter( from: _getOptionParam(fromOption, from), @@ -70,6 +75,7 @@ class SearchEmailFilter with EquatableMixin { before: _getOptionParam(beforeOption, before), startDate: _getOptionParam(startDateOption, startDate), endDate: _getOptionParam(endDateOption, endDate), + sortOrder: sortOrder ?? this.sortOrder, ); } @@ -131,6 +137,7 @@ class SearchEmailFilter with EquatableMixin { hasAttachment, before, startDate, - endDate + endDate, + sortOrder, ]; } \ No newline at end of file