TF-3977 Separate settings keys for easier in conflict
This commit is contained in:
+20
-4
@@ -3,7 +3,10 @@ import 'dart:ui';
|
||||
import 'package:tmail_ui_user/features/manage_account/data/datasource/manage_account_datasource.dart';
|
||||
import 'package:tmail_ui_user/features/manage_account/data/local/language_cache_manager.dart';
|
||||
import 'package:tmail_ui_user/features/manage_account/data/local/preferences_setting_manager.dart';
|
||||
import 'package:tmail_ui_user/features/manage_account/presentation/model/preferences/preferences_root.dart';
|
||||
import 'package:tmail_ui_user/features/manage_account/domain/model/preferences/preferences_config.dart';
|
||||
import 'package:tmail_ui_user/features/manage_account/domain/model/preferences/preferences_setting.dart';
|
||||
import 'package:tmail_ui_user/features/manage_account/domain/model/preferences/spam_report_config.dart';
|
||||
import 'package:tmail_ui_user/features/manage_account/domain/model/preferences/thread_detail_config.dart';
|
||||
import 'package:tmail_ui_user/main/exceptions/exception_thrower.dart';
|
||||
|
||||
class ManageAccountDataSourceImpl extends ManageAccountDataSource {
|
||||
@@ -26,14 +29,27 @@ class ManageAccountDataSourceImpl extends ManageAccountDataSource {
|
||||
}
|
||||
|
||||
@override
|
||||
Future<void> updateLocalSettings(PreferencesRoot preferencesRoot) {
|
||||
Future<PreferencesSetting> toggleLocalSettingsState(PreferencesConfig preferencesConfig) {
|
||||
return Future.sync(() async {
|
||||
return await _preferencesSettingManager.savePreferences(preferencesRoot);
|
||||
if (preferencesConfig is ThreadDetailConfig) {
|
||||
await _preferencesSettingManager.updateThread(
|
||||
preferencesConfig.isEnabled,
|
||||
);
|
||||
} else if (preferencesConfig is SpamReportConfig) {
|
||||
await _preferencesSettingManager.updateSpamReport(
|
||||
isEnabled: preferencesConfig.isEnabled,
|
||||
);
|
||||
} else {
|
||||
await _preferencesSettingManager.savePreferences(
|
||||
preferencesConfig,
|
||||
);
|
||||
}
|
||||
return await _preferencesSettingManager.loadPreferences();
|
||||
}).catchError(_exceptionThrower.throwException);
|
||||
}
|
||||
|
||||
@override
|
||||
Future<PreferencesRoot> getLocalSettings() {
|
||||
Future<PreferencesSetting> getLocalSettings() {
|
||||
return Future.sync(() async {
|
||||
return await _preferencesSettingManager.loadPreferences();
|
||||
}).catchError(_exceptionThrower.throwException);
|
||||
|
||||
Reference in New Issue
Block a user