Files
apidash/lib/services/shared_preferences_services.dart
Ashita Prasad a3536b021b refactor
2024-10-22 07:06:06 +05:30

29 lines
993 B
Dart

import 'package:apidash_core/apidash_core.dart';
import 'package:shared_preferences/shared_preferences.dart';
import '../models/models.dart';
const String kSharedPrefSettingsKey = 'apidash-settings';
Future<SettingsModel?> getSettingsFromSharedPrefs() async {
final prefs = await SharedPreferences.getInstance();
var settingsStr = prefs.getString(kSharedPrefSettingsKey);
if (settingsStr != null) {
var jsonSettings = kJsonDecoder.convert(settingsStr);
var jsonMap = Map<String, Object?>.from(jsonSettings);
var settingsModel = SettingsModel.fromJson(jsonMap);
return settingsModel;
} else {
return null;
}
}
Future<void> setSettingsToSharedPrefs(SettingsModel settingsModel) async {
final prefs = await SharedPreferences.getInstance();
await prefs.setString(kSharedPrefSettingsKey, settingsModel.toString());
}
Future<void> clearSharedPrefs() async {
final prefs = await SharedPreferences.getInstance();
await prefs.remove(kSharedPrefSettingsKey);
}