TF-1362: [Domain] Get unreadSpamEmail in Usecase

This commit is contained in:
HuyNguyen
2023-01-11 13:46:48 +07:00
committed by Dat Vu
parent db5cc6a47b
commit 46b50842ce
16 changed files with 298 additions and 92 deletions
@@ -1,8 +1,12 @@
import 'package:core/data/model/source_type/data_source_type.dart';
import 'package:jmap_dart_client/jmap/account_id.dart';
import 'package:jmap_dart_client/jmap/core/unsigned_int.dart';
import 'package:jmap_dart_client/jmap/mail/mailbox/mailbox_filter_condition.dart';
import 'package:tmail_ui_user/features/mailbox_dashboard/data/datasource/spam_report_datasource.dart';
import 'package:tmail_ui_user/features/mailbox_dashboard/domain/model/unread_spam_emails_response.dart';
import 'package:tmail_ui_user/features/mailbox_dashboard/domain/repository/spam_report_repository.dart';
class SpamReportRepositoryImpl extends StoreLastTimeDismissedSpamReportInteractor {
class SpamReportRepositoryImpl extends SpamReportRepository {
final Map<DataSourceType, SpamReportDataSource> mapDataSource;
SpamReportRepositoryImpl(this.mapDataSource);
@@ -21,4 +25,16 @@ class SpamReportRepositoryImpl extends StoreLastTimeDismissedSpamReportInteracto
Future<void> deleteLastTimeDismissedSpamReported() {
return mapDataSource[DataSourceType.local]!.deleteLastTimeDismissedSpamReported();
}
@override
Future<UnreadSpamEmailsResponse> findNumberOfUnreadSpamEmails(
AccountId accountId,
{
MailboxFilterCondition? mailboxFilterCondition,
UnsignedInt? limit
}
) {
return mapDataSource[DataSourceType.network]!.findNumberOfUnreadSpamEmails(
accountId, mailboxFilterCondition: mailboxFilterCondition, limit: limit);
}
}