prompt for password once

This commit is contained in:
Scott E. Graves 2025-03-20 18:36:10 -05:00
parent 6570438872
commit d9b8a60055

View File

@ -235,12 +235,13 @@ bool validateSettings(
}
Future<Map<String, dynamic>> convertAllToString(
Map<String, dynamic> settings, {
String? password,
}) async {
Map<String, dynamic> settings,
) async {
String? password;
Future<Map<String, dynamic>> convert(Map<String, dynamic> settings) async {
for (var entry in settings.entries) {
if (entry.value is Map<String, dynamic>) {
convertAllToString(entry.value, password: password);
convert(entry.value);
continue;
}
@ -258,7 +259,7 @@ Future<Map<String, dynamic>> convertAllToString(
}
}
settings[entry.key] = encryptValue(entry.value, password);
settings[entry.key] = encryptValue(entry.value, password!);
continue;
}
@ -272,6 +273,9 @@ Future<Map<String, dynamic>> convertAllToString(
return settings;
}
return await convert(settings);
}
String encryptValue(String value, String password) {
if (value.isEmpty) {
return value;