import 'package:app_flowy/home/application/menu/menu_bloc.dart'; import 'package:app_flowy/home/application/menu/menu_watch.dart'; import 'package:app_flowy/home/infrastructure/i_app_impl.dart'; 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'; import 'package:get_it/get_it.dart'; class HomeDepsResolver { static Future resolve(GetIt getIt) async { //App getIt.registerFactoryParam( (appId, _) => AppRepository(appId: appId)); getIt.registerFactoryParam( (appId, _) => AppWatchRepository(appId: appId)); getIt.registerFactoryParam( (appId, _) => IAppImpl(repo: getIt(param1: appId))); getIt.registerFactoryParam((appId, _) => IAppWatchImpl(repo: getIt(param1: appId))); //workspace getIt.registerFactoryParam( (workspaceId, _) => WorkspaceRepo(workspaceId: workspaceId)); getIt.registerFactoryParam( (workspaceId, _) => WorkspaceWatchRepo(workspaceId: workspaceId)); getIt.registerFactoryParam((workspacId, _) => IWorkspaceImpl(repo: getIt(param1: workspacId))); getIt.registerFactoryParam((workspacId, _) => IWorkspaceWatchImpl( repo: getIt(param1: workspacId))); //Bloc getIt.registerFactoryParam( (workspaceId, _) => MenuBloc(getIt(param1: workspaceId))); getIt.registerFactoryParam((workspaceId, _) => MenuWatchBloc(getIt(param1: workspaceId))); // AppWatchBloc } }