AppFlowy/app_flowy/lib/startup/startup.dart

35 lines
740 B
Dart
Raw Normal View History

2021-06-19 15:41:19 +00:00
import 'package:app_flowy/startup/launch.dart';
import 'package:app_flowy/startup/tasks/prelude.dart';
import 'package:flutter/material.dart';
import 'package:get_it/get_it.dart';
import 'deps_inject/prelude.dart';
final getIt = GetIt.instance;
enum IntegrationEnv {
dev,
pro,
}
2021-09-12 14:19:59 +00:00
abstract class EntryPoint {
2021-06-19 15:41:19 +00:00
Widget create();
}
2021-09-12 14:19:59 +00:00
class System {
static void run(EntryPoint f) {
2021-06-19 15:41:19 +00:00
// Specify the evn
const env = IntegrationEnv.dev;
// Config the deps graph
2021-09-12 14:19:59 +00:00
getIt.registerFactory<EntryPoint>(() => f);
2021-06-19 15:41:19 +00:00
resolveDependencies(env);
// add task
2021-07-03 06:14:10 +00:00
getIt<AppLauncher>().addTask(RustSDKInitTask());
2021-06-19 15:41:19 +00:00
getIt<AppLauncher>().addTask(AppWidgetTask());
// execute the tasks
getIt<AppLauncher>().launch();
}
}