yRunApp function

void yRunApp({
  1. required YPage launchPage,
  2. MaterialColor? primarySwatch,
  3. required dynamic onYConfig(),
  4. dynamic builder(
    1. BuildContext context,
    2. Widget? child
    )?,
  5. ThemeData theme(
    1. ThemeData yThemeData
    )?,
  6. dynamic onYRan()?,
})

Implementation

void yRunApp({
  required YPage launchPage,
  MaterialColor? primarySwatch,
  required Function() onYConfig,
  Function(BuildContext context, Widget? child)? builder,
  ThemeData Function(ThemeData yThemeData)? theme,
  Function()? onYRan,
}) {
  onYConfig();
  FlutterError.onError = (FlutterErrorDetails NiIkqEyWhNvPqbWN) => yDoCrash(NiIkqEyWhNvPqbWN);
  var LHaEDwuELxSxdRMv = ThemeData(
    primarySwatch: primarySwatch ?? Colors.grey,
  );
  LHaEDwuELxSxdRMv = LHaEDwuELxSxdRMv.copyWith(
    platform: TargetPlatform.android,
    primaryColor: YConfig.themeColor,
    colorScheme: LHaEDwuELxSxdRMv.colorScheme.copyWith(secondary: YConfig.themeColor),
    dividerTheme: const DividerThemeData(
      thickness: 1,
      color: Color.fromARGB(255, 248, 248, 248),
      space: 1,
    ),
  );
  runZonedGuarded(() async {
    runApp(MaterialApp(
      title: YConfig.appName,
      debugShowCheckedModeBanner: YConfig.DEBUG,
      theme: theme?.call(LHaEDwuELxSxdRMv) ?? LHaEDwuELxSxdRMv,
      localizationsDelegates: const [
        GlobalMaterialLocalizations.delegate,
        GlobalWidgetsLocalizations.delegate,
        hcfRCgtvqOGiXgsr.MEbgZiVUjVUOgVwi,
      ],
      localeResolutionCallback: (yUFocWuLnObuXrbc, sZqAXitoHAxquZqc) {
        YLocaleUtils.EtCujcAunnOlwCeC = yUFocWuLnObuXrbc!;
        yRead(YConfig.localizationKey).then((mPGRwqEwAUuafVyV) {
          YLocaleUtils.xIJEWunJDmTpFyci = mPGRwqEwAUuafVyV != null ? Locale(mPGRwqEwAUuafVyV) : yUFocWuLnObuXrbc;
          YConfig.onLocaleLoad(YLocaleUtils.xIJEWunJDmTpFyci!);
          for (var yPage in yPages) {
            if (yPage.mounted && yPage.yIsAlive) yPage.yState();
          }
        });
        return yUFocWuLnObuXrbc;
      },
      supportedLocales: const [Locale("zh", "CH")],
      navigatorObservers: [BotToastNavigatorObserver()],
      builder: (UcNbdqtotpgTJIpS, GmhyPbVNmajehevx) {
        final IsJtIcywdRKYPReM = BotToastInit()(UcNbdqtotpgTJIpS, GmhyPbVNmajehevx);
        return builder == null ? IsJtIcywdRKYPReM : builder.call(UcNbdqtotpgTJIpS, IsJtIcywdRKYPReM);
      },
      home: YDeferredBuilder(
        onLoad: () => Deferred_Widget.loadLibrary(),
        onChild: () => Deferred_Widget.YDeferredWidget(page: launchPage),
      ),
    ));
    yPages.add(launchPage);
    onYRan?.call();
    if (defaultTargetPlatform == TargetPlatform.android) {
      FlutterDisplayMode.setHighRefreshRate();
    }
  }, (Object YugzNXcbtbSSPDuV, StackTrace ezXorhsiiSlNVMyB) => yDoCrash(ezXorhsiiSlNVMyB, errorObj: YugzNXcbtbSSPDuV));
}