Files
sfm_app_final/lib/product/cache/local_manager.dart
2024-12-15 00:59:02 +07:00

43 lines
1.2 KiB
Dart

import 'package:shared_preferences/shared_preferences.dart';
import '../constant/enums/local_keys_enums.dart';
class LocaleManager {
LocaleManager._init() {
SharedPreferences.getInstance().then((value) {
_preferences = value;
});
}
static final LocaleManager _instance = LocaleManager._init();
SharedPreferences? _preferences;
static LocaleManager get instance => _instance;
static Future prefrencesInit() async {
instance._preferences ??= await SharedPreferences.getInstance();
}
void setString(PreferencesKeys key, String value) async {
await _preferences?.setString(key.toString(), value);
}
void setInt(PreferencesKeys key, int value) async {
await _preferences?.setInt(key.toString(), value);
}
Future<void> setStringValue(PreferencesKeys key, String value) async {
await _preferences!.setString(key.toString(), value);
}
String getStringValue(PreferencesKeys key) =>
_preferences?.getString(key.toString()) ?? '';
int getIntValue(PreferencesKeys key) =>
_preferences?.getInt(key.toString()) ?? 0;
Future<void> deleteStringValue(PreferencesKeys key) async {
await _preferences!.remove(key.toString());
}
}