perf: suppression du blocage d'authentification au démarrage et chargement non bloquant de l'utilisateur
This commit is contained in:
+9
-21
@@ -105,28 +105,16 @@ class _MyAppState extends State<MyApp> {
|
||||
|
||||
await initializer.initialize();
|
||||
|
||||
// Attendre la première valeur d'authentification avant toute décision
|
||||
// de navigation, afin d'éviter un flash de la page login.
|
||||
await FirebaseAuth.instance.authStateChanges().first;
|
||||
|
||||
if (FirebaseAuth.instance.currentUser != null) {
|
||||
// Lancer la connexion automatique en dev sans bloquer le démarrage initial
|
||||
if (Env.isDevelopment && FirebaseAuth.instance.currentUser == null) {
|
||||
unawaited(
|
||||
localAuthProvider.loadUserData().catchError((e) {
|
||||
if (kDebugMode) debugPrint('User data bootstrap failed: $e');
|
||||
}),
|
||||
);
|
||||
return;
|
||||
}
|
||||
|
||||
// En développement, on garde la connexion automatique existante.
|
||||
if (Env.isDevelopment) {
|
||||
await localAuthProvider.signInWithEmailAndPassword(
|
||||
Env.devAdminEmail,
|
||||
Env.devAdminPassword,
|
||||
);
|
||||
unawaited(
|
||||
localAuthProvider.loadUserData().catchError((e) {
|
||||
if (kDebugMode) debugPrint('Dev user bootstrap failed: $e');
|
||||
localAuthProvider.signInWithEmailAndPassword(
|
||||
Env.devAdminEmail,
|
||||
Env.devAdminPassword,
|
||||
).then((_) {
|
||||
return localAuthProvider.loadUserData();
|
||||
}).catchError((e) {
|
||||
if (kDebugMode) debugPrint('Dev auto-login failed: $e');
|
||||
}),
|
||||
);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user