libretranslatr

This commit is contained in:
y1lm0z
2026-07-14 17:37:17 +03:00
parent 1b8149a4cf
commit 8a562e5bf6
46 changed files with 2040 additions and 106 deletions
+31
View File
@@ -0,0 +1,31 @@
import 'package:shared_preferences/shared_preferences.dart';
/// Sunucu URL'si ve API key gibi ayarları kalıcı olarak saklar.
class SettingsService {
static const _keyServerUrl = 'server_url';
static const _keyApiKey = 'api_key';
Future<String?> getServerUrl() async {
final prefs = await SharedPreferences.getInstance();
return prefs.getString(_keyServerUrl);
}
Future<String?> getApiKey() async {
final prefs = await SharedPreferences.getInstance();
final key = prefs.getString(_keyApiKey);
return (key == null || key.isEmpty) ? null : key;
}
Future<void> save({required String serverUrl, required String apiKey}) async {
final prefs = await SharedPreferences.getInstance();
// Sonundaki "/" karakterini temizle, karışıklık olmasın.
final cleanUrl = serverUrl.trim().replaceAll(RegExp(r'/+$'), '');
await prefs.setString(_keyServerUrl, cleanUrl);
await prefs.setString(_keyApiKey, apiKey.trim());
}
Future<bool> hasSettings() async {
final url = await getServerUrl();
return url != null && url.isNotEmpty;
}
}