import 'package:comwell_key_app/presentation/app/app_event_listener.dart';
import 'package:comwell_key_app/utils/locator.dart';
import 'package:flutter/material.dart';
import 'package:flutter_bloc/flutter_bloc.dart';
import 'package:go_router/go_router.dart';
import 'package:comwell_key_app/presentation/screens/login/bloc/login_cubit.dart';
import 'package:comwell_key_app/presentation/screens/login/login_screen.dart';
import '../../../routing/app_routes.dart';
part '../../../.generated/presentation/screens/login/login_route.g.dart';
@TypedGoRoute<LoginRoute>(path: AppRoutes.login)
class LoginRoute extends GoRouteData with $LoginRoute {
final bool forced;
final String redirectAfterLogin;
const LoginRoute({this.forced = false, this.redirectAfterLogin = ""});
@override
Widget build(BuildContext context, GoRouterState state) {
return BlocProvider(
key: UniqueKey(),
create: (context) {
return LoginCubit(
locator.get(),
context.read(),
redirectAfterLogin: redirectAfterLogin,
forced: forced,
);
},
lazy: false,
child: const AppEventListener(child: LoginPage()),
);
}
}