KinjectModule for modular architecture
KinjectModule is a class that can be used to provide instances for a specific module.
It is useful for modular architecture, where you can provide instances for a specific module.
class LoginModule extends KinjectModule {
const LoginModule({super.key});
@override
List<ProxyKinject> binds(BuildContext context) {
return [
ProxyKinject<AuthDataSource>((_) => AuthDataSourceImpl()),
ProxyKinject<AuthRepository>(
(context) => AuthRepositoryImpl(
context.resolve<AuthDataSource>(),
),
),
ProxyKinject<LoginBloc>(
(context) => LoginBloc(
context.resolve<AuthRepository>(),
),
),
];
}