TF-1363: [Date] Implement Store, Get, Delete spamReportState in Repository and datasource
This commit is contained in:
+18
@@ -3,6 +3,7 @@ import 'package:jmap_dart_client/jmap/core/unsigned_int.dart';
|
||||
import 'package:jmap_dart_client/jmap/mail/mailbox/mailbox_filter_condition.dart';
|
||||
import 'package:shared_preferences/shared_preferences.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/spam_report_state.dart';
|
||||
import 'package:tmail_ui_user/features/mailbox_dashboard/domain/model/unread_spam_emails_response.dart';
|
||||
import 'package:tmail_ui_user/features/mailbox_dashboard/utils/mailbox_dashboard_constant.dart';
|
||||
|
||||
@@ -39,4 +40,21 @@ class SharePreferenceSpamReportDataSource extends SpamReportDataSource {
|
||||
) {
|
||||
throw UnimplementedError();
|
||||
}
|
||||
|
||||
@override
|
||||
Future<bool> deletestoreSpamReportState() async {
|
||||
return await _sharedPreferences.remove(MailboxDashboardConstant.keySpamReportState);
|
||||
}
|
||||
|
||||
@override
|
||||
Future<SpamReportState> getSpamReportState() async {
|
||||
final _spamReportState = _sharedPreferences.getString(MailboxDashboardConstant.keySpamReportState) ?? '';
|
||||
return _spamReportState == SpamReportState.disabled.keyValue ? SpamReportState.disabled : SpamReportState.enabled;
|
||||
}
|
||||
|
||||
@override
|
||||
Future<bool> storeSpamReportState(SpamReportState spamReportState) async {
|
||||
final _spamReportState = spamReportState.keyValue;
|
||||
return await _sharedPreferences.setString(MailboxDashboardConstant.keySpamReportState, _spamReportState);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user