runMain function

Future<void> runMain({
  1. required CoreBaseConfigs configs,
  2. Widget beforeAppBuilder(
    1. Widget child
    )?,
  3. TransitionBuilder? builder,
  4. FutureOr<void> onInit()?,
})

Implementation

Future<void> runMain({
  required CoreBaseConfigs configs,
  Widget Function(Widget child)? beforeAppBuilder,
  TransitionBuilder? builder,
  FutureOr<void> Function()? onInit,
}) async {
  coreBaseConfigs = configs;

  WidgetsFlutterBinding.ensureInitialized();
  await Future.wait([
    EasyLocalization.ensureInitialized(),
    _initSingletons(),
  ]);

  await onInit?.call();

  runApp(
    beforeAppBuilder?.call(CoreApp(builder: builder)) ?? CoreApp(builder: builder),
  );

  errorWidget();
}