import 'package:appflowy/env/env.dart'; import 'package:appflowy/startup/startup.dart'; import 'package:appflowy/user/application/user_auth_listener.dart'; import 'package:appflowy_backend/log.dart'; class InitAppFlowyCloudTask extends LaunchTask { UserAuthStateListener? _authStateListener; bool isLoggingOut = false; @override Future initialize(LaunchContext context) async { if (!isAppFlowyCloudEnabled) { return; } _authStateListener = UserAuthStateListener(); _authStateListener?.start( didSignIn: () { isLoggingOut = false; }, onInvalidAuth: (message) async { Log.error(message); if (!isLoggingOut) { await runAppFlowy(); } }, ); } @override Future dispose() async { await _authStateListener?.stop(); _authStateListener = null; } }