TF-4066 Display Unread, Starred in list quick search button in dashboard view
This commit is contained in:
+38
@@ -0,0 +1,38 @@
|
||||
import 'package:dartz/dartz.dart';
|
||||
import 'package:jmap_dart_client/jmap/mail/email/keyword_identifier.dart';
|
||||
import 'package:tmail_ui_user/features/mailbox_dashboard/presentation/action/dashboard_action.dart';
|
||||
import 'package:tmail_ui_user/features/mailbox_dashboard/presentation/controller/mailbox_dashboard_controller.dart';
|
||||
|
||||
extension SelectSearchFilterActionExtension on MailboxDashBoardController {
|
||||
void selectStarredSearchFilter() {
|
||||
final listHasKeywordFiltered = searchController.listHasKeywordFiltered;
|
||||
if (!listHasKeywordFiltered.contains(KeyWordIdentifier.emailFlagged.value)) {
|
||||
listHasKeywordFiltered.add(KeyWordIdentifier.emailFlagged.value);
|
||||
}
|
||||
searchController.updateFilterEmail(
|
||||
hasKeywordOption: Some(listHasKeywordFiltered),
|
||||
);
|
||||
dispatchAction(StartSearchEmailAction());
|
||||
}
|
||||
|
||||
void selectUnreadSearchFilter() {
|
||||
searchController.updateFilterEmail(unreadOption: const Some(true));
|
||||
dispatchAction(StartSearchEmailAction());
|
||||
}
|
||||
|
||||
void deleteStarredSearchFilter() {
|
||||
final listHasKeywordFiltered = searchController.listHasKeywordFiltered;
|
||||
if (listHasKeywordFiltered.contains(KeyWordIdentifier.emailFlagged.value)) {
|
||||
listHasKeywordFiltered.remove(KeyWordIdentifier.emailFlagged.value);
|
||||
}
|
||||
searchController.updateFilterEmail(
|
||||
hasKeywordOption: Some(listHasKeywordFiltered),
|
||||
);
|
||||
dispatchAction(StartSearchEmailAction());
|
||||
}
|
||||
|
||||
void deleteUnreadSearchFilter() {
|
||||
searchController.updateFilterEmail(unreadOption: const None());
|
||||
dispatchAction(StartSearchEmailAction());
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user