como eu faço para sanar as dependências de um Widget que depende de states implementados com BLOC. Se pegarmos o projeto final do curso de i18N temos 3 BLOCS de dependência para que a minha tela de Dashboard funcione.
O código abaixo esta todo acoplado para que fique fácil entender minha duvida.
MaterialApp(
theme: bytebankTheme,
home: BlocProvider<CurrentLocaleCubit>( //Primeiro BLOC
create: (context) => CurrentLocaleCubit(),
child: BlocProvider(
create: (_) => NameCubit(name: 'Guess'), //Segundo BLOC
child: BlocProvider<I18NMessagesCubit>( //Terceiro BLOC
create: (BuildContext context) {
final cubit = I18NMessagesCubit("dashboard");
cubit.reload(I18NWebClient("dashboard"));
return cubit;
},
child: BlocBuilder<I18NMessagesCubit, I18NMessagesState>(
builder: (context, state) {
if (state is InitI18NMessagesState || state is LoadingI18NMessagesState) {
return Scaffold(body: LoadingCenteredMessage(message: 'Loading'));
}
if (state is LoadedI18NMessagesState) {
final messages = state.messages;
//-----------------------------------------------------------------------------------------
//Widget a ser testado para ver se contem uma Imagem
return DashboardView(DashboardViewLazyI18N(messages));
//------------------------------------------------------------------------------------------
}
return Scaffold(body: CenteredMessage("Erro buscando mensagens da tela"));
},
),
),
),
),
);