TF-3834 Implement remember user sort order after search

Signed-off-by: dab246 <tdvu@linagora.com>
This commit is contained in:
dab246
2025-07-29 16:06:59 +07:00
committed by Dat H. Pham
parent ec4b618a32
commit 1293c1a997
25 changed files with 312 additions and 23 deletions
@@ -0,0 +1,22 @@
import 'package:core/utils/app_logger.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';
import 'package:tmail_ui_user/features/mailbox_dashboard/presentation/model/search/email_sort_order_type.dart';
extension HandleStoreEmailSortOrderExtension on MailboxDashBoardController {
void storeEmailSortOrder(EmailSortOrderType emailSortOrder) {
setUpDefaultEmailSortOrder(emailSortOrder);
consumeState(storeEmailSortOrderInteractor.execute(emailSortOrder));
}
void loadStoredEmailSortOrder() {
consumeState(getStoredEmailSortOrderInteractor.execute());
}
void setUpDefaultEmailSortOrder(EmailSortOrderType storedSortOrder) {
log('$runtimeType::setUpDefaultEmailSortOrder: $storedSortOrder');
currentSortOrder = storedSortOrder;
dispatchAction(SynchronizeEmailSortOrderAction(currentSortOrder));
}
}