startup.dart 740 B

12345678910111213141516171819202122232425262728293031323334
  1. import 'package:app_flowy/startup/launch.dart';
  2. import 'package:app_flowy/startup/tasks/prelude.dart';
  3. import 'package:flutter/material.dart';
  4. import 'package:get_it/get_it.dart';
  5. import 'deps_inject/prelude.dart';
  6. final getIt = GetIt.instance;
  7. enum IntegrationEnv {
  8. dev,
  9. pro,
  10. }
  11. abstract class AppFactory {
  12. Widget create();
  13. }
  14. class App {
  15. static void run(AppFactory f) {
  16. // Specify the evn
  17. const env = IntegrationEnv.dev;
  18. // Config the deps graph
  19. getIt.registerFactory<AppFactory>(() => f);
  20. resolveDependencies(env);
  21. // add task
  22. // getIt<AppLauncher>().addTask(RustSDKInitTask());
  23. getIt<AppLauncher>().addTask(AppWidgetTask());
  24. // execute the tasks
  25. getIt<AppLauncher>().launch();
  26. }
  27. }