25 lines
1021 B
Dart
Raw Normal View History

2021-07-21 15:43:05 +08:00
import 'package:app_flowy/home/application/menu/menu_bloc.dart';
import 'package:app_flowy/home/infrastructure/i_app_impl.dart';
2021-07-21 17:05:51 +08:00
import 'package:app_flowy/home/infrastructure/i_workspace_impl.dart';
import 'package:app_flowy/home/infrastructure/repos/app_repo.dart';
import 'package:app_flowy/home/infrastructure/repos/workspace_repo.dart';
2021-07-21 15:43:05 +08:00
import 'package:get_it/get_it.dart';
class HomeDepsResolver {
static Future<void> resolve(GetIt getIt) async {
2021-07-21 17:11:55 +08:00
getIt.registerFactoryParam<WorkspaceRepository, String, void>(
(workspaceId, _) => WorkspaceRepository(workspaceId: workspaceId));
2021-07-21 17:05:51 +08:00
getIt.registerFactoryParam<AppRepository, String, void>(
(appId, _) => AppRepository(appId: appId));
2021-07-21 15:43:05 +08:00
//Interface implementation
getIt.registerFactory<IApp>(() => IAppImpl(repo: getIt<AppRepository>()));
2021-07-21 17:05:51 +08:00
getIt.registerFactory<IWorkspace>(
() => IWorkspaceImpl(repo: getIt<WorkspaceRepository>()));
2021-07-21 15:43:05 +08:00
//Bloc
2021-07-21 17:05:51 +08:00
getIt.registerFactory<MenuBloc>(() => MenuBloc(getIt<IWorkspace>()));
2021-07-21 15:43:05 +08:00
}
}