Code refractoring

This commit is contained in:
AmanRajSinghMourya
2025-08-26 12:40:03 +05:30
parent fc32ba97c1
commit 37928cd2c6

View File

@@ -55,7 +55,7 @@ class BaseConfiguration {
// Keys that should not be deleted during logout
// These keys are necessary for functionality that needs to work even when users
// aren't signed in, such as using Auth without backup
// aren't signed in, such as using Auth without backup
List<String> preservedKeys = [offlineAuthSecretKey];
Future<void> init(List<EnteBaseDatabase> dbs) async {
@@ -74,14 +74,7 @@ class BaseConfiguration {
Future<void> logout({bool autoLogout = false}) async {
await _preferences.clear();
// Delete all keys except preserved ones
final allKeys = await _secureStorage.readAll();
for (final key in allKeys.keys) {
if (!preservedKeys.contains(key)) {
await _secureStorage.delete(key: key);
}
}
await resetSecureStorage();
for (final db in _databases) {
await db.clearTable();
}
@@ -91,6 +84,16 @@ class BaseConfiguration {
Bus.instance.fire(SignedOutEvent());
}
Future<void> resetSecureStorage() async {
// Delete all keys except preserved ones
final allKeys = await _secureStorage.readAll();
for (final key in allKeys.keys) {
if (!preservedKeys.contains(key)) {
await _secureStorage.delete(key: key);
}
}
}
Future<KeyGenResult> generateKey(String password) async {
// Create a master key
final masterKey = CryptoUtil.generateKey();
@@ -395,15 +398,7 @@ class BaseConfiguration {
Future<void> _setupKeys() async {
try {
if (!_preferences.containsKey(tokenKey)) {
// Delete all keys except preserved ones
final allKeys = await _secureStorage.readAll();
for (final key in allKeys.keys) {
if (!preservedKeys.contains(key)) {
await _secureStorage.delete(key: key);
}
}
await resetSecureStorage();
return;
}
_key = await _secureStorage.read(key: keyKey);