import 'package:flutter/material.dart'; import 'package:flutter_dotenv/flutter_dotenv.dart'; import 'Grounded/about/internal/application/TextType.dart'; import 'Grounded/configs/NotificationServiceConfig.dart'; import 'Grounded/designs/Component.dart'; import 'Grounded/see/splash/Splash.dart'; import 'Grounded/utils/Colors.dart'; void main() async { WidgetsFlutterBinding.ensureInitialized(); await dotenv.load(fileName: ".env"); // Channels are created up front so a full-screen alarm can fire the first // time a non-negotiable window closes, not the second. await LocalNotificationEngine.init(); runApp(const GroundedApp()); } class GroundedApp extends StatelessWidget { const GroundedApp({super.key}); @override Widget build(BuildContext context) { return MaterialApp( title: 'Grounded', debugShowCheckedModeBanner: false, theme: ThemeData( disabledColor: colorGrey, scaffoldBackgroundColor: colorPrimaryLight, dividerColor: colorDivider, colorScheme: ColorScheme.fromSwatch( primarySwatch: createMaterialColor(colorPrimaryDark), ).copyWith(error: colorNegative), dialogTheme: DialogThemeData( backgroundColor: colorWhite, elevation: 0, contentTextStyle: TextStyle( color: colorGrey2, fontFamily: getTextType(TextType.Regular), fontSize: 13, ), titleTextStyle: TextStyle( color: colorPrimaryDark, fontFamily: getTextType(TextType.Bold), fontSize: 17, ), shape: RoundedRectangleBorder( borderRadius: BorderRadius.circular(20), ), ), ), home: const Splash(), ); } }