flutter-woocommerce-app/LabelStoreMax/lib/main.dart
2021-10-11 23:41:22 +01:00

61 lines
2.0 KiB
Dart

import 'package:flutter/material.dart';
import 'package:flutter/services.dart';
import 'package:flutter_app/bootstrap/app.dart';
import 'package:flutter_app/bootstrap/app_helper.dart';
import 'package:flutter_app/bootstrap/helpers.dart';
import 'package:flutter_app/config/app_locale.dart';
import 'package:flutter_app/resources/themes/dark_theme.dart';
import 'package:flutter_app/resources/themes/light_theme.dart';
import 'package:flutter_app/routes/router.dart';
import 'package:nylo_support/helpers/helper.dart';
import 'package:nylo_support/nylo.dart';
import 'package:nylo_framework/nylo_framework.dart';
import 'package:woosignal/models/response/woosignal_app.dart';
import 'package:wp_json_api/wp_json_api.dart';
void main() async {
WidgetsFlutterBinding.ensureInitialized();
Nylo nylo = await Nylo.init(router: appRouter());
await SystemChrome.setPreferredOrientations([
DeviceOrientation.portraitUp,
]);
String initialRoute = '/no-connection';
WooSignalApp wooSignalApp = await appWooSignal((api) => api.getApp());
Locale locale = app_locale;
if (wooSignalApp != null) {
initialRoute = "/home";
AppHelper.instance.appConfig = wooSignalApp;
AppHelper.instance.themeType = wooSignalApp.theme;
if (wooSignalApp.wpLoginEnabled == 1) {
WPJsonAPI.instance.initWith(
baseUrl: wooSignalApp.wpLoginBaseUrl,
shouldDebug: (wooSignalApp.appDebug == 1),
wpJsonPath: wooSignalApp.wpLoginWpApiPath,
);
}
if (locale == null && wooSignalApp.locale != null) {
locale = Locale(wooSignalApp.locale);
} else {
locale = Locale(getEnv('DEFAULT_LOCALE', defaultValue: 'en'));
}
}
runApp(
AppBuild(
navigatorKey: nylo.router.navigatorKey,
onGenerateRoute: nylo.router.generator(),
lightTheme: lightTheme(),
darkTheme: darkTheme(),
locale: locale,
initialRoute: initialRoute,
supportedLocales: app_locales_supported,
debugShowCheckedModeBanner: false,
),
);
}