Skip to content

Commit ccbd41f

Browse files
committed
feat: Implement access token migration from legacy SharedPreferences to new SharedPreferencesAsync
1 parent 44719d0 commit ccbd41f

File tree

1 file changed

+15
-0
lines changed

1 file changed

+15
-0
lines changed

packages/supabase_flutter/lib/src/local_storage.dart

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -78,6 +78,21 @@ class SharedPreferencesLocalStorage extends LocalStorage {
7878
if (!_useWebLocalStorage) {
7979
WidgetsFlutterBinding.ensureInitialized();
8080
_prefs = SharedPreferencesAsync();
81+
82+
await _maybeMigrateAccessToken();
83+
}
84+
}
85+
86+
Future<void> _maybeMigrateAccessToken() async {
87+
final legacyPrefs = await SharedPreferences.getInstance();
88+
89+
if (legacyPrefs.containsKey(persistSessionKey)) {
90+
final accessToken = legacyPrefs.getString(persistSessionKey);
91+
92+
if (accessToken != null) {
93+
await legacyPrefs.remove(persistSessionKey);
94+
await _prefs.setString(persistSessionKey, accessToken);
95+
}
8196
}
8297
}
8398

0 commit comments

Comments
 (0)