main function

void main()

Implementation

void main() async {


  WidgetsFlutterBinding.ensureInitialized();
  await Firebase.initializeApp(
    options:FlavorConstants.env == AppEnv.prod? DefaultFirebaseOptions.webProd :  DefaultFirebaseOptions.webDev,
  );
  await GetStorage.init();
  Get.put(AuthenticationController(), permanent: true);
  Get.put(NotificationsController(), permanent: true);
  GoRouter.optionURLReflectsImperativeAPIs = true;
  setPathUrlStrategy();
  PWAInstall().setup(installCallback: () {
    debugPrint('APP INSTALLED!');
  });

  await SentryFlutter.init(
    (options) {
      options.dsn = 'https://aa7342b7e01dabbe106a7804298be6b3@o4509093434490880.ingest.de.sentry.io/4509093436588112';
      // Set tracesSampleRate to 1.0 to capture 100% of transactions for tracing.
      // We recommend adjusting this value in production.
      options.tracesSampleRate = 1.0;
      options.experimental.replay.sessionSampleRate = 1.0;
      options.experimental.replay.onErrorSampleRate = 1.0;
      options.environment = FlavorConstants.env.value;
    },
    appRunner: () => runApp(SentryWidget(child:
    GetMaterialApp.router(
      scaffoldMessengerKey: rootScaffoldMessengerKey,
      debugShowCheckedModeBanner: false,
      title: "NEOPASS - Beyond Luxury Travel",
      theme: ThemeData(fontFamily: "SFProDisplay", colorScheme: lightColorScheme),
      routerDelegate: router.routerDelegate,
      backButtonDispatcher: router.backButtonDispatcher,
      routeInformationParser: router.routeInformationParser,
      routeInformationProvider: router.routeInformationProvider,
    ),
  )),
  );
}