mirror of
https://github.com/Significant-Gravitas/AutoGPT.git
synced 2026-02-12 07:45:14 -05:00
Restructuring the Repo to make it clear the difference between classic autogpt and the autogpt platform: * Move the "classic" projects `autogpt`, `forge`, `frontend`, and `benchmark` into a `classic` folder * Also rename `autogpt` to `original_autogpt` for absolute clarity * Rename `rnd/` to `autogpt_platform/` * `rnd/autogpt_builder` -> `autogpt_platform/frontend` * `rnd/autogpt_server` -> `autogpt_platform/backend` * Adjust any paths accordingly
107 lines
2.9 KiB
Dart
107 lines
2.9 KiB
Dart
import 'package:shared_preferences/shared_preferences.dart';
|
|
|
|
class SharedPreferencesService {
|
|
SharedPreferencesService._privateConstructor();
|
|
|
|
static final SharedPreferencesService instance =
|
|
SharedPreferencesService._privateConstructor();
|
|
|
|
Future<SharedPreferences> _prefs = SharedPreferences.getInstance();
|
|
|
|
/// Sets a boolean [value] for the given [key] in the shared preferences.
|
|
///
|
|
/// Example:
|
|
/// ```dart
|
|
/// await prefsService.setBool('isLoggedIn', true);
|
|
/// ```
|
|
Future<void> setBool(String key, bool value) async {
|
|
final prefs = await _prefs;
|
|
prefs.setBool(key, value);
|
|
}
|
|
|
|
/// Sets a string [value] for the given [key] in the shared preferences.
|
|
///
|
|
/// Example:
|
|
/// ```dart
|
|
/// await prefsService.setString('username', 'Alice');
|
|
/// ```
|
|
Future<void> setString(String key, String value) async {
|
|
final prefs = await _prefs;
|
|
prefs.setString(key, value);
|
|
}
|
|
|
|
/// Sets an integer [value] for the given [key] in the shared preferences.
|
|
///
|
|
/// Example:
|
|
/// ```dart
|
|
/// await prefsService.setInt('age', 30);
|
|
/// ```
|
|
Future<void> setInt(String key, int value) async {
|
|
final prefs = await _prefs;
|
|
prefs.setInt(key, value);
|
|
}
|
|
|
|
/// Sets a list of strings [value] for the given [key] in the shared preferences.
|
|
///
|
|
/// Example:
|
|
/// ```dart
|
|
/// await prefsService.setStringList('favorites', ['Apples', 'Bananas']);
|
|
/// ```
|
|
Future<void> setStringList(String key, List<String> value) async {
|
|
final prefs = await _prefs;
|
|
prefs.setStringList(key, value);
|
|
}
|
|
|
|
/// Retrieves a boolean value for the given [key] from the shared preferences.
|
|
///
|
|
/// Returns `null` if the key does not exist.
|
|
///
|
|
/// Example:
|
|
/// ```dart
|
|
/// bool? isLoggedIn = await prefsService.getBool('isLoggedIn');
|
|
/// ```
|
|
Future<bool?> getBool(String key) async {
|
|
final prefs = await _prefs;
|
|
return prefs.getBool(key);
|
|
}
|
|
|
|
/// Retrieves a string value for the given [key] from the shared preferences.
|
|
///
|
|
/// Returns `null` if the key does not exist.
|
|
///
|
|
/// Example:
|
|
/// ```dart
|
|
/// String? username = await prefsService.getString('username');
|
|
/// ```
|
|
Future<String?> getString(String key) async {
|
|
final prefs = await _prefs;
|
|
return prefs.getString(key);
|
|
}
|
|
|
|
/// Retrieves an integer value for the given [key] from the shared preferences.
|
|
///
|
|
/// Returns `null` if the key does not exist.
|
|
///
|
|
/// Example:
|
|
/// ```dart
|
|
/// int? age = await prefsService.getInt('age');
|
|
/// ```
|
|
Future<int?> getInt(String key) async {
|
|
final prefs = await _prefs;
|
|
return prefs.getInt(key);
|
|
}
|
|
|
|
/// Retrieves a list of strings for the given [key] from the shared preferences.
|
|
///
|
|
/// Returns `null` if the key does not exist.
|
|
///
|
|
/// Example:
|
|
/// ```dart
|
|
/// List<String>? favorites = await prefsService.getStringList('favorites');
|
|
/// ```
|
|
Future<List<String>?> getStringList(String key) async {
|
|
final prefs = await _prefs;
|
|
return prefs.getStringList(key);
|
|
}
|
|
}
|